added completely new logging in system

This commit is contained in:
Connor Turland 2013-07-10 14:02:38 -04:00
parent 2545126b0b
commit 41044140b7
211 changed files with 1259 additions and 128 deletions

View file

@ -8,7 +8,6 @@ gem 'rails', '3.2.11'
gem 'devise'
gem 'redis'
gem 'pg'
gem 'authlogic'
gem 'cancan'
gem 'formula'
gem 'formtastic'

View file

@ -29,9 +29,6 @@ GEM
i18n (~> 0.6)
multi_json (~> 1.0)
arel (3.0.2)
authlogic (3.1.0)
activerecord (>= 3.0.7)
activerecord (>= 3.0.7)
bcrypt-ruby (3.0.1-x86-mingw32)
best_in_place (2.0.2)
jquery-rails
@ -131,7 +128,6 @@ PLATFORMS
x86-mingw32
DEPENDENCIES
authlogic
best_in_place
cancan
coffee-rails (~> 3.2.1)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

View file

@ -42,6 +42,12 @@ var labelType, useGradients, nativeTextSupport, animate, json, Mconsole = null,
});
$(".scroll").mCustomScrollbar();
$('.headertop').draggable();
var positionLeft = $(window).width() - $('.headertop').width() - 50;
$('.headertop').css('left', positionLeft + 'px');
$('.notice.metamaps').delay(10000).fadeOut('fast');
$('.alert.metamaps').delay(10000).fadeOut('fast');
//$('.nodemargin').css('padding-top',$('.focus').css('height'));
@ -304,11 +310,11 @@ function MconsoleReset() {
function hideLabels() {
if (Mconsole.labels.labelsHidden) {
Mconsole.labels.hideLabels();
$('.hidelabels').addClass('checked');
$('.hidelabels').html('Hide Labels');
}
else if (!Mconsole.labels.labelsHidden) {
Mconsole.labels.hideLabels(true);
$('.hidelabels').removeClass('checked');
$('.hidelabels').html('Show Labels');
}
}

View file

@ -59,8 +59,7 @@ html {
body {
background:#031924 url(background2-for-repeating.jpg) repeat 0 0;
/* font-family: 'katarine-web', sans-serif; */
font-family: 'LatoLight', sans-serif;
font-family: 'katarine-web', sans-serif;
background-attachment:fixed;
color:#FFF;
}
@ -142,9 +141,10 @@ a {
margin:200px 0 0 -195px;
background: url('bg.png');
padding: 20px;
border-radius: 15px;
border-radius: 5px;
color: #000;
border:2px solid #000;
border:1px solid #000;
box-shadow: 6px 6px 8px rgba(0,0,0,0.4);
}
.edit_user{
@ -268,52 +268,64 @@ input[type="submit"] {
}
/* --- top options --*/
.passwordnotice {
background: #612127;
padding: 10px;
margin-bottom: 10px;
text-align: center;
}
.notice.metamaps, .alert.metamaps {
position: absolute;
margin: 20px;
background: url(/assets/black_bg.png);
padding: 10px;
border-radius: 5px;
box-shadow: 6px 6px 8px rgba(0,0,0,0.4);
border:1px solid #000;
}
.headertop {
display:block;
position:fixed;
top:0;
right:0;
top:20px;
z-index:10;
width:218px;
border-radius:10px;
border-radius:5px;
margin: 10px 0px 10px 10px;
background:#FFF;
background:#111614;
padding:5px 10px;
border:1px solid #000;
box-shadow: 6px 6px 8px rgba(0,0,0,0.4);
}
.headertop .tab {
background: url(tab.png) no-repeat 0 0;
position:absolute;
top:-11px;
right:-2px;
display:block;
width:45px;
height:15px;
cursor:move;
}
.headertop button, .headertop input {
float:right;
height: 30px;
border-radius: 3px;
background: #FFF;
color: #111;
font-family: 'katarine-web';
font-size: 18px;
border: 1px solid #000;
background: none;
color: #717474;
font-family: 'LatoLight';
font-size: 17px;
border: none;
border-right:1px solid #717474;
cursor: pointer;
margin:3px 0;
clear:both;
float:right;
}
.headertop button:hover, .headertop input:hover {
background: #EEE;
}
.hidelabels {
width: 80px;
height: 25px;
float: right;
background: url('labelCheckbox.png') no-repeat 0px -36px;
display: block;
padding-left: 34px;
padding-top:6px;
cursor:pointer;
color:#111;
}
.hidelabels.checked {
background: url('labelCheckbox.png') no-repeat 0px 0px;
border-right: 1px solid #6d7310;
color: #6d7310;
}
.wrapper {
@ -329,12 +341,15 @@ background: url('labelCheckbox.png') no-repeat 0px 0px;
z-index: 9999;
width: auto;
background: url('black_bg.png');
padding: 0px 10px 0px 20px;
border-bottom-left-radius: 15px;
border-top-left-radius: 15px;
height: 38px;
padding: 1px 10px 0px 20px;
border-bottom-left-radius: 5px;
border-top-left-radius: 5px;
text-transform:uppercase;
font-style:italic;
height: 35px;
font-size: 30px;
line-height: 38px;
border:1px solid #000;
}
.nodemargin {

View file

@ -22,16 +22,6 @@ private
end
end
def current_user
return @current_user if defined?(@current_user)
@current_user = current_session && current_session.user
end
def current_session
return @current_session if defined?(@current_session)
@current_session = Session.find
end
def user
current_user
end
@ -41,14 +31,4 @@ private
current_user
end
def store
session[:location] = request.fullpath
end
def restore(options)
location = session[:location] || options[:default]
session[:location] = nil
return location
end
end

View file

@ -9,6 +9,11 @@ class UsersController < ApplicationController
# GET /user/new
def new
flash[:notice] = "Account creation is temporarily disabled."
redirect_to root_url
return
@user = User.new
respond_with(@user)
@ -36,6 +41,9 @@ class UsersController < ApplicationController
# POST /user
def create
# update this code
@session = Session.create(params[:user])
redirect_to(root_url) and return if @session.valid?

View file

@ -1,5 +0,0 @@
class Session < Authlogic::Session::Base
authenticate_with User
end

View file

@ -7,26 +7,17 @@ has_many :synapses
has_many :maps
has_many :mappings
acts_as_authentic do |configuration|
configuration.session_class = Session
configuration.require_password_confirmation = false
devise :database_authenticatable, :recoverable, :rememberable, :trackable # :registerable
#acts_as_authentic do |configuration|
# configuration.session_class = Session
#configuration.require_password_confirmation = false
configuration.merge_validates_format_of_email_field_options unless: Proc.new { |user| user.email.blank? and user.authed? }
configuration.merge_validates_length_of_email_field_options unless: Proc.new { |user| user.email.blank? and user.authed? }
end
# configuration.merge_validates_format_of_email_field_options unless: Proc.new { |user| user.email.blank? and user.authed? }
# configuration.merge_validates_length_of_email_field_options unless: Proc.new { |user| user.email.blank? and user.authed? }
#end
serialize :settings, UserPreference
validates :password, :presence => true,
:length => {
:maximum => 20,
:too_long => "is too long (maximum is %{count} characters)" },
:on => :create
validates :password, :allow_blank => true,
:length => {
:maximum => 20,
:too_long => "is too long (maximum is %{count} characters)"},
:on => :update
validates :joinedwithcode, :presence => true, :inclusion => { :in => User.all.map(&:code), :message => "%{value} is not a valid code" }, :on => :create

View file

@ -36,6 +36,14 @@
<%= csrf_meta_tags %>
</head>
<body>
<% if notice %>
<p class="notice metamaps"><%= notice %></p>
<% end %>
<% if alert %>
<p class="alert metamaps"><%= alert %></p>
<% end %>
<%= content_tag :div, class: authenticated? ? "main authenticated" : "main unauthenticated" do %>
<div class="wrapper" id="wrapper">
@ -52,7 +60,7 @@
<% if Topic.exists?(260) %>
<li><%= link_to "Tour", "/topics/260" %></li>
<% end %>
<li class="last"><%= link_to "Login", new_session_path, id: "Login" %></li>
<li class="last"><%= link_to "Login", new_user_session_path, id: "Login" %></li>
</ul>
<% end %>
<% if authenticated? %>
@ -68,7 +76,7 @@
<% unless Map.first(:conditions => [ "id = ?", 7]).nil? %>
<li><%= link_to "Feedback", map_path(Map.find(7)) %></li>
<% end %>
<li class="last"><%= link_to "Logout", session_path, method: 'delete', id: "Login" %></li>
<li class="last"><%= link_to "Logout", destroy_user_session_path, method: 'delete', id: "Login" %></li>
</ul>
<% end %>
<h1 id="mainTitle"><%= link_to "metamaps", root_url %></h1><div id="beta">beta</div>

View file

@ -16,6 +16,9 @@
<span class="blue">Metamaps</span> is a platform for visioning, magic making, productive conversation, understanding something, innovation, free style weaving and all night brainstorming. Metamaps is a game for making the world a better place.
</div>
<div class="clearfloat"></div>
<div class="passwordnotice">
Due to upgrading our authentication process, all users will have to reset their password before signing in. Follow the standard <%= link_to 'forgot password', new_user_password_path %> process to see this through. Thanks!
</div>
<h2>Recently Created Maps <%= link_to "see all", maps_url%></h2>
<div class="centeredProfile">
<% @maps.each do |map| %>

View file

@ -7,15 +7,16 @@
<% content_for :title, @map.name + " | Metamaps" %>
<div class="headertop">
<div class="hidelabels checked" onclick="hideLabels()">Show Labels</div>
<div class="tab"></div>
<button class="hidelabels" onclick="hideLabels();">Hide Labels</button>
<button onclick="if (!goRealtime) { this.innerHTML = 'Stop Realtime'; } else if (goRealtime) { this.innerHTML = 'Start Realtime'; } goRealtime = !goRealtime;">Start Realtime</button>
<button onclick="hideSelectedEdges();hideSelectedNodes();">Hide Selected</button>
<button onclick="enterKeyHandler();">Keep Selected</button>
<% if authenticated? %>
<% if (@map.permission == "commons" && authenticated?) || @map.user == user %>
<button onclick="removeSelectedEdges();removeSelectedNodes();">Remove Selected From Map</button>
<button onclick="removeSelectedEdges();removeSelectedNodes();">Remove Selected</button>
<% end %>
<button onclick="var r=confirm('Are you sure you want to permanently delete selected objects?!'); if (r == true) {deleteSelectedEdges();deleteSelectedNodes();}">Permanently Delete Selected</button>
<button onclick="var r=confirm('Are you sure you want to permanently delete selected objects?!'); if (r == true) {deleteSelectedEdges();deleteSelectedNodes();}">Delete Selected</button>
<% if (@map.permission == "commons" && authenticated?) || @map.user == user %>
<%= form_for @map, :url => savelayout_path(@map), :html => { :class => "saveMapLayout", :id => "saveMapLayout"}, remote: true do |form| %>
<%= form.hidden_field "coordinates", :value => "" %>

View file

@ -1,16 +0,0 @@
<%#
# @file
# Located at /sessions/new
# Form to log in
#%>
<% content_for :title, "Login | Metamaps" %>
<%= form_for @session || Session.new, url: session_path do |form| %>
<h3>Login</h3>
<label for="session_email">Email</label>
<%= form.text_field :email, class: "email" %>
<label for="session_password">Password</label>
<%= form.password_field :password, class: "password" %>
<%= form.submit "Login", class: "add" %>
<% end %>

View file

@ -17,7 +17,8 @@
<% content_for :title, @topic.name + " | Metamaps" %>
<div class="headertop">
<div class="hidelabels checked" onclick="hideLabels()">Show Labels</div>
<div class="tab"></div>
<button class="hidelabels" onclick="hideLabels();">Hide Labels</button>
<button onclick="enterKeyPressed();">Keep Selected</button>
<% if authenticated? %>
<button onclick="saveToMap();">Save to Map</button>

View file

@ -0,0 +1,12 @@
<h2>Resend confirmation instructions</h2>
<%= form_for(resource, :as => resource_name, :url => confirmation_path(resource_name), :html => { :method => :post }) do |f| %>
<%= devise_error_messages! %>
<div><%= f.label :email %><br />
<%= f.email_field :email, :autofocus => true %></div>
<div><%= f.submit "Resend confirmation instructions" %></div>
<% end %>
<%= render "devise/shared/links" %>

View file

@ -0,0 +1,5 @@
<p>Welcome <%= @email %>!</p>
<p>You can confirm your account email through the link below:</p>
<p><%= link_to 'Confirm my account', confirmation_url(@resource, :confirmation_token => @resource.confirmation_token) %></p>

View file

@ -0,0 +1,11 @@
<p>Hey there Metamapper with email <%= @resource.email %>!</p>
<p>Please create a new password. Your password needs to contain a capital letter, a number, an emoji, 7 elements from the Periodic Table, and a plot containing a protagonist with some character development and a surprise twist ending.</p>
<p>Just kidding. But it does have to be between 8 and 128 characters.</p>
<p>Change your password using the link below.</p>
<p><%= link_to 'Change my password', edit_password_url(@resource, :reset_password_token => @resource.reset_password_token) %></p>
<p>If you didn't request this, click your heels three times and pretend nothing ever happened.</p>

View file

@ -0,0 +1,7 @@
<p>Hello <%= @resource.email %>!</p>
<p>Your account has been locked due to an excessive number of unsuccessful sign in attempts.</p>
<p>Click the link below to unlock your account:</p>
<p><%= link_to 'Unlock my account', unlock_url(@resource, :unlock_token => @resource.unlock_token) %></p>

View file

@ -12,7 +12,8 @@
<%= form.input :email, label: "Email", class: "email" %>
<%= form.input :password, label: "Password", class: "password" %>
<%= form.input :joinedwithcode, label: "Access Code", class: "joinedwithcode" %>
<%= form.submit "Create Account", class: "add" %>
<%= form.submit "Create Account", class: "add" %>
<%= link_to "Sign in", new_session_path("user") %>
<% end %>

View file

@ -0,0 +1,20 @@
<%= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :put }) do |f| %>
<%= devise_error_messages! %>
<%= f.hidden_field :reset_password_token %>
<h3>Change your password</h3>
<div><%= f.label :password, "New password" %>
<%= f.password_field :password, :autofocus => true %></div>
<div><%= f.label :password_confirmation, "Confirm new password" %>
<%= f.password_field :password_confirmation %></div>
<div><%= f.submit "Change my password" %></div>
<%= render "devise/shared/links" %>
<% end %>

View file

@ -0,0 +1,17 @@
<%= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :post }) do |f| %>
<%= devise_error_messages! %>
<h3>Forgot your password?</h3>
<div><%= f.label :email %>
<%= f.email_field :email, :autofocus => true %></div>
<div><%= f.submit "Send me reset password instructions" %></div>
<%= link_to "Sign up", new_user_path %><br />
<%= render "devise/shared/links" %>
<% end %>

View file

@ -0,0 +1,29 @@
<h2>Edit <%= resource_name.to_s.humanize %></h2>
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put }) do |f| %>
<%= devise_error_messages! %>
<div><%= f.label :email %><br />
<%= f.email_field :email, :autofocus => true %></div>
<% if devise_mapping.confirmable? && resource.pending_reconfirmation? %>
<div>Currently waiting confirmation for: <%= resource.unconfirmed_email %></div>
<% end %>
<div><%= f.label :password %> <i>(leave blank if you don't want to change it)</i><br />
<%= f.password_field :password, :autocomplete => "off" %></div>
<div><%= f.label :password_confirmation %><br />
<%= f.password_field :password_confirmation %></div>
<div><%= f.label :current_password %> <i>(we need your current password to confirm your changes)</i><br />
<%= f.password_field :current_password %></div>
<div><%= f.submit "Update" %></div>
<% end %>
<h3>Cancel my account</h3>
<p>Unhappy? <%= button_to "Cancel my account", registration_path(resource_name), :data => { :confirm => "Are you sure?" }, :method => :delete %>.</p>
<%= link_to "Back", :back %>

View file

@ -0,0 +1,18 @@
<h2>Sign up</h2>
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>
<div><%= f.label :email %><br />
<%= f.email_field :email, :autofocus => true %></div>
<div><%= f.label :password %><br />
<%= f.password_field :password %></div>
<div><%= f.label :password_confirmation %><br />
<%= f.password_field :password_confirmation %></div>
<div><%= f.submit "Sign up" %></div>
<% end %>
<%= render "devise/shared/links" %>

View file

@ -0,0 +1,22 @@
<%= form_for(resource, :as => resource_name, :url => session_path(resource_name)) do |f| %>
<h3>Sign in</h3>
<div><%= f.label :email %>
<%= f.email_field :email, :autofocus => true %></div>
<div><%= f.label :password %>
<%= f.password_field :password %></div>
<% if devise_mapping.rememberable? -%>
<div><%= f.check_box :remember_me %> <%= f.label :remember_me %></div>
<% end -%>
<div><%= f.submit "Sign in" %></div>
<%= link_to "Sign up", new_user_path %><br />
<%= render "devise/shared/links" %>
<% end %>

View file

@ -0,0 +1,25 @@
<%- if controller_name != 'sessions' %>
<%= link_to "Sign in", new_session_path(resource_name) %><br />
<% end -%>
<%- if devise_mapping.registerable? && controller_name != 'registrations' %>
<%= link_to "Sign up", new_user_path(resource_name) %><br />
<% end -%>
<%- if devise_mapping.recoverable? && controller_name != 'passwords' %>
<%= link_to "Forgot your password?", new_password_path(resource_name) %><br />
<% end -%>
<%- if devise_mapping.confirmable? && controller_name != 'confirmations' %>
<%= link_to "Didn't receive confirmation instructions?", new_confirmation_path(resource_name) %><br />
<% end -%>
<%- if devise_mapping.lockable? && resource_class.unlock_strategy_enabled?(:email) && controller_name != 'unlocks' %>
<%= link_to "Didn't receive unlock instructions?", new_unlock_path(resource_name) %><br />
<% end -%>
<%- if devise_mapping.omniauthable? %>
<%- resource_class.omniauth_providers.each do |provider| %>
<%= link_to "Sign in with #{provider.to_s.titleize}", omniauth_authorize_path(resource_name, provider) %><br />
<% end -%>
<% end -%>

View file

@ -0,0 +1,12 @@
<h2>Resend unlock instructions</h2>
<%= form_for(resource, :as => resource_name, :url => unlock_path(resource_name), :html => { :method => :post }) do |f| %>
<%= devise_error_messages! %>
<div><%= f.label :email %><br />
<%= f.email_field :email, :autofocus => true %></div>
<div><%= f.submit "Resend unlock instructions" %></div>
<% end %>
<%= render "devise/shared/links" %>

View file

@ -12,9 +12,20 @@ ISSAD::Application.configure do
# Show full error reports and disable caching
config.consider_all_requests_local = true
config.action_controller.perform_caching = false
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'mail.metamaps.cc',
port: 587,
user_name: 'team@metamaps.cc',
password: 'RcxX+s:fht49UX',
authentication: 'plain',
enable_starttls_auto: true,
openssl_verify_mode: 'none' }
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
# Don't care if the mailer can't send
config.action_mailer.raise_delivery_errors = false
config.action_mailer.raise_delivery_errors = true
# Print deprecation notices to the Rails logger
config.active_support.deprecation = :log

View file

@ -0,0 +1,240 @@
# Use this hook to configure devise mailer, warden hooks and so forth.
# Many of these configuration options can be set straight in your model.
Devise.setup do |config|
# ==> Mailer Configuration
# Configure the e-mail address which will be shown in Devise::Mailer,
# note that it will be overwritten if you use your own mailer class with default "from" parameter.
config.mailer_sender = "team@metamaps.cc"
# Configure the class responsible to send e-mails.
# config.mailer = "Devise::Mailer"
# ==> ORM configuration
# Load and configure the ORM. Supports :active_record (default) and
# :mongoid (bson_ext recommended) by default. Other ORMs may be
# available as additional gems.
require 'devise/orm/active_record'
# ==> Configuration for any authentication mechanism
# Configure which keys are used when authenticating a user. The default is
# just :email. You can configure it to use [:username, :subdomain], so for
# authenticating a user, both parameters are required. Remember that those
# parameters are used only when authenticating and not when retrieving from
# session. If you need permissions, you should implement that in a before filter.
# You can also supply a hash where the value is a boolean determining whether
# or not authentication should be aborted when the value is not present.
# config.authentication_keys = [ :email ]
# Configure parameters from the request object used for authentication. Each entry
# given should be a request method and it will automatically be passed to the
# find_for_authentication method and considered in your model lookup. For instance,
# if you set :request_keys to [:subdomain], :subdomain will be used on authentication.
# The same considerations mentioned for authentication_keys also apply to request_keys.
# config.request_keys = []
# Configure which authentication keys should be case-insensitive.
# These keys will be downcased upon creating or modifying a user and when used
# to authenticate or find a user. Default is :email.
config.case_insensitive_keys = [ :email ]
# Configure which authentication keys should have whitespace stripped.
# These keys will have whitespace before and after removed upon creating or
# modifying a user and when used to authenticate or find a user. Default is :email.
config.strip_whitespace_keys = [ :email ]
# Tell if authentication through request.params is enabled. True by default.
# It can be set to an array that will enable params authentication only for the
# given strategies, for example, `config.params_authenticatable = [:database]` will
# enable it only for database (email + password) authentication.
# config.params_authenticatable = true
# Tell if authentication through HTTP Basic Auth is enabled. False by default.
# It can be set to an array that will enable http authentication only for the
# given strategies, for example, `config.http_authenticatable = [:token]` will
# enable it only for token authentication.
# config.http_authenticatable = false
# If http headers should be returned for AJAX requests. True by default.
# config.http_authenticatable_on_xhr = true
# The realm used in Http Basic Authentication. "Application" by default.
# config.http_authentication_realm = "Application"
# It will change confirmation, password recovery and other workflows
# to behave the same regardless if the e-mail provided was right or wrong.
# Does not affect registerable.
# config.paranoid = true
# By default Devise will store the user in session. You can skip storage for
# :http_auth and :token_auth by adding those symbols to the array below.
# Notice that if you are skipping storage for all authentication paths, you
# may want to disable generating routes to Devise's sessions controller by
# passing :skip => :sessions to `devise_for` in your config/routes.rb
config.skip_session_storage = [:http_auth]
# ==> Configuration for :database_authenticatable
# For bcrypt, this is the cost for hashing the password and defaults to 10. If
# using other encryptors, it sets how many times you want the password re-encrypted.
#
# Limiting the stretches to just one in testing will increase the performance of
# your test suite dramatically. However, it is STRONGLY RECOMMENDED to not use
# a value less than 10 in other environments.
config.stretches = Rails.env.test? ? 1 : 10
# Setup a pepper to generate the encrypted password.
# config.pepper = "640ad415cb5292ac9ddbfa6ad7d9653d1537f1184e4037c2453db3eccb98e1c82facc6d3de7bf9d4c41d9967d41194c6e120f36f430e195ba840cd00e02dea59"
# ==> Configuration for :confirmable
# A period that the user is allowed to access the website even without
# confirming his account. For instance, if set to 2.days, the user will be
# able to access the website for two days without confirming his account,
# access will be blocked just in the third day. Default is 0.days, meaning
# the user cannot access the website without confirming his account.
# config.allow_unconfirmed_access_for = 2.days
# A period that the user is allowed to confirm their account before their
# token becomes invalid. For example, if set to 3.days, the user can confirm
# their account within 3 days after the mail was sent, but on the fourth day
# their account can't be confirmed with the token any more.
# Default is nil, meaning there is no restriction on how long a user can take
# before confirming their account.
# config.confirm_within = 3.days
# If true, requires any email changes to be confirmed (exactly the same way as
# initial account confirmation) to be applied. Requires additional unconfirmed_email
# db field (see migrations). Until confirmed new email is stored in
# unconfirmed email column, and copied to email column on successful confirmation.
config.reconfirmable = true
# Defines which key will be used when confirming an account
# config.confirmation_keys = [ :email ]
# ==> Configuration for :rememberable
# The time the user will be remembered without asking for credentials again.
config.remember_for = 2.weeks
# If true, extends the user's remember period when remembered via cookie.
# config.extend_remember_period = false
# Options to be passed to the created cookie. For instance, you can set
# :secure => true in order to force SSL only cookies.
# config.rememberable_options = {}
# ==> Configuration for :validatable
# Range for password length. Default is 8..128.
config.password_length = 8..128
# Email regex used to validate email formats. It simply asserts that
# an one (and only one) @ exists in the given string. This is mainly
# to give user feedback and not to assert the e-mail validity.
# config.email_regexp = /\A[^@]+@[^@]+\z/
# ==> Configuration for :timeoutable
# The time you want to timeout the user session without activity. After this
# time the user will be asked for credentials again. Default is 30 minutes.
# config.timeout_in = 30.minutes
# If true, expires auth token on session timeout.
# config.expire_auth_token_on_timeout = false
# ==> Configuration for :lockable
# Defines which strategy will be used to lock an account.
# :failed_attempts = Locks an account after a number of failed attempts to sign in.
# :none = No lock strategy. You should handle locking by yourself.
# config.lock_strategy = :failed_attempts
# Defines which key will be used when locking and unlocking an account
# config.unlock_keys = [ :email ]
# Defines which strategy will be used to unlock an account.
# :email = Sends an unlock link to the user email
# :time = Re-enables login after a certain amount of time (see :unlock_in below)
# :both = Enables both strategies
# :none = No unlock strategy. You should handle unlocking by yourself.
# config.unlock_strategy = :both
# Number of authentication tries before locking an account if lock_strategy
# is failed attempts.
# config.maximum_attempts = 20
# Time interval to unlock the account if :time is enabled as unlock_strategy.
# config.unlock_in = 1.hour
# ==> Configuration for :recoverable
#
# Defines which key will be used when recovering the password for an account
# config.reset_password_keys = [ :email ]
# Time interval you can reset your password with a reset password key.
# Don't put a too small interval or your users won't have the time to
# change their passwords.
config.reset_password_within = 24.hours
# ==> Configuration for :encryptable
# Allow you to use another encryption algorithm besides bcrypt (default). You can use
# :sha1, :sha512 or encryptors from others authentication tools as :clearance_sha1,
# :authlogic_sha512 (then you should set stretches above to 20 for default behavior)
# and :restful_authentication_sha1 (then you should set stretches to 10, and copy
# REST_AUTH_SITE_KEY to pepper)
# config.encryptor = :sha512
# ==> Configuration for :token_authenticatable
# Defines name of the authentication token params key
# config.token_authentication_key = :auth_token
# ==> Scopes configuration
# Turn scoped views on. Before rendering "sessions/new", it will first check for
# "users/sessions/new". It's turned off by default because it's slower if you
# are using only default views.
config.scoped_views = true
# Configure the default scope given to Warden. By default it's the first
# devise role declared in your routes (usually :user).
# config.default_scope = :user
# Set this configuration to false if you want /users/sign_out to sign out
# only the current scope. By default, Devise signs out all scopes.
# config.sign_out_all_scopes = true
# ==> Navigation configuration
# Lists the formats that should be treated as navigational. Formats like
# :html, should redirect to the sign in page when the user does not have
# access, but formats like :xml or :json, should return 401.
#
# If you have any extra navigational formats, like :iphone or :mobile, you
# should add them to the navigational formats lists.
#
# The "*/*" below is required to match Internet Explorer requests.
# config.navigational_formats = ["*/*", :html]
# The default HTTP method used to sign out a resource. Default is :delete.
config.sign_out_via = :delete
# ==> OmniAuth
# Add a new OmniAuth provider. Check the wiki for more information on setting
# up on your models and hooks.
# config.omniauth :github, 'APP_ID', 'APP_SECRET', :scope => 'user,public_repo'
# ==> Warden configuration
# If you want to use other strategies, that are not supported by Devise, or
# change the failure app, you can configure them inside the config.warden block.
#
# config.warden do |manager|
# manager.intercept_401 = false
# manager.default_strategies(:scope => :user).unshift :some_external_strategy
# end
# ==> Mountable engine configurations
# When using Devise inside an engine, let's call it `MyEngine`, and this engine
# is mountable, there are some extra configurations to be taken into account.
# The following options are available, assuming the engine is mounted as:
#
# mount MyEngine, at: "/my_engine"
#
# The router that invoked `devise_for`, in the example above, would be:
# config.router_name = :my_engine
#
# When using omniauth, Devise cannot automatically set Omniauth path,
# so you need to do it manually. For the users scope, it would be:
# config.omniauth_path_prefix = "/my_engine/users/auth"
end

View file

@ -0,0 +1,59 @@
# Additional translations at https://github.com/plataformatec/devise/wiki/I18n
en:
devise:
confirmations:
confirmed: "Your account was successfully confirmed. You are now signed in."
send_instructions: "You will receive an email with instructions about how to confirm your account in a few minutes."
send_paranoid_instructions: "If your email address exists in our database, you will receive an email with instructions about how to confirm your account in a few minutes."
failure:
already_authenticated: "You are already signed in."
inactive: "Your account was not activated yet."
invalid: "Invalid email or password."
invalid_token: "Invalid authentication token."
locked: "Your account is locked."
not_found_in_database: "Invalid email or password."
timeout: "Your session expired, please sign in again to continue."
unauthenticated: "You need to sign in or sign up before continuing."
unconfirmed: "You have to confirm your account before continuing."
mailer:
confirmation_instructions:
subject: "Confirmation instructions"
reset_password_instructions:
subject: "Reset password instructions"
unlock_instructions:
subject: "Unlock Instructions"
omniauth_callbacks:
failure: "Could not authenticate you from %{kind} because \"%{reason}\"."
success: "Successfully authenticated from %{kind} account."
passwords:
no_token: "You can't access this page without coming from a password reset email. If you do come from a password reset email, please make sure you used the full URL provided."
send_instructions: "You will receive an email with instructions about how to reset your password in a few minutes."
send_paranoid_instructions: "If your email address exists in our database, you will receive a password recovery link at your email address in a few minutes."
updated: "Your password was changed successfully. You are now signed in."
updated_not_active: "Your password was changed successfully."
registrations:
destroyed: "Bye! Your account was successfully cancelled. We hope to see you again soon."
signed_up: "Welcome! You have signed up successfully."
signed_up_but_inactive: "You have signed up successfully. However, we could not sign you in because your account is not yet activated."
signed_up_but_locked: "You have signed up successfully. However, we could not sign you in because your account is locked."
signed_up_but_unconfirmed: "A message with a confirmation link has been sent to your email address. Please open the link to activate your account."
update_needs_confirmation: "You updated your account successfully, but we need to verify your new email address. Please check your email and click on the confirm link to finalize confirming your new email address."
updated: "You updated your account successfully."
sessions:
signed_in: "Signed in successfully."
signed_out: "Signed out successfully."
unlocks:
send_instructions: "You will receive an email with instructions about how to unlock your account in a few minutes."
send_paranoid_instructions: "If your account exists, you will receive an email with instructions about how to unlock it in a few minutes."
unlocked: "Your account has been unlocked successfully. Please sign in to continue."
errors:
messages:
already_confirmed: "was already confirmed, please try signing in"
confirmation_period_expired: "needs to be confirmed within %{period}, please request a new one"
expired: "has expired, please request a new one"
not_found: "not found"
not_locked: "was not locked"
not_saved:
one: "1 error prohibited this %{resource} from being saved:"
other: "%{count} errors prohibited this %{resource} from being saved:"

View file

@ -13,8 +13,6 @@ ISSAD::Application.routes.draw do
match 'maps/:id/savelayout', to: 'maps#savelayout', via: :put, as: :savelayout
match 'topics/:map_id/:topic_id/removefrommap', to: 'topics#removefrommap', via: :post, as: :removefrommap
match 'synapses/:map_id/:synapse_id/removefrommap', to: 'synapses#removefrommap', via: :post, as: :removefrommap
resource :session
resources :topics do
get :autocomplete_topic_name, :on => :collection
@ -32,6 +30,7 @@ ISSAD::Application.routes.draw do
match 'maps/:id/embed', to: 'maps#embed', via: :get, as: :embed
match 'maps/:id/:format', to: 'maps#json', via: :get, as: :json
devise_for :users, :path_names => { :sign_in => 'login', :sign_out => 'logout' }
resources :users do
get :autocomplete_user_name, :on => :collection
resources :topics, :only => [:index]

View file

@ -1,9 +0,0 @@
class AddMetacodesToUser < ActiveRecord::Migration
def self.up
add_column :users, :settings, :text
end
def self.down
remove_column :users, :settings
end
end

View file

@ -0,0 +1,55 @@
class AddDevise < ActiveRecord::Migration
def up
### handcode devise columns
# database authenticatable
add_column :users, :encrypted_password, :string, :null => nil, :limit => 128, :default => ""
# encryptable
#add_column :users, :password_salt, :string, :null => nil
# rememberable
add_column :users, :remember_token, :string
add_column :users, :remember_created_at, :datetime
# confirmable
#add_column :users, :confirmation_token, :string
#add_column :users, :confirmed_at, :datetime
#add_column :users, :confirmation_sent_at, :datetime
# recoverable
add_column :users, :reset_password_token, :string
# trackable
add_column :users, :last_sign_in_at, :datetime
add_column :users, :last_sign_in_ip, :string
add_column :users,:sign_in_count, :integer, :default => 0
add_column :users,:current_sign_in_at, :datetime
add_column :users,:current_sign_in_ip, :string
#add_index :users, :confirmation_token, :unique => true for confirmable
add_index :users, :reset_password_token, :unique => true
end
def down
#remove_index :users, :confirmation_token
remove_index :users, :reset_password_token
remove_column :users,"password_salt"
#remove_column :users,"confirmation_token"
#remove_column :users,"confirmed_at"
#remove_column :users,"confirmation_sent_at"
remove_column :users,"reset_password_token"
remove_column :users,"remember_token"
remove_column :users,"remember_created_at"
remove_column :users,"sign_in_count"
remove_column :users,"current_sign_in_at"
remove_column :users,"current_sign_in_ip"
remove_column :users,"last_sign_in_at"
remove_column :users,"last_sign_in_ip"
remove_column :users,"encrypted_password"
end
end

View file

@ -0,0 +1,5 @@
class AddPasswordResetToDevise < ActiveRecord::Migration
def change
add_column :users, :reset_password_sent_at, :datetime
end
end

View file

@ -11,7 +11,39 @@
#
# It's strongly recommended to check this file into your version control system.
ActiveRecord::Schema.define(:version => 20130125210014) do
ActiveRecord::Schema.define(:version => 20130709212556) do
create_table "entities", :force => true do |t|
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "fields", :force => true do |t|
t.integer "entity_id"
t.integer "field_id"
t.integer "mkey_id"
t.binary "binary_val"
t.boolean "boolean_val"
t.date "date_val"
t.datetime "datetime_val"
t.decimal "decimal_val"
t.float "float_val"
t.integer "integer_val"
t.string "string_val"
t.text "text_val"
t.time "time_val"
t.integer "references_val_id"
t.datetime "datetimeedit"
t.integer "user_id"
t.integer "useredit_id"
end
add_index "fields", ["entity_id"], :name => "index_fields_on_entity_id"
add_index "fields", ["field_id"], :name => "index_fields_on_field_id"
add_index "fields", ["mkey_id"], :name => "index_fields_on_mkey_id"
add_index "fields", ["references_val_id"], :name => "index_fields_on_references_val_id"
add_index "fields", ["user_id"], :name => "index_fields_on_user_id"
add_index "fields", ["useredit_id"], :name => "index_fields_on_useredit_id"
create_table "mappings", :force => true do |t|
t.text "category"
@ -68,15 +100,27 @@ ActiveRecord::Schema.define(:version => 20130125210014) do
create_table "users", :force => true do |t|
t.string "name"
t.string "email"
t.string "code", :limit => 8
t.string "joinedwithcode", :limit => 8
t.text "settings"
t.string "code", :limit => 8
t.string "joinedwithcode", :limit => 8
t.string "crypted_password"
t.string "password_salt"
t.string "persistence_token"
t.string "perishable_token"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.text "settings"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.string "encrypted_password", :limit => 128, :default => ""
t.string "remember_token"
t.datetime "remember_created_at"
t.string "reset_password_token"
t.datetime "last_sign_in_at"
t.string "last_sign_in_ip"
t.integer "sign_in_count", :default => 0
t.datetime "current_sign_in_at"
t.string "current_sign_in_ip"
t.datetime "reset_password_sent_at"
end
add_index "users", ["reset_password_token"], :name => "index_users_on_reset_password_token", :unique => true
end

View file

@ -0,0 +1,147 @@
<?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">
<metadata>
This is a custom SVG webfont generated by Font Squirrel.
Copyright : Copyright c 20102011 by tyPoland Lukasz Dziedzic with Reserved Font Name Lato Licensed under the SIL Open Font License Version 11
Designer : Lukasz Dziedzic
Foundry : Lukasz Dziedzic
Foundry URL : httpwwwtypolandcom
</metadata>
<defs>
<font id="LatoLight" horiz-adv-x="1187" >
<font-face units-per-em="2048" ascent="1649" descent="-399" />
<missing-glyph horiz-adv-x="395" />
<glyph unicode=" " horiz-adv-x="395" />
<glyph unicode="&#x09;" horiz-adv-x="395" />
<glyph unicode="&#xa0;" horiz-adv-x="395" />
<glyph unicode="!" horiz-adv-x="660" d="M236 79q0 19 7 36.5t19.5 30.5t29.5 20.5t38 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67 27t-27 67zM286 863v586h95v-586q0 -46 -1 -87t-2.5 -83.5t-4.5 -89.5t-6 -104h-67q-3 57 -6 104t-4.5 89.5 t-2.5 83.5t-1 87z" />
<glyph unicode="&#x22;" horiz-adv-x="751" d="M184 1150v299h85v-299l-9 -157q-2 -17 -9 -27t-25 -10q-14 0 -22 10t-10 27zM481 1150v299h85v-299l-9 -157q-2 -17 -9 -27t-25 -10q-14 0 -22 10t-11 27z" />
<glyph unicode="#" d="M88 484v10q0 5 2 15l3 16h223l84 399h-259l6 39q4 34 46 33h218l89 414q4 19 16.5 29t30.5 10h43l-97 -453h305l97 453h43q32 0 32 -31q0 -8 -1 -12l-89 -410h230l-6 -39q-5 -34 -46 -33h-189l-84 -399h231q31 0 31 -26l-5 -45h-267l-96 -454h-42q-14 0 -23.5 8.5 t-9.5 25.5q0 7 1 11l88 409h-305l-88 -413q-5 -23 -17.5 -32t-29.5 -9h-43l96 454h-187q-14 0 -22.5 6.5t-8.5 23.5zM398 525h305l84 399h-305z" />
<glyph unicode="$" d="M156 173l27 40q12 15 29 15q9 0 23 -11t33.5 -28t46 -37t62 -38t80.5 -31t102 -16l33 651q-70 22 -136 48.5t-117.5 68t-83.5 102t-32 153.5q0 71 26.5 136.5t78.5 117.5t127.5 83.5t173.5 34.5l9 172q1 14 8.5 23.5t22.5 9.5h37l-12 -206q103 -7 181 -45.5t143 -102.5 l-23 -35q-10 -17 -26 -17q-12 0 -32.5 16.5t-52.5 37t-79.5 39.5t-114.5 24l-30 -585q48 -15 97 -32t93.5 -37.5t82.5 -47t66 -62.5t44 -83t16 -108q0 -88 -30 -166t-85.5 -137t-137 -94.5t-185.5 -40.5l-12 -216q-1 -13 -8.5 -22.5t-20.5 -9.5h-37l12 248q-131 6 -228 56 t-171 132zM314 1098q0 -63 22.5 -108.5t61.5 -77.5t90 -55t108 -43l29 565q-78 -4 -136 -28.5t-97 -63t-58.5 -87.5t-19.5 -102zM625 67q82 5 146 33t107.5 73.5t66 105.5t22.5 129q0 68 -26 114.5t-69 79.5t-98.5 55t-117.5 41z" />
<glyph unicode="%" horiz-adv-x="1570" d="M89 1101q0 90 23.5 158.5t64.5 114t97 68.5t119 23t118.5 -23t97 -68.5t65.5 -114t24 -158.5q0 -89 -24.5 -157t-66.5 -113.5t-97 -68.5t-117 -23q-63 0 -119 23t-97 68.5t-64.5 113.5t-23.5 157zM168 1101q0 -79 18 -135t48.5 -91.5t71.5 -52.5t87 -17t87.5 17t73 52.5 t49.5 91.5t18 135t-18 135t-49.5 92.5t-73 53.5t-87.5 17t-87 -17t-71.5 -53.5t-48.5 -92.5t-18 -135zM209 0l1039 1431q6 8 15 13t23 5h69l-1041 -1431q-13 -18 -35 -18h-70zM872 344q0 90 24 158.5t64.5 114.5t96.5 69t120 23q63 0 118.5 -23t97 -69t65 -114.5 t23.5 -158.5q0 -89 -24.5 -157t-66 -113t-97 -68t-116.5 -23q-63 0 -119.5 23t-97 68t-64.5 113t-24 157zM950 344q0 -79 18 -134.5t49 -91.5t72 -52.5t88 -16.5q46 0 87.5 16.5t72 52.5t48.5 91.5t18 134.5t-18 136t-48.5 93t-72 53t-87.5 17t-87.5 -17t-72.5 -53t-49 -93 t-18 -136z" />
<glyph unicode="&#x26;" horiz-adv-x="1416" d="M109 371q0 74 26.5 141t72.5 122.5t109.5 99.5t137.5 72q-73 82 -109.5 159t-36.5 165q0 72 26 133t74.5 106t115.5 70.5t150 25.5q69 0 130 -23.5t106.5 -63.5t73 -92.5t29.5 -109.5q-14 -3 -26 -7q-24 -5 -37 -5q-8 0 -15 6.5t-10 17.5q-7 27 -24.5 61.5t-47.5 65.5 t-74.5 52.5t-104.5 21.5q-61 0 -111.5 -19t-86.5 -53.5t-56 -81.5t-20 -103q0 -84 43 -161t134 -165l456 -451q46 74 73.5 154t35.5 155q2 13 8 20.5t18 7.5h57q-2 -96 -36.5 -198t-97.5 -195l305 -299h-91q-18 0 -30 4t-28 19l-210 205q-46 -53 -101 -98t-119.5 -77.5 t-138 -50.5t-154.5 -18q-77 0 -151.5 25.5t-133.5 75t-95 122t-36 164.5zM208 377q0 -79 30 -137.5t78.5 -98t107 -59t116.5 -19.5q72 0 135.5 16.5t119.5 46t102.5 69t85.5 88.5l-470 461q-6 5 -11 12q-68 -29 -122.5 -69t-92.5 -88.5t-58.5 -105t-20.5 -116.5z" />
<glyph unicode="'" horiz-adv-x="453" d="M184 1150v299h85v-299l-9 -157q-2 -17 -9 -27t-25 -10q-14 0 -22 10t-10 27z" />
<glyph unicode="(" horiz-adv-x="614" d="M174 645q0 120 15 233t47.5 225t86.5 225.5t133 234.5l43 -27q13 -7 13 -22q0 -10 -7 -21q-122 -197 -184 -407t-62 -441q0 -229 62 -439.5t185 -406.5q7 -11 7 -21q0 -15 -14 -23l-43 -26q-79 121 -133 234t-86.5 225t-47.5 224.5t-15 232.5z" />
<glyph unicode=")" horiz-adv-x="614" d="M100 -222q0 10 8 21q123 196 184.5 406.5t61.5 439.5q0 230 -62 440.5t-183 407.5q-7 11 -8 21q0 14 14 22l43 27q78 -121 132 -234.5t87 -225.5t47.5 -225t14.5 -233t-14.5 -232.5t-47.5 -224.5t-87 -225.5t-132 -233.5l-43 26q-15 8 -15 23z" />
<glyph unicode="*" horiz-adv-x="819" d="M126 1357l27 46l193 -113q16 -10 26 -19.5t24 -27.5q-8 19 -11.5 34t-3.5 33v219h53v-218q0 -18 -2.5 -33t-10.5 -34q12 17 22.5 27t26.5 19l193 112l26 -46l-192 -112q-15 -9 -28.5 -14t-31.5 -7q18 -3 31 -7.5t29 -12.5l193 -112l-25 -47l-195 113q-15 9 -25.5 17.5 t-23.5 25.5q6 -18 9.5 -31.5t3.5 -30.5v-219h-53v218q0 17 2.5 30.5t10.5 30.5q-11 -15 -22 -23.5t-26 -17.5l-192 -111l-26 45l193 112q14 8 27 12.5t32 7.5q-19 3 -32 8t-27 13z" />
<glyph unicode="+" d="M112 649v75h440v462h80v-462h441v-75h-441v-464h-80v464h-440z" />
<glyph unicode="," horiz-adv-x="404" d="M113 87q0 36 24.5 61.5t64.5 25.5q44 0 68 -30t24 -79q0 -42 -11 -86t-31.5 -85.5t-49 -80.5t-63.5 -72l-15 15q-8 8 -8 18q0 5 3 10t7 9q10 10 26 30t32 47.5t28.5 60t16.5 69.5q-6 -2 -13.5 -3t-16.5 -1q-38 0 -62 25.5t-24 65.5z" />
<glyph unicode="-" horiz-adv-x="680" d="M102 566v83h477v-83h-477z" />
<glyph unicode="." horiz-adv-x="404" d="M108 79q0 19 7 36.5t19.5 30.5t29.5 20.5t38 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67 27t-27 67z" />
<glyph unicode="/" horiz-adv-x="730" d="M-5 -86l637 1538q15 38 55 38h42l-636 -1536q-8 -20 -24.5 -30t-33.5 -10h-40z" />
<glyph unicode="0" d="M75 725q0 190 40.5 329.5t111 230.5t164.5 135.5t202 44.5t202.5 -44.5t165 -135.5t111.5 -230.5t41 -329.5t-41 -329.5t-111.5 -230.5t-165.5 -135.5t-202 -44.5q-108 0 -202 44.5t-164.5 135.5t-111 230.5t-40.5 329.5zM175 725q0 -177 34 -301.5t91 -204t133 -115.5 t160 -36t160 36t133 115.5t91 204t34 301.5q0 176 -34 301t-91 204.5t-133 116t-160 36.5t-160 -36.5t-133 -116t-91 -204.5t-34 -301z" />
<glyph unicode="1" d="M252 1085l419 370h75v-1379h317v-76h-747v76h333v1175q0 35 3 74l-319 -284q-10 -9 -25 -9q-17 0 -26 12z" />
<glyph unicode="2" d="M132 0v35q0 11 5.5 23t14.5 20l494 501q61 62 113.5 120.5t91 118t60.5 121.5t22 133q0 80 -26.5 139t-71 97t-102.5 56t-122 18q-69 0 -126.5 -21t-102 -58t-73.5 -89t-41 -113q-10 -36 -41 -36q-2 0 -5 0.5t-5 0.5l-49 8q12 93 50.5 166t97 123t135 76t165.5 26 q83 0 158.5 -24t133 -72.5t91 -121.5t33.5 -172q0 -82 -25 -152t-68 -134.5t-100 -125.5t-119 -124l-454 -463q33 8 68.5 12t71.5 4h625q16 0 26 -9.5t10 -25.5v-57h-935z" />
<glyph unicode="3" d="M132 354l39 17q12 5 24 5q11 0 21 -5t15 -20l8 -20q6 -18 17 -45.5t29 -56.5t44.5 -58.5t65 -52.5t90.5 -37t119 -14q92 0 161.5 30.5t116 78t69.5 106.5t23 114q0 67 -21 124.5t-70 98.5t-129.5 65.5t-198.5 24.5v70q94 2 166 25t120 63t72.5 95.5t24.5 121.5 q0 77 -25.5 133.5t-68.5 93.5t-100.5 54t-119.5 17q-69 0 -126.5 -20.5t-101.5 -57t-73.5 -88.5t-43.5 -115q-8 -36 -38 -36q-7 0 -12 1l-50 8q13 93 51 166t96.5 123t135.5 76t166 26q83 0 156.5 -23t129.5 -69t88 -114.5t32 -158.5q0 -71 -22 -128t-60.5 -100t-90.5 -72 t-113 -44q160 -30 241.5 -123.5t81.5 -234.5q0 -89 -36 -165t-98.5 -131.5t-147 -86.5t-184.5 -31q-124 0 -206.5 33t-135.5 86.5t-83 119t-48 131.5z" />
<glyph unicode="4" d="M65 488l728 963h87v-957h265v-54q0 -11 -6.5 -17.5t-21.5 -6.5h-237v-416h-88v416h-683q-15 0 -23.5 6.5t-11.5 17.5zM171 494h621v758q0 17 1 37t4 40z" />
<glyph unicode="5" d="M152 113l28 40q10 15 30 15q13 0 38 -15.5t64.5 -34t93.5 -33.5t125 -15q84 0 157 27t126.5 78t84 126.5t30.5 170.5q0 78 -23 143.5t-69.5 112t-118 72.5t-167.5 26q-58 0 -124 -9t-139 -30l-64 20l114 642h651v-42q0 -20 -13.5 -34t-43.5 -14h-524l-87 -483 q69 17 130 24.5t117 7.5q113 0 199 -32t144 -90t87.5 -138t29.5 -174q0 -115 -40 -205.5t-108 -154t-159 -97t-194 -33.5q-60 0 -114.5 10.5t-102.5 28.5t-87.5 41.5t-70.5 48.5z" />
<glyph unicode="6" d="M139 461q0 85 43 192t142 240l395 532q17 24 52 24h86l-432 -564q-32 -42 -58.5 -79t-48.5 -73q60 62 143.5 97.5t181.5 35.5q93 0 172 -30.5t136 -86.5t89 -135t32 -178q0 -98 -35.5 -181t-98 -143.5t-151 -94t-193.5 -33.5q-101 0 -185 32.5t-144 94t-93 150t-33 200.5 zM234 437q0 -81 25.5 -149.5t71.5 -118t112.5 -77t149.5 -27.5q88 0 158.5 27.5t120.5 76t76.5 115.5t26.5 146q0 83 -26 150t-74 113.5t-113.5 72t-145.5 25.5q-90 0 -161 -31.5t-120 -81t-75 -113t-26 -128.5z" />
<glyph unicode="7" d="M133 1386v63h964v-44q0 -17 -3.5 -30t-9.5 -22l-664 -1316q-8 -16 -22 -26.5t-37 -10.5h-66l669 1311q13 27 31 48h-835q-11 0 -19 8t-8 19z" />
<glyph unicode="8" d="M123 383q0 80 23 142.5t65 108.5t100 76.5t127 46.5q-63 18 -112.5 50t-82.5 76t-50.5 97.5t-17.5 115.5q0 77 29 144.5t83.5 117.5t132 78.5t174.5 28.5q96 0 173.5 -28.5t132 -78.5t84 -118t29.5 -144q0 -61 -17.5 -115t-51.5 -98t-83 -76t-112 -50q70 -15 127.5 -46 t99.5 -77t65.5 -108.5t23.5 -142.5q0 -92 -35 -166t-97 -126t-148.5 -79.5t-190.5 -27.5t-191 27.5t-148.5 79.5t-96.5 126t-35 166zM223 384q0 -73 26.5 -132t75.5 -101.5t117.5 -66t151.5 -23.5t151 23.5t117 66t76 101.5t27 132q0 95 -35 158.5t-89.5 101.5t-120 54 t-126.5 16t-127 -16t-120 -54t-89 -101.5t-35 -158.5zM270 1095q0 -58 19 -112.5t59 -97t101 -67.5t145 -25q83 0 144 25t101 67.5t58.5 96.5t18.5 113q0 62 -21.5 116t-62.5 94t-101 62.5t-137 22.5t-137.5 -22.5t-102 -62.5t-63 -94t-21.5 -116z" />
<glyph unicode="9" d="M176 1030q0 93 34.5 172.5t96 138t146 91.5t184.5 33q96 0 176.5 -32.5t138.5 -92.5t90 -143.5t32 -185.5q0 -56 -11.5 -107.5t-34.5 -102.5t-56 -105t-75 -115l-380 -557q-15 -24 -50 -24h-88l428 598q31 43 57 81.5t47 74.5q-59 -66 -143.5 -102t-180.5 -36 q-89 0 -164.5 29.5t-130 83.5t-85.5 130.5t-31 170.5zM273 1036q0 -80 25 -144t69.5 -108.5t107.5 -68t139 -23.5q87 0 155.5 30t115.5 78t71 108t24 121q0 79 -25.5 144.5t-71.5 112t-109 72.5t-138 26q-80 0 -147 -25.5t-114.5 -71.5t-74.5 -110t-27 -141z" />
<glyph unicode=":" horiz-adv-x="486" d="M148 79q0 19 7.5 36.5t20 30.5t29.5 20.5t38 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67.5 27t-27.5 67zM148 895q0 19 7.5 36.5t20 30.5t29.5 20.5t38 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5 t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67.5 27t-27.5 67z" />
<glyph unicode=";" horiz-adv-x="486" d="M148 895q0 19 7.5 36.5t20 30.5t29.5 20.5t38 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67.5 27t-27.5 67zM154 87q0 36 24.5 61.5t64.5 25.5q44 0 68 -30t24 -79q0 -42 -11 -86t-31.5 -85.5t-49 -80.5 t-63.5 -72l-15 15q-8 8 -8 18q0 5 3 10t7 9q10 10 26 30t32 47.5t28.5 60t16.5 69.5q-6 -2 -13.5 -3t-16.5 -1q-38 0 -62 25.5t-24 65.5z" />
<glyph unicode="&#x3c;" d="M164 667v42l768 394v-67q0 -11 -6 -19t-22 -17l-566 -286q-34 -17 -74 -27q43 -9 74 -25l566 -288q15 -8 21.5 -16.5t6.5 -19.5v-67z" />
<glyph unicode="=" d="M170 494v75h847v-75h-847zM170 814v76h847v-76h-847z" />
<glyph unicode="&#x3e;" d="M257 271v67q0 11 6 20t21 16l567 288q32 16 73 25q-20 5 -38 12t-35 15l-567 286q-27 14 -27 36v67l768 -394v-42z" />
<glyph unicode="?" horiz-adv-x="758" d="M34 1323q28 28 62.5 53.5t76 45.5t90.5 31.5t107 11.5q72 0 135 -21.5t111 -61.5t76 -97.5t28 -129.5q0 -78 -24 -134t-61 -98.5t-80 -75t-80.5 -60.5t-63.5 -57t-28 -63l-12 -168h-67l-5 175v5q0 42 24.5 73.5t61 61.5t79 60.5t79 69t61 88.5t24.5 119q0 55 -21.5 98.5 t-58.5 74t-85 46t-101 15.5q-68 0 -117 -17.5t-83 -39.5t-53.5 -40t-26.5 -18q-15 0 -23 12zM241 79q0 19 7 36.5t20 30.5t29.5 20.5t37.5 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67 27t-27 67z" />
<glyph unicode="@" horiz-adv-x="1682" d="M111 562q0 171 60 317.5t164.5 254t244 168.5t298.5 61q137 0 263 -42.5t222.5 -127t154.5 -209.5t58 -290q0 -112 -29.5 -204t-81.5 -158t-121.5 -102.5t-148.5 -36.5q-90 0 -135.5 47.5t-47.5 136.5q-57 -95 -129.5 -137.5t-156.5 -42.5q-57 0 -99 20t-70 54.5 t-41.5 81.5t-13.5 102q0 87 33 174.5t97 157.5t157.5 114t211.5 44q54 0 102 -9t86 -27l-93 -355q-12 -47 -18 -84.5t-6 -67.5q0 -45 11.5 -73t30.5 -44.5t43.5 -22t50.5 -5.5q58 0 111.5 30.5t94.5 87.5t65 138t24 181q0 152 -49.5 265t-135 188t-199 111.5t-241.5 36.5 q-140 0 -266 -54t-220.5 -151.5t-150.5 -232t-56 -295.5q0 -181 58 -319t157.5 -230.5t232 -140t281.5 -47.5q152 0 277.5 35t227.5 101q7 5 18 5q14 0 20 -14l16 -38q-115 -76 -253 -117t-306 -41q-169 0 -315 54t-254.5 157t-171 252.5t-62.5 342.5zM582 457 q0 -41 10 -76.5t30.5 -61t50.5 -40.5t71 -15q37 0 76.5 12.5t76 44.5t68 87t53.5 140l82 317q-25 7 -51 11t-61 4q-92 0 -167.5 -37.5t-128 -98t-81.5 -135.5t-29 -152z" />
<glyph unicode="A" horiz-adv-x="1319" d="M15 0l593 1449h105l593 -1449h-81q-14 0 -23.5 7.5t-14.5 20.5l-171 421h-712l-170 -421q-4 -11 -14 -19.5t-25 -8.5h-80zM336 526h649l-296 732q-7 17 -14 39.5t-15 47.5q-7 -25 -14 -47t-14 -41z" />
<glyph unicode="B" horiz-adv-x="1312" d="M215 0v1449h417q124 0 214.5 -24.5t150 -72t88.5 -116.5t29 -156q0 -57 -20 -110.5t-58 -98.5t-92.5 -78t-125.5 -51q171 -26 263.5 -113.5t92.5 -232.5q0 -92 -33 -165.5t-95.5 -125t-153.5 -78.5t-207 -27h-470zM319 84h364q191 0 288.5 82.5t97.5 231.5q0 69 -26 124 t-75 93t-121 58.5t-163 20.5h-365v-610zM319 771h315q100 0 171.5 25.5t117 67.5t67 95.5t21.5 109.5q0 146 -93 221.5t-286 75.5h-313v-595z" />
<glyph unicode="C" horiz-adv-x="1440" d="M127 725q0 165 51.5 301t145.5 234t224.5 151.5t288.5 53.5q79 0 144.5 -11.5t122 -33.5t107 -55t98.5 -76l-32 -46q-8 -12 -26 -12q-9 0 -23.5 10.5t-36.5 26.5t-53 35t-74 35t-99.5 26.5t-127.5 10.5q-132 0 -243 -45.5t-190.5 -130t-124.5 -205t-45 -269.5 q0 -154 44.5 -274.5t122 -204t183.5 -128t230 -44.5q78 0 139 10t112 30.5t95 50.5t87 69q5 4 10 7t11 3q10 0 17 -7l41 -44q-45 -48 -98 -86.5t-116 -66t-138.5 -42t-165.5 -14.5q-151 0 -276 52.5t-215 149.5t-140 234t-50 305z" />
<glyph unicode="D" horiz-adv-x="1556" d="M215 0v1449h528q155 0 282 -50t218 -144.5t141.5 -228.5t50.5 -301q0 -168 -50.5 -302t-141.5 -228.5t-218 -144.5t-282 -50h-528zM321 85h422q131 0 239 43t184 125t118 200.5t42 271.5q0 152 -42 270.5t-118 200.5t-184 125t-239 43h-422v-1279z" />
<glyph unicode="E" horiz-adv-x="1210" d="M215 0v1449h868v-87h-762v-586h634v-85h-634v-604h762v-87h-868z" />
<glyph unicode="F" horiz-adv-x="1171" d="M215 0v1449h868v-87h-762v-609h660v-87h-660v-666h-106z" />
<glyph unicode="G" horiz-adv-x="1532" d="M127 725q0 168 51 304.5t145.5 233.5t229 149.5t301.5 52.5q83 0 153 -11t130.5 -33t113 -54.5t100.5 -74.5l-28 -45q-9 -15 -26 -15q-9 0 -17 4q-15 6 -44.5 28.5t-79 47t-124.5 44t-181 19.5q-141 0 -255 -45t-194 -129t-124 -204.5t-44 -271.5q0 -154 44.5 -275.5 t123.5 -206t190 -129.5t246 -45q75 0 136 7.5t114 23t100.5 37.5t95.5 49v391h-278q-11 0 -19 7t-8 16v57h400v-515q-54 -38 -112.5 -67.5t-125 -49.5t-143 -30.5t-168.5 -10.5q-157 0 -286 52.5t-222 149.5t-144 234t-51 305z" />
<glyph unicode="H" horiz-adv-x="1548" d="M215 0v1449h106v-676h907v676h105v-1449h-105v694h-907v-694h-106z" />
<glyph unicode="I" horiz-adv-x="612" d="M253 0v1449h105v-1449h-105z" />
<glyph unicode="J" horiz-adv-x="929" d="M91 13q2 14 3.5 28.5t2.5 29.5q2 9 8 16t20 7q9 0 22 -3.5t31 -7.5t41 -7.5t53 -3.5q78 0 140.5 24.5t106.5 75t67 128t23 181.5v968h106v-966q0 -122 -30.5 -215t-86 -156.5t-136 -95.5t-180.5 -32q-46 0 -93.5 7t-97.5 22z" />
<glyph unicode="K" horiz-adv-x="1351" d="M246 0v1451h104v-671h86q19 0 33.5 1.5t26.5 6.5t22 12t22 18l584 601q16 16 30 23t35 7h85l-633 -650q-19 -20 -34 -31.5t-34 -18.5q22 -6 39 -19t34 -34l668 -696h-85q-27 0 -38 7.5t-24 20.5l-613 626q-11 11 -20.5 19.5t-21 14t-28 8t-41.5 2.5h-93v-698h-104z" />
<glyph unicode="L" horiz-adv-x="1047" d="M215 0v1449h104v-1360h688v-89h-792z" />
<glyph unicode="M" horiz-adv-x="1861" d="M215 0v1449h72q14 0 22.5 -3t17.5 -16l584 -1008q15 -29 27 -62q6 16 12.5 32.5t15.5 30.5l569 1007q8 13 16.5 16t22.5 3h73v-1449h-93v1235q0 27 4 56l-571 -1012q-14 -27 -41 -27h-16q-26 0 -41 27l-586 1013q3 -30 3 -57v-1235h-91z" />
<glyph unicode="N" horiz-adv-x="1548" d="M215 0v1449h51q14 0 22.5 -3.5t17.5 -15.5l938 -1256q-3 31 -3 59v1216h92v-1449h-50q-24 0 -38 20l-942 1258q3 -31 3 -58v-1220h-91z" />
<glyph unicode="O" horiz-adv-x="1633" d="M126 725q0 167 50.5 303.5t142 233.5t218.5 150t279 53q155 0 282 -52.5t218 -150t141 -234t50 -303.5q0 -168 -50 -304.5t-141 -233.5t-218 -149.5t-282 -52.5q-153 0 -279.5 52.5t-218 149.5t-142 233.5t-50.5 304.5zM233 725q0 -153 42.5 -273t120 -204t184.5 -128 t236 -44q131 0 238.5 44t184 128t118.5 204t42 273q0 152 -42 272.5t-118.5 204.5t-184 128.5t-238.5 44.5q-129 0 -236 -44.5t-184.5 -128.5t-120 -204.5t-42.5 -272.5z" />
<glyph unicode="P" horiz-adv-x="1215" d="M246 0v1449h374q255 0 384.5 -111.5t129.5 -318.5q0 -95 -35.5 -175t-102 -138t-162 -90t-214.5 -32h-270v-584h-104zM350 668h270q96 0 171.5 26.5t128.5 73.5t81 111t28 140q0 167 -103 257t-306 90h-270v-698z" />
<glyph unicode="Q" horiz-adv-x="1633" d="M126 725q0 167 50.5 303.5t142 233.5t218.5 150t279 53q155 0 282 -52.5t218 -150t141 -234t50 -303.5q0 -110 -22 -206.5t-63 -178t-99.5 -146t-132.5 -110.5l377 -403h-88q-20 0 -37 5.5t-29 19.5l-309 334q-65 -27 -136.5 -41t-151.5 -14q-153 0 -279.5 52.5 t-218 149.5t-142 233.5t-50.5 304.5zM233 725q0 -153 42.5 -273t120 -204t184.5 -128t236 -44q131 0 238.5 44t184 128t118.5 204t42 273q0 152 -42 272.5t-118.5 204.5t-184 128.5t-238.5 44.5q-129 0 -236 -44.5t-184.5 -128.5t-120 -204.5t-42.5 -272.5z" />
<glyph unicode="R" horiz-adv-x="1292" d="M246 0v1449h369q251 0 375 -97t124 -284q0 -83 -28.5 -151.5t-82.5 -120.5t-129.5 -85t-171.5 -43q25 -15 44 -41l499 -627h-91q-16 0 -28 6t-23 21l-464 587q-17 23 -37 32t-62 9h-190v-655h-104zM350 733h252q96 0 172.5 23t129 66t80.5 103.5t28 136.5 q0 155 -101.5 229.5t-295.5 74.5h-265v-633z" />
<glyph unicode="S" horiz-adv-x="1070" d="M89 173l29 45q12 15 28 15q9 0 23.5 -12t35 -30t49.5 -39t66.5 -39t87 -30t111.5 -12q86 0 153.5 26t114.5 71t71.5 107t24.5 133q0 77 -31.5 126.5t-82.5 82.5t-116 55.5t-133.5 44t-133.5 48.5t-116.5 68t-82.5 103t-31 156q0 73 27.5 140t80.5 119t131.5 83t178.5 31 q113 0 202.5 -35.5t163.5 -109.5l-25 -47q-9 -17 -26 -18q-13 0 -34 19t-57 42t-90 42.5t-133 19.5t-138.5 -22.5t-100 -61.5t-61.5 -90t-21 -107q0 -74 31 -122t82.5 -82t116.5 -57t133.5 -45.5t133.5 -49.5t116.5 -68t82.5 -101t31 -149q0 -91 -31 -171.5t-90.5 -140 t-145.5 -93.5t-197 -34q-143 0 -246.5 50.5t-181.5 138.5z" />
<glyph unicode="T" horiz-adv-x="1197" d="M36 1360v89h1125v-89h-509v-1360h-104v1360h-512z" />
<glyph unicode="U" horiz-adv-x="1502" d="M202 553v896h105v-895q0 -101 30.5 -188.5t87 -152.5t139 -101.5t187.5 -36.5q104 0 186.5 36t140 100.5t87.5 152.5t30 189v896h104v-896q0 -120 -37.5 -224t-109 -181t-173 -121t-228.5 -44t-229 44t-173 121t-109 181t-38 224z" />
<glyph unicode="V" horiz-adv-x="1319" d="M15 1449h83q14 0 23.5 -7.5t14.5 -20.5l494 -1202q19 -47 32 -100q11 55 29 100l493 1202q5 11 14.5 19.5t24.5 8.5h82l-598 -1449h-94z" />
<glyph unicode="W" horiz-adv-x="2021" d="M17 1449h87q30 0 38 -28l366 -1191q6 -20 10.5 -43.5t9.5 -49.5q5 26 10.5 49.5t12.5 43.5l410 1191q4 11 14 19.5t24 8.5h29q14 0 23.5 -7.5t14.5 -20.5l410 -1191q7 -20 12.5 -42.5t10.5 -48.5q5 25 9 48t11 43l365 1191q3 11 14 19.5t25 8.5h80l-456 -1449h-94 l-428 1257q-8 25 -14 53q-6 -28 -15 -53l-429 -1257h-93z" />
<glyph unicode="X" horiz-adv-x="1227" d="M17 0l524 743l-500 706h103q14 0 21 -6t12 -15l440 -634q3 8 7 15.5t9 15.5l425 602q6 8 13 15t18 7h100l-501 -700l521 -749h-103q-14 0 -22.5 8.5t-13.5 17.5l-457 667q-4 -15 -14 -29l-448 -638q-7 -9 -16.5 -17.5t-21.5 -8.5h-96z" />
<glyph unicode="Y" horiz-adv-x="1227" d="M26 1449h91q14 0 22.5 -6.5t17.5 -19.5l414 -665q14 -24 24.5 -46t18.5 -44q8 23 18.5 44.5t24.5 45.5l414 665q6 11 15.5 18.5t23.5 7.5h92l-535 -851v-598h-106v598z" />
<glyph unicode="Z" horiz-adv-x="1296" d="M118 0v38q0 19 12 37l922 1287h-908v87h1047v-36q0 -22 -14 -42l-920 -1284h926v-87h-1065z" />
<glyph unicode="[" horiz-adv-x="614" d="M179 -270v1823h326v-36q0 -13 -9 -21.5t-23 -8.5h-211v-1691h211q14 0 23 -8t9 -21v-37h-326z" />
<glyph unicode="\" horiz-adv-x="732" d="M-8 1490h42q40 0 55 -38l637 -1538h-40q-17 0 -33.5 9.5t-24.5 30.5z" />
<glyph unicode="]" horiz-adv-x="614" d="M110 -233q0 13 8 21t22 8h211v1691h-211q-14 0 -22 8t-8 22v36h324v-1823h-324v37z" />
<glyph unicode="^" d="M208 819l349 630h61l350 -630h-70q-11 0 -20 7t-14 17l-247 446q-9 17 -16 32.5t-12 32.5q-5 -16 -12 -32t-16 -33l-246 -446q-5 -8 -13 -16t-21 -8h-73z" />
<glyph unicode="_" horiz-adv-x="806" d="M0 -210h807v-70h-807v70z" />
<glyph unicode="`" horiz-adv-x="599" d="M88 1465h94q25 0 37 -7t24 -25l160 -244h-55q-12 0 -21 3.5t-17 13.5z" />
<glyph unicode="a" horiz-adv-x="996" d="M110 247q0 65 36.5 120t115 96t202 65.5t296.5 28.5v107q0 141 -61 217t-181 76q-74 0 -125.5 -20.5t-87.5 -45t-58.5 -45t-37.5 -20.5q-20 0 -31 19l-17 29q80 80 168 121t199 41q82 0 143.5 -26t102 -74.5t61 -117.5t20.5 -154v-664h-39q-31 0 -38 29l-14 130 q-42 -41 -83.5 -74t-86.5 -55.5t-97.5 -34t-114.5 -11.5q-52 0 -101.5 15t-87 47t-60.5 81.5t-23 119.5zM204 251q0 -51 17 -88.5t44.5 -61.5t64.5 -35.5t77 -11.5q59 0 108.5 13t92 36t79.5 54.5t73 68.5v266q-145 -4 -250.5 -22t-173.5 -49t-100 -73.5t-32 -96.5z" />
<glyph unicode="b" horiz-adv-x="1118" d="M176 0v1490h98v-649q68 90 157 142t201 52q187 0 292 -129.5t105 -389.5q0 -112 -29 -208.5t-86 -167.5t-139.5 -112t-189.5 -41q-106 0 -183 41.5t-133 122.5l-6 -125q-3 -26 -27 -26h-60zM274 222q58 -88 129 -123.5t163 -35.5q90 0 158 33t113.5 93t68.5 143.5 t23 183.5q0 227 -84 334t-241 107q-101 0 -183 -52t-147 -145v-538z" />
<glyph unicode="c" horiz-adv-x="931" d="M90 510q0 117 31 213t89.5 165.5t144 108t196.5 38.5q99 0 176.5 -31.5t134.5 -85.5l-25 -35q-5 -5 -10 -9t-13 -4q-10 0 -28 14t-47.5 30.5t-74 30t-108.5 13.5q-88 0 -156 -31t-114.5 -89.5t-71.5 -141.5t-25 -186q0 -108 25.5 -190.5t71.5 -139.5t111.5 -87t145.5 -30 q74 0 123.5 17.5t81.5 38t51 38t30 17.5q13 0 21 -10l27 -33q-24 -31 -60 -57.5t-81 -46t-97.5 -30t-110.5 -10.5q-97 0 -177.5 35t-138 102t-90 164.5t-32.5 221.5z" />
<glyph unicode="d" horiz-adv-x="1118" d="M89 507q0 112 29 208.5t86 167.5t139.5 112t190.5 41q103 0 178.5 -38.5t131.5 -111.5v604h98v-1490h-54q-26 0 -30 27l-10 160q-68 -92 -158.5 -146t-203.5 -54q-187 0 -292 130t-105 390zM189 507q0 -227 84 -334t241 -107q101 0 183 52t147 145v538 q-59 87 -130.5 122.5t-161.5 35.5t-157.5 -32.5t-113 -92.5t-69 -143.5t-23.5 -183.5z" />
<glyph unicode="e" horiz-adv-x="1046" d="M90 530q0 110 31.5 202.5t90 159.5t144 105t194.5 38q86 0 159 -29.5t127 -86.5t84 -140t30 -190q0 -23 -6.5 -31t-20.5 -8h-737v-20q0 -115 27 -201.5t76 -145.5t118.5 -88.5t155.5 -29.5q77 0 133.5 16.5t94.5 37.5t60.5 38t33.5 17q13 0 20 -10l27 -33 q-25 -31 -65.5 -57.5t-90 -45.5t-106.5 -30t-114 -11q-104 0 -190 36t-147.5 106t-95 170.5t-33.5 230.5zM190 612h672q0 82 -22.5 147t-63.5 110t-98 69.5t-127 24.5q-79 0 -141.5 -25t-108 -71t-74 -110.5t-37.5 -144.5z" />
<glyph unicode="f" horiz-adv-x="659" d="M31 947v40h173v129q0 87 22.5 153t63.5 110t98.5 66t127.5 22q32 0 64 -5.5t57 -15.5l-3 -47q-1 -14 -20 -15q-12 0 -33 3.5t-52 3.5q-50 0 -92.5 -15t-73 -48t-47.5 -85.5t-17 -129.5v-126h331v-73h-329v-914h-97v912l-144 10q-29 1 -29 25z" />
<glyph unicode="g" horiz-adv-x="1033" d="M77 -108q0 81 53 139.5t146 90.5q-51 17 -81 50t-30 91q0 22 8 45.5t24.5 46.5t39.5 43.5t54 36.5q-73 42 -113.5 111.5t-40.5 163.5q0 74 26 133.5t74 102.5t115.5 66.5t149.5 23.5q67 0 123.5 -16t101.5 -46h261v-34q0 -26 -29 -28l-154 -11q29 -39 44 -87.5t15 -103.5 q0 -74 -26.5 -134t-74 -102.5t-114 -66t-147.5 -23.5q-88 0 -160 27q-43 -25 -67.5 -59t-24.5 -65q0 -44 30.5 -67.5t81.5 -34.5t116 -14t132 -6.5t132 -13t115.5 -32.5t81.5 -64.5t31 -109.5q0 -63 -32 -122t-92 -104t-145 -72t-190 -27q-108 0 -188.5 22t-135.5 59.5 t-82.5 86.5t-27.5 104zM164 -96q0 -45 23 -83.5t67.5 -66.5t109 -44.5t148.5 -16.5q78 0 145 17.5t116.5 49t78 75.5t28.5 96q0 48 -25.5 77.5t-67.5 46t-96.5 23t-114.5 9.5t-120.5 6t-112.5 12q-39 -15 -72 -35t-57 -45t-37 -55t-13 -66zM227 708q0 -57 18.5 -104.5 t54 -81.5t86.5 -52.5t116 -18.5q66 0 117 18.5t85.5 52.5t52.5 81t18 105q0 57 -18.5 104.5t-53.5 81.5t-86 52.5t-115 18.5q-65 0 -116 -18.5t-86.5 -52.5t-54 -81.5t-18.5 -104.5z" />
<glyph unicode="h" horiz-adv-x="1107" d="M166 0v1490h97v-645q71 87 161.5 138.5t203.5 51.5q84 0 148 -26.5t106 -76.5t63.5 -121t21.5 -160v-651h-98v651q0 143 -65.5 224.5t-200.5 81.5q-100 0 -186 -51.5t-154 -141.5v-764h-97z" />
<glyph unicode="i" horiz-adv-x="486" d="M154 1370q0 18 7 35t19.5 29.5t28.5 19.5t35 7q18 0 34.5 -7t28.5 -19.5t20 -29t8 -35.5q0 -18 -8 -34t-20 -28.5t-28.5 -19.5t-34.5 -7t-34.5 7t-29 19.5t-19.5 28.5t-7 34zM195 0v1019h97v-1019h-97z" />
<glyph unicode="j" horiz-adv-x="482" d="M-51 -356l5 49q1 12 14 12q8 0 23 -4t41 -4q83 0 123 45t40 128v1149h97v-1149q0 -53 -15.5 -98t-45.5 -78.5t-75.5 -52.5t-107.5 -19q-30 0 -53 5.5t-46 16.5zM154 1370q0 18 7 35t19.5 29.5t28.5 19.5t35 7q18 0 34.5 -7t28.5 -19.5t20 -29t8 -35.5q0 -18 -8 -34 t-20 -28.5t-28.5 -19.5t-34.5 -7t-34.5 7t-29 19.5t-19.5 28.5t-7 34z" />
<glyph unicode="k" horiz-adv-x="1007" d="M176 0v1490h98v-908h48q14 0 26.5 4t28.5 19l408 388q11 11 23 18.5t31 7.5h86l-450 -427q-10 -10 -19.5 -19t-20.5 -15q16 -8 27.5 -19.5t23.5 -24.5l472 -514h-85q-14 0 -25 5.5t-23 18.5l-428 458q-17 18 -31.5 25t-44.5 7h-47v-514h-98z" />
<glyph unicode="l" horiz-adv-x="486" d="M195 0v1490h97v-1490h-97z" />
<glyph unicode="m" horiz-adv-x="1629" d="M166 0v1019h53q27 0 31 -26l9 -147q30 42 63.5 76.5t72 60t82 39t91.5 13.5q112 0 178.5 -65t90.5 -180q18 63 51.5 109t76.5 76.5t93.5 45t103.5 14.5q76 0 136.5 -25t103 -74t65 -121t22.5 -164v-651h-98v651q0 150 -64.5 228t-184.5 78q-53 0 -102 -19t-86.5 -57.5 t-59.5 -96t-22 -133.5v-651h-97v651q0 148 -59.5 227t-172.5 79q-83 0 -154 -49.5t-126 -137.5v-770h-97z" />
<glyph unicode="n" horiz-adv-x="1107" d="M166 0v1019h53q27 0 31 -26l9 -153q70 88 162.5 141.5t206.5 53.5q84 0 148 -26.5t106 -76.5t63.5 -121t21.5 -160v-651h-98v651q0 143 -65.5 224.5t-200.5 81.5q-100 0 -186 -51.5t-154 -141.5v-764h-97z" />
<glyph unicode="o" horiz-adv-x="1107" d="M89 510q0 120 31.5 216.5t91 165.5t146 106t196.5 37t196.5 -37t145.5 -106t90.5 -165.5t31.5 -216.5t-31.5 -216t-90.5 -165t-145.5 -105.5t-196.5 -36.5t-196.5 36.5t-146 105.5t-91 165t-31.5 216zM189 510q0 -102 23.5 -184.5t69 -141t113.5 -90t159 -31.5t159 31.5 t113.5 90t68.5 141t23 184.5q0 101 -23 184t-68.5 142t-113.5 90.5t-159 31.5t-159 -31.5t-113.5 -90.5t-69 -142t-23.5 -184z" />
<glyph unicode="p" horiz-adv-x="1095" d="M166 -360v1379h53q13 0 21.5 -5.5t9.5 -20.5l9 -157q68 92 158.5 146t203.5 54q188 0 292.5 -130t104.5 -390q0 -112 -29.5 -208.5t-85.5 -167.5t-138.5 -112t-190.5 -41q-104 0 -180 37.5t-131 112.5v-497h-97zM263 223q58 -88 129.5 -124t162.5 -36q90 0 157.5 33 t113 93t69 143.5t23.5 183.5q0 227 -83.5 334t-241.5 107q-101 0 -183.5 -52.5t-146.5 -146.5v-535z" />
<glyph unicode="q" horiz-adv-x="1118" d="M89 507q0 112 29 208.5t86 167.5t139.5 112t190.5 41q105 0 182.5 -40t132.5 -117l9 114q1 26 30 26h54v-1379h-98v541q-68 -90 -157.5 -142t-200.5 -52q-187 0 -292 130t-105 390zM189 507q0 -227 84 -334t241 -107q101 0 183 52t147 145v539q-55 84 -128 120.5 t-164 36.5q-90 0 -157.5 -32.5t-113 -92.5t-69 -143.5t-23.5 -183.5z" />
<glyph unicode="r" horiz-adv-x="813" d="M166 0v1019h51q17 0 25 -7t9 -25l8 -215q49 124 131 194t202 70q46 0 85 -9.5t74 -28.5l-14 -67q-3 -16 -20 -17q-6 0 -17.5 4.5t-28.5 9.5t-41.5 9t-56.5 4q-116 0 -190 -71.5t-120 -206.5v-663h-97z" />
<glyph unicode="s" horiz-adv-x="880" d="M91 108l24 34q5 8 11 12.5t17 4.5q13 0 33 -16.5t51 -35.5t77.5 -35.5t115.5 -16.5q65 0 114 18t81.5 49t49.5 72.5t17 87.5q0 51 -24.5 84.5t-64.5 57t-90.5 40t-104.5 33t-104.5 36t-90.5 49t-64.5 72t-24.5 106.5q0 54 23.5 104t67 88t106 60.5t140.5 22.5 q93 0 165 -26.5t133 -81.5l-22 -34q-7 -14 -22 -14q-11 0 -29.5 12.5t-47.5 28.5t-71.5 29t-103.5 13q-55 0 -101 -16t-78 -42.5t-50 -62t-18 -74.5q0 -48 24.5 -80t64.5 -54.5t90.5 -38.5t104 -32.5t104 -36.5t90.5 -50t64.5 -73t24.5 -104q0 -67 -24 -124t-69.5 -99 t-112 -66.5t-151.5 -24.5q-108 0 -186 34.5t-139 89.5z" />
<glyph unicode="t" horiz-adv-x="730" d="M53 938v38l174 12l25 365q1 9 7.5 16t18.5 7h46v-389h320v-73h-320v-691q0 -42 10.5 -72t29.5 -49.5t44.5 -29t55.5 -9.5q37 0 63.5 11t46 24t31.5 23.5t20 10.5t16 -10l27 -43q-39 -43 -99 -69t-125 -26q-103 0 -161 57t-58 177v696h-146q-11 0 -18.5 6.5t-7.5 17.5z " />
<glyph unicode="u" horiz-adv-x="1107" d="M140 368v651h99v-651q0 -143 65.5 -225t199.5 -82q99 0 185 51t155 141v766h98v-1019h-54q-29 0 -30 27l-9 151q-71 -88 -163.5 -141t-206.5 -53q-85 0 -148.5 26.5t-105.5 76.5t-63.5 121t-21.5 160z" />
<glyph unicode="v" horiz-adv-x="997" d="M26 1019h76q14 0 23 -7.5t13 -17.5l336 -804q10 -24 15 -45l11 -43q5 22 10.5 44t14.5 44l338 804q5 11 14 18t21 7h74l-430 -1019h-86z" />
<glyph unicode="w" horiz-adv-x="1509" d="M23 1019h74q14 0 23.5 -7.5t12.5 -17.5l257 -804q7 -24 11 -45l9 -43q5 22 11 43.5t14 44.5l274 811q7 23 28 23h40q23 0 30 -23l269 -811q15 -46 25 -89q4 22 8.5 44t12.5 45l258 804q8 25 35 25h72l-341 -1019h-72q-16 0 -23 22l-280 827q-5 15 -9 30.5t-7 30.5 q-3 -15 -7 -30.5t-9 -30.5l-282 -827q-6 -22 -25 -22h-68z" />
<glyph unicode="x" horiz-adv-x="943" d="M36 0l368 521l-354 498h93q14 0 21 -6t12 -15l299 -432q4 17 18 37l279 394q5 9 13 15.5t18 6.5h90l-356 -493l370 -526h-93q-14 0 -22.5 8.5t-13.5 17.5l-309 450q-5 -20 -15 -35l-297 -417q-7 -9 -15 -16.5t-19 -7.5h-87z" />
<glyph unicode="y" horiz-adv-x="997" d="M23 1019h80q15 0 24 -7.5t13 -17.5l343 -792q6 -15 11 -31t9 -33q5 16 10.5 32t11.5 32l339 792q5 11 14.5 18t20.5 7h75l-586 -1347q-6 -14 -16 -23t-28 -9h-70l180 398z" />
<glyph unicode="z" horiz-adv-x="925" d="M76 0v39q0 17 15 38l640 865h-621v77h736v-41q0 -22 -15 -39l-637 -862h626v-77h-744z" />
<glyph unicode="{" horiz-adv-x="614" d="M65 610v63q36 0 65.5 11t50.5 32t32 49.5t11 61.5q0 56 -9.5 109.5t-21 107t-21 107t-9.5 111.5q0 62 19.5 115.5t56 92.5t90.5 61t122 22h56v-43q0 -11 -9 -17t-17 -6h-34q-44 0 -80 -15.5t-62 -44t-41 -69.5t-15 -91q0 -58 9 -113.5t20.5 -109.5t20.5 -107.5t9 -108.5 q0 -38 -12.5 -69.5t-33.5 -55t-48.5 -39.5t-56.5 -23q30 -6 57 -22t48 -40t33.5 -55t12.5 -69q0 -54 -9 -108t-20.5 -108.5t-20.5 -109.5t-9 -113q0 -50 15 -91t41 -69.5t62 -44t80 -15.5h34q8 0 17 -6t9 -17v-43h-56q-68 0 -122 22t-90.5 61.5t-56 92.5t-19.5 116 q0 57 9.5 110.5t21 107t21 106.5t9.5 110q0 34 -11 62t-32 49t-50.5 32t-65.5 11z" />
<glyph unicode="|" horiz-adv-x="614" d="M268 -360v1913h77v-1913h-77z" />
<glyph unicode="}" horiz-adv-x="614" d="M108 -227q0 11 8 17t17 6h34q44 0 80.5 15.5t62.5 44t41 69.5t15 91q0 57 -9.5 112.5t-20.5 110t-20.5 108t-9.5 108.5q0 38 12.5 69t33.5 55t48 40t57 22q-30 7 -57 23t-48 39.5t-33.5 55.5t-12.5 69q0 54 9.5 108t20.5 108t20.5 109t9.5 114q0 50 -15 91t-41 69.5 t-62.5 44t-80.5 15.5h-34q-9 0 -17 6t-8 17v43h56q68 0 121.5 -22t90.5 -61t56.5 -92.5t19.5 -115.5q0 -57 -10 -111t-21 -107.5t-21 -106.5t-10 -110q0 -34 11.5 -62t32.5 -49t50 -32t65 -11v-63q-36 0 -65 -11t-50 -32t-32.5 -49.5t-11.5 -61.5q0 -56 10 -109.5t21 -107 t21 -107t10 -110.5q0 -62 -19.5 -115.5t-56.5 -93t-91 -61.5t-121 -22h-56v43z" />
<glyph unicode="~" d="M143 444q0 56 16.5 104.5t47.5 84.5t75.5 56.5t101.5 20.5q53 0 108 -20t108 -44.5t103.5 -44.5t94.5 -20q38 0 69 13.5t52.5 38t33.5 58.5t12 74h79q0 -56 -16 -104.5t-47 -84t-76 -56t-102 -20.5q-52 0 -107 20t-108.5 44.5t-104 44.5t-94.5 20q-39 0 -69 -14 t-51.5 -38.5t-33.5 -58.5t-13 -74h-79z" />
<glyph unicode="&#xa2;" d="M163 510q0 115 32.5 210.5t95.5 164.5t155 108.5t209 41.5l11 210q1 13 8.5 23t21.5 10h37l-12 -246q89 -8 158 -37.5t123 -76.5l-24 -34q-5 -5 -9.5 -9t-13.5 -4t-26 12t-45 27t-69 28.5t-98 18.5l-44 -895q77 2 129 19.5t86.5 37.5t54.5 36.5t31 16.5q8 0 12 -2t8 -7 l25 -32q-24 -30 -59 -55t-80 -44t-98.5 -30.5t-112.5 -13.5l-11 -215q-1 -13 -8.5 -22.5t-21.5 -9.5h-37l12 248q-98 6 -179 44t-139.5 104.5t-90 160t-31.5 212.5zM259 510q0 -100 24 -179.5t69.5 -136.5t109.5 -89.5t144 -39.5l45 893q-94 -3 -167 -35t-123 -90t-76 -140 t-26 -183z" />
<glyph unicode="&#xa3;" d="M69 647v33q0 15 9.5 25.5t26.5 10.5h169v301q0 95 27 177t79.5 142t132 94t183.5 34q78 0 137.5 -19t104 -51.5t76.5 -76.5t54 -93l-39 -23q-9 -5 -22 -5q-17 0 -31 17q-20 32 -43.5 62.5t-55 54t-75.5 37t-106 13.5q-80 0 -139.5 -26.5t-100.5 -74t-61.5 -114.5 t-20.5 -148v-301h490v-40q0 -11 -8.5 -20t-21.5 -9h-460v-311q0 -91 -37 -153t-101 -106q23 4 44.5 6t45.5 2h806v-41q0 -15 -12.5 -29.5t-33.5 -14.5h-993v67q35 13 68 33.5t58.5 50t40 69.5t14.5 93v334h-205z" />
<glyph unicode="&#xa5;" d="M87 1449h81q27 0 40 -26l354 -681q8 -20 15 -38t12 -35q9 34 26 73l354 681q5 11 14.5 18.5t24.5 7.5h82l-434 -818h356v-60h-375v-120h375v-60h-375v-391h-97v391h-375v60h375v120h-375v60h354z" />
<glyph unicode="&#xa9;" horiz-adv-x="1651" d="M87 725q0 101 26.5 196t74.5 177t115.5 149.5t149.5 115.5t176 74.5t196 26.5t196.5 -26.5t177 -74.5t150 -115.5t115 -149.5t74.5 -177t27 -196q0 -102 -27 -196.5t-74.5 -176.5t-115 -149.5t-150 -115.5t-176.5 -74.5t-197 -26.5q-101 0 -195.5 26.5t-176.5 74.5 t-149.5 115.5t-115.5 149.5t-74.5 176.5t-26.5 196.5zM147 725q0 -142 53 -266.5t145 -217.5t215.5 -146t264.5 -53t265.5 53t217 146t145.5 217.5t53 266.5t-53 266.5t-145.5 218t-216.5 147t-266 53.5q-141 0 -264.5 -53.5t-215.5 -147t-145 -218t-53 -266.5zM387 726 q0 102 34.5 187t96 146t146.5 95t186 34q53 0 97.5 -8t82.5 -22.5t71 -35.5t64 -49l-24 -34q-7 -11 -21 -11q-10 0 -27 13.5t-46.5 29t-76 29t-116.5 13.5q-85 0 -154.5 -27t-119.5 -77.5t-77 -122t-27 -160.5q0 -92 27 -164t75.5 -121.5t114.5 -75.5t145 -26q87 0 150 21 t118 64q12 10 23 10q5 0 9.5 -2t6.5 -4l32 -32q-60 -60 -142.5 -96t-200.5 -36q-98 0 -181 33.5t-141.5 94t-91.5 145.5t-33 189z" />
<glyph unicode="&#xad;" horiz-adv-x="680" d="M102 566v83h477v-83h-477z" />
<glyph unicode="&#xae;" horiz-adv-x="1651" d="M87 725q0 101 26.5 196t74.5 177t115.5 149.5t149.5 115.5t176 74.5t196 26.5t196.5 -26.5t177 -74.5t150 -115.5t115 -149.5t74.5 -177t27 -196q0 -102 -27 -196.5t-74.5 -176.5t-115 -149.5t-150 -115.5t-176.5 -74.5t-197 -26.5q-101 0 -195.5 26.5t-176.5 74.5 t-149.5 115.5t-115.5 149.5t-74.5 176.5t-26.5 196.5zM147 725q0 -142 53 -266.5t145 -217.5t215.5 -146t264.5 -53t265.5 53t217 146t145.5 217.5t53 266.5t-53 266.5t-145.5 218t-216.5 147t-266 53.5q-141 0 -264.5 -53.5t-215.5 -147t-145 -218t-53 -266.5zM552 272v907 h253q157 0 237 -59t80 -180q0 -102 -66 -167.5t-186 -82.5q12 -7 22 -16.5t19 -24.5l292 -377h-82q-10 0 -17.5 3.5t-13.5 13.5l-277 359q-8 11 -21 18t-40 7h-113v-401h-87zM639 738h152q124 0 184.5 50t60.5 143q0 94 -55 137t-176 43h-166v-373z" />
<glyph unicode="&#xb4;" horiz-adv-x="599" d="M212 1189l161 244q11 18 23.5 25t36.5 7h96l-221 -259q-8 -10 -16.5 -13.5t-21.5 -3.5h-58z" />
<glyph unicode="&#x2000;" horiz-adv-x="833" />
<glyph unicode="&#x2001;" horiz-adv-x="1667" />
<glyph unicode="&#x2002;" horiz-adv-x="833" />
<glyph unicode="&#x2003;" horiz-adv-x="1667" />
<glyph unicode="&#x2004;" horiz-adv-x="555" />
<glyph unicode="&#x2005;" horiz-adv-x="416" />
<glyph unicode="&#x2006;" horiz-adv-x="277" />
<glyph unicode="&#x2007;" horiz-adv-x="277" />
<glyph unicode="&#x2008;" horiz-adv-x="207" />
<glyph unicode="&#x2009;" horiz-adv-x="332" />
<glyph unicode="&#x200a;" horiz-adv-x="92" />
<glyph unicode="&#x2010;" horiz-adv-x="680" d="M102 566v83h477v-83h-477z" />
<glyph unicode="&#x2011;" horiz-adv-x="680" d="M102 566v83h477v-83h-477z" />
<glyph unicode="&#x2012;" horiz-adv-x="680" d="M102 566v83h477v-83h-477z" />
<glyph unicode="&#x2013;" horiz-adv-x="1107" d="M151 556v73h805v-73h-805z" />
<glyph unicode="&#x2014;" horiz-adv-x="1629" d="M151 556v73h1328v-73h-1328z" />
<glyph unicode="&#x2018;" horiz-adv-x="404" d="M133 1237q0 80 39 153.5t101 134.5l28 -19q8 -6 8 -14q0 -7 -6 -13q-39 -52 -64.5 -103.5t-25.5 -106.5q0 -60 36 -123q5 -8 5 -17q0 -14 -15 -20l-64 -27q-22 39 -32 77.5t-10 77.5z" />
<glyph unicode="&#x2019;" horiz-adv-x="404" d="M113 1103q0 8 6 14q39 51 64.5 103t25.5 107q0 59 -36 122q-5 8 -5 16q0 14 15 21l63 26q23 -39 33 -77t10 -77q0 -80 -39 -154t-102 -134l-28 19q-7 6 -7 14z" />
<glyph unicode="&#x201c;" horiz-adv-x="680" d="M133 1237q0 80 39 153.5t101 134.5l28 -19q8 -6 8 -14q0 -7 -6 -13q-39 -52 -64.5 -103.5t-25.5 -106.5q0 -60 36 -123q5 -8 5 -17q0 -14 -15 -20l-64 -27q-22 39 -32 77.5t-10 77.5zM409 1237q0 80 38.5 153.5t101.5 134.5l28 -19q8 -6 8 -14q0 -7 -6 -13 q-39 -52 -65 -103.5t-26 -106.5q0 -60 36 -123q5 -8 5 -17q0 -14 -15 -20l-63 -27q-22 39 -32 77.5t-10 77.5z" />
<glyph unicode="&#x201d;" horiz-adv-x="680" d="M113 1103q0 8 6 14q39 51 64.5 103t25.5 107q0 59 -36 122q-5 8 -5 16q0 14 15 21l63 26q23 -39 33 -77t10 -77q0 -80 -39 -154t-102 -134l-28 19q-7 6 -7 14zM388 1103q0 8 6 14q39 51 64.5 103t25.5 107q0 59 -35 122q-5 8 -6 16q0 14 16 21l62 26q23 -39 33 -77 t10 -77q0 -80 -39 -154t-101 -134l-29 19q-7 6 -7 14z" />
<glyph unicode="&#x2022;" d="M293 610q0 62 23.5 117.5t64.5 97t95 65t116 23.5t117.5 -23.5t96.5 -65t64.5 -96.5t23.5 -118q0 -61 -23.5 -115t-64.5 -95t-96.5 -64.5t-117.5 -23.5q-61 0 -115.5 23.5t-95.5 64.5t-64.5 95t-23.5 115z" />
<glyph unicode="&#x2026;" horiz-adv-x="1409" d="M108 79q0 19 7 36.5t19.5 30.5t29.5 20.5t38 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67 27t-27 67zM609 79q0 19 7.5 36.5t20 30.5t29.5 20.5t37 7.5q19 0 37 -7.5t30.5 -20.5t20.5 -30.5t8 -36.5 q0 -20 -8 -37t-20.5 -30t-30 -20t-37.5 -7q-40 0 -67 27t-27 67zM1112 79q0 19 7 36.5t20 30.5t30 20.5t37 7.5q19 0 37 -7.5t30.5 -20.5t20.5 -30.5t8 -36.5q0 -20 -8 -37t-20.5 -30t-30 -20t-37.5 -7q-40 0 -67 27t-27 67z" />
<glyph unicode="&#x202f;" horiz-adv-x="332" />
<glyph unicode="&#x205f;" horiz-adv-x="416" />
<glyph unicode="&#x20ac;" d="M32 583v60h161l-2 40t-1 42q0 50 4 99h-162v60h168q16 135 62 242.5t117 182t164 114.5t206 40q66 0 121.5 -11.5t103 -34t89 -56t79.5 -77.5l-32 -36q-4 -5 -9 -8.5t-14 -3.5q-8 0 -19 10.5t-28.5 26t-42.5 34.5t-59.5 34.5t-80 26t-104.5 10.5q-92 0 -169 -32 t-135 -94.5t-96 -154.5t-53 -213h616v-31q0 -11 -7.5 -20t-24.5 -9h-590q-3 -48 -3 -99q0 -22 0.5 -41.5t1.5 -40.5h529v-31q0 -12 -8 -20.5t-23 -8.5h-493q13 -127 50 -223.5t94.5 -161t134 -97t168.5 -32.5q63 0 112 12t86 31t63.5 41t45 41t31.5 31.5t22 12.5 q10 0 19 -10l38 -35q-37 -47 -80 -85.5t-95 -66t-113.5 -42t-133.5 -14.5q-116 0 -210 40t-163 116.5t-112 187.5t-57 254h-166z" />
<glyph unicode="&#x2122;" horiz-adv-x="1461" d="M74 1389v60h482v-60h-204v-529h-72v529h-206zM684 860v589h58q10 0 15 -2t12 -10l222 -373l11 -30q5 16 14 30l218 373q5 8 9.5 10t14.5 2h59v-589h-64v454l5 45l-224 -389q-8 -16 -25 -17h-12q-17 0 -25 17l-229 387l6 -43v-454h-65z" />
<glyph unicode="&#xe000;" horiz-adv-x="1020" d="M0 1020h1020v-1020h-1020v1020z" />
</font>
</defs></svg>

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

View file

@ -0,0 +1,147 @@
<?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">
<metadata>
This is a custom SVG webfont generated by Font Squirrel.
Copyright : Copyright c 20102011 by tyPoland Lukasz Dziedzic with Reserved Font Name Lato Licensed under the SIL Open Font License Version 11
Designer : Lukasz Dziedzic
Foundry : Lukasz Dziedzic
Foundry URL : httpwwwtypolandcom
</metadata>
<defs>
<font id="LatoLight" horiz-adv-x="1187" >
<font-face units-per-em="2048" ascent="1649" descent="-399" />
<missing-glyph horiz-adv-x="395" />
<glyph unicode=" " horiz-adv-x="395" />
<glyph unicode="&#x09;" horiz-adv-x="395" />
<glyph unicode="&#xa0;" horiz-adv-x="395" />
<glyph unicode="!" horiz-adv-x="660" d="M236 79q0 19 7 36.5t19.5 30.5t29.5 20.5t38 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67 27t-27 67zM286 863v586h95v-586q0 -46 -1 -87t-2.5 -83.5t-4.5 -89.5t-6 -104h-67q-3 57 -6 104t-4.5 89.5 t-2.5 83.5t-1 87z" />
<glyph unicode="&#x22;" horiz-adv-x="751" d="M184 1150v299h85v-299l-9 -157q-2 -17 -9 -27t-25 -10q-14 0 -22 10t-10 27zM481 1150v299h85v-299l-9 -157q-2 -17 -9 -27t-25 -10q-14 0 -22 10t-11 27z" />
<glyph unicode="#" d="M88 484v10q0 5 2 15l3 16h223l84 399h-259l6 39q4 34 46 33h218l89 414q4 19 16.5 29t30.5 10h43l-97 -453h305l97 453h43q32 0 32 -31q0 -8 -1 -12l-89 -410h230l-6 -39q-5 -34 -46 -33h-189l-84 -399h231q31 0 31 -26l-5 -45h-267l-96 -454h-42q-14 0 -23.5 8.5 t-9.5 25.5q0 7 1 11l88 409h-305l-88 -413q-5 -23 -17.5 -32t-29.5 -9h-43l96 454h-187q-14 0 -22.5 6.5t-8.5 23.5zM398 525h305l84 399h-305z" />
<glyph unicode="$" d="M156 173l27 40q12 15 29 15q9 0 23 -11t33.5 -28t46 -37t62 -38t80.5 -31t102 -16l33 651q-70 22 -136 48.5t-117.5 68t-83.5 102t-32 153.5q0 71 26.5 136.5t78.5 117.5t127.5 83.5t173.5 34.5l9 172q1 14 8.5 23.5t22.5 9.5h37l-12 -206q103 -7 181 -45.5t143 -102.5 l-23 -35q-10 -17 -26 -17q-12 0 -32.5 16.5t-52.5 37t-79.5 39.5t-114.5 24l-30 -585q48 -15 97 -32t93.5 -37.5t82.5 -47t66 -62.5t44 -83t16 -108q0 -88 -30 -166t-85.5 -137t-137 -94.5t-185.5 -40.5l-12 -216q-1 -13 -8.5 -22.5t-20.5 -9.5h-37l12 248q-131 6 -228 56 t-171 132zM314 1098q0 -63 22.5 -108.5t61.5 -77.5t90 -55t108 -43l29 565q-78 -4 -136 -28.5t-97 -63t-58.5 -87.5t-19.5 -102zM625 67q82 5 146 33t107.5 73.5t66 105.5t22.5 129q0 68 -26 114.5t-69 79.5t-98.5 55t-117.5 41z" />
<glyph unicode="%" horiz-adv-x="1570" d="M89 1101q0 90 23.5 158.5t64.5 114t97 68.5t119 23t118.5 -23t97 -68.5t65.5 -114t24 -158.5q0 -89 -24.5 -157t-66.5 -113.5t-97 -68.5t-117 -23q-63 0 -119 23t-97 68.5t-64.5 113.5t-23.5 157zM168 1101q0 -79 18 -135t48.5 -91.5t71.5 -52.5t87 -17t87.5 17t73 52.5 t49.5 91.5t18 135t-18 135t-49.5 92.5t-73 53.5t-87.5 17t-87 -17t-71.5 -53.5t-48.5 -92.5t-18 -135zM209 0l1039 1431q6 8 15 13t23 5h69l-1041 -1431q-13 -18 -35 -18h-70zM872 344q0 90 24 158.5t64.5 114.5t96.5 69t120 23q63 0 118.5 -23t97 -69t65 -114.5 t23.5 -158.5q0 -89 -24.5 -157t-66 -113t-97 -68t-116.5 -23q-63 0 -119.5 23t-97 68t-64.5 113t-24 157zM950 344q0 -79 18 -134.5t49 -91.5t72 -52.5t88 -16.5q46 0 87.5 16.5t72 52.5t48.5 91.5t18 134.5t-18 136t-48.5 93t-72 53t-87.5 17t-87.5 -17t-72.5 -53t-49 -93 t-18 -136z" />
<glyph unicode="&#x26;" horiz-adv-x="1416" d="M109 371q0 74 26.5 141t72.5 122.5t109.5 99.5t137.5 72q-73 82 -109.5 159t-36.5 165q0 72 26 133t74.5 106t115.5 70.5t150 25.5q69 0 130 -23.5t106.5 -63.5t73 -92.5t29.5 -109.5q-14 -3 -26 -7q-24 -5 -37 -5q-8 0 -15 6.5t-10 17.5q-7 27 -24.5 61.5t-47.5 65.5 t-74.5 52.5t-104.5 21.5q-61 0 -111.5 -19t-86.5 -53.5t-56 -81.5t-20 -103q0 -84 43 -161t134 -165l456 -451q46 74 73.5 154t35.5 155q2 13 8 20.5t18 7.5h57q-2 -96 -36.5 -198t-97.5 -195l305 -299h-91q-18 0 -30 4t-28 19l-210 205q-46 -53 -101 -98t-119.5 -77.5 t-138 -50.5t-154.5 -18q-77 0 -151.5 25.5t-133.5 75t-95 122t-36 164.5zM208 377q0 -79 30 -137.5t78.5 -98t107 -59t116.5 -19.5q72 0 135.5 16.5t119.5 46t102.5 69t85.5 88.5l-470 461q-6 5 -11 12q-68 -29 -122.5 -69t-92.5 -88.5t-58.5 -105t-20.5 -116.5z" />
<glyph unicode="'" horiz-adv-x="453" d="M184 1150v299h85v-299l-9 -157q-2 -17 -9 -27t-25 -10q-14 0 -22 10t-10 27z" />
<glyph unicode="(" horiz-adv-x="614" d="M174 645q0 120 15 233t47.5 225t86.5 225.5t133 234.5l43 -27q13 -7 13 -22q0 -10 -7 -21q-122 -197 -184 -407t-62 -441q0 -229 62 -439.5t185 -406.5q7 -11 7 -21q0 -15 -14 -23l-43 -26q-79 121 -133 234t-86.5 225t-47.5 224.5t-15 232.5z" />
<glyph unicode=")" horiz-adv-x="614" d="M100 -222q0 10 8 21q123 196 184.5 406.5t61.5 439.5q0 230 -62 440.5t-183 407.5q-7 11 -8 21q0 14 14 22l43 27q78 -121 132 -234.5t87 -225.5t47.5 -225t14.5 -233t-14.5 -232.5t-47.5 -224.5t-87 -225.5t-132 -233.5l-43 26q-15 8 -15 23z" />
<glyph unicode="*" horiz-adv-x="819" d="M126 1357l27 46l193 -113q16 -10 26 -19.5t24 -27.5q-8 19 -11.5 34t-3.5 33v219h53v-218q0 -18 -2.5 -33t-10.5 -34q12 17 22.5 27t26.5 19l193 112l26 -46l-192 -112q-15 -9 -28.5 -14t-31.5 -7q18 -3 31 -7.5t29 -12.5l193 -112l-25 -47l-195 113q-15 9 -25.5 17.5 t-23.5 25.5q6 -18 9.5 -31.5t3.5 -30.5v-219h-53v218q0 17 2.5 30.5t10.5 30.5q-11 -15 -22 -23.5t-26 -17.5l-192 -111l-26 45l193 112q14 8 27 12.5t32 7.5q-19 3 -32 8t-27 13z" />
<glyph unicode="+" d="M112 649v75h440v462h80v-462h441v-75h-441v-464h-80v464h-440z" />
<glyph unicode="," horiz-adv-x="404" d="M113 87q0 36 24.5 61.5t64.5 25.5q44 0 68 -30t24 -79q0 -42 -11 -86t-31.5 -85.5t-49 -80.5t-63.5 -72l-15 15q-8 8 -8 18q0 5 3 10t7 9q10 10 26 30t32 47.5t28.5 60t16.5 69.5q-6 -2 -13.5 -3t-16.5 -1q-38 0 -62 25.5t-24 65.5z" />
<glyph unicode="-" horiz-adv-x="680" d="M102 566v83h477v-83h-477z" />
<glyph unicode="." horiz-adv-x="404" d="M108 79q0 19 7 36.5t19.5 30.5t29.5 20.5t38 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67 27t-27 67z" />
<glyph unicode="/" horiz-adv-x="730" d="M-5 -86l637 1538q15 38 55 38h42l-636 -1536q-8 -20 -24.5 -30t-33.5 -10h-40z" />
<glyph unicode="0" d="M75 725q0 190 40.5 329.5t111 230.5t164.5 135.5t202 44.5t202.5 -44.5t165 -135.5t111.5 -230.5t41 -329.5t-41 -329.5t-111.5 -230.5t-165.5 -135.5t-202 -44.5q-108 0 -202 44.5t-164.5 135.5t-111 230.5t-40.5 329.5zM175 725q0 -177 34 -301.5t91 -204t133 -115.5 t160 -36t160 36t133 115.5t91 204t34 301.5q0 176 -34 301t-91 204.5t-133 116t-160 36.5t-160 -36.5t-133 -116t-91 -204.5t-34 -301z" />
<glyph unicode="1" d="M252 1085l419 370h75v-1379h317v-76h-747v76h333v1175q0 35 3 74l-319 -284q-10 -9 -25 -9q-17 0 -26 12z" />
<glyph unicode="2" d="M132 0v35q0 11 5.5 23t14.5 20l494 501q61 62 113.5 120.5t91 118t60.5 121.5t22 133q0 80 -26.5 139t-71 97t-102.5 56t-122 18q-69 0 -126.5 -21t-102 -58t-73.5 -89t-41 -113q-10 -36 -41 -36q-2 0 -5 0.5t-5 0.5l-49 8q12 93 50.5 166t97 123t135 76t165.5 26 q83 0 158.5 -24t133 -72.5t91 -121.5t33.5 -172q0 -82 -25 -152t-68 -134.5t-100 -125.5t-119 -124l-454 -463q33 8 68.5 12t71.5 4h625q16 0 26 -9.5t10 -25.5v-57h-935z" />
<glyph unicode="3" d="M132 354l39 17q12 5 24 5q11 0 21 -5t15 -20l8 -20q6 -18 17 -45.5t29 -56.5t44.5 -58.5t65 -52.5t90.5 -37t119 -14q92 0 161.5 30.5t116 78t69.5 106.5t23 114q0 67 -21 124.5t-70 98.5t-129.5 65.5t-198.5 24.5v70q94 2 166 25t120 63t72.5 95.5t24.5 121.5 q0 77 -25.5 133.5t-68.5 93.5t-100.5 54t-119.5 17q-69 0 -126.5 -20.5t-101.5 -57t-73.5 -88.5t-43.5 -115q-8 -36 -38 -36q-7 0 -12 1l-50 8q13 93 51 166t96.5 123t135.5 76t166 26q83 0 156.5 -23t129.5 -69t88 -114.5t32 -158.5q0 -71 -22 -128t-60.5 -100t-90.5 -72 t-113 -44q160 -30 241.5 -123.5t81.5 -234.5q0 -89 -36 -165t-98.5 -131.5t-147 -86.5t-184.5 -31q-124 0 -206.5 33t-135.5 86.5t-83 119t-48 131.5z" />
<glyph unicode="4" d="M65 488l728 963h87v-957h265v-54q0 -11 -6.5 -17.5t-21.5 -6.5h-237v-416h-88v416h-683q-15 0 -23.5 6.5t-11.5 17.5zM171 494h621v758q0 17 1 37t4 40z" />
<glyph unicode="5" d="M152 113l28 40q10 15 30 15q13 0 38 -15.5t64.5 -34t93.5 -33.5t125 -15q84 0 157 27t126.5 78t84 126.5t30.5 170.5q0 78 -23 143.5t-69.5 112t-118 72.5t-167.5 26q-58 0 -124 -9t-139 -30l-64 20l114 642h651v-42q0 -20 -13.5 -34t-43.5 -14h-524l-87 -483 q69 17 130 24.5t117 7.5q113 0 199 -32t144 -90t87.5 -138t29.5 -174q0 -115 -40 -205.5t-108 -154t-159 -97t-194 -33.5q-60 0 -114.5 10.5t-102.5 28.5t-87.5 41.5t-70.5 48.5z" />
<glyph unicode="6" d="M139 461q0 85 43 192t142 240l395 532q17 24 52 24h86l-432 -564q-32 -42 -58.5 -79t-48.5 -73q60 62 143.5 97.5t181.5 35.5q93 0 172 -30.5t136 -86.5t89 -135t32 -178q0 -98 -35.5 -181t-98 -143.5t-151 -94t-193.5 -33.5q-101 0 -185 32.5t-144 94t-93 150t-33 200.5 zM234 437q0 -81 25.5 -149.5t71.5 -118t112.5 -77t149.5 -27.5q88 0 158.5 27.5t120.5 76t76.5 115.5t26.5 146q0 83 -26 150t-74 113.5t-113.5 72t-145.5 25.5q-90 0 -161 -31.5t-120 -81t-75 -113t-26 -128.5z" />
<glyph unicode="7" d="M133 1386v63h964v-44q0 -17 -3.5 -30t-9.5 -22l-664 -1316q-8 -16 -22 -26.5t-37 -10.5h-66l669 1311q13 27 31 48h-835q-11 0 -19 8t-8 19z" />
<glyph unicode="8" d="M123 383q0 80 23 142.5t65 108.5t100 76.5t127 46.5q-63 18 -112.5 50t-82.5 76t-50.5 97.5t-17.5 115.5q0 77 29 144.5t83.5 117.5t132 78.5t174.5 28.5q96 0 173.5 -28.5t132 -78.5t84 -118t29.5 -144q0 -61 -17.5 -115t-51.5 -98t-83 -76t-112 -50q70 -15 127.5 -46 t99.5 -77t65.5 -108.5t23.5 -142.5q0 -92 -35 -166t-97 -126t-148.5 -79.5t-190.5 -27.5t-191 27.5t-148.5 79.5t-96.5 126t-35 166zM223 384q0 -73 26.5 -132t75.5 -101.5t117.5 -66t151.5 -23.5t151 23.5t117 66t76 101.5t27 132q0 95 -35 158.5t-89.5 101.5t-120 54 t-126.5 16t-127 -16t-120 -54t-89 -101.5t-35 -158.5zM270 1095q0 -58 19 -112.5t59 -97t101 -67.5t145 -25q83 0 144 25t101 67.5t58.5 96.5t18.5 113q0 62 -21.5 116t-62.5 94t-101 62.5t-137 22.5t-137.5 -22.5t-102 -62.5t-63 -94t-21.5 -116z" />
<glyph unicode="9" d="M176 1030q0 93 34.5 172.5t96 138t146 91.5t184.5 33q96 0 176.5 -32.5t138.5 -92.5t90 -143.5t32 -185.5q0 -56 -11.5 -107.5t-34.5 -102.5t-56 -105t-75 -115l-380 -557q-15 -24 -50 -24h-88l428 598q31 43 57 81.5t47 74.5q-59 -66 -143.5 -102t-180.5 -36 q-89 0 -164.5 29.5t-130 83.5t-85.5 130.5t-31 170.5zM273 1036q0 -80 25 -144t69.5 -108.5t107.5 -68t139 -23.5q87 0 155.5 30t115.5 78t71 108t24 121q0 79 -25.5 144.5t-71.5 112t-109 72.5t-138 26q-80 0 -147 -25.5t-114.5 -71.5t-74.5 -110t-27 -141z" />
<glyph unicode=":" horiz-adv-x="486" d="M148 79q0 19 7.5 36.5t20 30.5t29.5 20.5t38 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67.5 27t-27.5 67zM148 895q0 19 7.5 36.5t20 30.5t29.5 20.5t38 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5 t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67.5 27t-27.5 67z" />
<glyph unicode=";" horiz-adv-x="486" d="M148 895q0 19 7.5 36.5t20 30.5t29.5 20.5t38 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67.5 27t-27.5 67zM154 87q0 36 24.5 61.5t64.5 25.5q44 0 68 -30t24 -79q0 -42 -11 -86t-31.5 -85.5t-49 -80.5 t-63.5 -72l-15 15q-8 8 -8 18q0 5 3 10t7 9q10 10 26 30t32 47.5t28.5 60t16.5 69.5q-6 -2 -13.5 -3t-16.5 -1q-38 0 -62 25.5t-24 65.5z" />
<glyph unicode="&#x3c;" d="M164 667v42l768 394v-67q0 -11 -6 -19t-22 -17l-566 -286q-34 -17 -74 -27q43 -9 74 -25l566 -288q15 -8 21.5 -16.5t6.5 -19.5v-67z" />
<glyph unicode="=" d="M170 494v75h847v-75h-847zM170 814v76h847v-76h-847z" />
<glyph unicode="&#x3e;" d="M257 271v67q0 11 6 20t21 16l567 288q32 16 73 25q-20 5 -38 12t-35 15l-567 286q-27 14 -27 36v67l768 -394v-42z" />
<glyph unicode="?" horiz-adv-x="758" d="M34 1323q28 28 62.5 53.5t76 45.5t90.5 31.5t107 11.5q72 0 135 -21.5t111 -61.5t76 -97.5t28 -129.5q0 -78 -24 -134t-61 -98.5t-80 -75t-80.5 -60.5t-63.5 -57t-28 -63l-12 -168h-67l-5 175v5q0 42 24.5 73.5t61 61.5t79 60.5t79 69t61 88.5t24.5 119q0 55 -21.5 98.5 t-58.5 74t-85 46t-101 15.5q-68 0 -117 -17.5t-83 -39.5t-53.5 -40t-26.5 -18q-15 0 -23 12zM241 79q0 19 7 36.5t20 30.5t29.5 20.5t37.5 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67 27t-27 67z" />
<glyph unicode="@" horiz-adv-x="1682" d="M111 562q0 171 60 317.5t164.5 254t244 168.5t298.5 61q137 0 263 -42.5t222.5 -127t154.5 -209.5t58 -290q0 -112 -29.5 -204t-81.5 -158t-121.5 -102.5t-148.5 -36.5q-90 0 -135.5 47.5t-47.5 136.5q-57 -95 -129.5 -137.5t-156.5 -42.5q-57 0 -99 20t-70 54.5 t-41.5 81.5t-13.5 102q0 87 33 174.5t97 157.5t157.5 114t211.5 44q54 0 102 -9t86 -27l-93 -355q-12 -47 -18 -84.5t-6 -67.5q0 -45 11.5 -73t30.5 -44.5t43.5 -22t50.5 -5.5q58 0 111.5 30.5t94.5 87.5t65 138t24 181q0 152 -49.5 265t-135 188t-199 111.5t-241.5 36.5 q-140 0 -266 -54t-220.5 -151.5t-150.5 -232t-56 -295.5q0 -181 58 -319t157.5 -230.5t232 -140t281.5 -47.5q152 0 277.5 35t227.5 101q7 5 18 5q14 0 20 -14l16 -38q-115 -76 -253 -117t-306 -41q-169 0 -315 54t-254.5 157t-171 252.5t-62.5 342.5zM582 457 q0 -41 10 -76.5t30.5 -61t50.5 -40.5t71 -15q37 0 76.5 12.5t76 44.5t68 87t53.5 140l82 317q-25 7 -51 11t-61 4q-92 0 -167.5 -37.5t-128 -98t-81.5 -135.5t-29 -152z" />
<glyph unicode="A" horiz-adv-x="1319" d="M15 0l593 1449h105l593 -1449h-81q-14 0 -23.5 7.5t-14.5 20.5l-171 421h-712l-170 -421q-4 -11 -14 -19.5t-25 -8.5h-80zM336 526h649l-296 732q-7 17 -14 39.5t-15 47.5q-7 -25 -14 -47t-14 -41z" />
<glyph unicode="B" horiz-adv-x="1312" d="M215 0v1449h417q124 0 214.5 -24.5t150 -72t88.5 -116.5t29 -156q0 -57 -20 -110.5t-58 -98.5t-92.5 -78t-125.5 -51q171 -26 263.5 -113.5t92.5 -232.5q0 -92 -33 -165.5t-95.5 -125t-153.5 -78.5t-207 -27h-470zM319 84h364q191 0 288.5 82.5t97.5 231.5q0 69 -26 124 t-75 93t-121 58.5t-163 20.5h-365v-610zM319 771h315q100 0 171.5 25.5t117 67.5t67 95.5t21.5 109.5q0 146 -93 221.5t-286 75.5h-313v-595z" />
<glyph unicode="C" horiz-adv-x="1440" d="M127 725q0 165 51.5 301t145.5 234t224.5 151.5t288.5 53.5q79 0 144.5 -11.5t122 -33.5t107 -55t98.5 -76l-32 -46q-8 -12 -26 -12q-9 0 -23.5 10.5t-36.5 26.5t-53 35t-74 35t-99.5 26.5t-127.5 10.5q-132 0 -243 -45.5t-190.5 -130t-124.5 -205t-45 -269.5 q0 -154 44.5 -274.5t122 -204t183.5 -128t230 -44.5q78 0 139 10t112 30.5t95 50.5t87 69q5 4 10 7t11 3q10 0 17 -7l41 -44q-45 -48 -98 -86.5t-116 -66t-138.5 -42t-165.5 -14.5q-151 0 -276 52.5t-215 149.5t-140 234t-50 305z" />
<glyph unicode="D" horiz-adv-x="1556" d="M215 0v1449h528q155 0 282 -50t218 -144.5t141.5 -228.5t50.5 -301q0 -168 -50.5 -302t-141.5 -228.5t-218 -144.5t-282 -50h-528zM321 85h422q131 0 239 43t184 125t118 200.5t42 271.5q0 152 -42 270.5t-118 200.5t-184 125t-239 43h-422v-1279z" />
<glyph unicode="E" horiz-adv-x="1210" d="M215 0v1449h868v-87h-762v-586h634v-85h-634v-604h762v-87h-868z" />
<glyph unicode="F" horiz-adv-x="1171" d="M215 0v1449h868v-87h-762v-609h660v-87h-660v-666h-106z" />
<glyph unicode="G" horiz-adv-x="1532" d="M127 725q0 168 51 304.5t145.5 233.5t229 149.5t301.5 52.5q83 0 153 -11t130.5 -33t113 -54.5t100.5 -74.5l-28 -45q-9 -15 -26 -15q-9 0 -17 4q-15 6 -44.5 28.5t-79 47t-124.5 44t-181 19.5q-141 0 -255 -45t-194 -129t-124 -204.5t-44 -271.5q0 -154 44.5 -275.5 t123.5 -206t190 -129.5t246 -45q75 0 136 7.5t114 23t100.5 37.5t95.5 49v391h-278q-11 0 -19 7t-8 16v57h400v-515q-54 -38 -112.5 -67.5t-125 -49.5t-143 -30.5t-168.5 -10.5q-157 0 -286 52.5t-222 149.5t-144 234t-51 305z" />
<glyph unicode="H" horiz-adv-x="1548" d="M215 0v1449h106v-676h907v676h105v-1449h-105v694h-907v-694h-106z" />
<glyph unicode="I" horiz-adv-x="612" d="M253 0v1449h105v-1449h-105z" />
<glyph unicode="J" horiz-adv-x="929" d="M91 13q2 14 3.5 28.5t2.5 29.5q2 9 8 16t20 7q9 0 22 -3.5t31 -7.5t41 -7.5t53 -3.5q78 0 140.5 24.5t106.5 75t67 128t23 181.5v968h106v-966q0 -122 -30.5 -215t-86 -156.5t-136 -95.5t-180.5 -32q-46 0 -93.5 7t-97.5 22z" />
<glyph unicode="K" horiz-adv-x="1351" d="M246 0v1451h104v-671h86q19 0 33.5 1.5t26.5 6.5t22 12t22 18l584 601q16 16 30 23t35 7h85l-633 -650q-19 -20 -34 -31.5t-34 -18.5q22 -6 39 -19t34 -34l668 -696h-85q-27 0 -38 7.5t-24 20.5l-613 626q-11 11 -20.5 19.5t-21 14t-28 8t-41.5 2.5h-93v-698h-104z" />
<glyph unicode="L" horiz-adv-x="1047" d="M215 0v1449h104v-1360h688v-89h-792z" />
<glyph unicode="M" horiz-adv-x="1861" d="M215 0v1449h72q14 0 22.5 -3t17.5 -16l584 -1008q15 -29 27 -62q6 16 12.5 32.5t15.5 30.5l569 1007q8 13 16.5 16t22.5 3h73v-1449h-93v1235q0 27 4 56l-571 -1012q-14 -27 -41 -27h-16q-26 0 -41 27l-586 1013q3 -30 3 -57v-1235h-91z" />
<glyph unicode="N" horiz-adv-x="1548" d="M215 0v1449h51q14 0 22.5 -3.5t17.5 -15.5l938 -1256q-3 31 -3 59v1216h92v-1449h-50q-24 0 -38 20l-942 1258q3 -31 3 -58v-1220h-91z" />
<glyph unicode="O" horiz-adv-x="1633" d="M126 725q0 167 50.5 303.5t142 233.5t218.5 150t279 53q155 0 282 -52.5t218 -150t141 -234t50 -303.5q0 -168 -50 -304.5t-141 -233.5t-218 -149.5t-282 -52.5q-153 0 -279.5 52.5t-218 149.5t-142 233.5t-50.5 304.5zM233 725q0 -153 42.5 -273t120 -204t184.5 -128 t236 -44q131 0 238.5 44t184 128t118.5 204t42 273q0 152 -42 272.5t-118.5 204.5t-184 128.5t-238.5 44.5q-129 0 -236 -44.5t-184.5 -128.5t-120 -204.5t-42.5 -272.5z" />
<glyph unicode="P" horiz-adv-x="1215" d="M246 0v1449h374q255 0 384.5 -111.5t129.5 -318.5q0 -95 -35.5 -175t-102 -138t-162 -90t-214.5 -32h-270v-584h-104zM350 668h270q96 0 171.5 26.5t128.5 73.5t81 111t28 140q0 167 -103 257t-306 90h-270v-698z" />
<glyph unicode="Q" horiz-adv-x="1633" d="M126 725q0 167 50.5 303.5t142 233.5t218.5 150t279 53q155 0 282 -52.5t218 -150t141 -234t50 -303.5q0 -110 -22 -206.5t-63 -178t-99.5 -146t-132.5 -110.5l377 -403h-88q-20 0 -37 5.5t-29 19.5l-309 334q-65 -27 -136.5 -41t-151.5 -14q-153 0 -279.5 52.5 t-218 149.5t-142 233.5t-50.5 304.5zM233 725q0 -153 42.5 -273t120 -204t184.5 -128t236 -44q131 0 238.5 44t184 128t118.5 204t42 273q0 152 -42 272.5t-118.5 204.5t-184 128.5t-238.5 44.5q-129 0 -236 -44.5t-184.5 -128.5t-120 -204.5t-42.5 -272.5z" />
<glyph unicode="R" horiz-adv-x="1292" d="M246 0v1449h369q251 0 375 -97t124 -284q0 -83 -28.5 -151.5t-82.5 -120.5t-129.5 -85t-171.5 -43q25 -15 44 -41l499 -627h-91q-16 0 -28 6t-23 21l-464 587q-17 23 -37 32t-62 9h-190v-655h-104zM350 733h252q96 0 172.5 23t129 66t80.5 103.5t28 136.5 q0 155 -101.5 229.5t-295.5 74.5h-265v-633z" />
<glyph unicode="S" horiz-adv-x="1070" d="M89 173l29 45q12 15 28 15q9 0 23.5 -12t35 -30t49.5 -39t66.5 -39t87 -30t111.5 -12q86 0 153.5 26t114.5 71t71.5 107t24.5 133q0 77 -31.5 126.5t-82.5 82.5t-116 55.5t-133.5 44t-133.5 48.5t-116.5 68t-82.5 103t-31 156q0 73 27.5 140t80.5 119t131.5 83t178.5 31 q113 0 202.5 -35.5t163.5 -109.5l-25 -47q-9 -17 -26 -18q-13 0 -34 19t-57 42t-90 42.5t-133 19.5t-138.5 -22.5t-100 -61.5t-61.5 -90t-21 -107q0 -74 31 -122t82.5 -82t116.5 -57t133.5 -45.5t133.5 -49.5t116.5 -68t82.5 -101t31 -149q0 -91 -31 -171.5t-90.5 -140 t-145.5 -93.5t-197 -34q-143 0 -246.5 50.5t-181.5 138.5z" />
<glyph unicode="T" horiz-adv-x="1197" d="M36 1360v89h1125v-89h-509v-1360h-104v1360h-512z" />
<glyph unicode="U" horiz-adv-x="1502" d="M202 553v896h105v-895q0 -101 30.5 -188.5t87 -152.5t139 -101.5t187.5 -36.5q104 0 186.5 36t140 100.5t87.5 152.5t30 189v896h104v-896q0 -120 -37.5 -224t-109 -181t-173 -121t-228.5 -44t-229 44t-173 121t-109 181t-38 224z" />
<glyph unicode="V" horiz-adv-x="1319" d="M15 1449h83q14 0 23.5 -7.5t14.5 -20.5l494 -1202q19 -47 32 -100q11 55 29 100l493 1202q5 11 14.5 19.5t24.5 8.5h82l-598 -1449h-94z" />
<glyph unicode="W" horiz-adv-x="2021" d="M17 1449h87q30 0 38 -28l366 -1191q6 -20 10.5 -43.5t9.5 -49.5q5 26 10.5 49.5t12.5 43.5l410 1191q4 11 14 19.5t24 8.5h29q14 0 23.5 -7.5t14.5 -20.5l410 -1191q7 -20 12.5 -42.5t10.5 -48.5q5 25 9 48t11 43l365 1191q3 11 14 19.5t25 8.5h80l-456 -1449h-94 l-428 1257q-8 25 -14 53q-6 -28 -15 -53l-429 -1257h-93z" />
<glyph unicode="X" horiz-adv-x="1227" d="M17 0l524 743l-500 706h103q14 0 21 -6t12 -15l440 -634q3 8 7 15.5t9 15.5l425 602q6 8 13 15t18 7h100l-501 -700l521 -749h-103q-14 0 -22.5 8.5t-13.5 17.5l-457 667q-4 -15 -14 -29l-448 -638q-7 -9 -16.5 -17.5t-21.5 -8.5h-96z" />
<glyph unicode="Y" horiz-adv-x="1227" d="M26 1449h91q14 0 22.5 -6.5t17.5 -19.5l414 -665q14 -24 24.5 -46t18.5 -44q8 23 18.5 44.5t24.5 45.5l414 665q6 11 15.5 18.5t23.5 7.5h92l-535 -851v-598h-106v598z" />
<glyph unicode="Z" horiz-adv-x="1296" d="M118 0v38q0 19 12 37l922 1287h-908v87h1047v-36q0 -22 -14 -42l-920 -1284h926v-87h-1065z" />
<glyph unicode="[" horiz-adv-x="614" d="M179 -270v1823h326v-36q0 -13 -9 -21.5t-23 -8.5h-211v-1691h211q14 0 23 -8t9 -21v-37h-326z" />
<glyph unicode="\" horiz-adv-x="732" d="M-8 1490h42q40 0 55 -38l637 -1538h-40q-17 0 -33.5 9.5t-24.5 30.5z" />
<glyph unicode="]" horiz-adv-x="614" d="M110 -233q0 13 8 21t22 8h211v1691h-211q-14 0 -22 8t-8 22v36h324v-1823h-324v37z" />
<glyph unicode="^" d="M208 819l349 630h61l350 -630h-70q-11 0 -20 7t-14 17l-247 446q-9 17 -16 32.5t-12 32.5q-5 -16 -12 -32t-16 -33l-246 -446q-5 -8 -13 -16t-21 -8h-73z" />
<glyph unicode="_" horiz-adv-x="806" d="M0 -210h807v-70h-807v70z" />
<glyph unicode="`" horiz-adv-x="599" d="M88 1465h94q25 0 37 -7t24 -25l160 -244h-55q-12 0 -21 3.5t-17 13.5z" />
<glyph unicode="a" horiz-adv-x="996" d="M110 247q0 65 36.5 120t115 96t202 65.5t296.5 28.5v107q0 141 -61 217t-181 76q-74 0 -125.5 -20.5t-87.5 -45t-58.5 -45t-37.5 -20.5q-20 0 -31 19l-17 29q80 80 168 121t199 41q82 0 143.5 -26t102 -74.5t61 -117.5t20.5 -154v-664h-39q-31 0 -38 29l-14 130 q-42 -41 -83.5 -74t-86.5 -55.5t-97.5 -34t-114.5 -11.5q-52 0 -101.5 15t-87 47t-60.5 81.5t-23 119.5zM204 251q0 -51 17 -88.5t44.5 -61.5t64.5 -35.5t77 -11.5q59 0 108.5 13t92 36t79.5 54.5t73 68.5v266q-145 -4 -250.5 -22t-173.5 -49t-100 -73.5t-32 -96.5z" />
<glyph unicode="b" horiz-adv-x="1118" d="M176 0v1490h98v-649q68 90 157 142t201 52q187 0 292 -129.5t105 -389.5q0 -112 -29 -208.5t-86 -167.5t-139.5 -112t-189.5 -41q-106 0 -183 41.5t-133 122.5l-6 -125q-3 -26 -27 -26h-60zM274 222q58 -88 129 -123.5t163 -35.5q90 0 158 33t113.5 93t68.5 143.5 t23 183.5q0 227 -84 334t-241 107q-101 0 -183 -52t-147 -145v-538z" />
<glyph unicode="c" horiz-adv-x="931" d="M90 510q0 117 31 213t89.5 165.5t144 108t196.5 38.5q99 0 176.5 -31.5t134.5 -85.5l-25 -35q-5 -5 -10 -9t-13 -4q-10 0 -28 14t-47.5 30.5t-74 30t-108.5 13.5q-88 0 -156 -31t-114.5 -89.5t-71.5 -141.5t-25 -186q0 -108 25.5 -190.5t71.5 -139.5t111.5 -87t145.5 -30 q74 0 123.5 17.5t81.5 38t51 38t30 17.5q13 0 21 -10l27 -33q-24 -31 -60 -57.5t-81 -46t-97.5 -30t-110.5 -10.5q-97 0 -177.5 35t-138 102t-90 164.5t-32.5 221.5z" />
<glyph unicode="d" horiz-adv-x="1118" d="M89 507q0 112 29 208.5t86 167.5t139.5 112t190.5 41q103 0 178.5 -38.5t131.5 -111.5v604h98v-1490h-54q-26 0 -30 27l-10 160q-68 -92 -158.5 -146t-203.5 -54q-187 0 -292 130t-105 390zM189 507q0 -227 84 -334t241 -107q101 0 183 52t147 145v538 q-59 87 -130.5 122.5t-161.5 35.5t-157.5 -32.5t-113 -92.5t-69 -143.5t-23.5 -183.5z" />
<glyph unicode="e" horiz-adv-x="1046" d="M90 530q0 110 31.5 202.5t90 159.5t144 105t194.5 38q86 0 159 -29.5t127 -86.5t84 -140t30 -190q0 -23 -6.5 -31t-20.5 -8h-737v-20q0 -115 27 -201.5t76 -145.5t118.5 -88.5t155.5 -29.5q77 0 133.5 16.5t94.5 37.5t60.5 38t33.5 17q13 0 20 -10l27 -33 q-25 -31 -65.5 -57.5t-90 -45.5t-106.5 -30t-114 -11q-104 0 -190 36t-147.5 106t-95 170.5t-33.5 230.5zM190 612h672q0 82 -22.5 147t-63.5 110t-98 69.5t-127 24.5q-79 0 -141.5 -25t-108 -71t-74 -110.5t-37.5 -144.5z" />
<glyph unicode="f" horiz-adv-x="659" d="M31 947v40h173v129q0 87 22.5 153t63.5 110t98.5 66t127.5 22q32 0 64 -5.5t57 -15.5l-3 -47q-1 -14 -20 -15q-12 0 -33 3.5t-52 3.5q-50 0 -92.5 -15t-73 -48t-47.5 -85.5t-17 -129.5v-126h331v-73h-329v-914h-97v912l-144 10q-29 1 -29 25z" />
<glyph unicode="g" horiz-adv-x="1033" d="M77 -108q0 81 53 139.5t146 90.5q-51 17 -81 50t-30 91q0 22 8 45.5t24.5 46.5t39.5 43.5t54 36.5q-73 42 -113.5 111.5t-40.5 163.5q0 74 26 133.5t74 102.5t115.5 66.5t149.5 23.5q67 0 123.5 -16t101.5 -46h261v-34q0 -26 -29 -28l-154 -11q29 -39 44 -87.5t15 -103.5 q0 -74 -26.5 -134t-74 -102.5t-114 -66t-147.5 -23.5q-88 0 -160 27q-43 -25 -67.5 -59t-24.5 -65q0 -44 30.5 -67.5t81.5 -34.5t116 -14t132 -6.5t132 -13t115.5 -32.5t81.5 -64.5t31 -109.5q0 -63 -32 -122t-92 -104t-145 -72t-190 -27q-108 0 -188.5 22t-135.5 59.5 t-82.5 86.5t-27.5 104zM164 -96q0 -45 23 -83.5t67.5 -66.5t109 -44.5t148.5 -16.5q78 0 145 17.5t116.5 49t78 75.5t28.5 96q0 48 -25.5 77.5t-67.5 46t-96.5 23t-114.5 9.5t-120.5 6t-112.5 12q-39 -15 -72 -35t-57 -45t-37 -55t-13 -66zM227 708q0 -57 18.5 -104.5 t54 -81.5t86.5 -52.5t116 -18.5q66 0 117 18.5t85.5 52.5t52.5 81t18 105q0 57 -18.5 104.5t-53.5 81.5t-86 52.5t-115 18.5q-65 0 -116 -18.5t-86.5 -52.5t-54 -81.5t-18.5 -104.5z" />
<glyph unicode="h" horiz-adv-x="1107" d="M166 0v1490h97v-645q71 87 161.5 138.5t203.5 51.5q84 0 148 -26.5t106 -76.5t63.5 -121t21.5 -160v-651h-98v651q0 143 -65.5 224.5t-200.5 81.5q-100 0 -186 -51.5t-154 -141.5v-764h-97z" />
<glyph unicode="i" horiz-adv-x="486" d="M154 1370q0 18 7 35t19.5 29.5t28.5 19.5t35 7q18 0 34.5 -7t28.5 -19.5t20 -29t8 -35.5q0 -18 -8 -34t-20 -28.5t-28.5 -19.5t-34.5 -7t-34.5 7t-29 19.5t-19.5 28.5t-7 34zM195 0v1019h97v-1019h-97z" />
<glyph unicode="j" horiz-adv-x="482" d="M-51 -356l5 49q1 12 14 12q8 0 23 -4t41 -4q83 0 123 45t40 128v1149h97v-1149q0 -53 -15.5 -98t-45.5 -78.5t-75.5 -52.5t-107.5 -19q-30 0 -53 5.5t-46 16.5zM154 1370q0 18 7 35t19.5 29.5t28.5 19.5t35 7q18 0 34.5 -7t28.5 -19.5t20 -29t8 -35.5q0 -18 -8 -34 t-20 -28.5t-28.5 -19.5t-34.5 -7t-34.5 7t-29 19.5t-19.5 28.5t-7 34z" />
<glyph unicode="k" horiz-adv-x="1007" d="M176 0v1490h98v-908h48q14 0 26.5 4t28.5 19l408 388q11 11 23 18.5t31 7.5h86l-450 -427q-10 -10 -19.5 -19t-20.5 -15q16 -8 27.5 -19.5t23.5 -24.5l472 -514h-85q-14 0 -25 5.5t-23 18.5l-428 458q-17 18 -31.5 25t-44.5 7h-47v-514h-98z" />
<glyph unicode="l" horiz-adv-x="486" d="M195 0v1490h97v-1490h-97z" />
<glyph unicode="m" horiz-adv-x="1629" d="M166 0v1019h53q27 0 31 -26l9 -147q30 42 63.5 76.5t72 60t82 39t91.5 13.5q112 0 178.5 -65t90.5 -180q18 63 51.5 109t76.5 76.5t93.5 45t103.5 14.5q76 0 136.5 -25t103 -74t65 -121t22.5 -164v-651h-98v651q0 150 -64.5 228t-184.5 78q-53 0 -102 -19t-86.5 -57.5 t-59.5 -96t-22 -133.5v-651h-97v651q0 148 -59.5 227t-172.5 79q-83 0 -154 -49.5t-126 -137.5v-770h-97z" />
<glyph unicode="n" horiz-adv-x="1107" d="M166 0v1019h53q27 0 31 -26l9 -153q70 88 162.5 141.5t206.5 53.5q84 0 148 -26.5t106 -76.5t63.5 -121t21.5 -160v-651h-98v651q0 143 -65.5 224.5t-200.5 81.5q-100 0 -186 -51.5t-154 -141.5v-764h-97z" />
<glyph unicode="o" horiz-adv-x="1107" d="M89 510q0 120 31.5 216.5t91 165.5t146 106t196.5 37t196.5 -37t145.5 -106t90.5 -165.5t31.5 -216.5t-31.5 -216t-90.5 -165t-145.5 -105.5t-196.5 -36.5t-196.5 36.5t-146 105.5t-91 165t-31.5 216zM189 510q0 -102 23.5 -184.5t69 -141t113.5 -90t159 -31.5t159 31.5 t113.5 90t68.5 141t23 184.5q0 101 -23 184t-68.5 142t-113.5 90.5t-159 31.5t-159 -31.5t-113.5 -90.5t-69 -142t-23.5 -184z" />
<glyph unicode="p" horiz-adv-x="1095" d="M166 -360v1379h53q13 0 21.5 -5.5t9.5 -20.5l9 -157q68 92 158.5 146t203.5 54q188 0 292.5 -130t104.5 -390q0 -112 -29.5 -208.5t-85.5 -167.5t-138.5 -112t-190.5 -41q-104 0 -180 37.5t-131 112.5v-497h-97zM263 223q58 -88 129.5 -124t162.5 -36q90 0 157.5 33 t113 93t69 143.5t23.5 183.5q0 227 -83.5 334t-241.5 107q-101 0 -183.5 -52.5t-146.5 -146.5v-535z" />
<glyph unicode="q" horiz-adv-x="1118" d="M89 507q0 112 29 208.5t86 167.5t139.5 112t190.5 41q105 0 182.5 -40t132.5 -117l9 114q1 26 30 26h54v-1379h-98v541q-68 -90 -157.5 -142t-200.5 -52q-187 0 -292 130t-105 390zM189 507q0 -227 84 -334t241 -107q101 0 183 52t147 145v539q-55 84 -128 120.5 t-164 36.5q-90 0 -157.5 -32.5t-113 -92.5t-69 -143.5t-23.5 -183.5z" />
<glyph unicode="r" horiz-adv-x="813" d="M166 0v1019h51q17 0 25 -7t9 -25l8 -215q49 124 131 194t202 70q46 0 85 -9.5t74 -28.5l-14 -67q-3 -16 -20 -17q-6 0 -17.5 4.5t-28.5 9.5t-41.5 9t-56.5 4q-116 0 -190 -71.5t-120 -206.5v-663h-97z" />
<glyph unicode="s" horiz-adv-x="880" d="M91 108l24 34q5 8 11 12.5t17 4.5q13 0 33 -16.5t51 -35.5t77.5 -35.5t115.5 -16.5q65 0 114 18t81.5 49t49.5 72.5t17 87.5q0 51 -24.5 84.5t-64.5 57t-90.5 40t-104.5 33t-104.5 36t-90.5 49t-64.5 72t-24.5 106.5q0 54 23.5 104t67 88t106 60.5t140.5 22.5 q93 0 165 -26.5t133 -81.5l-22 -34q-7 -14 -22 -14q-11 0 -29.5 12.5t-47.5 28.5t-71.5 29t-103.5 13q-55 0 -101 -16t-78 -42.5t-50 -62t-18 -74.5q0 -48 24.5 -80t64.5 -54.5t90.5 -38.5t104 -32.5t104 -36.5t90.5 -50t64.5 -73t24.5 -104q0 -67 -24 -124t-69.5 -99 t-112 -66.5t-151.5 -24.5q-108 0 -186 34.5t-139 89.5z" />
<glyph unicode="t" horiz-adv-x="730" d="M53 938v38l174 12l25 365q1 9 7.5 16t18.5 7h46v-389h320v-73h-320v-691q0 -42 10.5 -72t29.5 -49.5t44.5 -29t55.5 -9.5q37 0 63.5 11t46 24t31.5 23.5t20 10.5t16 -10l27 -43q-39 -43 -99 -69t-125 -26q-103 0 -161 57t-58 177v696h-146q-11 0 -18.5 6.5t-7.5 17.5z " />
<glyph unicode="u" horiz-adv-x="1107" d="M140 368v651h99v-651q0 -143 65.5 -225t199.5 -82q99 0 185 51t155 141v766h98v-1019h-54q-29 0 -30 27l-9 151q-71 -88 -163.5 -141t-206.5 -53q-85 0 -148.5 26.5t-105.5 76.5t-63.5 121t-21.5 160z" />
<glyph unicode="v" horiz-adv-x="997" d="M26 1019h76q14 0 23 -7.5t13 -17.5l336 -804q10 -24 15 -45l11 -43q5 22 10.5 44t14.5 44l338 804q5 11 14 18t21 7h74l-430 -1019h-86z" />
<glyph unicode="w" horiz-adv-x="1509" d="M23 1019h74q14 0 23.5 -7.5t12.5 -17.5l257 -804q7 -24 11 -45l9 -43q5 22 11 43.5t14 44.5l274 811q7 23 28 23h40q23 0 30 -23l269 -811q15 -46 25 -89q4 22 8.5 44t12.5 45l258 804q8 25 35 25h72l-341 -1019h-72q-16 0 -23 22l-280 827q-5 15 -9 30.5t-7 30.5 q-3 -15 -7 -30.5t-9 -30.5l-282 -827q-6 -22 -25 -22h-68z" />
<glyph unicode="x" horiz-adv-x="943" d="M36 0l368 521l-354 498h93q14 0 21 -6t12 -15l299 -432q4 17 18 37l279 394q5 9 13 15.5t18 6.5h90l-356 -493l370 -526h-93q-14 0 -22.5 8.5t-13.5 17.5l-309 450q-5 -20 -15 -35l-297 -417q-7 -9 -15 -16.5t-19 -7.5h-87z" />
<glyph unicode="y" horiz-adv-x="997" d="M23 1019h80q15 0 24 -7.5t13 -17.5l343 -792q6 -15 11 -31t9 -33q5 16 10.5 32t11.5 32l339 792q5 11 14.5 18t20.5 7h75l-586 -1347q-6 -14 -16 -23t-28 -9h-70l180 398z" />
<glyph unicode="z" horiz-adv-x="925" d="M76 0v39q0 17 15 38l640 865h-621v77h736v-41q0 -22 -15 -39l-637 -862h626v-77h-744z" />
<glyph unicode="{" horiz-adv-x="614" d="M65 610v63q36 0 65.5 11t50.5 32t32 49.5t11 61.5q0 56 -9.5 109.5t-21 107t-21 107t-9.5 111.5q0 62 19.5 115.5t56 92.5t90.5 61t122 22h56v-43q0 -11 -9 -17t-17 -6h-34q-44 0 -80 -15.5t-62 -44t-41 -69.5t-15 -91q0 -58 9 -113.5t20.5 -109.5t20.5 -107.5t9 -108.5 q0 -38 -12.5 -69.5t-33.5 -55t-48.5 -39.5t-56.5 -23q30 -6 57 -22t48 -40t33.5 -55t12.5 -69q0 -54 -9 -108t-20.5 -108.5t-20.5 -109.5t-9 -113q0 -50 15 -91t41 -69.5t62 -44t80 -15.5h34q8 0 17 -6t9 -17v-43h-56q-68 0 -122 22t-90.5 61.5t-56 92.5t-19.5 116 q0 57 9.5 110.5t21 107t21 106.5t9.5 110q0 34 -11 62t-32 49t-50.5 32t-65.5 11z" />
<glyph unicode="|" horiz-adv-x="614" d="M268 -360v1913h77v-1913h-77z" />
<glyph unicode="}" horiz-adv-x="614" d="M108 -227q0 11 8 17t17 6h34q44 0 80.5 15.5t62.5 44t41 69.5t15 91q0 57 -9.5 112.5t-20.5 110t-20.5 108t-9.5 108.5q0 38 12.5 69t33.5 55t48 40t57 22q-30 7 -57 23t-48 39.5t-33.5 55.5t-12.5 69q0 54 9.5 108t20.5 108t20.5 109t9.5 114q0 50 -15 91t-41 69.5 t-62.5 44t-80.5 15.5h-34q-9 0 -17 6t-8 17v43h56q68 0 121.5 -22t90.5 -61t56.5 -92.5t19.5 -115.5q0 -57 -10 -111t-21 -107.5t-21 -106.5t-10 -110q0 -34 11.5 -62t32.5 -49t50 -32t65 -11v-63q-36 0 -65 -11t-50 -32t-32.5 -49.5t-11.5 -61.5q0 -56 10 -109.5t21 -107 t21 -107t10 -110.5q0 -62 -19.5 -115.5t-56.5 -93t-91 -61.5t-121 -22h-56v43z" />
<glyph unicode="~" d="M143 444q0 56 16.5 104.5t47.5 84.5t75.5 56.5t101.5 20.5q53 0 108 -20t108 -44.5t103.5 -44.5t94.5 -20q38 0 69 13.5t52.5 38t33.5 58.5t12 74h79q0 -56 -16 -104.5t-47 -84t-76 -56t-102 -20.5q-52 0 -107 20t-108.5 44.5t-104 44.5t-94.5 20q-39 0 -69 -14 t-51.5 -38.5t-33.5 -58.5t-13 -74h-79z" />
<glyph unicode="&#xa2;" d="M163 510q0 115 32.5 210.5t95.5 164.5t155 108.5t209 41.5l11 210q1 13 8.5 23t21.5 10h37l-12 -246q89 -8 158 -37.5t123 -76.5l-24 -34q-5 -5 -9.5 -9t-13.5 -4t-26 12t-45 27t-69 28.5t-98 18.5l-44 -895q77 2 129 19.5t86.5 37.5t54.5 36.5t31 16.5q8 0 12 -2t8 -7 l25 -32q-24 -30 -59 -55t-80 -44t-98.5 -30.5t-112.5 -13.5l-11 -215q-1 -13 -8.5 -22.5t-21.5 -9.5h-37l12 248q-98 6 -179 44t-139.5 104.5t-90 160t-31.5 212.5zM259 510q0 -100 24 -179.5t69.5 -136.5t109.5 -89.5t144 -39.5l45 893q-94 -3 -167 -35t-123 -90t-76 -140 t-26 -183z" />
<glyph unicode="&#xa3;" d="M69 647v33q0 15 9.5 25.5t26.5 10.5h169v301q0 95 27 177t79.5 142t132 94t183.5 34q78 0 137.5 -19t104 -51.5t76.5 -76.5t54 -93l-39 -23q-9 -5 -22 -5q-17 0 -31 17q-20 32 -43.5 62.5t-55 54t-75.5 37t-106 13.5q-80 0 -139.5 -26.5t-100.5 -74t-61.5 -114.5 t-20.5 -148v-301h490v-40q0 -11 -8.5 -20t-21.5 -9h-460v-311q0 -91 -37 -153t-101 -106q23 4 44.5 6t45.5 2h806v-41q0 -15 -12.5 -29.5t-33.5 -14.5h-993v67q35 13 68 33.5t58.5 50t40 69.5t14.5 93v334h-205z" />
<glyph unicode="&#xa5;" d="M87 1449h81q27 0 40 -26l354 -681q8 -20 15 -38t12 -35q9 34 26 73l354 681q5 11 14.5 18.5t24.5 7.5h82l-434 -818h356v-60h-375v-120h375v-60h-375v-391h-97v391h-375v60h375v120h-375v60h354z" />
<glyph unicode="&#xa9;" horiz-adv-x="1651" d="M87 725q0 101 26.5 196t74.5 177t115.5 149.5t149.5 115.5t176 74.5t196 26.5t196.5 -26.5t177 -74.5t150 -115.5t115 -149.5t74.5 -177t27 -196q0 -102 -27 -196.5t-74.5 -176.5t-115 -149.5t-150 -115.5t-176.5 -74.5t-197 -26.5q-101 0 -195.5 26.5t-176.5 74.5 t-149.5 115.5t-115.5 149.5t-74.5 176.5t-26.5 196.5zM147 725q0 -142 53 -266.5t145 -217.5t215.5 -146t264.5 -53t265.5 53t217 146t145.5 217.5t53 266.5t-53 266.5t-145.5 218t-216.5 147t-266 53.5q-141 0 -264.5 -53.5t-215.5 -147t-145 -218t-53 -266.5zM387 726 q0 102 34.5 187t96 146t146.5 95t186 34q53 0 97.5 -8t82.5 -22.5t71 -35.5t64 -49l-24 -34q-7 -11 -21 -11q-10 0 -27 13.5t-46.5 29t-76 29t-116.5 13.5q-85 0 -154.5 -27t-119.5 -77.5t-77 -122t-27 -160.5q0 -92 27 -164t75.5 -121.5t114.5 -75.5t145 -26q87 0 150 21 t118 64q12 10 23 10q5 0 9.5 -2t6.5 -4l32 -32q-60 -60 -142.5 -96t-200.5 -36q-98 0 -181 33.5t-141.5 94t-91.5 145.5t-33 189z" />
<glyph unicode="&#xad;" horiz-adv-x="680" d="M102 566v83h477v-83h-477z" />
<glyph unicode="&#xae;" horiz-adv-x="1651" d="M87 725q0 101 26.5 196t74.5 177t115.5 149.5t149.5 115.5t176 74.5t196 26.5t196.5 -26.5t177 -74.5t150 -115.5t115 -149.5t74.5 -177t27 -196q0 -102 -27 -196.5t-74.5 -176.5t-115 -149.5t-150 -115.5t-176.5 -74.5t-197 -26.5q-101 0 -195.5 26.5t-176.5 74.5 t-149.5 115.5t-115.5 149.5t-74.5 176.5t-26.5 196.5zM147 725q0 -142 53 -266.5t145 -217.5t215.5 -146t264.5 -53t265.5 53t217 146t145.5 217.5t53 266.5t-53 266.5t-145.5 218t-216.5 147t-266 53.5q-141 0 -264.5 -53.5t-215.5 -147t-145 -218t-53 -266.5zM552 272v907 h253q157 0 237 -59t80 -180q0 -102 -66 -167.5t-186 -82.5q12 -7 22 -16.5t19 -24.5l292 -377h-82q-10 0 -17.5 3.5t-13.5 13.5l-277 359q-8 11 -21 18t-40 7h-113v-401h-87zM639 738h152q124 0 184.5 50t60.5 143q0 94 -55 137t-176 43h-166v-373z" />
<glyph unicode="&#xb4;" horiz-adv-x="599" d="M212 1189l161 244q11 18 23.5 25t36.5 7h96l-221 -259q-8 -10 -16.5 -13.5t-21.5 -3.5h-58z" />
<glyph unicode="&#x2000;" horiz-adv-x="833" />
<glyph unicode="&#x2001;" horiz-adv-x="1667" />
<glyph unicode="&#x2002;" horiz-adv-x="833" />
<glyph unicode="&#x2003;" horiz-adv-x="1667" />
<glyph unicode="&#x2004;" horiz-adv-x="555" />
<glyph unicode="&#x2005;" horiz-adv-x="416" />
<glyph unicode="&#x2006;" horiz-adv-x="277" />
<glyph unicode="&#x2007;" horiz-adv-x="277" />
<glyph unicode="&#x2008;" horiz-adv-x="207" />
<glyph unicode="&#x2009;" horiz-adv-x="332" />
<glyph unicode="&#x200a;" horiz-adv-x="92" />
<glyph unicode="&#x2010;" horiz-adv-x="680" d="M102 566v83h477v-83h-477z" />
<glyph unicode="&#x2011;" horiz-adv-x="680" d="M102 566v83h477v-83h-477z" />
<glyph unicode="&#x2012;" horiz-adv-x="680" d="M102 566v83h477v-83h-477z" />
<glyph unicode="&#x2013;" horiz-adv-x="1107" d="M151 556v73h805v-73h-805z" />
<glyph unicode="&#x2014;" horiz-adv-x="1629" d="M151 556v73h1328v-73h-1328z" />
<glyph unicode="&#x2018;" horiz-adv-x="404" d="M133 1237q0 80 39 153.5t101 134.5l28 -19q8 -6 8 -14q0 -7 -6 -13q-39 -52 -64.5 -103.5t-25.5 -106.5q0 -60 36 -123q5 -8 5 -17q0 -14 -15 -20l-64 -27q-22 39 -32 77.5t-10 77.5z" />
<glyph unicode="&#x2019;" horiz-adv-x="404" d="M113 1103q0 8 6 14q39 51 64.5 103t25.5 107q0 59 -36 122q-5 8 -5 16q0 14 15 21l63 26q23 -39 33 -77t10 -77q0 -80 -39 -154t-102 -134l-28 19q-7 6 -7 14z" />
<glyph unicode="&#x201c;" horiz-adv-x="680" d="M133 1237q0 80 39 153.5t101 134.5l28 -19q8 -6 8 -14q0 -7 -6 -13q-39 -52 -64.5 -103.5t-25.5 -106.5q0 -60 36 -123q5 -8 5 -17q0 -14 -15 -20l-64 -27q-22 39 -32 77.5t-10 77.5zM409 1237q0 80 38.5 153.5t101.5 134.5l28 -19q8 -6 8 -14q0 -7 -6 -13 q-39 -52 -65 -103.5t-26 -106.5q0 -60 36 -123q5 -8 5 -17q0 -14 -15 -20l-63 -27q-22 39 -32 77.5t-10 77.5z" />
<glyph unicode="&#x201d;" horiz-adv-x="680" d="M113 1103q0 8 6 14q39 51 64.5 103t25.5 107q0 59 -36 122q-5 8 -5 16q0 14 15 21l63 26q23 -39 33 -77t10 -77q0 -80 -39 -154t-102 -134l-28 19q-7 6 -7 14zM388 1103q0 8 6 14q39 51 64.5 103t25.5 107q0 59 -35 122q-5 8 -6 16q0 14 16 21l62 26q23 -39 33 -77 t10 -77q0 -80 -39 -154t-101 -134l-29 19q-7 6 -7 14z" />
<glyph unicode="&#x2022;" d="M293 610q0 62 23.5 117.5t64.5 97t95 65t116 23.5t117.5 -23.5t96.5 -65t64.5 -96.5t23.5 -118q0 -61 -23.5 -115t-64.5 -95t-96.5 -64.5t-117.5 -23.5q-61 0 -115.5 23.5t-95.5 64.5t-64.5 95t-23.5 115z" />
<glyph unicode="&#x2026;" horiz-adv-x="1409" d="M108 79q0 19 7 36.5t19.5 30.5t29.5 20.5t38 7.5q19 0 36.5 -7.5t30.5 -20.5t20.5 -30.5t7.5 -36.5q0 -20 -7.5 -37t-20.5 -30t-30.5 -20t-36.5 -7q-40 0 -67 27t-27 67zM609 79q0 19 7.5 36.5t20 30.5t29.5 20.5t37 7.5q19 0 37 -7.5t30.5 -20.5t20.5 -30.5t8 -36.5 q0 -20 -8 -37t-20.5 -30t-30 -20t-37.5 -7q-40 0 -67 27t-27 67zM1112 79q0 19 7 36.5t20 30.5t30 20.5t37 7.5q19 0 37 -7.5t30.5 -20.5t20.5 -30.5t8 -36.5q0 -20 -8 -37t-20.5 -30t-30 -20t-37.5 -7q-40 0 -67 27t-27 67z" />
<glyph unicode="&#x202f;" horiz-adv-x="332" />
<glyph unicode="&#x205f;" horiz-adv-x="416" />
<glyph unicode="&#x20ac;" d="M32 583v60h161l-2 40t-1 42q0 50 4 99h-162v60h168q16 135 62 242.5t117 182t164 114.5t206 40q66 0 121.5 -11.5t103 -34t89 -56t79.5 -77.5l-32 -36q-4 -5 -9 -8.5t-14 -3.5q-8 0 -19 10.5t-28.5 26t-42.5 34.5t-59.5 34.5t-80 26t-104.5 10.5q-92 0 -169 -32 t-135 -94.5t-96 -154.5t-53 -213h616v-31q0 -11 -7.5 -20t-24.5 -9h-590q-3 -48 -3 -99q0 -22 0.5 -41.5t1.5 -40.5h529v-31q0 -12 -8 -20.5t-23 -8.5h-493q13 -127 50 -223.5t94.5 -161t134 -97t168.5 -32.5q63 0 112 12t86 31t63.5 41t45 41t31.5 31.5t22 12.5 q10 0 19 -10l38 -35q-37 -47 -80 -85.5t-95 -66t-113.5 -42t-133.5 -14.5q-116 0 -210 40t-163 116.5t-112 187.5t-57 254h-166z" />
<glyph unicode="&#x2122;" horiz-adv-x="1461" d="M74 1389v60h482v-60h-204v-529h-72v529h-206zM684 860v589h58q10 0 15 -2t12 -10l222 -373l11 -30q5 16 14 30l218 373q5 8 9.5 10t14.5 2h59v-589h-64v454l5 45l-224 -389q-8 -16 -25 -17h-12q-17 0 -25 17l-229 387l6 -43v-454h-65z" />
<glyph unicode="&#xe000;" horiz-adv-x="1020" d="M0 1020h1020v-1020h-1020v1020z" />
</font>
</defs></svg>

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

BIN
public/assets/action.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
public/assets/activity.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
public/assets/argument.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 676 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 676 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

BIN
public/assets/bg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
public/assets/bizarre.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
public/assets/black_bg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

BIN
public/assets/catalyst.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
public/assets/closed.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

BIN
public/assets/con_icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
public/assets/decision.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

BIN
public/assets/delete.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
public/assets/example.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
public/assets/foresight.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
public/assets/futuredev.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

BIN
public/assets/go-arrow.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
public/assets/group.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Some files were not shown because too many files have changed in this diff Show more