From 17ed70230e2ccd70bc8eb4e454ac218e7e6c6296 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 1 Jul 2013 11:45:09 +0200 Subject: [PATCH 1/8] Bad request --- htdocs/install/mysql/migration/3.4.0-3.5.0.sql | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/install/mysql/migration/3.4.0-3.5.0.sql b/htdocs/install/mysql/migration/3.4.0-3.5.0.sql index 17dbf296e70..868886b2665 100755 --- a/htdocs/install/mysql/migration/3.4.0-3.5.0.sql +++ b/htdocs/install/mysql/migration/3.4.0-3.5.0.sql @@ -68,6 +68,7 @@ DROP table llx_adherent_options_label; ALTER TABLE llx_user ADD accountancy_code VARCHAR( 24 ) NULL; +DELETE FROM llx_boxes where box_id IN (SELECT rowid FROM llx_boxes_def where file='box_activity.php' AND note IS NULL); DELETE FROM llx_boxes_def where file='box_activity.php' AND note IS NULL; From b9ff5188b3a998c14b5ec2dcc3597e5ec92fed5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rapha=C3=ABl=20Doursenaud?= Date: Mon, 1 Jul 2013 12:00:42 +0200 Subject: [PATCH 2/8] Normalized EOL --- .../highlight.js | 128 +- .../prettify.js | 4 +- build/exe/doliwamp/httpd.conf.install | 1524 ++-- build/pad/Dolibarr developpers.cml | 62 +- build/pad/NLTechno.cml | 62 +- htdocs/adherents/class/adherent.class.php | 66 +- .../facture/class/facturestats.class.php | 2 +- .../boxes/box_graph_invoices_permonth.php | 136 +- .../core/boxes/box_graph_orders_permonth.php | 136 +- htdocs/core/class/stats.class.php | 170 +- .../browser/default/browser.css | 162 +- .../commande/doc/pdf_einstein.modules.php | 2 +- .../doc/pdf_expedition_rouget.modules.php | 2 +- .../fichinter/doc/pdf_soleil.modules.php | 2 +- .../livraison/pdf/pdf_typhon.modules.php | 2 +- .../modules/propale/doc/pdf_azur.modules.php | 2 +- .../pdf/pdf_canelle.modules.php | 2 +- .../pdf/pdf_muscadet.modules.php | 2 +- htdocs/includes/ckeditor/.htaccess | 48 +- htdocs/includes/ckeditor/ckeditor.asp | 1910 ++--- htdocs/includes/ckeditor/ckeditor.pack | 422 +- .../ckeditor/lang/_translationstatus.txt | 128 +- .../a11yhelp/lang/_translationstatus.txt | 50 +- .../devtools/lang/_translationstatus.txt | 56 +- .../placeholder/lang/_translationstatus.txt | 54 +- .../specialchar/lang/_translationstatus.txt | 44 +- .../uicolor/lang/_translationstatus.txt | 56 +- htdocs/includes/fpdfi/README.txt | 8 +- htdocs/includes/geoip/geoipcity.inc | 416 +- .../jquery/plugins/jpicker/ReadMe.txt | 22 +- htdocs/includes/nusoap/lib/Mail/xmail.dtd | 38 +- htdocs/includes/nusoap/lib/Mail/xmail.xsl | 138 +- htdocs/includes/nusoap/lib/changelog | 1296 +-- .../includes/odtphp/zip/pclzip/gnu-lgpl.txt | 1006 +-- .../PHPExcel/Shared/PCLZip/gnu-lgpl.txt | 1008 +-- .../PHPExcel/Shared/PCLZip/readme.txt | 840 +- .../PHPExcel/Shared/PDF/cache/utf8test.txt | 244 +- .../Shared/PDF/fonts/utils/src/readme.txt | 34 +- .../PHPExcel/Shared/PDF/images/bug.eps | 3618 ++++----- .../PHPExcel/Shared/PDF/images/pelican.ai | 294 +- .../PHPExcel/Shared/PDF/images/tiger.ai | 7198 ++++++++--------- .../phpexcel/PHPExcel/locale/pt/br/functions | 816 +- .../phpexcel/PHPExcel/locale/pt/functions | 816 +- .../phpexcel/PHPExcel/locale/sv/functions | 816 +- htdocs/societe/checkvat/checkVatService.xml | 346 +- 45 files changed, 12094 insertions(+), 12094 deletions(-) diff --git a/build/aps/Limitations of APS Support in the Panel_fichiers/highlight.js b/build/aps/Limitations of APS Support in the Panel_fichiers/highlight.js index 8c2b158abbc..d6386c93792 100644 --- a/build/aps/Limitations of APS Support in the Panel_fichiers/highlight.js +++ b/build/aps/Limitations of APS Support in the Panel_fichiers/highlight.js @@ -1,64 +1,64 @@ -function last(href) -{ - var ret = href.split("/"); - return ret[ret.length-1]; -} - -function StopProcess() -{ -LeftFrame = parent.TOC.document.location.href; -LeftFrame = last(LeftFrame); -if (LeftFrame == "dhtml_search.htm") return 1 -else return 0; -} - - - -function highlightTOC(str) { - - - - - - if (StopProcess()) return; - try { - - str = str || parent.BODY.document.location.href; - uri = last(str); - list = parent.TOC.document.getElementsByTagName("a"); - for(i=0; i]*(?:>|$)/], - [PR_COMMENT, /^<\!--[\s\S]*?(?:-\->|$)/], + [PR_COMMENT, /^<\!--[\s\S]*?(?:-\->|$)/], // Unescaped content in an unknown language ['lang-', /^<\?([\s\S]+?)(?:\?>|$)/], ['lang-', /^<%([\s\S]+?)(?:%>|$)/], diff --git a/build/exe/doliwamp/httpd.conf.install b/build/exe/doliwamp/httpd.conf.install index a6bdf850540..d215380aa13 100644 --- a/build/exe/doliwamp/httpd.conf.install +++ b/build/exe/doliwamp/httpd.conf.install @@ -1,762 +1,762 @@ -# -# This is the main Apache HTTP server configuration file. It contains the -# configuration directives that give the server its instructions. -# See for detailed information. -# In particular, see -# -# for a discussion of each configuration directive. -# -# Do NOT simply read the instructions in here without understanding -# what they do. They're here only as hints or reminders. If you are unsure -# consult the online docs. You have been warned. -# -# Configuration and logfile names: If the filenames you specify for many -# of the server's control files begin with "/" (or "drive:/" for Win32), the -# server will use that explicit path. If the filenames do *not* begin -# with "/", the value of ServerRoot is prepended -- so "logs/foo.log" -# with ServerRoot set to "C:/Program Files/Apache Software Foundation/Apache2.2" will be interpreted by the -# server as "C:/Program Files/Apache Software Foundation/Apache2.2/logs/foo.log". -# -# NOTE: Where filenames are specified, you must use forward slashes -# instead of backslashes (e.g., "c:/apache" instead of "c:\apache"). -# If a drive letter is omitted, the drive on which Apache.exe is located -# will be used by default. It is recommended that you always supply -# an explicit drive letter in absolute paths, however, to avoid -# confusion. -# - -# ThreadsPerChild: constant number of worker threads in the server process -# MaxRequestsPerChild: maximum number of requests a server process serves -ThreadsPerChild 250 -MaxRequestsPerChild 0 - -# -# ServerRoot: The top of the directory tree under which the server's -# configuration, error, and log files are kept. -# -# Do not add a slash at the end of the directory path. If you point -# ServerRoot at a non-local disk, be sure to point the LockFile directive -# at a local disk. If you wish to share the same ServerRoot for multiple -# httpd daemons, you will need to change at least LockFile and PidFile. -# -ServerRoot "WAMPROOT/bin/apache/apacheWAMPAPACHEVERSION" - -# -# Listen: Allows you to bind Apache to specific IP addresses and/or -# ports, instead of the default. See also the -# directive. -# -# Change this to Listen on specific IP addresses as shown below to -# prevent Apache from glomming onto all bound IP addresses (0.0.0.0) -# -#Listen 12.34.56.78:80 -Listen WAMPAPACHEPORT - -# -# Dynamic Shared Object (DSO) Support -# -# To be able to use the functionality of a module which was built as a DSO you -# have to place corresponding `LoadModule' lines at this location so the -# directives contained in it are actually available _before_ they are used. -# Statically compiled modules (those listed by `httpd -l') do not need -# to be loaded here. -# -# Example: -# LoadModule foo_module modules/mod_foo.so -# -LoadModule actions_module modules/mod_actions.so -LoadModule alias_module modules/mod_alias.so -LoadModule asis_module modules/mod_asis.so -LoadModule auth_basic_module modules/mod_auth_basic.so -#LoadModule auth_digest_module modules/mod_auth_digest.so -#LoadModule authn_anon_module modules/mod_authn_anon.so -#LoadModule authn_dbm_module modules/mod_authn_dbm.so -LoadModule authn_default_module modules/mod_authn_default.so -LoadModule authn_file_module modules/mod_authn_file.so -#LoadModule authz_dbm_module modules/mod_authz_dbm.so -LoadModule authz_default_module modules/mod_authz_default.so -LoadModule authz_groupfile_module modules/mod_authz_groupfile.so -LoadModule authz_host_module modules/mod_authz_host.so -LoadModule authz_user_module modules/mod_authz_user.so -LoadModule autoindex_module modules/mod_autoindex.so -#LoadModule cern_meta_module modules/mod_cern_meta.so -LoadModule cgi_module modules/mod_cgi.so -#LoadModule dav_module modules/mod_dav.so -#LoadModule dav_fs_module modules/mod_dav_fs.so -#LoadModule deflate_module modules/mod_deflate.so -LoadModule dir_module modules/mod_dir.so -LoadModule env_module modules/mod_env.so -LoadModule expires_module modules/mod_expires.so -#LoadModule file_cache_module modules/mod_file_cache.so -#LoadModule headers_module modules/mod_headers.so -LoadModule imagemap_module modules/mod_imagemap.so -LoadModule include_module modules/mod_include.so -#LoadModule info_module modules/mod_info.so -LoadModule isapi_module modules/mod_isapi.so -LoadModule log_config_module modules/mod_log_config.so -LoadModule mime_module modules/mod_mime.so -#LoadModule mime_magic_module modules/mod_mime_magic.so -#LoadModule proxy_module modules/mod_proxy.so -#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so -#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so -#LoadModule proxy_connect_module modules/mod_proxy_connect.so -#LoadModule proxy_http_module modules/mod_proxy_http.so -#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so -LoadModule negotiation_module modules/mod_negotiation.so -LoadModule rewrite_module modules/mod_rewrite.so -LoadModule setenvif_module modules/mod_setenvif.so -#LoadModule speling_module modules/mod_speling.so -LoadModule status_module modules/mod_status.so -#LoadModule unique_id_module modules/mod_unique_id.so -LoadModule userdir_module modules/mod_userdir.so -#LoadModule usertrack_module modules/mod_usertrack.so -LoadModule vhost_alias_module modules/mod_vhost_alias.so -#LoadModule ssl_module modules/mod_ssl.so -LoadModule php5_module "WAMPROOT/bin/php/phpWAMPPHPVERSION/php5apache2_2.dll" - -# -# ExtendedStatus controls whether Apache will generate "full" status -# information (ExtendedStatus On) or just basic information (ExtendedStatus -# Off) when the "server-status" handler is called. The default is Off. -# -ExtendedStatus On - - -SetHandler server-status -Order Deny,Allow -Deny from all -Allow from localhost, 127.0.0.1 - - - -# 'Main' server configuration -# -# The directives in this section set up the values used by the 'main' -# server, which responds to any requests that aren't handled by a -# definition. These values also provide defaults for -# any containers you may define later in the file. -# -# All of these directives may appear inside containers, -# in which case these default settings will be overridden for the -# virtual host being defined. -# - -# -# ServerAdmin: Your address, where problems with the server should be -# e-mailed. This address appears on some server-generated pages, such -# as error documents. e.g. admin@your-domain.com -# -ServerAdmin webmaster@localhost - -# -# ServerName gives the name and port that the server uses to identify itself. -# This can often be determined automatically, but we recommend you specify -# it explicitly to prevent problems during startup. -# -# If your host doesn't have a registered DNS name, enter its IP address here. -# -ServerName localhost - -# -# ServerTokens -# This directive configures what you return as the Server HTTP response -# Header. The default is 'Full' which sends information about the OS-Type -# and compiled in modules. -# Set to one of: Full | OS | Minor | Minimal | Major | Prod -# where Full conveys the most information, and Prod the least. -# -#ServerTokens Prod - -# -# DocumentRoot: The directory out of which you will serve your -# documents. By default, all requests are taken from this directory, but -# symbolic links and aliases may be used to point to other locations. -# -DocumentRoot "WAMPROOT/www/" - - -# -# Timeout: The number of seconds before receives and sends time out. -# -Timeout 300 - -# -# KeepAlive: Whether or not to allow persistent connections (more than -# one request per connection). Set to "Off" to deactivate. -# -KeepAlive On - -# -# MaxKeepAliveRequests: The maximum number of requests to allow -# during a persistent connection. Set to 0 to allow an unlimited amount. -# We recommend you leave this number high, for maximum performance. -# -MaxKeepAliveRequests 500 - -# -# KeepAliveTimeout: Number of seconds to wait for the next request from the -# same client on the same connection. -# -KeepAliveTimeout 30 - - -# -# Each directory to which Apache has access can be configured with respect -# to which services and features are allowed and/or disabled in that -# directory (and its subdirectories). -# -# First, we configure the "default" to be a very restrictive set of -# features. -# - - Options FollowSymLinks - AllowOverride None - Order deny,allow - Deny from all - Satisfy all - - -# -# Note that from this point forward you must specifically allow -# particular features to be enabled - so if something's not working as -# you might expect, make sure that you have specifically enabled it -# below. -# - -# -# This should be changed to whatever you set DocumentRoot to. -# - - - # - # Possible values for the Options directive are "None", "All", - # or any combination of: - # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews - # - # Note that "MultiViews" must be named *explicitly* --- "Options All" - # doesn't give it to you. - # - # The Options directive is both complicated and important. Please see - # http://httpd.apache.org/docs/2.2/mod/core.html#options - # for more information. - # - Options Indexes FollowSymLinks - - # - # AllowOverride controls what directives may be placed in .htaccess files. - # It can be "All", "None", or any combination of the keywords: - # Options FileInfo AuthConfig Limit - # - AllowOverride all - - # - # Controls who can get stuff from this server. - # -# onlineoffline tag - don't remove - Order Deny,Allow - Deny from all - Allow from 127.0.0.1 - - - -# -# DirectoryIndex: sets the file that Apache will serve if a directory -# is requested. -# - - DirectoryIndex index.php index.php3 index.html index.htm - - -# -# The following lines prevent .htaccess and .htpasswd files from being -# viewed by Web clients. -# - - Order allow,deny - Deny from all - - -# -# ErrorLog: The location of the error log file. -# If you do not specify an ErrorLog directive within a -# container, error messages relating to that virtual host will be -# logged here. If you *do* define an error logfile for a -# container, that host's errors will be logged there and not here. -# -ErrorLog "WAMPROOT/logs/apache_error.log" - -# -# LogLevel: Control the number of messages logged to the error_log. -# Possible values include: debug, info, notice, warn, error, crit, -# alert, emerg. -# -LogLevel warn - - - # - # The following directives define some format nicknames for use with - # a CustomLog directive (see below). - # - LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined - LogFormat "%h %l %u %t \"%r\" %>s %b" common - - - # You need to enable mod_logio.c to use %I and %O - LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio - - - # - # The location and format of the access logfile (Common Logfile Format). - # If you do not define any access logfiles within a - # container, they will be logged here. Contrariwise, if you *do* - # define per- access logfiles, transactions will be - # logged therein and *not* in this file. - # - CustomLog "WAMPROOT/logs/access.log" common - - # - # If you prefer a logfile with access, agent, and referer information - # (Combined Logfile Format) you can use the following directive. - # - #CustomLog logs/access.log combined - - - - # - # Redirect: Allows you to tell clients about documents that used to - # exist in your server's namespace, but do not anymore. The client - # will make a new request for the document at its new location. - # Example: - # Redirect permanent /foo http://localhost/bar - - # - # Alias: Maps web paths into filesystem paths and is used to - # access content that does not live under the DocumentRoot. - # Example: - # Alias /webpath /full/filesystem/path - # - # If you include a trailing / on /webpath then the server will - # require it to be present in the URL. You will also likely - # need to provide a section to allow access to - # the filesystem path. - - # - # ScriptAlias: This controls which directories contain server scripts. - # ScriptAliases are essentially the same as Aliases, except that - # documents in the target directory are treated as applications and - # run by the server when requested rather than as documents sent to the - # client. The same rules about trailing "/" apply to ScriptAlias - # directives as to Alias. - # - ScriptAlias /cgi-bin/ "cgi-bin/" - - - -# -# "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin" should be changed to whatever your ScriptAliased -# CGI directory exists, if you have that configured. -# - - AllowOverride None - Options None - Order allow,deny - Allow from all - - -# -# Apache parses all CGI scripts for the shebang line by default. -# This comment line, the first line of the script, consists of the symbols -# pound (#) and exclamation (!) followed by the path of the program that -# can execute this specific script. For a perl script, with perl.exe in -# the C:\Program Files\Perl directory, the shebang line should be: - - #!c:/program files/perl/perl - -# Note you _must_not_ indent the actual shebang line, and it must be the -# first line of the file. Of course, CGI processing must be enabled by -# the appropriate ScriptAlias or Options ExecCGI directives for the files -# or directory in question. -# -# However, Apache on Windows allows either the Unix behavior above, or can -# use the Registry to match files by extention. The command to execute -# a file of this type is retrieved from the registry by the same method as -# the Windows Explorer would use to handle double-clicking on a file. -# These script actions can be configured from the Windows Explorer View menu, -# 'Folder Options', and reviewing the 'File Types' tab. Clicking the Edit -# button allows you to modify the Actions, of which Apache 1.3 attempts to -# perform the 'Open' Action, and failing that it will try the shebang line. -# This behavior is subject to change in Apache release 2.0. -# -# Each mechanism has it's own specific security weaknesses, from the means -# to run a program you didn't intend the website owner to invoke, and the -# best method is a matter of great debate. -# -# To enable the this Windows specific behavior (and therefore -disable- the -# equivilant Unix behavior), uncomment the following directive: -# -#ScriptInterpreterSource registry -# -# The directive above can be placed in individual blocks or the -# .htaccess file, with either the 'registry' (Windows behavior) or 'script' -# (Unix behavior) option, and will override this server default option. -# - -# -# DefaultType: the default MIME type the server will use for a document -# if it cannot otherwise determine one, such as from filename extensions. -# If your server contains mostly text or HTML documents, "text/plain" is -# a good value. If most of your content is binary, such as applications -# or images, you may want to use "application/octet-stream" instead to -# keep browsers from trying to display binary files as though they are -# text. -# -DefaultType text/plain - - - # - # TypesConfig points to the file containing the list of mappings from - # filename extension to MIME-type. - # - TypesConfig conf/mime.types - - # - # AddType allows you to add to or override the MIME configuration - # file specified in TypesConfig for specific file types. - # - #AddType application/x-gzip .tgz - # - # AddEncoding allows you to have certain browsers uncompress - # information on the fly. Note: Not all browsers support this. - # - #AddEncoding x-compress .Z - #AddEncoding x-gzip .gz .tgz - # - # If the AddEncoding directives above are commented-out, then you - # probably should define those extensions to indicate media types: - # - AddType application/x-compress .Z - AddType application/x-gzip .gz .tgz - AddType application/x-httpd-php .php - AddType application/x-httpd-php .php3 - - # - # AddHandler allows you to map certain file extensions to "handlers": - # actions unrelated to filetype. These can be either built into the server - # or added with the Action directive (see below) - # - # To use CGI scripts outside of ScriptAliased directories: - # (You will also need to add "ExecCGI" to the "Options" directive.) - # - #AddHandler cgi-script .cgi - - # For type maps (negotiated resources): - #AddHandler type-map var - - # - # Filters allow you to process content before it is sent to the client. - # - # To parse .shtml files for server-side includes (SSI): - # (You will also need to add "Includes" to the "Options" directive.) - # - #AddType text/html .shtml - #AddOutputFilter INCLUDES .shtml - - -# -# The mod_mime_magic module allows the server to use various hints from the -# contents of the file itself to determine its type. The MIMEMagicFile -# directive tells the module where the hint definitions are located. -# -#MIMEMagicFile conf/magic - -# -# Customizable error responses come in three flavors: -# 1) plain text 2) local redirects 3) external redirects -# -# Some examples: -#ErrorDocument 500 "The server made a boo boo." -#ErrorDocument 404 /missing.html -#ErrorDocument 404 "/cgi-bin/missing_handler.pl" -#ErrorDocument 402 http://localhost/subscription_info.html -# - -# -# EnableMMAP and EnableSendfile: On systems that support it, -# memory-mapping or the sendfile syscall is used to deliver -# files. This usually improves server performance, but must -# be turned off when serving from networked-mounted -# filesystems or if support for these functions is otherwise -# broken on your system. -# -#EnableMMAP off -#EnableSendfile off - -# Supplemental configuration -# -# The configuration files in the conf/extra/ directory can be -# included to add extra features or to modify the default configuration of -# the server, or you may simply copy their contents here and change as -# necessary. - -# Server-pool management (MPM specific) -#Include conf/extra/httpd-mpm.conf - -# Multi-language error messages -#Include conf/extra/httpd-multilang-errordoc.conf - -# Fancy directory listings -Include conf/extra/httpd-autoindex.conf - -# Language settings -#Include conf/extra/httpd-languages.conf - -# User home directories -#Include conf/extra/httpd-userdir.conf - -# Real-time info on requests and configuration -#Include conf/extra/httpd-info.conf - -# Virtual hosts -#Include conf/extra/httpd-vhosts.conf - -# Local access to the Apache HTTP Server Manual -#Include conf/extra/httpd-manual.conf - -# Distributed authoring and versioning (WebDAV) -#Include conf/extra/httpd-dav.conf - -# Various default settings -#Include conf/extra/httpd-default.conf - - - -# Secure (SSL/TLS) connections -# -# Note: The following must must be present to support -# starting without SSL on platforms with no /dev/random equivalent -# but a statically compiled-in mod_ssl. -# - - - -SSLRandomSeed startup builtin -SSLRandomSeed connect builtin - -Listen WAMPAPACHEPSSL - -## -## SSL Global Context -## -## All SSL configuration in this context applies both to -## the main server and all SSL-enabled virtual hosts. -## - -# -# Some MIME-types for downloading Certificates and CRLs -# -AddType application/x-x509-ca-cert .crt -AddType application/x-pkcs7-crl .crl - -# Pass Phrase Dialog: -# Configure the pass phrase gathering process. -# The filtering dialog program (`builtin' is a internal -# terminal dialog) has to provide the pass phrase on stdout. -#SSLPassPhraseDialog builtin - -# Inter-Process Session Cache: -# Configure the SSL Session Cache: First the mechanism -# to use and second the expiring timeout (in seconds). -#SSLSessionCache "dbm:C:/Program Files/Apache Software Foundation/Apache2.2/logs/ssl_scache" -#SSLSessionCache "shmcb:C:/Program Files/Apache Software Foundation/Apache2.2/logs/ssl_scache(512000)" -#SSLSessionCacheTimeout 300 - -# Semaphore: -# Configure the path to the mutual exclusion semaphore the -# SSL engine uses internally for inter-process synchronization. -#SSLMutex "file:C:/Program Files/Apache Software Foundation/Apache2.2/logs/ssl_mutex" - -## -## SSL Virtual Host Context -## - - - -# SSL Engine Switch: -# Enable/Disable SSL for this virtual host. -SSLEngine on - -# General setup for the virtual host -DocumentRoot "WAMPROOT/www/" -ServerName localhost -ServerAdmin admin@localhost -ErrorLog "WAMPROOT/logs/apache_error_ssl.log" -TransferLog "WAMPROOT/logs/apache_transfer_ssl.log" -CustomLog "WAMPROOT/logs/apache_access_ssl.log" "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" - -# SSL Cipher Suite: -# List the ciphers that the client is permitted to negotiate. -# See the mod_ssl documentation for a complete list. -#SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL - -# Server Certificate: -# Point SSLCertificateFile at a PEM encoded certificate. If -# the certificate is encrypted, then you will be prompted for a -# pass phrase. Note that a kill -HUP will prompt again. Keep -# in mind that if you have both an RSA and a DSA certificate you -# can configure both in parallel (to also allow the use of DSA -# ciphers, etc.) -SSLCertificateFile "WAMPROOT/myserver.crt" - -# Server Private Key: -# If the key is not combined with the certificate, use this -# directive to point at the key file. Keep in mind that if -# you've both a RSA and a DSA private key you can configure -# both in parallel (to also allow the use of DSA ciphers, etc.) -SSLCertificateKeyFile "WAMPROOT/myserver.key" - -# Server Certificate Chain: -# Point SSLCertificateChainFile at a file containing the -# concatenation of PEM encoded CA certificates which form the -# certificate chain for the server certificate. Alternatively -# the referenced file can be the same as SSLCertificateFile -# when the CA certificates are directly appended to the server -# certificate for convinience. -#SSLCertificateChainFile "WAMPROOT/server-ca.crt" - -# Certificate Authority (CA): -# Set the CA certificate verification path where to find CA -# certificates for client authentication or alternatively one -# huge file containing all of them (file must be PEM encoded) -# Note: Inside SSLCACertificatePath you need hash symlinks -# to point to the certificate files. Use the provided -# Makefile to update the hash symlinks after changes. -#SSLCACertificatePath "WAMPROOT/ssl.crt" -#SSLCACertificateFile "WAMPROOT/ca-bundle.crt" - -# Certificate Revocation Lists (CRL): -# Set the CA revocation path where to find CA CRLs for client -# authentication or alternatively one huge file containing all -# of them (file must be PEM encoded) -# Note: Inside SSLCARevocationPath you need hash symlinks -# to point to the certificate files. Use the provided -# Makefile to update the hash symlinks after changes. -#SSLCARevocationPath "WAMPROOT/ssl.crl" -#SSLCARevocationFile "WAMPROOT/ca-bundle.crl" - -# Client Authentication (Type): -# Client certificate verification type and depth. Types are -# none, optional, require and optional_no_ca. Depth is a -# number which specifies how deeply to verify the certificate -# issuer chain before deciding the certificate is not valid. -#SSLVerifyClient require -#SSLVerifyDepth 10 - -# Access Control: -# With SSLRequire you can do per-directory access control based -# on arbitrary complex boolean expressions containing server -# variable checks and other lookup directives. The syntax is a -# mixture between C and Perl. See the mod_ssl documentation -# for more details. -# -#SSLRequire ( %{SSL_CIPHER} !~ m/^(EXP|NULL)/ \ -# and %{SSL_CLIENT_S_DN_O} eq "Snake Oil, Ltd." \ -# and %{SSL_CLIENT_S_DN_OU} in {"Staff", "CA", "Dev"} \ -# and %{TIME_WDAY} >= 1 and %{TIME_WDAY} <= 5 \ -# and %{TIME_HOUR} >= 8 and %{TIME_HOUR} <= 20 ) \ -# or %{REMOTE_ADDR} =~ m/^192\.76\.162\.[0-9]+$/ -# - -# SSL Engine Options: -# Set various options for the SSL engine. -# o FakeBasicAuth: -# Translate the client X.509 into a Basic Authorisation. This means that -# the standard Auth/DBMAuth methods can be used for access control. The -# user name is the `one line' version of the client's X.509 certificate. -# Note that no password is obtained from the user. Every entry in the user -# file needs this password: `xxj31ZMTZzkVA'. -# o ExportCertData: -# This exports two additional environment variables: SSL_CLIENT_CERT and -# SSL_SERVER_CERT. These contain the PEM-encoded certificates of the -# server (always existing) and the client (only existing when client -# authentication is used). This can be used to import the certificates -# into CGI scripts. -# o StdEnvVars: -# This exports the standard SSL/TLS related `SSL_*' environment variables. -# Per default this exportation is switched off for performance reasons, -# because the extraction step is an expensive operation and is usually -# useless for serving static content. So one usually enables the -# exportation for CGI and SSI requests only. -# o StrictRequire: -# This denies access when "SSLRequireSSL" or "SSLRequire" applied even -# under a "Satisfy any" situation, i.e. when it applies access is denied -# and no other module can change it. -# o OptRenegotiate: -# This enables optimized SSL connection renegotiation handling when SSL -# directives are used in per-directory context. -#SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire -# -# SSLOptions +StdEnvVars -# -# -# SSLOptions +StdEnvVars -# - -# SSL Protocol Adjustments: -# The safe and default but still SSL/TLS standard compliant shutdown -# approach is that mod_ssl sends the close notify alert but doesn't wait for -# the close notify alert from client. When you need a different shutdown -# approach you can use one of the following variables: -# o ssl-unclean-shutdown: -# This forces an unclean shutdown when the connection is closed, i.e. no -# SSL close notify alert is send or allowed to received. This violates -# the SSL/TLS standard but is needed for some brain-dead browsers. Use -# this when you receive I/O errors because of the standard approach where -# mod_ssl sends the close notify alert. -# o ssl-accurate-shutdown: -# This forces an accurate shutdown when the connection is closed, i.e. a -# SSL close notify alert is send and mod_ssl waits for the close notify -# alert of the client. This is 100% SSL/TLS standard compliant, but in -# practice often causes hanging connections with brain-dead browsers. Use -# this only for browsers where you know that their SSL implementation -# works correctly. -# Notice: Most problems of broken clients are also related to the HTTP -# keep-alive facility, so you usually additionally want to disable -# keep-alive for those clients, too. Use variable "nokeepalive" for this. -# Similarly, one has to force some clients to use HTTP/1.0 to workaround -# their broken HTTP/1.1 implementation. Use variables "downgrade-1.0" and -# "force-response-1.0" for this. -#BrowserMatch ".*MSIE.*" \ -# nokeepalive ssl-unclean-shutdown \ -# downgrade-1.0 force-response-1.0 - - - - - - - -# OPTIMIZE: To use gzip compression (for already compressed files). -# Note that constant MAIN_OPTIMIZE_SPEED must have a value with bit 0 set. -#AddType text/javascript .jgz -#AddEncoding gzip .jgz - -# OPTIMIZE: To use gzip compression (on the fly). -# Note that you must also enable the module mod_deflate. -# You can also set this with constant MAIN_OPTIMIZE_SPEED and bit 2 set. -#TODO - -# OPTIMIZE: To use cache on static pages (A259200 = 1 month). -# Note that you must also enable the module mod_expires. -#ExpiresActive On -#ExpiresByType image/x-icon A2592000 -#ExpiresByType image/gif A2592000 -#ExpiresByType image/png A2592000 -#ExpiresByType image/jpeg A2592000 -#ExpiresByType text/css A2592000 -#ExpiresByType text/javascript A2592000 -#ExpiresByType application/x-javascript A2592000 -#ExpiresByType application/javascript A2592000 - - -# Declare alias for Dolibarr, PHPMyAdmin and other softwares -Include "WAMPROOT/alias/*.conf" +# +# This is the main Apache HTTP server configuration file. It contains the +# configuration directives that give the server its instructions. +# See for detailed information. +# In particular, see +# +# for a discussion of each configuration directive. +# +# Do NOT simply read the instructions in here without understanding +# what they do. They're here only as hints or reminders. If you are unsure +# consult the online docs. You have been warned. +# +# Configuration and logfile names: If the filenames you specify for many +# of the server's control files begin with "/" (or "drive:/" for Win32), the +# server will use that explicit path. If the filenames do *not* begin +# with "/", the value of ServerRoot is prepended -- so "logs/foo.log" +# with ServerRoot set to "C:/Program Files/Apache Software Foundation/Apache2.2" will be interpreted by the +# server as "C:/Program Files/Apache Software Foundation/Apache2.2/logs/foo.log". +# +# NOTE: Where filenames are specified, you must use forward slashes +# instead of backslashes (e.g., "c:/apache" instead of "c:\apache"). +# If a drive letter is omitted, the drive on which Apache.exe is located +# will be used by default. It is recommended that you always supply +# an explicit drive letter in absolute paths, however, to avoid +# confusion. +# + +# ThreadsPerChild: constant number of worker threads in the server process +# MaxRequestsPerChild: maximum number of requests a server process serves +ThreadsPerChild 250 +MaxRequestsPerChild 0 + +# +# ServerRoot: The top of the directory tree under which the server's +# configuration, error, and log files are kept. +# +# Do not add a slash at the end of the directory path. If you point +# ServerRoot at a non-local disk, be sure to point the LockFile directive +# at a local disk. If you wish to share the same ServerRoot for multiple +# httpd daemons, you will need to change at least LockFile and PidFile. +# +ServerRoot "WAMPROOT/bin/apache/apacheWAMPAPACHEVERSION" + +# +# Listen: Allows you to bind Apache to specific IP addresses and/or +# ports, instead of the default. See also the +# directive. +# +# Change this to Listen on specific IP addresses as shown below to +# prevent Apache from glomming onto all bound IP addresses (0.0.0.0) +# +#Listen 12.34.56.78:80 +Listen WAMPAPACHEPORT + +# +# Dynamic Shared Object (DSO) Support +# +# To be able to use the functionality of a module which was built as a DSO you +# have to place corresponding `LoadModule' lines at this location so the +# directives contained in it are actually available _before_ they are used. +# Statically compiled modules (those listed by `httpd -l') do not need +# to be loaded here. +# +# Example: +# LoadModule foo_module modules/mod_foo.so +# +LoadModule actions_module modules/mod_actions.so +LoadModule alias_module modules/mod_alias.so +LoadModule asis_module modules/mod_asis.so +LoadModule auth_basic_module modules/mod_auth_basic.so +#LoadModule auth_digest_module modules/mod_auth_digest.so +#LoadModule authn_anon_module modules/mod_authn_anon.so +#LoadModule authn_dbm_module modules/mod_authn_dbm.so +LoadModule authn_default_module modules/mod_authn_default.so +LoadModule authn_file_module modules/mod_authn_file.so +#LoadModule authz_dbm_module modules/mod_authz_dbm.so +LoadModule authz_default_module modules/mod_authz_default.so +LoadModule authz_groupfile_module modules/mod_authz_groupfile.so +LoadModule authz_host_module modules/mod_authz_host.so +LoadModule authz_user_module modules/mod_authz_user.so +LoadModule autoindex_module modules/mod_autoindex.so +#LoadModule cern_meta_module modules/mod_cern_meta.so +LoadModule cgi_module modules/mod_cgi.so +#LoadModule dav_module modules/mod_dav.so +#LoadModule dav_fs_module modules/mod_dav_fs.so +#LoadModule deflate_module modules/mod_deflate.so +LoadModule dir_module modules/mod_dir.so +LoadModule env_module modules/mod_env.so +LoadModule expires_module modules/mod_expires.so +#LoadModule file_cache_module modules/mod_file_cache.so +#LoadModule headers_module modules/mod_headers.so +LoadModule imagemap_module modules/mod_imagemap.so +LoadModule include_module modules/mod_include.so +#LoadModule info_module modules/mod_info.so +LoadModule isapi_module modules/mod_isapi.so +LoadModule log_config_module modules/mod_log_config.so +LoadModule mime_module modules/mod_mime.so +#LoadModule mime_magic_module modules/mod_mime_magic.so +#LoadModule proxy_module modules/mod_proxy.so +#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so +#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so +#LoadModule proxy_connect_module modules/mod_proxy_connect.so +#LoadModule proxy_http_module modules/mod_proxy_http.so +#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so +LoadModule negotiation_module modules/mod_negotiation.so +LoadModule rewrite_module modules/mod_rewrite.so +LoadModule setenvif_module modules/mod_setenvif.so +#LoadModule speling_module modules/mod_speling.so +LoadModule status_module modules/mod_status.so +#LoadModule unique_id_module modules/mod_unique_id.so +LoadModule userdir_module modules/mod_userdir.so +#LoadModule usertrack_module modules/mod_usertrack.so +LoadModule vhost_alias_module modules/mod_vhost_alias.so +#LoadModule ssl_module modules/mod_ssl.so +LoadModule php5_module "WAMPROOT/bin/php/phpWAMPPHPVERSION/php5apache2_2.dll" + +# +# ExtendedStatus controls whether Apache will generate "full" status +# information (ExtendedStatus On) or just basic information (ExtendedStatus +# Off) when the "server-status" handler is called. The default is Off. +# +ExtendedStatus On + + +SetHandler server-status +Order Deny,Allow +Deny from all +Allow from localhost, 127.0.0.1 + + + +# 'Main' server configuration +# +# The directives in this section set up the values used by the 'main' +# server, which responds to any requests that aren't handled by a +# definition. These values also provide defaults for +# any containers you may define later in the file. +# +# All of these directives may appear inside containers, +# in which case these default settings will be overridden for the +# virtual host being defined. +# + +# +# ServerAdmin: Your address, where problems with the server should be +# e-mailed. This address appears on some server-generated pages, such +# as error documents. e.g. admin@your-domain.com +# +ServerAdmin webmaster@localhost + +# +# ServerName gives the name and port that the server uses to identify itself. +# This can often be determined automatically, but we recommend you specify +# it explicitly to prevent problems during startup. +# +# If your host doesn't have a registered DNS name, enter its IP address here. +# +ServerName localhost + +# +# ServerTokens +# This directive configures what you return as the Server HTTP response +# Header. The default is 'Full' which sends information about the OS-Type +# and compiled in modules. +# Set to one of: Full | OS | Minor | Minimal | Major | Prod +# where Full conveys the most information, and Prod the least. +# +#ServerTokens Prod + +# +# DocumentRoot: The directory out of which you will serve your +# documents. By default, all requests are taken from this directory, but +# symbolic links and aliases may be used to point to other locations. +# +DocumentRoot "WAMPROOT/www/" + + +# +# Timeout: The number of seconds before receives and sends time out. +# +Timeout 300 + +# +# KeepAlive: Whether or not to allow persistent connections (more than +# one request per connection). Set to "Off" to deactivate. +# +KeepAlive On + +# +# MaxKeepAliveRequests: The maximum number of requests to allow +# during a persistent connection. Set to 0 to allow an unlimited amount. +# We recommend you leave this number high, for maximum performance. +# +MaxKeepAliveRequests 500 + +# +# KeepAliveTimeout: Number of seconds to wait for the next request from the +# same client on the same connection. +# +KeepAliveTimeout 30 + + +# +# Each directory to which Apache has access can be configured with respect +# to which services and features are allowed and/or disabled in that +# directory (and its subdirectories). +# +# First, we configure the "default" to be a very restrictive set of +# features. +# + + Options FollowSymLinks + AllowOverride None + Order deny,allow + Deny from all + Satisfy all + + +# +# Note that from this point forward you must specifically allow +# particular features to be enabled - so if something's not working as +# you might expect, make sure that you have specifically enabled it +# below. +# + +# +# This should be changed to whatever you set DocumentRoot to. +# + + + # + # Possible values for the Options directive are "None", "All", + # or any combination of: + # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews + # + # Note that "MultiViews" must be named *explicitly* --- "Options All" + # doesn't give it to you. + # + # The Options directive is both complicated and important. Please see + # http://httpd.apache.org/docs/2.2/mod/core.html#options + # for more information. + # + Options Indexes FollowSymLinks + + # + # AllowOverride controls what directives may be placed in .htaccess files. + # It can be "All", "None", or any combination of the keywords: + # Options FileInfo AuthConfig Limit + # + AllowOverride all + + # + # Controls who can get stuff from this server. + # +# onlineoffline tag - don't remove + Order Deny,Allow + Deny from all + Allow from 127.0.0.1 + + + +# +# DirectoryIndex: sets the file that Apache will serve if a directory +# is requested. +# + + DirectoryIndex index.php index.php3 index.html index.htm + + +# +# The following lines prevent .htaccess and .htpasswd files from being +# viewed by Web clients. +# + + Order allow,deny + Deny from all + + +# +# ErrorLog: The location of the error log file. +# If you do not specify an ErrorLog directive within a +# container, error messages relating to that virtual host will be +# logged here. If you *do* define an error logfile for a +# container, that host's errors will be logged there and not here. +# +ErrorLog "WAMPROOT/logs/apache_error.log" + +# +# LogLevel: Control the number of messages logged to the error_log. +# Possible values include: debug, info, notice, warn, error, crit, +# alert, emerg. +# +LogLevel warn + + + # + # The following directives define some format nicknames for use with + # a CustomLog directive (see below). + # + LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined + LogFormat "%h %l %u %t \"%r\" %>s %b" common + + + # You need to enable mod_logio.c to use %I and %O + LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio + + + # + # The location and format of the access logfile (Common Logfile Format). + # If you do not define any access logfiles within a + # container, they will be logged here. Contrariwise, if you *do* + # define per- access logfiles, transactions will be + # logged therein and *not* in this file. + # + CustomLog "WAMPROOT/logs/access.log" common + + # + # If you prefer a logfile with access, agent, and referer information + # (Combined Logfile Format) you can use the following directive. + # + #CustomLog logs/access.log combined + + + + # + # Redirect: Allows you to tell clients about documents that used to + # exist in your server's namespace, but do not anymore. The client + # will make a new request for the document at its new location. + # Example: + # Redirect permanent /foo http://localhost/bar + + # + # Alias: Maps web paths into filesystem paths and is used to + # access content that does not live under the DocumentRoot. + # Example: + # Alias /webpath /full/filesystem/path + # + # If you include a trailing / on /webpath then the server will + # require it to be present in the URL. You will also likely + # need to provide a section to allow access to + # the filesystem path. + + # + # ScriptAlias: This controls which directories contain server scripts. + # ScriptAliases are essentially the same as Aliases, except that + # documents in the target directory are treated as applications and + # run by the server when requested rather than as documents sent to the + # client. The same rules about trailing "/" apply to ScriptAlias + # directives as to Alias. + # + ScriptAlias /cgi-bin/ "cgi-bin/" + + + +# +# "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin" should be changed to whatever your ScriptAliased +# CGI directory exists, if you have that configured. +# + + AllowOverride None + Options None + Order allow,deny + Allow from all + + +# +# Apache parses all CGI scripts for the shebang line by default. +# This comment line, the first line of the script, consists of the symbols +# pound (#) and exclamation (!) followed by the path of the program that +# can execute this specific script. For a perl script, with perl.exe in +# the C:\Program Files\Perl directory, the shebang line should be: + + #!c:/program files/perl/perl + +# Note you _must_not_ indent the actual shebang line, and it must be the +# first line of the file. Of course, CGI processing must be enabled by +# the appropriate ScriptAlias or Options ExecCGI directives for the files +# or directory in question. +# +# However, Apache on Windows allows either the Unix behavior above, or can +# use the Registry to match files by extention. The command to execute +# a file of this type is retrieved from the registry by the same method as +# the Windows Explorer would use to handle double-clicking on a file. +# These script actions can be configured from the Windows Explorer View menu, +# 'Folder Options', and reviewing the 'File Types' tab. Clicking the Edit +# button allows you to modify the Actions, of which Apache 1.3 attempts to +# perform the 'Open' Action, and failing that it will try the shebang line. +# This behavior is subject to change in Apache release 2.0. +# +# Each mechanism has it's own specific security weaknesses, from the means +# to run a program you didn't intend the website owner to invoke, and the +# best method is a matter of great debate. +# +# To enable the this Windows specific behavior (and therefore -disable- the +# equivilant Unix behavior), uncomment the following directive: +# +#ScriptInterpreterSource registry +# +# The directive above can be placed in individual blocks or the +# .htaccess file, with either the 'registry' (Windows behavior) or 'script' +# (Unix behavior) option, and will override this server default option. +# + +# +# DefaultType: the default MIME type the server will use for a document +# if it cannot otherwise determine one, such as from filename extensions. +# If your server contains mostly text or HTML documents, "text/plain" is +# a good value. If most of your content is binary, such as applications +# or images, you may want to use "application/octet-stream" instead to +# keep browsers from trying to display binary files as though they are +# text. +# +DefaultType text/plain + + + # + # TypesConfig points to the file containing the list of mappings from + # filename extension to MIME-type. + # + TypesConfig conf/mime.types + + # + # AddType allows you to add to or override the MIME configuration + # file specified in TypesConfig for specific file types. + # + #AddType application/x-gzip .tgz + # + # AddEncoding allows you to have certain browsers uncompress + # information on the fly. Note: Not all browsers support this. + # + #AddEncoding x-compress .Z + #AddEncoding x-gzip .gz .tgz + # + # If the AddEncoding directives above are commented-out, then you + # probably should define those extensions to indicate media types: + # + AddType application/x-compress .Z + AddType application/x-gzip .gz .tgz + AddType application/x-httpd-php .php + AddType application/x-httpd-php .php3 + + # + # AddHandler allows you to map certain file extensions to "handlers": + # actions unrelated to filetype. These can be either built into the server + # or added with the Action directive (see below) + # + # To use CGI scripts outside of ScriptAliased directories: + # (You will also need to add "ExecCGI" to the "Options" directive.) + # + #AddHandler cgi-script .cgi + + # For type maps (negotiated resources): + #AddHandler type-map var + + # + # Filters allow you to process content before it is sent to the client. + # + # To parse .shtml files for server-side includes (SSI): + # (You will also need to add "Includes" to the "Options" directive.) + # + #AddType text/html .shtml + #AddOutputFilter INCLUDES .shtml + + +# +# The mod_mime_magic module allows the server to use various hints from the +# contents of the file itself to determine its type. The MIMEMagicFile +# directive tells the module where the hint definitions are located. +# +#MIMEMagicFile conf/magic + +# +# Customizable error responses come in three flavors: +# 1) plain text 2) local redirects 3) external redirects +# +# Some examples: +#ErrorDocument 500 "The server made a boo boo." +#ErrorDocument 404 /missing.html +#ErrorDocument 404 "/cgi-bin/missing_handler.pl" +#ErrorDocument 402 http://localhost/subscription_info.html +# + +# +# EnableMMAP and EnableSendfile: On systems that support it, +# memory-mapping or the sendfile syscall is used to deliver +# files. This usually improves server performance, but must +# be turned off when serving from networked-mounted +# filesystems or if support for these functions is otherwise +# broken on your system. +# +#EnableMMAP off +#EnableSendfile off + +# Supplemental configuration +# +# The configuration files in the conf/extra/ directory can be +# included to add extra features or to modify the default configuration of +# the server, or you may simply copy their contents here and change as +# necessary. + +# Server-pool management (MPM specific) +#Include conf/extra/httpd-mpm.conf + +# Multi-language error messages +#Include conf/extra/httpd-multilang-errordoc.conf + +# Fancy directory listings +Include conf/extra/httpd-autoindex.conf + +# Language settings +#Include conf/extra/httpd-languages.conf + +# User home directories +#Include conf/extra/httpd-userdir.conf + +# Real-time info on requests and configuration +#Include conf/extra/httpd-info.conf + +# Virtual hosts +#Include conf/extra/httpd-vhosts.conf + +# Local access to the Apache HTTP Server Manual +#Include conf/extra/httpd-manual.conf + +# Distributed authoring and versioning (WebDAV) +#Include conf/extra/httpd-dav.conf + +# Various default settings +#Include conf/extra/httpd-default.conf + + + +# Secure (SSL/TLS) connections +# +# Note: The following must must be present to support +# starting without SSL on platforms with no /dev/random equivalent +# but a statically compiled-in mod_ssl. +# + + + +SSLRandomSeed startup builtin +SSLRandomSeed connect builtin + +Listen WAMPAPACHEPSSL + +## +## SSL Global Context +## +## All SSL configuration in this context applies both to +## the main server and all SSL-enabled virtual hosts. +## + +# +# Some MIME-types for downloading Certificates and CRLs +# +AddType application/x-x509-ca-cert .crt +AddType application/x-pkcs7-crl .crl + +# Pass Phrase Dialog: +# Configure the pass phrase gathering process. +# The filtering dialog program (`builtin' is a internal +# terminal dialog) has to provide the pass phrase on stdout. +#SSLPassPhraseDialog builtin + +# Inter-Process Session Cache: +# Configure the SSL Session Cache: First the mechanism +# to use and second the expiring timeout (in seconds). +#SSLSessionCache "dbm:C:/Program Files/Apache Software Foundation/Apache2.2/logs/ssl_scache" +#SSLSessionCache "shmcb:C:/Program Files/Apache Software Foundation/Apache2.2/logs/ssl_scache(512000)" +#SSLSessionCacheTimeout 300 + +# Semaphore: +# Configure the path to the mutual exclusion semaphore the +# SSL engine uses internally for inter-process synchronization. +#SSLMutex "file:C:/Program Files/Apache Software Foundation/Apache2.2/logs/ssl_mutex" + +## +## SSL Virtual Host Context +## + + + +# SSL Engine Switch: +# Enable/Disable SSL for this virtual host. +SSLEngine on + +# General setup for the virtual host +DocumentRoot "WAMPROOT/www/" +ServerName localhost +ServerAdmin admin@localhost +ErrorLog "WAMPROOT/logs/apache_error_ssl.log" +TransferLog "WAMPROOT/logs/apache_transfer_ssl.log" +CustomLog "WAMPROOT/logs/apache_access_ssl.log" "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" + +# SSL Cipher Suite: +# List the ciphers that the client is permitted to negotiate. +# See the mod_ssl documentation for a complete list. +#SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL + +# Server Certificate: +# Point SSLCertificateFile at a PEM encoded certificate. If +# the certificate is encrypted, then you will be prompted for a +# pass phrase. Note that a kill -HUP will prompt again. Keep +# in mind that if you have both an RSA and a DSA certificate you +# can configure both in parallel (to also allow the use of DSA +# ciphers, etc.) +SSLCertificateFile "WAMPROOT/myserver.crt" + +# Server Private Key: +# If the key is not combined with the certificate, use this +# directive to point at the key file. Keep in mind that if +# you've both a RSA and a DSA private key you can configure +# both in parallel (to also allow the use of DSA ciphers, etc.) +SSLCertificateKeyFile "WAMPROOT/myserver.key" + +# Server Certificate Chain: +# Point SSLCertificateChainFile at a file containing the +# concatenation of PEM encoded CA certificates which form the +# certificate chain for the server certificate. Alternatively +# the referenced file can be the same as SSLCertificateFile +# when the CA certificates are directly appended to the server +# certificate for convinience. +#SSLCertificateChainFile "WAMPROOT/server-ca.crt" + +# Certificate Authority (CA): +# Set the CA certificate verification path where to find CA +# certificates for client authentication or alternatively one +# huge file containing all of them (file must be PEM encoded) +# Note: Inside SSLCACertificatePath you need hash symlinks +# to point to the certificate files. Use the provided +# Makefile to update the hash symlinks after changes. +#SSLCACertificatePath "WAMPROOT/ssl.crt" +#SSLCACertificateFile "WAMPROOT/ca-bundle.crt" + +# Certificate Revocation Lists (CRL): +# Set the CA revocation path where to find CA CRLs for client +# authentication or alternatively one huge file containing all +# of them (file must be PEM encoded) +# Note: Inside SSLCARevocationPath you need hash symlinks +# to point to the certificate files. Use the provided +# Makefile to update the hash symlinks after changes. +#SSLCARevocationPath "WAMPROOT/ssl.crl" +#SSLCARevocationFile "WAMPROOT/ca-bundle.crl" + +# Client Authentication (Type): +# Client certificate verification type and depth. Types are +# none, optional, require and optional_no_ca. Depth is a +# number which specifies how deeply to verify the certificate +# issuer chain before deciding the certificate is not valid. +#SSLVerifyClient require +#SSLVerifyDepth 10 + +# Access Control: +# With SSLRequire you can do per-directory access control based +# on arbitrary complex boolean expressions containing server +# variable checks and other lookup directives. The syntax is a +# mixture between C and Perl. See the mod_ssl documentation +# for more details. +# +#SSLRequire ( %{SSL_CIPHER} !~ m/^(EXP|NULL)/ \ +# and %{SSL_CLIENT_S_DN_O} eq "Snake Oil, Ltd." \ +# and %{SSL_CLIENT_S_DN_OU} in {"Staff", "CA", "Dev"} \ +# and %{TIME_WDAY} >= 1 and %{TIME_WDAY} <= 5 \ +# and %{TIME_HOUR} >= 8 and %{TIME_HOUR} <= 20 ) \ +# or %{REMOTE_ADDR} =~ m/^192\.76\.162\.[0-9]+$/ +# + +# SSL Engine Options: +# Set various options for the SSL engine. +# o FakeBasicAuth: +# Translate the client X.509 into a Basic Authorisation. This means that +# the standard Auth/DBMAuth methods can be used for access control. The +# user name is the `one line' version of the client's X.509 certificate. +# Note that no password is obtained from the user. Every entry in the user +# file needs this password: `xxj31ZMTZzkVA'. +# o ExportCertData: +# This exports two additional environment variables: SSL_CLIENT_CERT and +# SSL_SERVER_CERT. These contain the PEM-encoded certificates of the +# server (always existing) and the client (only existing when client +# authentication is used). This can be used to import the certificates +# into CGI scripts. +# o StdEnvVars: +# This exports the standard SSL/TLS related `SSL_*' environment variables. +# Per default this exportation is switched off for performance reasons, +# because the extraction step is an expensive operation and is usually +# useless for serving static content. So one usually enables the +# exportation for CGI and SSI requests only. +# o StrictRequire: +# This denies access when "SSLRequireSSL" or "SSLRequire" applied even +# under a "Satisfy any" situation, i.e. when it applies access is denied +# and no other module can change it. +# o OptRenegotiate: +# This enables optimized SSL connection renegotiation handling when SSL +# directives are used in per-directory context. +#SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire +# +# SSLOptions +StdEnvVars +# +# +# SSLOptions +StdEnvVars +# + +# SSL Protocol Adjustments: +# The safe and default but still SSL/TLS standard compliant shutdown +# approach is that mod_ssl sends the close notify alert but doesn't wait for +# the close notify alert from client. When you need a different shutdown +# approach you can use one of the following variables: +# o ssl-unclean-shutdown: +# This forces an unclean shutdown when the connection is closed, i.e. no +# SSL close notify alert is send or allowed to received. This violates +# the SSL/TLS standard but is needed for some brain-dead browsers. Use +# this when you receive I/O errors because of the standard approach where +# mod_ssl sends the close notify alert. +# o ssl-accurate-shutdown: +# This forces an accurate shutdown when the connection is closed, i.e. a +# SSL close notify alert is send and mod_ssl waits for the close notify +# alert of the client. This is 100% SSL/TLS standard compliant, but in +# practice often causes hanging connections with brain-dead browsers. Use +# this only for browsers where you know that their SSL implementation +# works correctly. +# Notice: Most problems of broken clients are also related to the HTTP +# keep-alive facility, so you usually additionally want to disable +# keep-alive for those clients, too. Use variable "nokeepalive" for this. +# Similarly, one has to force some clients to use HTTP/1.0 to workaround +# their broken HTTP/1.1 implementation. Use variables "downgrade-1.0" and +# "force-response-1.0" for this. +#BrowserMatch ".*MSIE.*" \ +# nokeepalive ssl-unclean-shutdown \ +# downgrade-1.0 force-response-1.0 + + + + + + + +# OPTIMIZE: To use gzip compression (for already compressed files). +# Note that constant MAIN_OPTIMIZE_SPEED must have a value with bit 0 set. +#AddType text/javascript .jgz +#AddEncoding gzip .jgz + +# OPTIMIZE: To use gzip compression (on the fly). +# Note that you must also enable the module mod_deflate. +# You can also set this with constant MAIN_OPTIMIZE_SPEED and bit 2 set. +#TODO + +# OPTIMIZE: To use cache on static pages (A259200 = 1 month). +# Note that you must also enable the module mod_expires. +#ExpiresActive On +#ExpiresByType image/x-icon A2592000 +#ExpiresByType image/gif A2592000 +#ExpiresByType image/png A2592000 +#ExpiresByType image/jpeg A2592000 +#ExpiresByType text/css A2592000 +#ExpiresByType text/javascript A2592000 +#ExpiresByType application/x-javascript A2592000 +#ExpiresByType application/javascript A2592000 + + +# Declare alias for Dolibarr, PHPMyAdmin and other softwares +Include "WAMPROOT/alias/*.conf" diff --git a/build/pad/Dolibarr developpers.cml b/build/pad/Dolibarr developpers.cml index 06be3b4770f..55eae1473f9 100644 --- a/build/pad/Dolibarr developpers.cml +++ b/build/pad/Dolibarr developpers.cml @@ -1,31 +1,31 @@ - - - PADGen 3.1.1.47 - - Dolibarr team - 11 rue raymond Queneau - - Rueil Malmaison - - 92500 - FRANCE - http://www.dolibarr.org - - Dolibarr team - Dolibarr team - dolibarr-dev@nongnu.org - Dolibarr team - Dolibarr team - dolibarr-dev@nongnu.org - - - dolibarr-dev@nongnu.org - dolibarr-dev@nongnu.org - dolibarr-dev@nongnu.org - - - - - - - + + + PADGen 3.1.1.47 + + Dolibarr team + 11 rue raymond Queneau + + Rueil Malmaison + + 92500 + FRANCE + http://www.dolibarr.org + + Dolibarr team + Dolibarr team + dolibarr-dev@nongnu.org + Dolibarr team + Dolibarr team + dolibarr-dev@nongnu.org + + + dolibarr-dev@nongnu.org + dolibarr-dev@nongnu.org + dolibarr-dev@nongnu.org + + + + + + + diff --git a/build/pad/NLTechno.cml b/build/pad/NLTechno.cml index 459e4bc9bef..7c039a2de43 100644 --- a/build/pad/NLTechno.cml +++ b/build/pad/NLTechno.cml @@ -1,31 +1,31 @@ - - - PADGen 3.1.1.47 - - NLTechno - 11 Rue raymond Queneau - - Rueil Malmaison - - 92500 - FRANCE - http://www.nltechno.com - - NLTechno - NLTechno - dolibarr@nltechno.com - NLTechno - NLTechno - dolibarr@nltechno.com - - - dolibarr@nltechno.com - dolibarr@nltechno.com - dolibarr@nltechno.com - - - - - - - + + + PADGen 3.1.1.47 + + NLTechno + 11 Rue raymond Queneau + + Rueil Malmaison + + 92500 + FRANCE + http://www.nltechno.com + + NLTechno + NLTechno + dolibarr@nltechno.com + NLTechno + NLTechno + dolibarr@nltechno.com + + + dolibarr@nltechno.com + dolibarr@nltechno.com + dolibarr@nltechno.com + + + + + + + diff --git a/htdocs/adherents/class/adherent.class.php b/htdocs/adherents/class/adherent.class.php index d1ee6e4722a..4ae6f7c6820 100644 --- a/htdocs/adherents/class/adherent.class.php +++ b/htdocs/adherents/class/adherent.class.php @@ -1002,35 +1002,35 @@ class Adherent extends CommonObject } } - /** - * Method to load member from its name - * + /** + * Method to load member from its name + * * @param string $firstname Firstname - ** @param string $lastname Lastname - * @return void - */ - function fetch_name($firstname,$lastname) - { - global $conf; - - $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."adherent"; - $sql.= " WHERE firstname='".$this->db->escape($firstname)."'"; + ** @param string $lastname Lastname + * @return void + */ + function fetch_name($firstname,$lastname) + { + global $conf; + + $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."adherent"; + $sql.= " WHERE firstname='".$this->db->escape($firstname)."'"; $sql.= " AND lastname='".$this->db->escape($lastname)."'"; - $sql.= " AND entity = ".$conf->entity; - - $resql=$this->db->query($sql); - if ($resql) - { - if ($this->db->num_rows($resql)) - { - $obj = $this->db->fetch_object($resql); - $this->fetch($obj->rowid); - } - } - else - { - dol_print_error($this->db); - } + $sql.= " AND entity = ".$conf->entity; + + $resql=$this->db->query($sql); + if ($resql) + { + if ($this->db->num_rows($resql)) + { + $obj = $this->db->fetch_object($resql); + $this->fetch($obj->rowid); + } + } + else + { + dol_print_error($this->db); + } } /** @@ -1539,12 +1539,12 @@ class Adherent extends CommonObject */ function getCivilityLabel() { - global $langs; - $langs->load("dict"); - - $code=(! empty($this->civilite_id)?$this->civilite_id:(! empty($this->civility_id)?$this->civility_id:'')); - if (empty($code)) return ''; - return $langs->getLabelFromKey($this->db, "Civility".$code, "c_civilite", "code", "civilite", $code); + global $langs; + $langs->load("dict"); + + $code=(! empty($this->civilite_id)?$this->civilite_id:(! empty($this->civility_id)?$this->civility_id:'')); + if (empty($code)) return ''; + return $langs->getLabelFromKey($this->db, "Civility".$code, "c_civilite", "code", "civilite", $code); } /** diff --git a/htdocs/compta/facture/class/facturestats.class.php b/htdocs/compta/facture/class/facturestats.class.php index 1c75406526d..e624ca1cd48 100644 --- a/htdocs/compta/facture/class/facturestats.class.php +++ b/htdocs/compta/facture/class/facturestats.class.php @@ -114,7 +114,7 @@ class FactureStats extends Stats */ function getNbByYear() { - global $user; + global $user; $sql = "SELECT YEAR(f.datef) as dm, COUNT(*)"; $sql.= " FROM ".$this->from; diff --git a/htdocs/core/boxes/box_graph_invoices_permonth.php b/htdocs/core/boxes/box_graph_invoices_permonth.php index 63b1b4531e6..b3f6f5fd633 100644 --- a/htdocs/core/boxes/box_graph_invoices_permonth.php +++ b/htdocs/core/boxes/box_graph_invoices_permonth.php @@ -83,7 +83,7 @@ class box_graph_invoices_permonth extends ModeleBoxes if ($user->rights->facture->lire) { include_once DOL_DOCUMENT_ROOT.'/core/class/dolgraph.class.php'; - include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facturestats.class.php'; + include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facturestats.class.php'; $shownb=(! empty($conf->global->FACTURE_BOX_GRAPH_SHOW_NB)); $showtot=(! isset($conf->global->FACTURE_BOX_GRAPH_SHOW_TOT) || ! empty($conf->global->FACTURE_BOX_GRAPH_SHOW_TOT)); @@ -92,85 +92,85 @@ class box_graph_invoices_permonth extends ModeleBoxes $startyear=$endyear-1; $mode='customer'; $userid=0; - $WIDTH='256'; - $HEIGHT='192'; + $WIDTH='256'; + $HEIGHT='192'; - $stats = new FactureStats($this->db, 0, $mode, ($userid>0?$userid:0)); + $stats = new FactureStats($this->db, 0, $mode, ($userid>0?$userid:0)); // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($shownb) - { - $data1 = $stats->getNbByMonthWithPrevYear($endyear,$startyear,(GETPOST('action')==$refreshaction?-1:(3600*24))); - - $filenamenb = $dir."/invoicesnbinyear-".$year.".png"; - if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=billstats&file=invoicesnbinyear-'.$year.'.png'; - if ($mode == 'supplier') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=billstatssupplier&file=invoicesnbinyear-'.$year.'.png'; - - $px1 = new DolGraph(); - $mesg = $px1->isGraphKo(); - if (! $mesg) + { + $data1 = $stats->getNbByMonthWithPrevYear($endyear,$startyear,(GETPOST('action')==$refreshaction?-1:(3600*24))); + + $filenamenb = $dir."/invoicesnbinyear-".$year.".png"; + if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=billstats&file=invoicesnbinyear-'.$year.'.png'; + if ($mode == 'supplier') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=billstatssupplier&file=invoicesnbinyear-'.$year.'.png'; + + $px1 = new DolGraph(); + $mesg = $px1->isGraphKo(); + if (! $mesg) { $px1->SetData($data1); - unset($data1); - $px1->SetPrecisionY(0); - $i=$startyear;$legend=array(); - while ($i <= $endyear) - { - $legend[]=$i; - $i++; - } - $px1->SetLegend($legend); - $px1->SetMaxValue($px1->GetCeilMaxValue()); - $px1->SetWidth($WIDTH); - $px1->SetHeight($HEIGHT); - $px1->SetYLabel($langs->trans("NumberOfBills")); - $px1->SetShading(3); - $px1->SetHorizTickIncrement(1); + unset($data1); $px1->SetPrecisionY(0); - $px1->SetCssPrefix("cssboxes"); - $px1->mode='depth'; - $px1->SetTitle($langs->trans("NumberOfBillsByMonth")); - - $px1->draw($filenamenb,$fileurlnb); + $i=$startyear;$legend=array(); + while ($i <= $endyear) + { + $legend[]=$i; + $i++; + } + $px1->SetLegend($legend); + $px1->SetMaxValue($px1->GetCeilMaxValue()); + $px1->SetWidth($WIDTH); + $px1->SetHeight($HEIGHT); + $px1->SetYLabel($langs->trans("NumberOfBills")); + $px1->SetShading(3); + $px1->SetHorizTickIncrement(1); + $px1->SetPrecisionY(0); + $px1->SetCssPrefix("cssboxes"); + $px1->mode='depth'; + $px1->SetTitle($langs->trans("NumberOfBillsByMonth")); + + $px1->draw($filenamenb,$fileurlnb); } } - // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) + // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($showtot) { - $data2 = $stats->getAmountByMonthWithPrevYear($endyear,$startyear,(GETPOST('action')==$refreshaction?-1:(3600*24))); - - $filenamenb = $dir."/invoicesamountinyear-".$year.".png"; - if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=billstats&file=invoicesamountinyear-'.$year.'.png'; - if ($mode == 'supplier') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=billstatssupplier&file=invoicesamountinyear-'.$year.'.png'; - - $px2 = new DolGraph(); - $mesg = $px2->isGraphKo(); - if (! $mesg) - { - $px2->SetData($data2); - unset($data2); - $px2->SetPrecisionY(0); - $i=$startyear;$legend=array(); - while ($i <= $endyear) - { - $legend[]=$i; - $i++; - } - $px2->SetLegend($legend); - $px2->SetMaxValue($px2->GetCeilMaxValue()); - $px2->SetWidth($WIDTH); - $px2->SetHeight($HEIGHT); - $px2->SetYLabel($langs->trans("AmountOfBillsHT")); - $px2->SetShading(3); - $px2->SetHorizTickIncrement(1); - $px2->SetPrecisionY(0); - $px2->SetCssPrefix("cssboxes"); - $px2->mode='depth'; - $px2->SetTitle($langs->trans("AmountOfBillsByMonthHT")); - - $px2->draw($filenamenb,$fileurlnb); - } + $data2 = $stats->getAmountByMonthWithPrevYear($endyear,$startyear,(GETPOST('action')==$refreshaction?-1:(3600*24))); + + $filenamenb = $dir."/invoicesamountinyear-".$year.".png"; + if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=billstats&file=invoicesamountinyear-'.$year.'.png'; + if ($mode == 'supplier') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=billstatssupplier&file=invoicesamountinyear-'.$year.'.png'; + + $px2 = new DolGraph(); + $mesg = $px2->isGraphKo(); + if (! $mesg) + { + $px2->SetData($data2); + unset($data2); + $px2->SetPrecisionY(0); + $i=$startyear;$legend=array(); + while ($i <= $endyear) + { + $legend[]=$i; + $i++; + } + $px2->SetLegend($legend); + $px2->SetMaxValue($px2->GetCeilMaxValue()); + $px2->SetWidth($WIDTH); + $px2->SetHeight($HEIGHT); + $px2->SetYLabel($langs->trans("AmountOfBillsHT")); + $px2->SetShading(3); + $px2->SetHorizTickIncrement(1); + $px2->SetPrecisionY(0); + $px2->SetCssPrefix("cssboxes"); + $px2->mode='depth'; + $px2->SetTitle($langs->trans("AmountOfBillsByMonthHT")); + + $px2->draw($filenamenb,$fileurlnb); + } } if (! $mesg) diff --git a/htdocs/core/boxes/box_graph_orders_permonth.php b/htdocs/core/boxes/box_graph_orders_permonth.php index 51c9eb4fba0..1150b1bac0b 100644 --- a/htdocs/core/boxes/box_graph_orders_permonth.php +++ b/htdocs/core/boxes/box_graph_orders_permonth.php @@ -83,7 +83,7 @@ class box_graph_orders_permonth extends ModeleBoxes if ($user->rights->commande->lire) { include_once DOL_DOCUMENT_ROOT.'/core/class/dolgraph.class.php'; - include_once DOL_DOCUMENT_ROOT.'/commande/class/commandestats.class.php'; + include_once DOL_DOCUMENT_ROOT.'/commande/class/commandestats.class.php'; $shownb=(! empty($conf->global->COMMANDE_BOX_GRAPH_SHOW_NB)); $showtot=(! isset($conf->global->COMMANDE_BOX_GRAPH_SHOW_TOT) || ! empty($conf->global->COMMANDE_BOX_GRAPH_SHOW_TOT)); @@ -92,85 +92,85 @@ class box_graph_orders_permonth extends ModeleBoxes $startyear=$endyear-1; $mode='customer'; $userid=0; - $WIDTH='256'; - $HEIGHT='192'; + $WIDTH='256'; + $HEIGHT='192'; - $stats = new CommandeStats($this->db, 0, $mode, ($userid>0?$userid:0)); + $stats = new CommandeStats($this->db, 0, $mode, ($userid>0?$userid:0)); // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($shownb) - { - $data1 = $stats->getNbByMonthWithPrevYear($endyear,$startyear,(GETPOST('action')==$refreshaction?-1:(3600*24))); - - $filenamenb = $dir."/ordersnbinyear-".$year.".png"; - if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersnbinyear-'.$year.'.png'; - if ($mode == 'supplier') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersnbinyear-'.$year.'.png'; - - $px1 = new DolGraph(); - $mesg = $px1->isGraphKo(); - if (! $mesg) + { + $data1 = $stats->getNbByMonthWithPrevYear($endyear,$startyear,(GETPOST('action')==$refreshaction?-1:(3600*24))); + + $filenamenb = $dir."/ordersnbinyear-".$year.".png"; + if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersnbinyear-'.$year.'.png'; + if ($mode == 'supplier') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersnbinyear-'.$year.'.png'; + + $px1 = new DolGraph(); + $mesg = $px1->isGraphKo(); + if (! $mesg) { $px1->SetData($data1); - unset($data1); - $px1->SetPrecisionY(0); - $i=$startyear;$legend=array(); - while ($i <= $endyear) - { - $legend[]=$i; - $i++; - } - $px1->SetLegend($legend); - $px1->SetMaxValue($px1->GetCeilMaxValue()); - $px1->SetWidth($WIDTH); - $px1->SetHeight($HEIGHT); - $px1->SetYLabel($langs->trans("NumberOfOrders")); - $px1->SetShading(3); - $px1->SetHorizTickIncrement(1); + unset($data1); $px1->SetPrecisionY(0); - $px1->SetCssPrefix("cssboxes"); - $px1->mode='depth'; - $px1->SetTitle($langs->trans("NumberOfOrdersByMonth")); - - $px1->draw($filenamenb,$fileurlnb); + $i=$startyear;$legend=array(); + while ($i <= $endyear) + { + $legend[]=$i; + $i++; + } + $px1->SetLegend($legend); + $px1->SetMaxValue($px1->GetCeilMaxValue()); + $px1->SetWidth($WIDTH); + $px1->SetHeight($HEIGHT); + $px1->SetYLabel($langs->trans("NumberOfOrders")); + $px1->SetShading(3); + $px1->SetHorizTickIncrement(1); + $px1->SetPrecisionY(0); + $px1->SetCssPrefix("cssboxes"); + $px1->mode='depth'; + $px1->SetTitle($langs->trans("NumberOfOrdersByMonth")); + + $px1->draw($filenamenb,$fileurlnb); } } - // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) + // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($showtot) { - $data2 = $stats->getAmountByMonthWithPrevYear($endyear,$startyear,(GETPOST('action')==$refreshaction?-1:(3600*24))); - - $filenamenb = $dir."/ordersamountinyear-".$year.".png"; - if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersamountinyear-'.$year.'.png'; - if ($mode == 'supplier') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersamountinyear-'.$year.'.png'; - - $px2 = new DolGraph(); - $mesg = $px2->isGraphKo(); - if (! $mesg) - { - $px2->SetData($data2); - unset($data2); - $px2->SetPrecisionY(0); - $i=$startyear;$legend=array(); - while ($i <= $endyear) - { - $legend[]=$i; - $i++; - } - $px2->SetLegend($legend); - $px2->SetMaxValue($px2->GetCeilMaxValue()); - $px2->SetWidth($WIDTH); - $px2->SetHeight($HEIGHT); - $px2->SetYLabel($langs->trans("AmountOfOrdersHT")); - $px2->SetShading(3); - $px2->SetHorizTickIncrement(1); - $px2->SetPrecisionY(0); - $px2->SetCssPrefix("cssboxes"); - $px2->mode='depth'; - $px2->SetTitle($langs->trans("AmountOfOrdersByMonthHT")); - - $px2->draw($filenamenb,$fileurlnb); - } + $data2 = $stats->getAmountByMonthWithPrevYear($endyear,$startyear,(GETPOST('action')==$refreshaction?-1:(3600*24))); + + $filenamenb = $dir."/ordersamountinyear-".$year.".png"; + if ($mode == 'customer') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=ordersamountinyear-'.$year.'.png'; + if ($mode == 'supplier') $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstatssupplier&file=ordersamountinyear-'.$year.'.png'; + + $px2 = new DolGraph(); + $mesg = $px2->isGraphKo(); + if (! $mesg) + { + $px2->SetData($data2); + unset($data2); + $px2->SetPrecisionY(0); + $i=$startyear;$legend=array(); + while ($i <= $endyear) + { + $legend[]=$i; + $i++; + } + $px2->SetLegend($legend); + $px2->SetMaxValue($px2->GetCeilMaxValue()); + $px2->SetWidth($WIDTH); + $px2->SetHeight($HEIGHT); + $px2->SetYLabel($langs->trans("AmountOfOrdersHT")); + $px2->SetShading(3); + $px2->SetHorizTickIncrement(1); + $px2->SetPrecisionY(0); + $px2->SetCssPrefix("cssboxes"); + $px2->mode='depth'; + $px2->SetTitle($langs->trans("AmountOfOrdersByMonthHT")); + + $px2->draw($filenamenb,$fileurlnb); + } } if (! $mesg) diff --git a/htdocs/core/class/stats.class.php b/htdocs/core/class/stats.class.php index ea73b8cdd77..4c5833eb1d3 100644 --- a/htdocs/core/class/stats.class.php +++ b/htdocs/core/class/stats.class.php @@ -52,38 +52,38 @@ abstract class Stats // Search into cache if (! empty($cachedelay)) { - include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; - include_once DOL_DOCUMENT_ROOT.'/core/lib/json.lib.php'; + include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; + include_once DOL_DOCUMENT_ROOT.'/core/lib/json.lib.php'; } - $newpathofdestfile=$conf->user->dir_temp.'/'.get_class($this).'_'.__FUNCTION__.'_'.$langs->defaultlang.'_user'.$user->id.'.cache'; - $newmask='0644'; + $newpathofdestfile=$conf->user->dir_temp.'/'.get_class($this).'_'.__FUNCTION__.'_'.$langs->defaultlang.'_user'.$user->id.'.cache'; + $newmask='0644'; - $nowgmt = dol_now(); + $nowgmt = dol_now(); - $foundintocache=0; - if ($cachedelay > 0) - { - $filedate=dol_filemtime($newpathofdestfile); - if ($filedate >= ($nowgmt - $cachedelay)) - { - $foundintocache=1; - - $this->_lastfetchdate[get_class($this).'_'.__FUNCTION__]=$filedate; - } - else - { - dol_syslog(get_class($this).'_'.__FUNCTION__." cache file ".$newpathofdestfile." is not found or older than now - cachedelay (".$nowgmt." - ".$cachedelay.") so we can't use it."); - } - } - - // Load file into $data - if ($foundintocache) // Cache file found and is not too old - { + $foundintocache=0; + if ($cachedelay > 0) + { + $filedate=dol_filemtime($newpathofdestfile); + if ($filedate >= ($nowgmt - $cachedelay)) + { + $foundintocache=1; + + $this->_lastfetchdate[get_class($this).'_'.__FUNCTION__]=$filedate; + } + else + { + dol_syslog(get_class($this).'_'.__FUNCTION__." cache file ".$newpathofdestfile." is not found or older than now - cachedelay (".$nowgmt." - ".$cachedelay.") so we can't use it."); + } + } + + // Load file into $data + if ($foundintocache) // Cache file found and is not too old + { dol_syslog(get_class($this).'_'.__FUNCTION__." read data from cache file ".$newpathofdestfile." ".$filedate."."); - $data = dol_json_decode(file_get_contents($newpathofdestfile), true); - } - else + $data = dol_json_decode(file_get_contents($newpathofdestfile), true); + } + else { $year=$startyear; while ($year <= $endyear) @@ -107,17 +107,17 @@ abstract class Stats } // Save cache file - if (empty($foundintocache) && ($cachedelay > 0 || $cachedelay == -1)) - { - dol_syslog(get_class($this).'_'.__FUNCTION__." save cache file ".$newpathofdestfile." onto disk."); - if (! dol_is_dir($conf->user->dir_temp)) dol_mkdir($conf->user->dir_temp); - $fp = fopen($newpathofdestfile, 'w'); - fwrite($fp, dol_json_encode($data)); - fclose($fp); - if (! empty($conf->global->MAIN_UMASK)) $newmask=$conf->global->MAIN_UMASK; - @chmod($newpathofdestfile, octdec($newmask)); - - $this->_lastfetchdate[get_class($this).'_'.__FUNCTION__]=$nowgmt; + if (empty($foundintocache) && ($cachedelay > 0 || $cachedelay == -1)) + { + dol_syslog(get_class($this).'_'.__FUNCTION__." save cache file ".$newpathofdestfile." onto disk."); + if (! dol_is_dir($conf->user->dir_temp)) dol_mkdir($conf->user->dir_temp); + $fp = fopen($newpathofdestfile, 'w'); + fwrite($fp, dol_json_encode($data)); + fclose($fp); + if (! empty($conf->global->MAIN_UMASK)) $newmask=$conf->global->MAIN_UMASK; + @chmod($newpathofdestfile, octdec($newmask)); + + $this->_lastfetchdate[get_class($this).'_'.__FUNCTION__]=$nowgmt; } // return array(array('Month',val1,val2,val3),...) @@ -140,41 +140,41 @@ abstract class Stats $datay=array(); - // Search into cache - if (! empty($cachedelay)) - { - include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; - include_once DOL_DOCUMENT_ROOT.'/core/lib/json.lib.php'; - } - - $newpathofdestfile=$conf->user->dir_temp.'/'.get_class($this).'_'.__FUNCTION__.'_'.$langs->defaultlang.'_user'.$user->id.'.cache'; - $newmask='0644'; - - $nowgmt = dol_now(); - - $foundintocache=0; - if ($cachedelay > 0) - { - $filedate=dol_filemtime($newpathofdestfile); - if ($filedate >= ($nowgmt - $cachedelay)) - { - $foundintocache=1; - - $this->_lastfetchdate[get_class($this).'_'.__FUNCTION__]=$filedate; - } - else - { - dol_syslog(get_class($this).'_'.__FUNCTION__." cache file ".$newpathofdestfile." is not found or older than now - cachedelay (".$nowgmt." - ".$cachedelay.") so we can't use it."); - } - } - - // Load file into $data - if ($foundintocache) // Cache file found and is not too old - { - dol_syslog(get_class($this).'_'.__FUNCTION__." read data from cache file ".$newpathofdestfile." ".$filedate."."); - $data = dol_json_decode(file_get_contents($newpathofdestfile), true); - } - else + // Search into cache + if (! empty($cachedelay)) + { + include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; + include_once DOL_DOCUMENT_ROOT.'/core/lib/json.lib.php'; + } + + $newpathofdestfile=$conf->user->dir_temp.'/'.get_class($this).'_'.__FUNCTION__.'_'.$langs->defaultlang.'_user'.$user->id.'.cache'; + $newmask='0644'; + + $nowgmt = dol_now(); + + $foundintocache=0; + if ($cachedelay > 0) + { + $filedate=dol_filemtime($newpathofdestfile); + if ($filedate >= ($nowgmt - $cachedelay)) + { + $foundintocache=1; + + $this->_lastfetchdate[get_class($this).'_'.__FUNCTION__]=$filedate; + } + else + { + dol_syslog(get_class($this).'_'.__FUNCTION__." cache file ".$newpathofdestfile." is not found or older than now - cachedelay (".$nowgmt." - ".$cachedelay.") so we can't use it."); + } + } + + // Load file into $data + if ($foundintocache) // Cache file found and is not too old + { + dol_syslog(get_class($this).'_'.__FUNCTION__." read data from cache file ".$newpathofdestfile." ".$filedate."."); + $data = dol_json_decode(file_get_contents($newpathofdestfile), true); + } + else { $year=$startyear; while($year <= $endyear) @@ -197,18 +197,18 @@ abstract class Stats } } - // Save cache file - if (empty($foundintocache) && ($cachedelay > 0 || $cachedelay == -1)) - { - dol_syslog(get_class($this).'_'.__FUNCTION__." save cache file ".$newpathofdestfile." onto disk."); - if (! dol_is_dir($conf->user->dir_temp)) dol_mkdir($conf->user->dir_temp); - $fp = fopen($newpathofdestfile, 'w'); - fwrite($fp, dol_json_encode($data)); - fclose($fp); - if (! empty($conf->global->MAIN_UMASK)) $newmask=$conf->global->MAIN_UMASK; - @chmod($newpathofdestfile, octdec($newmask)); - - $this->_lastfetchdate[get_class($this).'_'.__FUNCTION__]=$nowgmt; + // Save cache file + if (empty($foundintocache) && ($cachedelay > 0 || $cachedelay == -1)) + { + dol_syslog(get_class($this).'_'.__FUNCTION__." save cache file ".$newpathofdestfile." onto disk."); + if (! dol_is_dir($conf->user->dir_temp)) dol_mkdir($conf->user->dir_temp); + $fp = fopen($newpathofdestfile, 'w'); + fwrite($fp, dol_json_encode($data)); + fclose($fp); + if (! empty($conf->global->MAIN_UMASK)) $newmask=$conf->global->MAIN_UMASK; + @chmod($newpathofdestfile, octdec($newmask)); + + $this->_lastfetchdate[get_class($this).'_'.__FUNCTION__]=$nowgmt; } return $data; diff --git a/htdocs/core/filemanagerdol/browser/default/browser.css b/htdocs/core/filemanagerdol/browser/default/browser.css index 23572c57472..196dd298bd4 100755 --- a/htdocs/core/filemanagerdol/browser/default/browser.css +++ b/htdocs/core/filemanagerdol/browser/default/browser.css @@ -1,81 +1,81 @@ -/* - * FCKeditor - The text editor for Internet - http://www.fckeditor.net - * Copyright (C) 2003-2010 Frederico Caldeira Knabben - * - * == BEGIN LICENSE == - * - * Licensed under the terms of any of the following licenses at your - * choice: - * - * - GNU General Public License Version 2 or later (the "GPL") - * http://www.gnu.org/licenses/gpl.html - * - * - GNU Lesser General Public License Version 2.1 or later (the "LGPL") - * http://www.gnu.org/licenses/lgpl.html - * - * - Mozilla Public License Version 1.1 or later (the "MPL") - * http://www.mozilla.org/MPL/MPL-1.1.html - * - * == END LICENSE == - * - * CSS styles used by all pages that compose the File Browser. - */ - -body -{ - background-color: #e3e3e3; - margin-top:0; - margin-bottom:0; -} - -form -{ - margin: 0; - padding: 0; -} - -body.FileArea -{ - background-color: #ffffff; - margin: 10px; -} - -body, td, input, select -{ - font-size: 11px; - font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana; -} - -.ActualFolder -{ - font-weight: bold; - font-size: 14px; -} - -.PopupButtons -{ - border-top: #d5d59d 1px solid; - background-color: #e3e3c7; - padding: 7px 10px 7px 10px; -} - -.Button, button -{ - color: #3b3b3b; - border: #939393 1px solid; - background-color: #dedede; -} - -.FolderListCurrentFolder img -{ - background-image: url(../../../../themes/common/treemenu/folder-expanded.gif); -} - -.FolderListFolder img -{ - background-image: url(../../../../themes/common/treemenu/folder.gif); -} - -.fullHeight { - height: 100%; -} +/* + * FCKeditor - The text editor for Internet - http://www.fckeditor.net + * Copyright (C) 2003-2010 Frederico Caldeira Knabben + * + * == BEGIN LICENSE == + * + * Licensed under the terms of any of the following licenses at your + * choice: + * + * - GNU General Public License Version 2 or later (the "GPL") + * http://www.gnu.org/licenses/gpl.html + * + * - GNU Lesser General Public License Version 2.1 or later (the "LGPL") + * http://www.gnu.org/licenses/lgpl.html + * + * - Mozilla Public License Version 1.1 or later (the "MPL") + * http://www.mozilla.org/MPL/MPL-1.1.html + * + * == END LICENSE == + * + * CSS styles used by all pages that compose the File Browser. + */ + +body +{ + background-color: #e3e3e3; + margin-top:0; + margin-bottom:0; +} + +form +{ + margin: 0; + padding: 0; +} + +body.FileArea +{ + background-color: #ffffff; + margin: 10px; +} + +body, td, input, select +{ + font-size: 11px; + font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana; +} + +.ActualFolder +{ + font-weight: bold; + font-size: 14px; +} + +.PopupButtons +{ + border-top: #d5d59d 1px solid; + background-color: #e3e3c7; + padding: 7px 10px 7px 10px; +} + +.Button, button +{ + color: #3b3b3b; + border: #939393 1px solid; + background-color: #dedede; +} + +.FolderListCurrentFolder img +{ + background-image: url(../../../../themes/common/treemenu/folder-expanded.gif); +} + +.FolderListFolder img +{ + background-image: url(../../../../themes/common/treemenu/folder.gif); +} + +.fullHeight { + height: 100%; +} diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php index 1824587353b..6c4cbe157e8 100644 --- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php @@ -1128,7 +1128,7 @@ class pdf_einstein extends ModelePDFCommandes $pdf->SetXY($posx+2,$posy+3); $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell(80, 4, $outputlangs->convToOutputCharset($this->emetteur->name), 0, 'L'); - $posy=$pdf->getY(); + $posy=$pdf->getY(); // Show sender information $pdf->SetXY($posx+2,$posy); diff --git a/htdocs/core/modules/expedition/doc/pdf_expedition_rouget.modules.php b/htdocs/core/modules/expedition/doc/pdf_expedition_rouget.modules.php index fce2aa87df3..15a94b8aaed 100644 --- a/htdocs/core/modules/expedition/doc/pdf_expedition_rouget.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_expedition_rouget.modules.php @@ -581,7 +581,7 @@ class pdf_expedition_rouget extends ModelePdfExpedition $pdf->SetTextColor(0,0,60); $pdf->SetFont('','B',$default_font_size); $pdf->MultiCell(80, 3, $outputlangs->convToOutputCharset($this->emetteur->name), 0, 'L'); - $posy=$pdf->getY(); + $posy=$pdf->getY(); // Show sender information $pdf->SetFont('','', $default_font_size - 1); diff --git a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php b/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php index 300e0b818d1..6a0feda2e9d 100644 --- a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php +++ b/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php @@ -531,7 +531,7 @@ class pdf_soleil extends ModelePDFFicheinter $pdf->SetTextColor(0,0,60); $pdf->SetFont('','B',$default_font_size); $pdf->MultiCell(80, 3, $outputlangs->convToOutputCharset($this->emetteur->name), 0, 'L'); - $posy=$pdf->getY(); + $posy=$pdf->getY(); // Show sender information $pdf->SetFont('','', $default_font_size - 1); diff --git a/htdocs/core/modules/livraison/pdf/pdf_typhon.modules.php b/htdocs/core/modules/livraison/pdf/pdf_typhon.modules.php index cc14ddc238d..ab353169727 100644 --- a/htdocs/core/modules/livraison/pdf/pdf_typhon.modules.php +++ b/htdocs/core/modules/livraison/pdf/pdf_typhon.modules.php @@ -723,7 +723,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder $pdf->SetXY($posx+2,$posy+3); $pdf->SetFont('','B',$default_font_size); $pdf->MultiCell(80, 4, $outputlangs->convToOutputCharset($this->emetteur->name), 0, 'L'); - $posy=$pdf->getY(); + $posy=$pdf->getY(); // Show sender information $pdf->SetXY($posx+2,$posy); diff --git a/htdocs/core/modules/propale/doc/pdf_azur.modules.php b/htdocs/core/modules/propale/doc/pdf_azur.modules.php index c01ebf765ea..772e7599568 100644 --- a/htdocs/core/modules/propale/doc/pdf_azur.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_azur.modules.php @@ -1193,7 +1193,7 @@ class pdf_azur extends ModelePDFPropales $pdf->SetXY($posx+2,$posy+3); $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell(80, 4, $outputlangs->convToOutputCharset($this->emetteur->name), 0, 'L'); - $posy=$pdf->getY(); + $posy=$pdf->getY(); // Show sender information $pdf->SetXY($posx+2,$posy); diff --git a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php b/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php index f718639ea5c..523354adb23 100755 --- a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php +++ b/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php @@ -931,7 +931,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices $pdf->SetXY($posx+2,$posy+3); $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell(80, 4, $outputlangs->convToOutputCharset($this->emetteur->name), 0, 'L'); - $posy=$pdf->getY(); + $posy=$pdf->getY(); // Show sender information $pdf->SetXY($posx+2,$posy); diff --git a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php index 48f0b1787f9..e120856d532 100644 --- a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php +++ b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php @@ -997,7 +997,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders $pdf->SetXY($posx+2,$posy+3); $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell(80, 4, $outputlangs->convToOutputCharset($this->emetteur->name), 0, 'L'); - $posy=$pdf->getY(); + $posy=$pdf->getY(); // Show sender information $pdf->SetXY($posx+2,$posy); diff --git a/htdocs/includes/ckeditor/.htaccess b/htdocs/includes/ckeditor/.htaccess index 94d69cddcf7..1427d97fb6e 100755 --- a/htdocs/includes/ckeditor/.htaccess +++ b/htdocs/includes/ckeditor/.htaccess @@ -1,24 +1,24 @@ -# -# Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved. -# For licensing, see LICENSE.html or http://ckeditor.com/license -# - -# -# On some specific Linux installations you could face problems with Firefox. -# It could give you errors when loading the editor saying that some illegal -# characters were found (three strange chars in the beginning of the file). -# This could happen if you map the .js or .css files to PHP, for example. -# -# Those characters are the Byte Order Mask (BOM) of the Unicode encoded files. -# All FCKeditor files are Unicode encoded. -# - -AddType application/x-javascript .js -AddType text/css .css - -# -# If PHP is mapped to handle XML files, you could have some issues. The -# following will disable it. -# - -AddType text/xml .xml +# +# Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved. +# For licensing, see LICENSE.html or http://ckeditor.com/license +# + +# +# On some specific Linux installations you could face problems with Firefox. +# It could give you errors when loading the editor saying that some illegal +# characters were found (three strange chars in the beginning of the file). +# This could happen if you map the .js or .css files to PHP, for example. +# +# Those characters are the Byte Order Mask (BOM) of the Unicode encoded files. +# All FCKeditor files are Unicode encoded. +# + +AddType application/x-javascript .js +AddType text/css .css + +# +# If PHP is mapped to handle XML files, you could have some issues. The +# following will disable it. +# + +AddType text/xml .xml diff --git a/htdocs/includes/ckeditor/ckeditor.asp b/htdocs/includes/ckeditor/ckeditor.asp index 60e8a0340c2..07cc07c8eff 100644 --- a/htdocs/includes/ckeditor/ckeditor.asp +++ b/htdocs/includes/ckeditor/ckeditor.asp @@ -1,955 +1,955 @@ -<% - ' - ' Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. - ' For licensing, see LICENSE.html or http://ckeditor.com/license - -' Shared variable for all instances ("static") -dim CKEDITOR_initComplete -dim CKEDITOR_returnedEvents - - '' - ' \brief CKEditor class that can be used to create editor - ' instances in ASP pages on server side. - ' @see http://ckeditor.com - ' - ' Sample usage: - ' @code - ' editor = new CKEditor - ' editor.editor "editor1", "

Initial value.

", empty, empty - ' @endcode - -Class CKEditor - - '' - ' The version of %CKEditor. - private version - - '' - ' A constant string unique for each release of %CKEditor. - private mTimeStamp - - '' - ' URL to the %CKEditor installation directory (absolute or relative to document root). - ' If not set, CKEditor will try to guess it's path. - ' - ' Example usage: - ' @code - ' editor.basePath = "/ckeditor/" - ' @endcode - Public basePath - - '' - ' A boolean variable indicating whether CKEditor has been initialized. - ' Set it to true only if you have already included - ' <script> tag loading ckeditor.js in your website. - Public initialized - - '' - ' Boolean variable indicating whether created code should be printed out or returned by a function. - ' - ' Example 1: get the code creating %CKEditor instance and print it on a page with the "echo" function. - ' @code - ' editor = new CKEditor - ' editor.returnOutput = true - ' code = editor.editor("editor1", "

Initial value.

", empty, empty) - ' response.write "

Editor 1:

" - ' response.write code - ' @endcode - Public returnOutput - - '' - ' A Dictionary with textarea attributes. - ' - ' When %CKEditor is created with the editor() method, a HTML <textarea> element is created, - ' it will be displayed to anyone with JavaScript disabled or with incompatible browser. - public textareaAttributes - - '' - ' A string indicating the creation date of %CKEditor. - ' Do not change it unless you want to force browsers to not use previously cached version of %CKEditor. - public timestamp - - '' - ' A dictionary that holds the instance configuration. - private oInstanceConfig - - '' - ' A dictionary that holds the configuration for all the instances. - private oAllInstancesConfig - - '' - ' A dictionary that holds event listeners for the instance. - private oInstanceEvents - - '' - ' A dictionary that holds event listeners for all the instances. - private oAllInstancesEvents - - '' - ' A Dictionary that holds global event listeners (CKEDITOR object) - private oGlobalEvents - - - Private Sub Class_Initialize() - version = "3.6.4" - timeStamp = "C6HH5UF" - mTimeStamp = "C6HH5UF" - - Set oInstanceConfig = CreateObject("Scripting.Dictionary") - Set oAllInstancesConfig = CreateObject("Scripting.Dictionary") - - Set oInstanceEvents = CreateObject("Scripting.Dictionary") - Set oAllInstancesEvents = CreateObject("Scripting.Dictionary") - Set oGlobalEvents = CreateObject("Scripting.Dictionary") - - Set textareaAttributes = CreateObject("Scripting.Dictionary") - textareaAttributes.Add "rows", 8 - textareaAttributes.Add "cols", 60 - End Sub - - '' - ' Creates a %CKEditor instance. - ' In incompatible browsers %CKEditor will downgrade to plain HTML <textarea> element. - ' - ' @param name (string) Name of the %CKEditor instance (this will be also the "name" attribute of textarea element). - ' @param value (string) Initial value. - ' - ' Example usage: - ' @code - ' set editor = New CKEditor - ' editor.editor "field1", "

Initial value.

" - ' @endcode - ' - ' Advanced example: - ' @code - ' set editor = new CKEditor - ' set config = CreateObject("Scripting.Dictionary") - ' config.Add "toolbar", Array( _ - ' Array( "Source", "-", "Bold", "Italic", "Underline", "Strike" ), _ - ' Array( "Image", "Link", "Unlink", "Anchor" ) _ - ' ) - ' set events = CreateObject("Scripting.Dictionary") - ' events.Add "instanceReady", "function (evt) { alert('Loaded second editor: ' + evt.editor.name );}" - - ' editor.editor "field1", "

Initial value.

", config, events - ' @endcode - ' - public function editor(name, value) - dim attr, out, js, customConfig, extraConfig - dim attribute - - attr = "" - - for each attribute in textareaAttributes - attr = attr & " " & attribute & "=""" & replace( textareaAttributes( attribute ), """", """ ) & """" - next - - out = "" & vbcrlf - - if not(initialized) then - out = out & init() - end if - - set customConfig = configSettings() - js = returnGlobalEvents() - - extraConfig = (new JSON)( empty, customConfig, false ) - if extraConfig<>"" then extraConfig = ", " & extraConfig - js = js & "CKEDITOR.replace('" & name & "'" & extraConfig & ");" - - out = out & script(js) - - if not(returnOutput) then - response.write out - out = "" - end if - - editor = out - - oInstanceConfig.RemoveAll - oInstanceEvents.RemoveAll - end function - - '' - ' Replaces a <textarea> with a %CKEditor instance. - ' - ' @param id (string) The id or name of textarea element. - ' - ' Example 1: adding %CKEditor to <textarea name="article"></textarea> element: - ' @code - ' set editor = New CKEditor - ' editor.replace "article" - ' @endcode - ' - public function replaceInstance(id) - dim out, js, customConfig, extraConfig - - out = "" - if not(initialized) then - out = out & init() - end if - - set customConfig = configSettings() - js = returnGlobalEvents() - - extraConfig = (new JSON)( empty, customConfig, false ) - if extraConfig<>"" then extraConfig = ", " & extraConfig - js = js & "CKEDITOR.replace('" & id & "'" & extraConfig & ");" - - out = out & script(js) - - if not(returnOutput) then - response.write out - out = "" - end if - - replaceInstance = out - - oInstanceConfig.RemoveAll - oInstanceEvents.RemoveAll - end function - - '' - ' Replace all <textarea> elements available in the document with editor instances. - ' - ' @param className (string) If set, replace all textareas with class className in the page. - ' - ' Example 1: replace all <textarea> elements in the page. - ' @code - ' editor = new CKEditor - ' editor.replaceAll empty - ' @endcode - ' - ' Example 2: replace all <textarea class="myClassName"> elements in the page. - ' @code - ' editor = new CKEditor - ' editor.replaceAll 'myClassName' - ' @endcode - ' - function replaceAll(className) - dim out, js, customConfig - - out = "" - if not(initialized) then - out = out & init() - end if - - set customConfig = configSettings() - js = returnGlobalEvents() - - if (customConfig.Count=0) then - if (isEmpty(className)) then - js = js & "CKEDITOR.replaceAll();" - else - js = js & "CKEDITOR.replaceAll('" & className & "');" - end if - else - js = js & "CKEDITOR.replaceAll( function(textarea, config) {\n" - if not(isEmpty(className)) then - js = js & " var classRegex = new RegExp('(?:^| )' + '" & className & "' + '(?:$| )');\n" - js = js & " if (!classRegex.test(textarea.className))\n" - js = js & " return false;\n" - end if - js = js & " CKEDITOR.tools.extend(config, " & (new JSON)( empty, customConfig, false ) & ", true);" - js = js & "} );" - end if - - out = out & script(js) - - if not(returnOutput) then - response.write out - out = "" - end if - - replaceAll = out - - oInstanceConfig.RemoveAll - oInstanceEvents.RemoveAll - end function - - - '' - ' A Dictionary that holds the %CKEditor configuration for all instances - ' For the list of available options, see http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.config.html - ' - ' Example usage: - ' @code - ' editor.config("height") = 400 - ' // Use @@ at the beggining of a string to ouput it without surrounding quotes. - ' editor.config("width") = "@@screen.width * 0.8" - ' @endcode - Public Property Let Config( configKey, configValue ) - oAllInstancesConfig.Add configKey, configValue - End Property - - '' - ' Configuration options for the next instance - ' - Public Property Let instanceConfig( configKey, configValue ) - oInstanceConfig.Add configKey, configValue - End Property - - '' - ' Adds event listener. - ' Events are fired by %CKEditor in various situations. - ' - ' @param eventName (string) Event name. - ' @param javascriptCode (string) Javascript anonymous function or function name. - ' - ' Example usage: - ' @code - ' editor.addEventHandler "instanceReady", "function (ev) { " & _ - ' " alert('Loaded: ' + ev.editor.name); " & _ - ' "}" - ' @endcode - ' - public sub addEventHandler(eventName, javascriptCode) - if not(oAllInstancesEvents.Exists( eventName ) ) then - oAllInstancesEvents.Add eventName, Array() - end if - - dim listeners, size - listeners = oAllInstancesEvents( eventName ) - size = ubound(listeners) + 1 - redim preserve listeners(size) - listeners(size) = javascriptCode - - oAllInstancesEvents( eventName ) = listeners -' '' Avoid duplicates. fixme... -' if (!in_array($javascriptCode, $this->_events[$event])) { -' $this->_events[$event][] = $javascriptCode; -' } - end sub - - '' - ' Clear registered event handlers. - ' Note: this function will have no effect on already created editor instances. - ' - ' @param eventName (string) Event name, if set to 'empty' all event handlers will be removed. - ' - public sub clearEventHandlers( eventName ) - if not(isEmpty( eventName )) then - oAllInstancesEvents.Remove eventName - else - oAllInstancesEvents.RemoveAll - end if - end sub - - - '' - ' Adds event listener only for the next instance. - ' Events are fired by %CKEditor in various situations. - ' - ' @param eventName (string) Event name. - ' @param javascriptCode (string) Javascript anonymous function or function name. - ' - ' Example usage: - ' @code - ' editor.addInstanceEventHandler "instanceReady", "function (ev) { " & _ - ' " alert('Loaded: ' + ev.editor.name); " & _ - ' "}" - ' @endcode - ' - public sub addInstanceEventHandler(eventName, javascriptCode) - if not(oInstanceEvents.Exists( eventName ) ) then - oInstanceEvents.Add eventName, Array() - end if - - dim listeners, size - listeners = oInstanceEvents( eventName ) - size = ubound(listeners) + 1 - redim preserve listeners(size) - listeners(size) = javascriptCode - - oInstanceEvents( eventName ) = listeners -' '' Avoid duplicates. fixme... -' if (!in_array($javascriptCode, $this->_events[$event])) { -' $this->_events[$event][] = $javascriptCode; -' } - end sub - - '' - ' Clear registered event handlers. - ' Note: this function will have no effect on already created editor instances. - ' - ' @param eventName (string) Event name, if set to 'empty' all event handlers will be removed. - ' - public sub clearInstanceEventHandlers( eventName ) - if not(isEmpty( eventName )) then - oInstanceEvents.Remove eventName - else - oInstanceEvents.RemoveAll - end if - end sub - - '' - ' Adds global event listener. - ' - ' @param event (string) Event name. - ' @param javascriptCode (string) Javascript anonymous function or function name. - ' - ' Example usage: - ' @code - ' editor.addGlobalEventHandler "dialogDefinition", "function (ev) { " & _ - ' " alert('Loading dialog: ' + ev.data.name); " & _ - ' "}" - ' @endcode - ' - public sub addGlobalEventHandler( eventName, javascriptCode) - if not(oGlobalEvents.Exists( eventName ) ) then - oGlobalEvents.Add eventName, Array() - end if - - dim listeners, size - listeners = oGlobalEvents( eventName ) - size = ubound(listeners) + 1 - redim preserve listeners(size) - listeners(size) = javascriptCode - - oGlobalEvents( eventName ) = listeners - -' // Avoid duplicates. -' if (!in_array($javascriptCode, $this->_globalEvents[$event])) { -' $this->_globalEvents[$event][] = $javascriptCode; -' } - end sub - - '' - ' Clear registered global event handlers. - ' Note: this function will have no effect if the event handler has been already printed/returned. - ' - ' @param eventName (string) Event name, if set to 'empty' all event handlers will be removed . - ' - public sub clearGlobalEventHandlers( eventName ) - if not(isEmpty( eventName )) then - oGlobalEvents.Remove eventName - else - oGlobalEvents.RemoveAll - end if - end sub - - '' - ' Prints javascript code. - ' - ' @param string js - ' - private function script(js) - script = "" & vbcrlf - end function - - '' - ' Returns the configuration array (global and instance specific settings are merged into one array). - ' - ' @param instanceConfig (Dictionary) The specific configurations to apply to editor instance. - ' @param instanceEvents (Dictionary) Event listeners for editor instance. - ' - private function configSettings() - dim mergedConfig, mergedEvents - set mergedConfig = cloneDictionary(oAllInstancesConfig) - set mergedEvents = cloneDictionary(oAllInstancesEvents) - - if not(isEmpty(oInstanceConfig)) then - set mergedConfig = mergeDictionary(mergedConfig, oInstanceConfig) - end if - - if not(isEmpty(oInstanceEvents)) then - for each eventName in oInstanceEvents - code = oInstanceEvents( eventName ) - - if not(mergedEvents.Exists( eventName)) then - mergedEvents.Add eventName, code - else - - dim listeners, size - listeners = mergedEvents( eventName ) - size = ubound(listeners) - if isArray( code ) then - addedCount = ubound(code) - redim preserve listeners( size + addedCount + 1 ) - for i = 0 to addedCount - listeners(size + i + 1) = code (i) - next - else - size = size + 1 - redim preserve listeners(size) - listeners(size) = code - end if - - mergedEvents( eventName ) = listeners - end if - next - - end if - - dim i, eventName, handlers, configON, ub, code - - if mergedEvents.Count>0 then - if mergedConfig.Exists( "on" ) then - set configON = mergedConfig.items( "on" ) - else - set configON = CreateObject("Scripting.Dictionary") - mergedConfig.Add "on", configOn - end if - - for each eventName in mergedEvents - handlers = mergedEvents( eventName ) - code = "" - - if isArray(handlers) then - uB = ubound(handlers) - if (uB = 0) then - code = handlers(0) - else - code = "function (ev) {" - for i=0 to uB - code = code & "(" & handlers(i) & ")(ev);" - next - code = code & "}" - end if - else - code = handlers - end if - ' Using @@ at the beggining to signal JSON that we don't want this quoted. - configON.Add eventName, "@@" & code - next - -' set mergedConfig.Item("on") = configOn - end if - - set configSettings = mergedConfig - end function - - '' - ' Returns a copy of a scripting.dictionary object - ' - private function cloneDictionary( base ) - dim newOne, tmpKey - - Set newOne = CreateObject("Scripting.Dictionary") - for each tmpKey in base - newOne.Add tmpKey , base( tmpKey ) - next - - set cloneDictionary = newOne - end function - - '' - ' Combines two scripting.dictionary objects - ' The base object isn't modified, and extra gets all the properties in base - ' - private function mergeDictionary(base, extra) - dim newOne, tmpKey - - for each tmpKey in base - if not(extra.Exists( tmpKey )) then - extra.Add tmpKey, base( tmpKey ) - end if - next - - set mergeDictionary = extra - end function - - '' - ' Return global event handlers. - ' - private function returnGlobalEvents() - dim out, eventName, handlers - dim handlersForEvent, handler, code, i - out = "" - - if (isempty(CKEDITOR_returnedEvents)) then - set CKEDITOR_returnedEvents = CreateObject("Scripting.Dictionary") - end if - - for each eventName in oGlobalEvents - handlers = oGlobalEvents( eventName ) - - if not(CKEDITOR_returnedEvents.Exists(eventName)) then - CKEDITOR_returnedEvents.Add eventName, CreateObject("Scripting.Dictionary") - end if - - set handlersForEvent = CKEDITOR_returnedEvents.Item( eventName ) - - ' handlersForEvent is another dictionary - ' and handlers is an array - - for i = 0 to ubound(handlers) - code = handlers( i ) - - ' Return only new events - if not(handlersForEvent.Exists( code )) then - if (out <> "") then out = out & vbcrlf - out = out & "CKEDITOR.on('" & eventName & "', " & code & ");" - handlersForEvent.Add code, code - end if - next - next - - returnGlobalEvents = out - end function - - '' - ' Initializes CKEditor (executed only once). - ' - private function init() - dim out, args, path, extraCode, file - out = "" - - if (CKEDITOR_initComplete) then - init = "" - exit function - end if - - if (initialized) then - CKEDITOR_initComplete = true - init = "" - exit function - end if - - args = "" - path = ckeditorPath() - - if (timestamp <> "") and (timestamp <> "%" & "TIMESTAMP%") then - args = "?t=" & timestamp - end if - - ' Skip relative paths... - if (instr(path, "..") <> 0) then - out = out & script("window.CKEDITOR_BASEPATH='" & path & "';") - end if - - out = out & "" & vbcrlf - - extraCode = "" - if (timestamp <> mTimeStamp) then - extraCode = extraCode & "CKEDITOR.timestamp = '" & timestamp & "';" - end if - if (extraCode <> "") then - out = out & script(extraCode) - end if - - CKEDITOR_initComplete = true - initialized = true - - init = out - end function - - private function ckeditorFileName() - ckeditorFileName = "ckeditor.js" - end function - - '' - ' Return path to ckeditor.js. - ' - private function ckeditorPath() - if (basePath <> "") then - ckeditorPath = basePath - else - ' In classic ASP we can't get the location of this included script - ckeditorPath = "/ckeditor/" - end if - - ' Try to check if that folder contains the CKEditor files: - ' If it's a full URL avoid checking it as it might point to an external server. - if (instr(ckeditorPath, "://") <> 0) then exit function - - dim filename, oFSO, exists - filename = server.mapPath(basePath & ckeditorFileName()) - set oFSO = Server.CreateObject("Scripting.FileSystemObject") - exists = oFSO.FileExists(filename) - set oFSO = nothing - - if not(exists) then - response.clear - response.write "

CKEditor path validation failed

" - response.write "

The path "" & ckeditorPath & "" doesn't include the CKEditor main file (" & ckeditorFileName() & ")

" - response.write "

Please, verify that you have set it correctly and/or adjust the 'basePath' property

" - response.write "

Checked for physical file: "" & filename & ""

" - response.end - end if - end function - -End Class - - - -' URL: http://www.webdevbros.net/2007/04/26/generate-json-from-asp-datatypes/ -'************************************************************************************************************** -'' @CLASSTITLE: JSON -'' @CREATOR: Michal Gabrukiewicz (gabru at grafix.at), Michael Rebec -'' @CONTRIBUTORS: - Cliff Pruitt (opensource at crayoncowboy.com) -'' - Sylvain Lafontaine -'' - Jef Housein -'' - Jeremy Brown -'' @CREATEDON: 2007-04-26 12:46 -'' @CDESCRIPTION: Comes up with functionality for JSON (http://json.org) to use within ASP. -'' Correct escaping of characters, generating JSON Grammer out of ASP datatypes and structures -'' Some examples (all use the toJSON() method but as it is the class' default method it can be left out): -'' -'' <% -'' 'simple number -'' output = (new JSON)("myNum", 2, false) -'' 'generates {"myNum": 2} -'' -'' 'array with different datatypes -'' output = (new JSON)("anArray", array(2, "x", null), true) -'' 'generates "anArray": [2, "x", null] -'' '(note: the last parameter was true, thus no surrounding brackets in the result) -'' % > -'' -'' @REQUIRES: - -'' @OPTIONEXPLICIT: yes -'' @VERSION: 1.5.1 - -'************************************************************************************************************** -class JSON - - 'private members - private output, innerCall - - '********************************************************************************************************** - '* constructor - '********************************************************************************************************** - public sub class_initialize() - newGeneration() - end sub - - '****************************************************************************************** - '' @SDESCRIPTION: STATIC! takes a given string and makes it JSON valid - '' @DESCRIPTION: all characters which needs to be escaped are beeing replaced by their - '' unicode representation according to the - '' RFC4627#2.5 - http://www.ietf.org/rfc/rfc4627.txt?number=4627 - '' @PARAM: val [string]: value which should be escaped - '' @RETURN: [string] JSON valid string - '****************************************************************************************** - public function escape(val) - dim cDoubleQuote, cRevSolidus, cSolidus - cDoubleQuote = &h22 - cRevSolidus = &h5C - cSolidus = &h2F - dim i, currentDigit - for i = 1 to (len(val)) - currentDigit = mid(val, i, 1) - if ascw(currentDigit) > &h00 and ascw(currentDigit) < &h1F then - currentDigit = escapequence(currentDigit) - elseif ascw(currentDigit) >= &hC280 and ascw(currentDigit) <= &hC2BF then - currentDigit = "\u00" + right(padLeft(hex(ascw(currentDigit) - &hC200), 2, 0), 2) - elseif ascw(currentDigit) >= &hC380 and ascw(currentDigit) <= &hC3BF then - currentDigit = "\u00" + right(padLeft(hex(ascw(currentDigit) - &hC2C0), 2, 0), 2) - else - select case ascw(currentDigit) - case cDoubleQuote: currentDigit = escapequence(currentDigit) - case cRevSolidus: currentDigit = escapequence(currentDigit) - case cSolidus: currentDigit = escapequence(currentDigit) - end select - end if - escape = escape & currentDigit - next - end function - - '****************************************************************************************************************** - '' @SDESCRIPTION: generates a representation of a name value pair in JSON grammer - '' @DESCRIPTION: It generates a name value pair which is represented as {"name": value} in JSON. - '' the generation is fully recursive. Thus the value can also be a complex datatype (array in dictionary, etc.) e.g. - '' - '' <% - '' set j = new JSON - '' j.toJSON "n", array(RS, dict, false), false - '' j.toJSON "n", array(array(), 2, true), false - '' % > - '' - '' @PARAM: name [string]: name of the value (accessible with javascript afterwards). leave empty to get just the value - '' @PARAM: val [variant], [int], [float], [array], [object], [dictionary]: value which needs - '' to be generated. Conversation of the data types is as follows:
- '' - ASP datatype -> JavaScript datatype - '' - NOTHING, NULL -> null - '' - INT, DOUBLE -> number - '' - STRING -> string - '' - BOOLEAN -> bool - '' - ARRAY -> array - '' - DICTIONARY -> Represents it as name value pairs. Each key is accessible as property afterwards. json will look like "name": {"key1": "some value", "key2": "other value"} - '' - multidimensional array -> Generates a 1-dimensional array (flat) with all values of the multidimensional array - '' - request object -> every property and collection (cookies, form, querystring, etc) of the asp request object is exposed as an item of a dictionary. Property names are lowercase. e.g. servervariables. - '' - OBJECT -> name of the type (if unknown type) or all its properties (if class implements reflect() method) - '' Implement a reflect() function if you want your custom classes to be recognized. The function must return - '' a dictionary where the key holds the property name and the value its value. Example of a reflect function within a User class which has firstname and lastname properties - '' - '' <% - '' function reflect() - '' . set reflect = server.createObject("scripting.dictionary") - '' . reflect.add "firstname", firstname - '' . reflect.add "lastname", lastname - '' end function - '' % > - '' - '' Example of how to generate a JSON representation of the asp request object and access the HTTP_HOST server variable in JavaScript: - '' - '' - '' - '' @PARAM: nested [bool]: indicates if the name value pair is already nested within another? if yes then the {} are left out. - '' @RETURN: [string] returns a JSON representation of the given name value pair - '****************************************************************************************************************** - public default function toJSON(name, val, nested) - if not nested and not isEmpty(name) then write("{") - if not isEmpty(name) then write("""" & escape(name) & """: ") - generateValue(val) - if not nested and not isEmpty(name) then write("}") - toJSON = output - - if innerCall = 0 then newGeneration() - end function - - '****************************************************************************************************************** - '* generate - '****************************************************************************************************************** - private function generateValue(val) - if isNull(val) then - write("null") - elseif isArray(val) then - generateArray(val) - elseif isObject(val) then - dim tName : tName = typename(val) - if val is nothing then - write("null") - elseif tName = "Dictionary" or tName = "IRequestDictionary" then - generateDictionary(val) - elseif tName = "IRequest" then - set req = server.createObject("scripting.dictionary") - req.add "clientcertificate", val.ClientCertificate - req.add "cookies", val.cookies - req.add "form", val.form - req.add "querystring", val.queryString - req.add "servervariables", val.serverVariables - req.add "totalbytes", val.totalBytes - generateDictionary(req) - elseif tName = "IStringList" then - if val.count = 1 then - toJSON empty, val(1), true - else - generateArray(val) - end if - else - generateObject(val) - end if - else - 'bool - dim varTyp - varTyp = varType(val) - if varTyp = 11 then - if val then write("true") else write("false") - 'int, long, byte - elseif varTyp = 2 or varTyp = 3 or varTyp = 17 or varTyp = 19 then - write(cLng(val)) - 'single, double, currency - elseif varTyp = 4 or varTyp = 5 or varTyp = 6 or varTyp = 14 then - write(replace(cDbl(val), ",", ".")) - else - ' Using @@ at the beggining to signal JSON that we don't want this quoted. - if left(val, 2) = "@@" then - write( mid( val, 3 ) ) - else - write("""" & escape(val & "") & """") - end if - end if - end if - generateValue = output - end function - - '****************************************************************************************************************** - '* generateArray - '****************************************************************************************************************** - private sub generateArray(val) - dim item, i - write("[") - i = 0 - 'the for each allows us to support also multi dimensional arrays - for each item in val - if i > 0 then write(",") - generateValue(item) - i = i + 1 - next - write("]") - end sub - - '****************************************************************************************************************** - '* generateDictionary - '****************************************************************************************************************** - private sub generateDictionary(val) - innerCall = innerCall + 1 - if val.count = 0 then - toJSON empty, null, true - exit sub - end if - dim key, i - write("{") - i = 0 - for each key in val - if i > 0 then write(",") - toJSON key, val(key), true - i = i + 1 - next - write("}") - innerCall = innerCall - 1 - end sub - - '****************************************************************************************************************** - '* generateObject - '****************************************************************************************************************** - private sub generateObject(val) - dim props - on error resume next - set props = val.reflect() - if err = 0 then - on error goto 0 - innerCall = innerCall + 1 - toJSON empty, props, true - innerCall = innerCall - 1 - else - on error goto 0 - write("""" & escape(typename(val)) & """") - end if - end sub - - '****************************************************************************************************************** - '* newGeneration - '****************************************************************************************************************** - private sub newGeneration() - output = empty - innerCall = 0 - end sub - - '****************************************************************************************** - '* JsonEscapeSquence - '****************************************************************************************** - private function escapequence(digit) - escapequence = "\u00" + right(padLeft(hex(ascw(digit)), 2, 0), 2) - end function - - '****************************************************************************************** - '* padLeft - '****************************************************************************************** - private function padLeft(value, totalLength, paddingChar) - padLeft = right(clone(paddingChar, totalLength) & value, totalLength) - end function - - '****************************************************************************************** - '* clone - '****************************************************************************************** - private function clone(byVal str, n) - dim i - for i = 1 to n : clone = clone & str : next - end function - - '****************************************************************************************** - '* write - '****************************************************************************************** - private sub write(val) - output = output & val - end sub - -end class -%> +<% + ' + ' Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. + ' For licensing, see LICENSE.html or http://ckeditor.com/license + +' Shared variable for all instances ("static") +dim CKEDITOR_initComplete +dim CKEDITOR_returnedEvents + + '' + ' \brief CKEditor class that can be used to create editor + ' instances in ASP pages on server side. + ' @see http://ckeditor.com + ' + ' Sample usage: + ' @code + ' editor = new CKEditor + ' editor.editor "editor1", "

Initial value.

", empty, empty + ' @endcode + +Class CKEditor + + '' + ' The version of %CKEditor. + private version + + '' + ' A constant string unique for each release of %CKEditor. + private mTimeStamp + + '' + ' URL to the %CKEditor installation directory (absolute or relative to document root). + ' If not set, CKEditor will try to guess it's path. + ' + ' Example usage: + ' @code + ' editor.basePath = "/ckeditor/" + ' @endcode + Public basePath + + '' + ' A boolean variable indicating whether CKEditor has been initialized. + ' Set it to true only if you have already included + ' <script> tag loading ckeditor.js in your website. + Public initialized + + '' + ' Boolean variable indicating whether created code should be printed out or returned by a function. + ' + ' Example 1: get the code creating %CKEditor instance and print it on a page with the "echo" function. + ' @code + ' editor = new CKEditor + ' editor.returnOutput = true + ' code = editor.editor("editor1", "

Initial value.

", empty, empty) + ' response.write "

Editor 1:

" + ' response.write code + ' @endcode + Public returnOutput + + '' + ' A Dictionary with textarea attributes. + ' + ' When %CKEditor is created with the editor() method, a HTML <textarea> element is created, + ' it will be displayed to anyone with JavaScript disabled or with incompatible browser. + public textareaAttributes + + '' + ' A string indicating the creation date of %CKEditor. + ' Do not change it unless you want to force browsers to not use previously cached version of %CKEditor. + public timestamp + + '' + ' A dictionary that holds the instance configuration. + private oInstanceConfig + + '' + ' A dictionary that holds the configuration for all the instances. + private oAllInstancesConfig + + '' + ' A dictionary that holds event listeners for the instance. + private oInstanceEvents + + '' + ' A dictionary that holds event listeners for all the instances. + private oAllInstancesEvents + + '' + ' A Dictionary that holds global event listeners (CKEDITOR object) + private oGlobalEvents + + + Private Sub Class_Initialize() + version = "3.6.4" + timeStamp = "C6HH5UF" + mTimeStamp = "C6HH5UF" + + Set oInstanceConfig = CreateObject("Scripting.Dictionary") + Set oAllInstancesConfig = CreateObject("Scripting.Dictionary") + + Set oInstanceEvents = CreateObject("Scripting.Dictionary") + Set oAllInstancesEvents = CreateObject("Scripting.Dictionary") + Set oGlobalEvents = CreateObject("Scripting.Dictionary") + + Set textareaAttributes = CreateObject("Scripting.Dictionary") + textareaAttributes.Add "rows", 8 + textareaAttributes.Add "cols", 60 + End Sub + + '' + ' Creates a %CKEditor instance. + ' In incompatible browsers %CKEditor will downgrade to plain HTML <textarea> element. + ' + ' @param name (string) Name of the %CKEditor instance (this will be also the "name" attribute of textarea element). + ' @param value (string) Initial value. + ' + ' Example usage: + ' @code + ' set editor = New CKEditor + ' editor.editor "field1", "

Initial value.

" + ' @endcode + ' + ' Advanced example: + ' @code + ' set editor = new CKEditor + ' set config = CreateObject("Scripting.Dictionary") + ' config.Add "toolbar", Array( _ + ' Array( "Source", "-", "Bold", "Italic", "Underline", "Strike" ), _ + ' Array( "Image", "Link", "Unlink", "Anchor" ) _ + ' ) + ' set events = CreateObject("Scripting.Dictionary") + ' events.Add "instanceReady", "function (evt) { alert('Loaded second editor: ' + evt.editor.name );}" + + ' editor.editor "field1", "

Initial value.

", config, events + ' @endcode + ' + public function editor(name, value) + dim attr, out, js, customConfig, extraConfig + dim attribute + + attr = "" + + for each attribute in textareaAttributes + attr = attr & " " & attribute & "=""" & replace( textareaAttributes( attribute ), """", """ ) & """" + next + + out = "" & vbcrlf + + if not(initialized) then + out = out & init() + end if + + set customConfig = configSettings() + js = returnGlobalEvents() + + extraConfig = (new JSON)( empty, customConfig, false ) + if extraConfig<>"" then extraConfig = ", " & extraConfig + js = js & "CKEDITOR.replace('" & name & "'" & extraConfig & ");" + + out = out & script(js) + + if not(returnOutput) then + response.write out + out = "" + end if + + editor = out + + oInstanceConfig.RemoveAll + oInstanceEvents.RemoveAll + end function + + '' + ' Replaces a <textarea> with a %CKEditor instance. + ' + ' @param id (string) The id or name of textarea element. + ' + ' Example 1: adding %CKEditor to <textarea name="article"></textarea> element: + ' @code + ' set editor = New CKEditor + ' editor.replace "article" + ' @endcode + ' + public function replaceInstance(id) + dim out, js, customConfig, extraConfig + + out = "" + if not(initialized) then + out = out & init() + end if + + set customConfig = configSettings() + js = returnGlobalEvents() + + extraConfig = (new JSON)( empty, customConfig, false ) + if extraConfig<>"" then extraConfig = ", " & extraConfig + js = js & "CKEDITOR.replace('" & id & "'" & extraConfig & ");" + + out = out & script(js) + + if not(returnOutput) then + response.write out + out = "" + end if + + replaceInstance = out + + oInstanceConfig.RemoveAll + oInstanceEvents.RemoveAll + end function + + '' + ' Replace all <textarea> elements available in the document with editor instances. + ' + ' @param className (string) If set, replace all textareas with class className in the page. + ' + ' Example 1: replace all <textarea> elements in the page. + ' @code + ' editor = new CKEditor + ' editor.replaceAll empty + ' @endcode + ' + ' Example 2: replace all <textarea class="myClassName"> elements in the page. + ' @code + ' editor = new CKEditor + ' editor.replaceAll 'myClassName' + ' @endcode + ' + function replaceAll(className) + dim out, js, customConfig + + out = "" + if not(initialized) then + out = out & init() + end if + + set customConfig = configSettings() + js = returnGlobalEvents() + + if (customConfig.Count=0) then + if (isEmpty(className)) then + js = js & "CKEDITOR.replaceAll();" + else + js = js & "CKEDITOR.replaceAll('" & className & "');" + end if + else + js = js & "CKEDITOR.replaceAll( function(textarea, config) {\n" + if not(isEmpty(className)) then + js = js & " var classRegex = new RegExp('(?:^| )' + '" & className & "' + '(?:$| )');\n" + js = js & " if (!classRegex.test(textarea.className))\n" + js = js & " return false;\n" + end if + js = js & " CKEDITOR.tools.extend(config, " & (new JSON)( empty, customConfig, false ) & ", true);" + js = js & "} );" + end if + + out = out & script(js) + + if not(returnOutput) then + response.write out + out = "" + end if + + replaceAll = out + + oInstanceConfig.RemoveAll + oInstanceEvents.RemoveAll + end function + + + '' + ' A Dictionary that holds the %CKEditor configuration for all instances + ' For the list of available options, see http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.config.html + ' + ' Example usage: + ' @code + ' editor.config("height") = 400 + ' // Use @@ at the beggining of a string to ouput it without surrounding quotes. + ' editor.config("width") = "@@screen.width * 0.8" + ' @endcode + Public Property Let Config( configKey, configValue ) + oAllInstancesConfig.Add configKey, configValue + End Property + + '' + ' Configuration options for the next instance + ' + Public Property Let instanceConfig( configKey, configValue ) + oInstanceConfig.Add configKey, configValue + End Property + + '' + ' Adds event listener. + ' Events are fired by %CKEditor in various situations. + ' + ' @param eventName (string) Event name. + ' @param javascriptCode (string) Javascript anonymous function or function name. + ' + ' Example usage: + ' @code + ' editor.addEventHandler "instanceReady", "function (ev) { " & _ + ' " alert('Loaded: ' + ev.editor.name); " & _ + ' "}" + ' @endcode + ' + public sub addEventHandler(eventName, javascriptCode) + if not(oAllInstancesEvents.Exists( eventName ) ) then + oAllInstancesEvents.Add eventName, Array() + end if + + dim listeners, size + listeners = oAllInstancesEvents( eventName ) + size = ubound(listeners) + 1 + redim preserve listeners(size) + listeners(size) = javascriptCode + + oAllInstancesEvents( eventName ) = listeners +' '' Avoid duplicates. fixme... +' if (!in_array($javascriptCode, $this->_events[$event])) { +' $this->_events[$event][] = $javascriptCode; +' } + end sub + + '' + ' Clear registered event handlers. + ' Note: this function will have no effect on already created editor instances. + ' + ' @param eventName (string) Event name, if set to 'empty' all event handlers will be removed. + ' + public sub clearEventHandlers( eventName ) + if not(isEmpty( eventName )) then + oAllInstancesEvents.Remove eventName + else + oAllInstancesEvents.RemoveAll + end if + end sub + + + '' + ' Adds event listener only for the next instance. + ' Events are fired by %CKEditor in various situations. + ' + ' @param eventName (string) Event name. + ' @param javascriptCode (string) Javascript anonymous function or function name. + ' + ' Example usage: + ' @code + ' editor.addInstanceEventHandler "instanceReady", "function (ev) { " & _ + ' " alert('Loaded: ' + ev.editor.name); " & _ + ' "}" + ' @endcode + ' + public sub addInstanceEventHandler(eventName, javascriptCode) + if not(oInstanceEvents.Exists( eventName ) ) then + oInstanceEvents.Add eventName, Array() + end if + + dim listeners, size + listeners = oInstanceEvents( eventName ) + size = ubound(listeners) + 1 + redim preserve listeners(size) + listeners(size) = javascriptCode + + oInstanceEvents( eventName ) = listeners +' '' Avoid duplicates. fixme... +' if (!in_array($javascriptCode, $this->_events[$event])) { +' $this->_events[$event][] = $javascriptCode; +' } + end sub + + '' + ' Clear registered event handlers. + ' Note: this function will have no effect on already created editor instances. + ' + ' @param eventName (string) Event name, if set to 'empty' all event handlers will be removed. + ' + public sub clearInstanceEventHandlers( eventName ) + if not(isEmpty( eventName )) then + oInstanceEvents.Remove eventName + else + oInstanceEvents.RemoveAll + end if + end sub + + '' + ' Adds global event listener. + ' + ' @param event (string) Event name. + ' @param javascriptCode (string) Javascript anonymous function or function name. + ' + ' Example usage: + ' @code + ' editor.addGlobalEventHandler "dialogDefinition", "function (ev) { " & _ + ' " alert('Loading dialog: ' + ev.data.name); " & _ + ' "}" + ' @endcode + ' + public sub addGlobalEventHandler( eventName, javascriptCode) + if not(oGlobalEvents.Exists( eventName ) ) then + oGlobalEvents.Add eventName, Array() + end if + + dim listeners, size + listeners = oGlobalEvents( eventName ) + size = ubound(listeners) + 1 + redim preserve listeners(size) + listeners(size) = javascriptCode + + oGlobalEvents( eventName ) = listeners + +' // Avoid duplicates. +' if (!in_array($javascriptCode, $this->_globalEvents[$event])) { +' $this->_globalEvents[$event][] = $javascriptCode; +' } + end sub + + '' + ' Clear registered global event handlers. + ' Note: this function will have no effect if the event handler has been already printed/returned. + ' + ' @param eventName (string) Event name, if set to 'empty' all event handlers will be removed . + ' + public sub clearGlobalEventHandlers( eventName ) + if not(isEmpty( eventName )) then + oGlobalEvents.Remove eventName + else + oGlobalEvents.RemoveAll + end if + end sub + + '' + ' Prints javascript code. + ' + ' @param string js + ' + private function script(js) + script = "" & vbcrlf + end function + + '' + ' Returns the configuration array (global and instance specific settings are merged into one array). + ' + ' @param instanceConfig (Dictionary) The specific configurations to apply to editor instance. + ' @param instanceEvents (Dictionary) Event listeners for editor instance. + ' + private function configSettings() + dim mergedConfig, mergedEvents + set mergedConfig = cloneDictionary(oAllInstancesConfig) + set mergedEvents = cloneDictionary(oAllInstancesEvents) + + if not(isEmpty(oInstanceConfig)) then + set mergedConfig = mergeDictionary(mergedConfig, oInstanceConfig) + end if + + if not(isEmpty(oInstanceEvents)) then + for each eventName in oInstanceEvents + code = oInstanceEvents( eventName ) + + if not(mergedEvents.Exists( eventName)) then + mergedEvents.Add eventName, code + else + + dim listeners, size + listeners = mergedEvents( eventName ) + size = ubound(listeners) + if isArray( code ) then + addedCount = ubound(code) + redim preserve listeners( size + addedCount + 1 ) + for i = 0 to addedCount + listeners(size + i + 1) = code (i) + next + else + size = size + 1 + redim preserve listeners(size) + listeners(size) = code + end if + + mergedEvents( eventName ) = listeners + end if + next + + end if + + dim i, eventName, handlers, configON, ub, code + + if mergedEvents.Count>0 then + if mergedConfig.Exists( "on" ) then + set configON = mergedConfig.items( "on" ) + else + set configON = CreateObject("Scripting.Dictionary") + mergedConfig.Add "on", configOn + end if + + for each eventName in mergedEvents + handlers = mergedEvents( eventName ) + code = "" + + if isArray(handlers) then + uB = ubound(handlers) + if (uB = 0) then + code = handlers(0) + else + code = "function (ev) {" + for i=0 to uB + code = code & "(" & handlers(i) & ")(ev);" + next + code = code & "}" + end if + else + code = handlers + end if + ' Using @@ at the beggining to signal JSON that we don't want this quoted. + configON.Add eventName, "@@" & code + next + +' set mergedConfig.Item("on") = configOn + end if + + set configSettings = mergedConfig + end function + + '' + ' Returns a copy of a scripting.dictionary object + ' + private function cloneDictionary( base ) + dim newOne, tmpKey + + Set newOne = CreateObject("Scripting.Dictionary") + for each tmpKey in base + newOne.Add tmpKey , base( tmpKey ) + next + + set cloneDictionary = newOne + end function + + '' + ' Combines two scripting.dictionary objects + ' The base object isn't modified, and extra gets all the properties in base + ' + private function mergeDictionary(base, extra) + dim newOne, tmpKey + + for each tmpKey in base + if not(extra.Exists( tmpKey )) then + extra.Add tmpKey, base( tmpKey ) + end if + next + + set mergeDictionary = extra + end function + + '' + ' Return global event handlers. + ' + private function returnGlobalEvents() + dim out, eventName, handlers + dim handlersForEvent, handler, code, i + out = "" + + if (isempty(CKEDITOR_returnedEvents)) then + set CKEDITOR_returnedEvents = CreateObject("Scripting.Dictionary") + end if + + for each eventName in oGlobalEvents + handlers = oGlobalEvents( eventName ) + + if not(CKEDITOR_returnedEvents.Exists(eventName)) then + CKEDITOR_returnedEvents.Add eventName, CreateObject("Scripting.Dictionary") + end if + + set handlersForEvent = CKEDITOR_returnedEvents.Item( eventName ) + + ' handlersForEvent is another dictionary + ' and handlers is an array + + for i = 0 to ubound(handlers) + code = handlers( i ) + + ' Return only new events + if not(handlersForEvent.Exists( code )) then + if (out <> "") then out = out & vbcrlf + out = out & "CKEDITOR.on('" & eventName & "', " & code & ");" + handlersForEvent.Add code, code + end if + next + next + + returnGlobalEvents = out + end function + + '' + ' Initializes CKEditor (executed only once). + ' + private function init() + dim out, args, path, extraCode, file + out = "" + + if (CKEDITOR_initComplete) then + init = "" + exit function + end if + + if (initialized) then + CKEDITOR_initComplete = true + init = "" + exit function + end if + + args = "" + path = ckeditorPath() + + if (timestamp <> "") and (timestamp <> "%" & "TIMESTAMP%") then + args = "?t=" & timestamp + end if + + ' Skip relative paths... + if (instr(path, "..") <> 0) then + out = out & script("window.CKEDITOR_BASEPATH='" & path & "';") + end if + + out = out & "" & vbcrlf + + extraCode = "" + if (timestamp <> mTimeStamp) then + extraCode = extraCode & "CKEDITOR.timestamp = '" & timestamp & "';" + end if + if (extraCode <> "") then + out = out & script(extraCode) + end if + + CKEDITOR_initComplete = true + initialized = true + + init = out + end function + + private function ckeditorFileName() + ckeditorFileName = "ckeditor.js" + end function + + '' + ' Return path to ckeditor.js. + ' + private function ckeditorPath() + if (basePath <> "") then + ckeditorPath = basePath + else + ' In classic ASP we can't get the location of this included script + ckeditorPath = "/ckeditor/" + end if + + ' Try to check if that folder contains the CKEditor files: + ' If it's a full URL avoid checking it as it might point to an external server. + if (instr(ckeditorPath, "://") <> 0) then exit function + + dim filename, oFSO, exists + filename = server.mapPath(basePath & ckeditorFileName()) + set oFSO = Server.CreateObject("Scripting.FileSystemObject") + exists = oFSO.FileExists(filename) + set oFSO = nothing + + if not(exists) then + response.clear + response.write "

CKEditor path validation failed

" + response.write "

The path "" & ckeditorPath & "" doesn't include the CKEditor main file (" & ckeditorFileName() & ")

" + response.write "

Please, verify that you have set it correctly and/or adjust the 'basePath' property

" + response.write "

Checked for physical file: "" & filename & ""

" + response.end + end if + end function + +End Class + + + +' URL: http://www.webdevbros.net/2007/04/26/generate-json-from-asp-datatypes/ +'************************************************************************************************************** +'' @CLASSTITLE: JSON +'' @CREATOR: Michal Gabrukiewicz (gabru at grafix.at), Michael Rebec +'' @CONTRIBUTORS: - Cliff Pruitt (opensource at crayoncowboy.com) +'' - Sylvain Lafontaine +'' - Jef Housein +'' - Jeremy Brown +'' @CREATEDON: 2007-04-26 12:46 +'' @CDESCRIPTION: Comes up with functionality for JSON (http://json.org) to use within ASP. +'' Correct escaping of characters, generating JSON Grammer out of ASP datatypes and structures +'' Some examples (all use the toJSON() method but as it is the class' default method it can be left out): +'' +'' <% +'' 'simple number +'' output = (new JSON)("myNum", 2, false) +'' 'generates {"myNum": 2} +'' +'' 'array with different datatypes +'' output = (new JSON)("anArray", array(2, "x", null), true) +'' 'generates "anArray": [2, "x", null] +'' '(note: the last parameter was true, thus no surrounding brackets in the result) +'' % > +'' +'' @REQUIRES: - +'' @OPTIONEXPLICIT: yes +'' @VERSION: 1.5.1 + +'************************************************************************************************************** +class JSON + + 'private members + private output, innerCall + + '********************************************************************************************************** + '* constructor + '********************************************************************************************************** + public sub class_initialize() + newGeneration() + end sub + + '****************************************************************************************** + '' @SDESCRIPTION: STATIC! takes a given string and makes it JSON valid + '' @DESCRIPTION: all characters which needs to be escaped are beeing replaced by their + '' unicode representation according to the + '' RFC4627#2.5 - http://www.ietf.org/rfc/rfc4627.txt?number=4627 + '' @PARAM: val [string]: value which should be escaped + '' @RETURN: [string] JSON valid string + '****************************************************************************************** + public function escape(val) + dim cDoubleQuote, cRevSolidus, cSolidus + cDoubleQuote = &h22 + cRevSolidus = &h5C + cSolidus = &h2F + dim i, currentDigit + for i = 1 to (len(val)) + currentDigit = mid(val, i, 1) + if ascw(currentDigit) > &h00 and ascw(currentDigit) < &h1F then + currentDigit = escapequence(currentDigit) + elseif ascw(currentDigit) >= &hC280 and ascw(currentDigit) <= &hC2BF then + currentDigit = "\u00" + right(padLeft(hex(ascw(currentDigit) - &hC200), 2, 0), 2) + elseif ascw(currentDigit) >= &hC380 and ascw(currentDigit) <= &hC3BF then + currentDigit = "\u00" + right(padLeft(hex(ascw(currentDigit) - &hC2C0), 2, 0), 2) + else + select case ascw(currentDigit) + case cDoubleQuote: currentDigit = escapequence(currentDigit) + case cRevSolidus: currentDigit = escapequence(currentDigit) + case cSolidus: currentDigit = escapequence(currentDigit) + end select + end if + escape = escape & currentDigit + next + end function + + '****************************************************************************************************************** + '' @SDESCRIPTION: generates a representation of a name value pair in JSON grammer + '' @DESCRIPTION: It generates a name value pair which is represented as {"name": value} in JSON. + '' the generation is fully recursive. Thus the value can also be a complex datatype (array in dictionary, etc.) e.g. + '' + '' <% + '' set j = new JSON + '' j.toJSON "n", array(RS, dict, false), false + '' j.toJSON "n", array(array(), 2, true), false + '' % > + '' + '' @PARAM: name [string]: name of the value (accessible with javascript afterwards). leave empty to get just the value + '' @PARAM: val [variant], [int], [float], [array], [object], [dictionary]: value which needs + '' to be generated. Conversation of the data types is as follows:
+ '' - ASP datatype -> JavaScript datatype + '' - NOTHING, NULL -> null + '' - INT, DOUBLE -> number + '' - STRING -> string + '' - BOOLEAN -> bool + '' - ARRAY -> array + '' - DICTIONARY -> Represents it as name value pairs. Each key is accessible as property afterwards. json will look like "name": {"key1": "some value", "key2": "other value"} + '' - multidimensional array -> Generates a 1-dimensional array (flat) with all values of the multidimensional array + '' - request object -> every property and collection (cookies, form, querystring, etc) of the asp request object is exposed as an item of a dictionary. Property names are lowercase. e.g. servervariables. + '' - OBJECT -> name of the type (if unknown type) or all its properties (if class implements reflect() method) + '' Implement a reflect() function if you want your custom classes to be recognized. The function must return + '' a dictionary where the key holds the property name and the value its value. Example of a reflect function within a User class which has firstname and lastname properties + '' + '' <% + '' function reflect() + '' . set reflect = server.createObject("scripting.dictionary") + '' . reflect.add "firstname", firstname + '' . reflect.add "lastname", lastname + '' end function + '' % > + '' + '' Example of how to generate a JSON representation of the asp request object and access the HTTP_HOST server variable in JavaScript: + '' + '' + '' + '' @PARAM: nested [bool]: indicates if the name value pair is already nested within another? if yes then the {} are left out. + '' @RETURN: [string] returns a JSON representation of the given name value pair + '****************************************************************************************************************** + public default function toJSON(name, val, nested) + if not nested and not isEmpty(name) then write("{") + if not isEmpty(name) then write("""" & escape(name) & """: ") + generateValue(val) + if not nested and not isEmpty(name) then write("}") + toJSON = output + + if innerCall = 0 then newGeneration() + end function + + '****************************************************************************************************************** + '* generate + '****************************************************************************************************************** + private function generateValue(val) + if isNull(val) then + write("null") + elseif isArray(val) then + generateArray(val) + elseif isObject(val) then + dim tName : tName = typename(val) + if val is nothing then + write("null") + elseif tName = "Dictionary" or tName = "IRequestDictionary" then + generateDictionary(val) + elseif tName = "IRequest" then + set req = server.createObject("scripting.dictionary") + req.add "clientcertificate", val.ClientCertificate + req.add "cookies", val.cookies + req.add "form", val.form + req.add "querystring", val.queryString + req.add "servervariables", val.serverVariables + req.add "totalbytes", val.totalBytes + generateDictionary(req) + elseif tName = "IStringList" then + if val.count = 1 then + toJSON empty, val(1), true + else + generateArray(val) + end if + else + generateObject(val) + end if + else + 'bool + dim varTyp + varTyp = varType(val) + if varTyp = 11 then + if val then write("true") else write("false") + 'int, long, byte + elseif varTyp = 2 or varTyp = 3 or varTyp = 17 or varTyp = 19 then + write(cLng(val)) + 'single, double, currency + elseif varTyp = 4 or varTyp = 5 or varTyp = 6 or varTyp = 14 then + write(replace(cDbl(val), ",", ".")) + else + ' Using @@ at the beggining to signal JSON that we don't want this quoted. + if left(val, 2) = "@@" then + write( mid( val, 3 ) ) + else + write("""" & escape(val & "") & """") + end if + end if + end if + generateValue = output + end function + + '****************************************************************************************************************** + '* generateArray + '****************************************************************************************************************** + private sub generateArray(val) + dim item, i + write("[") + i = 0 + 'the for each allows us to support also multi dimensional arrays + for each item in val + if i > 0 then write(",") + generateValue(item) + i = i + 1 + next + write("]") + end sub + + '****************************************************************************************************************** + '* generateDictionary + '****************************************************************************************************************** + private sub generateDictionary(val) + innerCall = innerCall + 1 + if val.count = 0 then + toJSON empty, null, true + exit sub + end if + dim key, i + write("{") + i = 0 + for each key in val + if i > 0 then write(",") + toJSON key, val(key), true + i = i + 1 + next + write("}") + innerCall = innerCall - 1 + end sub + + '****************************************************************************************************************** + '* generateObject + '****************************************************************************************************************** + private sub generateObject(val) + dim props + on error resume next + set props = val.reflect() + if err = 0 then + on error goto 0 + innerCall = innerCall + 1 + toJSON empty, props, true + innerCall = innerCall - 1 + else + on error goto 0 + write("""" & escape(typename(val)) & """") + end if + end sub + + '****************************************************************************************************************** + '* newGeneration + '****************************************************************************************************************** + private sub newGeneration() + output = empty + innerCall = 0 + end sub + + '****************************************************************************************** + '* JsonEscapeSquence + '****************************************************************************************** + private function escapequence(digit) + escapequence = "\u00" + right(padLeft(hex(ascw(digit)), 2, 0), 2) + end function + + '****************************************************************************************** + '* padLeft + '****************************************************************************************** + private function padLeft(value, totalLength, paddingChar) + padLeft = right(clone(paddingChar, totalLength) & value, totalLength) + end function + + '****************************************************************************************** + '* clone + '****************************************************************************************** + private function clone(byVal str, n) + dim i + for i = 1 to n : clone = clone & str : next + end function + + '****************************************************************************************** + '* write + '****************************************************************************************** + private sub write(val) + output = output & val + end sub + +end class +%> diff --git a/htdocs/includes/ckeditor/ckeditor.pack b/htdocs/includes/ckeditor/ckeditor.pack index fb9f5bdc456..71be7bb4c07 100644 --- a/htdocs/includes/ckeditor/ckeditor.pack +++ b/htdocs/includes/ckeditor/ckeditor.pack @@ -1,211 +1,211 @@ -/* - * CKPackager - Sample Package file - */ - -header : - '/*' + '\n' + - 'Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved.' + '\n' + - 'For licensing, see LICENSE.html or http://ckeditor.com/license' + '\n' + - '*/' + '\n' + - '\n', - -noCheck : false, - -constants : - { - 'CKEDITOR.ELEMENT_MODE_NONE' : 0, - 'CKEDITOR.ELEMENT_MODE_REPLACE' : 1, - 'CKEDITOR.ELEMENT_MODE_APPENDTO' : 2, - 'CKEDITOR.CTRL' : 0x110000, - 'CKEDITOR.SHIFT' : 0x220000, - 'CKEDITOR.ALT' : 0x440000, - 'CKEDITOR.NODE_ELEMENT' : 1, - 'CKEDITOR.NODE_DOCUMENT' : 9, - 'CKEDITOR.NODE_TEXT' : 3, - 'CKEDITOR.NODE_COMMENT' : 8, - 'CKEDITOR.NODE_DOCUMENT_FRAGMENT' : 11, - 'CKEDITOR.POSITION_IDENTICAL' : 0, - 'CKEDITOR.POSITION_DISCONNECTED' : 1, - 'CKEDITOR.POSITION_FOLLOWING' : 2, - 'CKEDITOR.POSITION_PRECEDING' : 4, - 'CKEDITOR.POSITION_IS_CONTAINED' : 8, - 'CKEDITOR.POSITION_CONTAINS' : 16, - 'CKEDITOR.ENTER_P' : 1, - 'CKEDITOR.ENTER_BR' : 2, - 'CKEDITOR.ENTER_DIV' : 3, - 'CKEDITOR.TRISTATE_ON' : 1, - 'CKEDITOR.TRISTATE_OFF' : 2, - 'CKEDITOR.TRISTATE_DISABLED' : 0, - 'CKEDITOR.POSITION_AFTER_START' : 1, - 'CKEDITOR.POSITION_BEFORE_END' : 2, - 'CKEDITOR.POSITION_BEFORE_START' : 3, - 'CKEDITOR.POSITION_AFTER_END' : 4, - 'CKEDITOR.ENLARGE_ELEMENT' : 1, - 'CKEDITOR.ENLARGE_BLOCK_CONTENTS' : 2, - 'CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS' : 3, - 'CKEDITOR.START' : 1, - 'CKEDITOR.END' : 2, - 'CKEDITOR.STARTEND' : 3, - 'CKEDITOR.SHRINK_ELEMENT' : 1, - 'CKEDITOR.SHRINK_TEXT' : 2, - 'CKEDITOR.UI_BUTTON' : '\'button\'', - 'CKEDITOR.DIALOG_RESIZE_NONE' : 0, - 'CKEDITOR.DIALOG_RESIZE_WIDTH' : 1, - 'CKEDITOR.DIALOG_RESIZE_HEIGHT' : 2, - 'CKEDITOR.DIALOG_RESIZE_BOTH' : 3, - 'CKEDITOR.VALIDATE_OR' : 1, - 'CKEDITOR.VALIDATE_AND' : 2, - 'CKEDITOR.STYLE_BLOCK' : 1, - 'CKEDITOR.STYLE_INLINE' : 2, - 'CKEDITOR.STYLE_OBJECT' : 3, - 'CKEDITOR.UI_PANELBUTTON' : '\'panelbutton\'', - 'CKEDITOR.SELECTION_NONE' : 1, - 'CKEDITOR.SELECTION_TEXT' : 2, - 'CKEDITOR.SELECTION_ELEMENT' : 3, - 'CKEDITOR.UI_RICHCOMBO' : '\'richcombo\'', - 'CKEDITOR.UI_MENUBUTTON' : '\'menubutton\'', - 'CKEDITOR.UI_PANEL' : '\'panel\'' - }, - -packages : - [ - { - output : 'ckeditor_basic.js', - wrap : true, - files : - [ - '_source/core/ckeditor_base.js', - '_source/core/event.js', - '_source/core/editor_basic.js', - '_source/core/env.js', - '_source/core/ckeditor_basic.js' - ] - }, - - { - output : 'ckeditor.js', - wrap : true, - files : - [ - '_source/core/ckeditor_base.js', - '_source/core/event.js', - '_source/core/editor_basic.js', - '_source/core/env.js', - '_source/core/ckeditor_basic.js', - '_source/core/dom.js', - '_source/core/tools.js', - '_source/core/dtd.js', - '_source/core/dom/event.js', - '_source/core/dom/domobject.js', - '_source/core/dom/window.js', - '_source/core/dom/document.js', - '_source/core/dom/node.js', - '_source/core/dom/nodelist.js', - '_source/core/dom/element.js', - '_source/core/command.js', - '_source/core/config.js', - '_source/core/focusmanager.js', - '_source/core/lang.js', - '_source/core/scriptloader.js', - '_source/core/resourcemanager.js', - '_source/core/plugins.js', - '_source/core/skins.js', - '_source/core/themes.js', - '_source/core/ui.js', - '_source/core/editor.js', - '_source/core/htmlparser.js', - '_source/core/htmlparser/comment.js', - '_source/core/htmlparser/text.js', - '_source/core/htmlparser/cdata.js', - '_source/core/htmlparser/fragment.js', - '_source/core/htmlparser/element.js', - '_source/core/htmlparser/filter.js', - '_source/core/htmlparser/basicwriter.js', - '_source/core/ckeditor.js', - '_source/core/dom/comment.js', - '_source/core/dom/elementpath.js', - '_source/core/dom/text.js', - '_source/core/dom/documentfragment.js', - '_source/core/dom/walker.js', - '_source/core/dom/range.js', - '_source/core/dom/rangelist.js', - '_source/core/_bootstrap.js', - '_source/skins/kama/skin.js', -// '_source/lang/en.js', - '_source/plugins/about/plugin.js', - '_source/plugins/a11yhelp/plugin.js', - '_source/plugins/basicstyles/plugin.js', - '_source/plugins/bidi/plugin.js', - '_source/plugins/blockquote/plugin.js', - '_source/plugins/button/plugin.js', - '_source/plugins/clipboard/plugin.js', - '_source/plugins/colorbutton/plugin.js', - '_source/plugins/colordialog/plugin.js', - '_source/plugins/contextmenu/plugin.js', - '_source/plugins/dialogadvtab/plugin.js', - '_source/plugins/div/plugin.js', - '_source/plugins/elementspath/plugin.js', - '_source/plugins/enterkey/plugin.js', - '_source/plugins/entities/plugin.js', - '_source/plugins/filebrowser/plugin.js', - '_source/plugins/find/plugin.js', - '_source/plugins/flash/plugin.js', - '_source/plugins/font/plugin.js', - '_source/plugins/format/plugin.js', - '_source/plugins/forms/plugin.js', - '_source/plugins/horizontalrule/plugin.js', - '_source/plugins/htmldataprocessor/plugin.js', - '_source/plugins/iframe/plugin.js', - '_source/plugins/image/plugin.js', - '_source/plugins/indent/plugin.js', - '_source/plugins/justify/plugin.js', - '_source/plugins/keystrokes/plugin.js', - '_source/plugins/link/plugin.js', - '_source/plugins/list/plugin.js', - '_source/plugins/liststyle/plugin.js', - '_source/plugins/maximize/plugin.js', - '_source/plugins/newpage/plugin.js', - '_source/plugins/pagebreak/plugin.js', - '_source/plugins/pastefromword/plugin.js', - '_source/plugins/pastetext/plugin.js', - '_source/plugins/popup/plugin.js', - '_source/plugins/preview/plugin.js', - '_source/plugins/print/plugin.js', - '_source/plugins/removeformat/plugin.js', - '_source/plugins/resize/plugin.js', - '_source/plugins/save/plugin.js', - '_source/plugins/scayt/plugin.js', - '_source/plugins/smiley/plugin.js', - '_source/plugins/showblocks/plugin.js', - '_source/plugins/showborders/plugin.js', - '_source/plugins/sourcearea/plugin.js', - '_source/plugins/stylescombo/plugin.js', - '_source/plugins/table/plugin.js', - '_source/plugins/tabletools/plugin.js', - '_source/plugins/specialchar/plugin.js', - '_source/plugins/tab/plugin.js', - '_source/plugins/templates/plugin.js', - '_source/plugins/toolbar/plugin.js', - '_source/plugins/undo/plugin.js', - '_source/plugins/wysiwygarea/plugin.js', - '_source/plugins/wsc/plugin.js', - '_source/plugins/dialog/plugin.js', - '_source/plugins/styles/plugin.js', - '_source/plugins/domiterator/plugin.js', - '_source/plugins/panelbutton/plugin.js', - '_source/plugins/floatpanel/plugin.js', - '_source/plugins/menu/plugin.js', - '_source/plugins/editingblock/plugin.js', - '_source/plugins/selection/plugin.js', - '_source/plugins/fakeobjects/plugin.js', - '_source/plugins/richcombo/plugin.js', - '_source/plugins/htmlwriter/plugin.js', - '_source/plugins/menubutton/plugin.js', - '_source/plugins/dialogui/plugin.js', - '_source/plugins/panel/plugin.js', - '_source/plugins/listblock/plugin.js', - '_source/themes/default/theme.js' - ] - } - - ] +/* + * CKPackager - Sample Package file + */ + +header : + '/*' + '\n' + + 'Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved.' + '\n' + + 'For licensing, see LICENSE.html or http://ckeditor.com/license' + '\n' + + '*/' + '\n' + + '\n', + +noCheck : false, + +constants : + { + 'CKEDITOR.ELEMENT_MODE_NONE' : 0, + 'CKEDITOR.ELEMENT_MODE_REPLACE' : 1, + 'CKEDITOR.ELEMENT_MODE_APPENDTO' : 2, + 'CKEDITOR.CTRL' : 0x110000, + 'CKEDITOR.SHIFT' : 0x220000, + 'CKEDITOR.ALT' : 0x440000, + 'CKEDITOR.NODE_ELEMENT' : 1, + 'CKEDITOR.NODE_DOCUMENT' : 9, + 'CKEDITOR.NODE_TEXT' : 3, + 'CKEDITOR.NODE_COMMENT' : 8, + 'CKEDITOR.NODE_DOCUMENT_FRAGMENT' : 11, + 'CKEDITOR.POSITION_IDENTICAL' : 0, + 'CKEDITOR.POSITION_DISCONNECTED' : 1, + 'CKEDITOR.POSITION_FOLLOWING' : 2, + 'CKEDITOR.POSITION_PRECEDING' : 4, + 'CKEDITOR.POSITION_IS_CONTAINED' : 8, + 'CKEDITOR.POSITION_CONTAINS' : 16, + 'CKEDITOR.ENTER_P' : 1, + 'CKEDITOR.ENTER_BR' : 2, + 'CKEDITOR.ENTER_DIV' : 3, + 'CKEDITOR.TRISTATE_ON' : 1, + 'CKEDITOR.TRISTATE_OFF' : 2, + 'CKEDITOR.TRISTATE_DISABLED' : 0, + 'CKEDITOR.POSITION_AFTER_START' : 1, + 'CKEDITOR.POSITION_BEFORE_END' : 2, + 'CKEDITOR.POSITION_BEFORE_START' : 3, + 'CKEDITOR.POSITION_AFTER_END' : 4, + 'CKEDITOR.ENLARGE_ELEMENT' : 1, + 'CKEDITOR.ENLARGE_BLOCK_CONTENTS' : 2, + 'CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS' : 3, + 'CKEDITOR.START' : 1, + 'CKEDITOR.END' : 2, + 'CKEDITOR.STARTEND' : 3, + 'CKEDITOR.SHRINK_ELEMENT' : 1, + 'CKEDITOR.SHRINK_TEXT' : 2, + 'CKEDITOR.UI_BUTTON' : '\'button\'', + 'CKEDITOR.DIALOG_RESIZE_NONE' : 0, + 'CKEDITOR.DIALOG_RESIZE_WIDTH' : 1, + 'CKEDITOR.DIALOG_RESIZE_HEIGHT' : 2, + 'CKEDITOR.DIALOG_RESIZE_BOTH' : 3, + 'CKEDITOR.VALIDATE_OR' : 1, + 'CKEDITOR.VALIDATE_AND' : 2, + 'CKEDITOR.STYLE_BLOCK' : 1, + 'CKEDITOR.STYLE_INLINE' : 2, + 'CKEDITOR.STYLE_OBJECT' : 3, + 'CKEDITOR.UI_PANELBUTTON' : '\'panelbutton\'', + 'CKEDITOR.SELECTION_NONE' : 1, + 'CKEDITOR.SELECTION_TEXT' : 2, + 'CKEDITOR.SELECTION_ELEMENT' : 3, + 'CKEDITOR.UI_RICHCOMBO' : '\'richcombo\'', + 'CKEDITOR.UI_MENUBUTTON' : '\'menubutton\'', + 'CKEDITOR.UI_PANEL' : '\'panel\'' + }, + +packages : + [ + { + output : 'ckeditor_basic.js', + wrap : true, + files : + [ + '_source/core/ckeditor_base.js', + '_source/core/event.js', + '_source/core/editor_basic.js', + '_source/core/env.js', + '_source/core/ckeditor_basic.js' + ] + }, + + { + output : 'ckeditor.js', + wrap : true, + files : + [ + '_source/core/ckeditor_base.js', + '_source/core/event.js', + '_source/core/editor_basic.js', + '_source/core/env.js', + '_source/core/ckeditor_basic.js', + '_source/core/dom.js', + '_source/core/tools.js', + '_source/core/dtd.js', + '_source/core/dom/event.js', + '_source/core/dom/domobject.js', + '_source/core/dom/window.js', + '_source/core/dom/document.js', + '_source/core/dom/node.js', + '_source/core/dom/nodelist.js', + '_source/core/dom/element.js', + '_source/core/command.js', + '_source/core/config.js', + '_source/core/focusmanager.js', + '_source/core/lang.js', + '_source/core/scriptloader.js', + '_source/core/resourcemanager.js', + '_source/core/plugins.js', + '_source/core/skins.js', + '_source/core/themes.js', + '_source/core/ui.js', + '_source/core/editor.js', + '_source/core/htmlparser.js', + '_source/core/htmlparser/comment.js', + '_source/core/htmlparser/text.js', + '_source/core/htmlparser/cdata.js', + '_source/core/htmlparser/fragment.js', + '_source/core/htmlparser/element.js', + '_source/core/htmlparser/filter.js', + '_source/core/htmlparser/basicwriter.js', + '_source/core/ckeditor.js', + '_source/core/dom/comment.js', + '_source/core/dom/elementpath.js', + '_source/core/dom/text.js', + '_source/core/dom/documentfragment.js', + '_source/core/dom/walker.js', + '_source/core/dom/range.js', + '_source/core/dom/rangelist.js', + '_source/core/_bootstrap.js', + '_source/skins/kama/skin.js', +// '_source/lang/en.js', + '_source/plugins/about/plugin.js', + '_source/plugins/a11yhelp/plugin.js', + '_source/plugins/basicstyles/plugin.js', + '_source/plugins/bidi/plugin.js', + '_source/plugins/blockquote/plugin.js', + '_source/plugins/button/plugin.js', + '_source/plugins/clipboard/plugin.js', + '_source/plugins/colorbutton/plugin.js', + '_source/plugins/colordialog/plugin.js', + '_source/plugins/contextmenu/plugin.js', + '_source/plugins/dialogadvtab/plugin.js', + '_source/plugins/div/plugin.js', + '_source/plugins/elementspath/plugin.js', + '_source/plugins/enterkey/plugin.js', + '_source/plugins/entities/plugin.js', + '_source/plugins/filebrowser/plugin.js', + '_source/plugins/find/plugin.js', + '_source/plugins/flash/plugin.js', + '_source/plugins/font/plugin.js', + '_source/plugins/format/plugin.js', + '_source/plugins/forms/plugin.js', + '_source/plugins/horizontalrule/plugin.js', + '_source/plugins/htmldataprocessor/plugin.js', + '_source/plugins/iframe/plugin.js', + '_source/plugins/image/plugin.js', + '_source/plugins/indent/plugin.js', + '_source/plugins/justify/plugin.js', + '_source/plugins/keystrokes/plugin.js', + '_source/plugins/link/plugin.js', + '_source/plugins/list/plugin.js', + '_source/plugins/liststyle/plugin.js', + '_source/plugins/maximize/plugin.js', + '_source/plugins/newpage/plugin.js', + '_source/plugins/pagebreak/plugin.js', + '_source/plugins/pastefromword/plugin.js', + '_source/plugins/pastetext/plugin.js', + '_source/plugins/popup/plugin.js', + '_source/plugins/preview/plugin.js', + '_source/plugins/print/plugin.js', + '_source/plugins/removeformat/plugin.js', + '_source/plugins/resize/plugin.js', + '_source/plugins/save/plugin.js', + '_source/plugins/scayt/plugin.js', + '_source/plugins/smiley/plugin.js', + '_source/plugins/showblocks/plugin.js', + '_source/plugins/showborders/plugin.js', + '_source/plugins/sourcearea/plugin.js', + '_source/plugins/stylescombo/plugin.js', + '_source/plugins/table/plugin.js', + '_source/plugins/tabletools/plugin.js', + '_source/plugins/specialchar/plugin.js', + '_source/plugins/tab/plugin.js', + '_source/plugins/templates/plugin.js', + '_source/plugins/toolbar/plugin.js', + '_source/plugins/undo/plugin.js', + '_source/plugins/wysiwygarea/plugin.js', + '_source/plugins/wsc/plugin.js', + '_source/plugins/dialog/plugin.js', + '_source/plugins/styles/plugin.js', + '_source/plugins/domiterator/plugin.js', + '_source/plugins/panelbutton/plugin.js', + '_source/plugins/floatpanel/plugin.js', + '_source/plugins/menu/plugin.js', + '_source/plugins/editingblock/plugin.js', + '_source/plugins/selection/plugin.js', + '_source/plugins/fakeobjects/plugin.js', + '_source/plugins/richcombo/plugin.js', + '_source/plugins/htmlwriter/plugin.js', + '_source/plugins/menubutton/plugin.js', + '_source/plugins/dialogui/plugin.js', + '_source/plugins/panel/plugin.js', + '_source/plugins/listblock/plugin.js', + '_source/themes/default/theme.js' + ] + } + + ] diff --git a/htdocs/includes/ckeditor/lang/_translationstatus.txt b/htdocs/includes/ckeditor/lang/_translationstatus.txt index 467a73331e0..4a7c03366f1 100644 --- a/htdocs/includes/ckeditor/lang/_translationstatus.txt +++ b/htdocs/includes/ckeditor/lang/_translationstatus.txt @@ -1,64 +1,64 @@ -Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. -For licensing, see LICENSE.html or http://ckeditor.com/license - -af.js Found: 548 Missing: 29 -ar.js Found: 470 Missing: 107 -bg.js Found: 394 Missing: 183 -bn.js Found: 292 Missing: 285 -bs.js Found: 175 Missing: 402 -ca.js Found: 549 Missing: 28 -cs.js Found: 577 Missing: 0 -cy.js Found: 575 Missing: 2 -da.js Found: 575 Missing: 2 -de.js Found: 575 Missing: 2 -el.js Found: 391 Missing: 186 -en-au.js Found: 347 Missing: 230 -en-ca.js Found: 345 Missing: 232 -en-gb.js Found: 517 Missing: 60 -eo.js Found: 577 Missing: 0 -es.js Found: 575 Missing: 2 -et.js Found: 577 Missing: 0 -eu.js Found: 417 Missing: 160 -fa.js Found: 575 Missing: 2 -fi.js Found: 575 Missing: 2 -fo.js Found: 575 Missing: 2 -fr-ca.js Found: 319 Missing: 258 -fr.js Found: 575 Missing: 2 -gl.js Found: 292 Missing: 285 -gu.js Found: 575 Missing: 2 -he.js Found: 575 Missing: 2 -hi.js Found: 327 Missing: 250 -hr.js Found: 575 Missing: 2 -hu.js Found: 572 Missing: 5 -id.js Found: 1 Missing: 576 -is.js Found: 326 Missing: 251 -it.js Found: 577 Missing: 0 -ja.js Found: 493 Missing: 84 -ka.js Found: 568 Missing: 9 -km.js Found: 286 Missing: 291 -ko.js Found: 304 Missing: 273 -lt.js Found: 575 Missing: 2 -lv.js Found: 294 Missing: 283 -mk.js Found: 0 Missing: 577 -mn.js Found: 320 Missing: 257 -ms.js Found: 276 Missing: 301 -nb.js Found: 577 Missing: 0 -nl.js Found: 575 Missing: 2 -no.js Found: 577 Missing: 0 -pl.js Found: 575 Missing: 2 -pt-br.js Found: 577 Missing: 0 -pt.js Found: 326 Missing: 251 -ro.js Found: 432 Missing: 145 -ru.js Found: 575 Missing: 2 -sk.js Found: 364 Missing: 213 -sl.js Found: 426 Missing: 151 -sr-latn.js Found: 287 Missing: 290 -sr.js Found: 286 Missing: 291 -sv.js Found: 550 Missing: 27 -th.js Found: 298 Missing: 279 -tr.js Found: 575 Missing: 2 -ug.js Found: 572 Missing: 5 -uk.js Found: 575 Missing: 2 -vi.js Found: 577 Missing: 0 -zh-cn.js Found: 577 Missing: 0 -zh.js Found: 433 Missing: 144 +Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.html or http://ckeditor.com/license + +af.js Found: 548 Missing: 29 +ar.js Found: 470 Missing: 107 +bg.js Found: 394 Missing: 183 +bn.js Found: 292 Missing: 285 +bs.js Found: 175 Missing: 402 +ca.js Found: 549 Missing: 28 +cs.js Found: 577 Missing: 0 +cy.js Found: 575 Missing: 2 +da.js Found: 575 Missing: 2 +de.js Found: 575 Missing: 2 +el.js Found: 391 Missing: 186 +en-au.js Found: 347 Missing: 230 +en-ca.js Found: 345 Missing: 232 +en-gb.js Found: 517 Missing: 60 +eo.js Found: 577 Missing: 0 +es.js Found: 575 Missing: 2 +et.js Found: 577 Missing: 0 +eu.js Found: 417 Missing: 160 +fa.js Found: 575 Missing: 2 +fi.js Found: 575 Missing: 2 +fo.js Found: 575 Missing: 2 +fr-ca.js Found: 319 Missing: 258 +fr.js Found: 575 Missing: 2 +gl.js Found: 292 Missing: 285 +gu.js Found: 575 Missing: 2 +he.js Found: 575 Missing: 2 +hi.js Found: 327 Missing: 250 +hr.js Found: 575 Missing: 2 +hu.js Found: 572 Missing: 5 +id.js Found: 1 Missing: 576 +is.js Found: 326 Missing: 251 +it.js Found: 577 Missing: 0 +ja.js Found: 493 Missing: 84 +ka.js Found: 568 Missing: 9 +km.js Found: 286 Missing: 291 +ko.js Found: 304 Missing: 273 +lt.js Found: 575 Missing: 2 +lv.js Found: 294 Missing: 283 +mk.js Found: 0 Missing: 577 +mn.js Found: 320 Missing: 257 +ms.js Found: 276 Missing: 301 +nb.js Found: 577 Missing: 0 +nl.js Found: 575 Missing: 2 +no.js Found: 577 Missing: 0 +pl.js Found: 575 Missing: 2 +pt-br.js Found: 577 Missing: 0 +pt.js Found: 326 Missing: 251 +ro.js Found: 432 Missing: 145 +ru.js Found: 575 Missing: 2 +sk.js Found: 364 Missing: 213 +sl.js Found: 426 Missing: 151 +sr-latn.js Found: 287 Missing: 290 +sr.js Found: 286 Missing: 291 +sv.js Found: 550 Missing: 27 +th.js Found: 298 Missing: 279 +tr.js Found: 575 Missing: 2 +ug.js Found: 572 Missing: 5 +uk.js Found: 575 Missing: 2 +vi.js Found: 577 Missing: 0 +zh-cn.js Found: 577 Missing: 0 +zh.js Found: 433 Missing: 144 diff --git a/htdocs/includes/ckeditor/plugins/a11yhelp/lang/_translationstatus.txt b/htdocs/includes/ckeditor/plugins/a11yhelp/lang/_translationstatus.txt index 7a490f98eca..e9545d22557 100644 --- a/htdocs/includes/ckeditor/plugins/a11yhelp/lang/_translationstatus.txt +++ b/htdocs/includes/ckeditor/plugins/a11yhelp/lang/_translationstatus.txt @@ -1,25 +1,25 @@ -Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. -For licensing, see LICENSE.html or http://ckeditor.com/license - -cs.js Found: 30 Missing: 0 -cy.js Found: 30 Missing: 0 -da.js Found: 12 Missing: 18 -de.js Found: 30 Missing: 0 -el.js Found: 25 Missing: 5 -eo.js Found: 30 Missing: 0 -fa.js Found: 30 Missing: 0 -fi.js Found: 30 Missing: 0 -fr.js Found: 30 Missing: 0 -gu.js Found: 12 Missing: 18 -he.js Found: 30 Missing: 0 -it.js Found: 30 Missing: 0 -mk.js Found: 5 Missing: 25 -nb.js Found: 30 Missing: 0 -nl.js Found: 30 Missing: 0 -no.js Found: 30 Missing: 0 -pt-br.js Found: 30 Missing: 0 -ro.js Found: 6 Missing: 24 -tr.js Found: 30 Missing: 0 -ug.js Found: 27 Missing: 3 -vi.js Found: 6 Missing: 24 -zh-cn.js Found: 30 Missing: 0 +Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.html or http://ckeditor.com/license + +cs.js Found: 30 Missing: 0 +cy.js Found: 30 Missing: 0 +da.js Found: 12 Missing: 18 +de.js Found: 30 Missing: 0 +el.js Found: 25 Missing: 5 +eo.js Found: 30 Missing: 0 +fa.js Found: 30 Missing: 0 +fi.js Found: 30 Missing: 0 +fr.js Found: 30 Missing: 0 +gu.js Found: 12 Missing: 18 +he.js Found: 30 Missing: 0 +it.js Found: 30 Missing: 0 +mk.js Found: 5 Missing: 25 +nb.js Found: 30 Missing: 0 +nl.js Found: 30 Missing: 0 +no.js Found: 30 Missing: 0 +pt-br.js Found: 30 Missing: 0 +ro.js Found: 6 Missing: 24 +tr.js Found: 30 Missing: 0 +ug.js Found: 27 Missing: 3 +vi.js Found: 6 Missing: 24 +zh-cn.js Found: 30 Missing: 0 diff --git a/htdocs/includes/ckeditor/plugins/devtools/lang/_translationstatus.txt b/htdocs/includes/ckeditor/plugins/devtools/lang/_translationstatus.txt index abb983211d1..682d1d2d99c 100644 --- a/htdocs/includes/ckeditor/plugins/devtools/lang/_translationstatus.txt +++ b/htdocs/includes/ckeditor/plugins/devtools/lang/_translationstatus.txt @@ -1,28 +1,28 @@ -Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. -For licensing, see LICENSE.html or http://ckeditor.com/license - -bg.js Found: 5 Missing: 0 -cs.js Found: 5 Missing: 0 -cy.js Found: 5 Missing: 0 -da.js Found: 5 Missing: 0 -de.js Found: 5 Missing: 0 -el.js Found: 5 Missing: 0 -eo.js Found: 5 Missing: 0 -et.js Found: 5 Missing: 0 -fa.js Found: 5 Missing: 0 -fi.js Found: 5 Missing: 0 -fr.js Found: 5 Missing: 0 -gu.js Found: 5 Missing: 0 -he.js Found: 5 Missing: 0 -hr.js Found: 5 Missing: 0 -it.js Found: 5 Missing: 0 -nb.js Found: 5 Missing: 0 -nl.js Found: 5 Missing: 0 -no.js Found: 5 Missing: 0 -pl.js Found: 5 Missing: 0 -pt-br.js Found: 5 Missing: 0 -tr.js Found: 5 Missing: 0 -ug.js Found: 5 Missing: 0 -uk.js Found: 5 Missing: 0 -vi.js Found: 5 Missing: 0 -zh-cn.js Found: 5 Missing: 0 +Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.html or http://ckeditor.com/license + +bg.js Found: 5 Missing: 0 +cs.js Found: 5 Missing: 0 +cy.js Found: 5 Missing: 0 +da.js Found: 5 Missing: 0 +de.js Found: 5 Missing: 0 +el.js Found: 5 Missing: 0 +eo.js Found: 5 Missing: 0 +et.js Found: 5 Missing: 0 +fa.js Found: 5 Missing: 0 +fi.js Found: 5 Missing: 0 +fr.js Found: 5 Missing: 0 +gu.js Found: 5 Missing: 0 +he.js Found: 5 Missing: 0 +hr.js Found: 5 Missing: 0 +it.js Found: 5 Missing: 0 +nb.js Found: 5 Missing: 0 +nl.js Found: 5 Missing: 0 +no.js Found: 5 Missing: 0 +pl.js Found: 5 Missing: 0 +pt-br.js Found: 5 Missing: 0 +tr.js Found: 5 Missing: 0 +ug.js Found: 5 Missing: 0 +uk.js Found: 5 Missing: 0 +vi.js Found: 5 Missing: 0 +zh-cn.js Found: 5 Missing: 0 diff --git a/htdocs/includes/ckeditor/plugins/placeholder/lang/_translationstatus.txt b/htdocs/includes/ckeditor/plugins/placeholder/lang/_translationstatus.txt index 0485f8e8b00..c497d1f0aa3 100644 --- a/htdocs/includes/ckeditor/plugins/placeholder/lang/_translationstatus.txt +++ b/htdocs/includes/ckeditor/plugins/placeholder/lang/_translationstatus.txt @@ -1,27 +1,27 @@ -Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. -For licensing, see LICENSE.html or http://ckeditor.com/license - -bg.js Found: 5 Missing: 0 -cs.js Found: 5 Missing: 0 -cy.js Found: 5 Missing: 0 -da.js Found: 5 Missing: 0 -de.js Found: 5 Missing: 0 -el.js Found: 5 Missing: 0 -eo.js Found: 5 Missing: 0 -et.js Found: 5 Missing: 0 -fa.js Found: 5 Missing: 0 -fi.js Found: 5 Missing: 0 -fr.js Found: 5 Missing: 0 -he.js Found: 5 Missing: 0 -hr.js Found: 5 Missing: 0 -it.js Found: 5 Missing: 0 -nb.js Found: 5 Missing: 0 -nl.js Found: 5 Missing: 0 -no.js Found: 5 Missing: 0 -pl.js Found: 5 Missing: 0 -pt-br.js Found: 5 Missing: 0 -tr.js Found: 5 Missing: 0 -ug.js Found: 5 Missing: 0 -uk.js Found: 5 Missing: 0 -vi.js Found: 4 Missing: 1 -zh-cn.js Found: 5 Missing: 0 +Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.html or http://ckeditor.com/license + +bg.js Found: 5 Missing: 0 +cs.js Found: 5 Missing: 0 +cy.js Found: 5 Missing: 0 +da.js Found: 5 Missing: 0 +de.js Found: 5 Missing: 0 +el.js Found: 5 Missing: 0 +eo.js Found: 5 Missing: 0 +et.js Found: 5 Missing: 0 +fa.js Found: 5 Missing: 0 +fi.js Found: 5 Missing: 0 +fr.js Found: 5 Missing: 0 +he.js Found: 5 Missing: 0 +hr.js Found: 5 Missing: 0 +it.js Found: 5 Missing: 0 +nb.js Found: 5 Missing: 0 +nl.js Found: 5 Missing: 0 +no.js Found: 5 Missing: 0 +pl.js Found: 5 Missing: 0 +pt-br.js Found: 5 Missing: 0 +tr.js Found: 5 Missing: 0 +ug.js Found: 5 Missing: 0 +uk.js Found: 5 Missing: 0 +vi.js Found: 4 Missing: 1 +zh-cn.js Found: 5 Missing: 0 diff --git a/htdocs/includes/ckeditor/plugins/specialchar/lang/_translationstatus.txt b/htdocs/includes/ckeditor/plugins/specialchar/lang/_translationstatus.txt index 82369b2e699..23df604c8f4 100644 --- a/htdocs/includes/ckeditor/plugins/specialchar/lang/_translationstatus.txt +++ b/htdocs/includes/ckeditor/plugins/specialchar/lang/_translationstatus.txt @@ -1,22 +1,22 @@ -Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. -For licensing, see LICENSE.html or http://ckeditor.com/license - -cs.js Found: 118 Missing: 0 -cy.js Found: 118 Missing: 0 -de.js Found: 118 Missing: 0 -el.js Found: 16 Missing: 102 -eo.js Found: 118 Missing: 0 -et.js Found: 31 Missing: 87 -fa.js Found: 24 Missing: 94 -fi.js Found: 23 Missing: 95 -fr.js Found: 118 Missing: 0 -he.js Found: 1 Missing: 117 -hr.js Found: 23 Missing: 95 -it.js Found: 118 Missing: 0 -nb.js Found: 118 Missing: 0 -nl.js Found: 118 Missing: 0 -no.js Found: 118 Missing: 0 -pt-br.js Found: 118 Missing: 0 -tr.js Found: 118 Missing: 0 -ug.js Found: 39 Missing: 79 -zh-cn.js Found: 118 Missing: 0 +Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.html or http://ckeditor.com/license + +cs.js Found: 118 Missing: 0 +cy.js Found: 118 Missing: 0 +de.js Found: 118 Missing: 0 +el.js Found: 16 Missing: 102 +eo.js Found: 118 Missing: 0 +et.js Found: 31 Missing: 87 +fa.js Found: 24 Missing: 94 +fi.js Found: 23 Missing: 95 +fr.js Found: 118 Missing: 0 +he.js Found: 1 Missing: 117 +hr.js Found: 23 Missing: 95 +it.js Found: 118 Missing: 0 +nb.js Found: 118 Missing: 0 +nl.js Found: 118 Missing: 0 +no.js Found: 118 Missing: 0 +pt-br.js Found: 118 Missing: 0 +tr.js Found: 118 Missing: 0 +ug.js Found: 39 Missing: 79 +zh-cn.js Found: 118 Missing: 0 diff --git a/htdocs/includes/ckeditor/plugins/uicolor/lang/_translationstatus.txt b/htdocs/includes/ckeditor/plugins/uicolor/lang/_translationstatus.txt index f268477ea6b..74b55c7cc74 100644 --- a/htdocs/includes/ckeditor/plugins/uicolor/lang/_translationstatus.txt +++ b/htdocs/includes/ckeditor/plugins/uicolor/lang/_translationstatus.txt @@ -1,28 +1,28 @@ -Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. -For licensing, see LICENSE.html or http://ckeditor.com/license - -bg.js Found: 4 Missing: 0 -cs.js Found: 4 Missing: 0 -cy.js Found: 4 Missing: 0 -da.js Found: 4 Missing: 0 -de.js Found: 4 Missing: 0 -el.js Found: 4 Missing: 0 -eo.js Found: 4 Missing: 0 -et.js Found: 4 Missing: 0 -fa.js Found: 4 Missing: 0 -fi.js Found: 4 Missing: 0 -fr.js Found: 4 Missing: 0 -he.js Found: 4 Missing: 0 -hr.js Found: 4 Missing: 0 -it.js Found: 4 Missing: 0 -mk.js Found: 4 Missing: 0 -nb.js Found: 4 Missing: 0 -nl.js Found: 4 Missing: 0 -no.js Found: 4 Missing: 0 -pl.js Found: 4 Missing: 0 -pt-br.js Found: 4 Missing: 0 -tr.js Found: 4 Missing: 0 -ug.js Found: 4 Missing: 0 -uk.js Found: 4 Missing: 0 -vi.js Found: 4 Missing: 0 -zh-cn.js Found: 4 Missing: 0 +Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.html or http://ckeditor.com/license + +bg.js Found: 4 Missing: 0 +cs.js Found: 4 Missing: 0 +cy.js Found: 4 Missing: 0 +da.js Found: 4 Missing: 0 +de.js Found: 4 Missing: 0 +el.js Found: 4 Missing: 0 +eo.js Found: 4 Missing: 0 +et.js Found: 4 Missing: 0 +fa.js Found: 4 Missing: 0 +fi.js Found: 4 Missing: 0 +fr.js Found: 4 Missing: 0 +he.js Found: 4 Missing: 0 +hr.js Found: 4 Missing: 0 +it.js Found: 4 Missing: 0 +mk.js Found: 4 Missing: 0 +nb.js Found: 4 Missing: 0 +nl.js Found: 4 Missing: 0 +no.js Found: 4 Missing: 0 +pl.js Found: 4 Missing: 0 +pt-br.js Found: 4 Missing: 0 +tr.js Found: 4 Missing: 0 +ug.js Found: 4 Missing: 0 +uk.js Found: 4 Missing: 0 +vi.js Found: 4 Missing: 0 +zh-cn.js Found: 4 Missing: 0 diff --git a/htdocs/includes/fpdfi/README.txt b/htdocs/includes/fpdfi/README.txt index dc09ef070ca..c36c83b25be 100755 --- a/htdocs/includes/fpdfi/README.txt +++ b/htdocs/includes/fpdfi/README.txt @@ -1,4 +1,4 @@ -This directory contains all FPDFI librairies: -- FPDI -- FPDI_TPL -Found on http://www.setasign.de/products/pdf-php-solutions/fpdi/ +This directory contains all FPDFI librairies: +- FPDI +- FPDI_TPL +Found on http://www.setasign.de/products/pdf-php-solutions/fpdi/ diff --git a/htdocs/includes/geoip/geoipcity.inc b/htdocs/includes/geoip/geoipcity.inc index 0e7f40e72e0..160757187c3 100644 --- a/htdocs/includes/geoip/geoipcity.inc +++ b/htdocs/includes/geoip/geoipcity.inc @@ -1,208 +1,208 @@ -country_code = $value; - } - if ($key == "ci"){ - $record->city = $value; - } - if ($key == "re"){ - $record->region = $value; - } - if ($key == "ac"){ - $record->areacode = $value; - } - if ($key == "dm" || $key == "me" ){ - $record->dmacode = $value; - $record->metrocode = $value; - } - if ($key == "is"){ - $record->isp = $value; - } - if ($key == "or"){ - $record->org = $value; - } - if ($key == "zi"){ - $record->postal_code = $value; - } - if ($key == "la"){ - $record->latitude = $value; - } - if ($key == "lo"){ - $record->longitude = $value; - } - } - $number = $GLOBALS['GEOIP_COUNTRY_CODE_TO_NUMBER'][$record->country_code]; - $record->country_code3 = $GLOBALS['GEOIP_COUNTRY_CODES3'][$number]; - $record->country_name = $GLOBALS['GEOIP_COUNTRY_NAMES'][$number]; - if ($record->region != "") { - if (($record->country_code == "US") || ($record->country_code == "CA")){ - $record->regionname = $GLOBALS['ISO'][$record->country_code][$record->region]; - } else { - $record->regionname = $GLOBALS['FIPS'][$record->country_code][$record->region]; - } - } - return $record; -} - -function _get_record($gi,$ipnum){ - $seek_country = _geoip_seek_country($gi,$ipnum); - if ($seek_country == $gi->databaseSegments) { - return NULL; - } - $record_pointer = $seek_country + (2 * $gi->record_length - 1) * $gi->databaseSegments; - - if ($gi->flags & GEOIP_MEMORY_CACHE) { - $record_buf = substr($gi->memory_buffer,$record_pointer,FULL_RECORD_LENGTH); - } elseif ($gi->flags & GEOIP_SHARED_MEMORY){ - $record_buf = @shmop_read($gi->shmid,$record_pointer,FULL_RECORD_LENGTH); - } else { - fseek($gi->filehandle, $record_pointer, SEEK_SET); - $record_buf = fread($gi->filehandle,FULL_RECORD_LENGTH); - } - $record = new geoiprecord; - $record_buf_pos = 0; - $char = ord(substr($record_buf,$record_buf_pos,1)); - $record->country_code = $gi->GEOIP_COUNTRY_CODES[$char]; - $record->country_code3 = $gi->GEOIP_COUNTRY_CODES3[$char]; - $record->country_name = $gi->GEOIP_COUNTRY_NAMES[$char]; - $record_buf_pos++; - $str_length = 0; - // Get region - $char = ord(substr($record_buf,$record_buf_pos+$str_length,1)); - while ($char != 0){ - $str_length++; - $char = ord(substr($record_buf,$record_buf_pos+$str_length,1)); - } - if ($str_length > 0){ - $record->region = substr($record_buf,$record_buf_pos,$str_length); - } - $record_buf_pos += $str_length + 1; - $str_length = 0; - // Get city - $char = ord(substr($record_buf,$record_buf_pos+$str_length,1)); - while ($char != 0){ - $str_length++; - $char = ord(substr($record_buf,$record_buf_pos+$str_length,1)); - } - if ($str_length > 0){ - $record->city = substr($record_buf,$record_buf_pos,$str_length); - } - $record_buf_pos += $str_length + 1; - $str_length = 0; - // Get postal code - $char = ord(substr($record_buf,$record_buf_pos+$str_length,1)); - while ($char != 0){ - $str_length++; - $char = ord(substr($record_buf,$record_buf_pos+$str_length,1)); - } - if ($str_length > 0){ - $record->postal_code = substr($record_buf,$record_buf_pos,$str_length); - } - $record_buf_pos += $str_length + 1; - $str_length = 0; - // Get latitude and longitude - $latitude = 0; - $longitude = 0; - for ($j = 0;$j < 3; ++$j){ - $char = ord(substr($record_buf,$record_buf_pos++,1)); - $latitude += ($char << ($j * 8)); - } - $record->latitude = ($latitude/10000) - 180; - for ($j = 0;$j < 3; ++$j){ - $char = ord(substr($record_buf,$record_buf_pos++,1)); - $longitude += ($char << ($j * 8)); - } - $record->longitude = ($longitude/10000) - 180; - if (GEOIP_CITY_EDITION_REV1 == $gi->databaseType){ - $metroarea_combo = 0; - if ($record->country_code == "US"){ - for ($j = 0;$j < 3;++$j){ - $char = ord(substr($record_buf,$record_buf_pos++,1)); - $metroarea_combo += ($char << ($j * 8)); - } - $record->metro_code = $record->dma_code = floor($metroarea_combo/1000); - $record->area_code = $metroarea_combo%1000; - } - } - return $record; -} - -function GeoIP_record_by_addr ($gi,$addr){ - if ($addr == NULL){ - return 0; - } - $ipnum = ip2long($addr); - return _get_record($gi, $ipnum); -} - -?> +country_code = $value; + } + if ($key == "ci"){ + $record->city = $value; + } + if ($key == "re"){ + $record->region = $value; + } + if ($key == "ac"){ + $record->areacode = $value; + } + if ($key == "dm" || $key == "me" ){ + $record->dmacode = $value; + $record->metrocode = $value; + } + if ($key == "is"){ + $record->isp = $value; + } + if ($key == "or"){ + $record->org = $value; + } + if ($key == "zi"){ + $record->postal_code = $value; + } + if ($key == "la"){ + $record->latitude = $value; + } + if ($key == "lo"){ + $record->longitude = $value; + } + } + $number = $GLOBALS['GEOIP_COUNTRY_CODE_TO_NUMBER'][$record->country_code]; + $record->country_code3 = $GLOBALS['GEOIP_COUNTRY_CODES3'][$number]; + $record->country_name = $GLOBALS['GEOIP_COUNTRY_NAMES'][$number]; + if ($record->region != "") { + if (($record->country_code == "US") || ($record->country_code == "CA")){ + $record->regionname = $GLOBALS['ISO'][$record->country_code][$record->region]; + } else { + $record->regionname = $GLOBALS['FIPS'][$record->country_code][$record->region]; + } + } + return $record; +} + +function _get_record($gi,$ipnum){ + $seek_country = _geoip_seek_country($gi,$ipnum); + if ($seek_country == $gi->databaseSegments) { + return NULL; + } + $record_pointer = $seek_country + (2 * $gi->record_length - 1) * $gi->databaseSegments; + + if ($gi->flags & GEOIP_MEMORY_CACHE) { + $record_buf = substr($gi->memory_buffer,$record_pointer,FULL_RECORD_LENGTH); + } elseif ($gi->flags & GEOIP_SHARED_MEMORY){ + $record_buf = @shmop_read($gi->shmid,$record_pointer,FULL_RECORD_LENGTH); + } else { + fseek($gi->filehandle, $record_pointer, SEEK_SET); + $record_buf = fread($gi->filehandle,FULL_RECORD_LENGTH); + } + $record = new geoiprecord; + $record_buf_pos = 0; + $char = ord(substr($record_buf,$record_buf_pos,1)); + $record->country_code = $gi->GEOIP_COUNTRY_CODES[$char]; + $record->country_code3 = $gi->GEOIP_COUNTRY_CODES3[$char]; + $record->country_name = $gi->GEOIP_COUNTRY_NAMES[$char]; + $record_buf_pos++; + $str_length = 0; + // Get region + $char = ord(substr($record_buf,$record_buf_pos+$str_length,1)); + while ($char != 0){ + $str_length++; + $char = ord(substr($record_buf,$record_buf_pos+$str_length,1)); + } + if ($str_length > 0){ + $record->region = substr($record_buf,$record_buf_pos,$str_length); + } + $record_buf_pos += $str_length + 1; + $str_length = 0; + // Get city + $char = ord(substr($record_buf,$record_buf_pos+$str_length,1)); + while ($char != 0){ + $str_length++; + $char = ord(substr($record_buf,$record_buf_pos+$str_length,1)); + } + if ($str_length > 0){ + $record->city = substr($record_buf,$record_buf_pos,$str_length); + } + $record_buf_pos += $str_length + 1; + $str_length = 0; + // Get postal code + $char = ord(substr($record_buf,$record_buf_pos+$str_length,1)); + while ($char != 0){ + $str_length++; + $char = ord(substr($record_buf,$record_buf_pos+$str_length,1)); + } + if ($str_length > 0){ + $record->postal_code = substr($record_buf,$record_buf_pos,$str_length); + } + $record_buf_pos += $str_length + 1; + $str_length = 0; + // Get latitude and longitude + $latitude = 0; + $longitude = 0; + for ($j = 0;$j < 3; ++$j){ + $char = ord(substr($record_buf,$record_buf_pos++,1)); + $latitude += ($char << ($j * 8)); + } + $record->latitude = ($latitude/10000) - 180; + for ($j = 0;$j < 3; ++$j){ + $char = ord(substr($record_buf,$record_buf_pos++,1)); + $longitude += ($char << ($j * 8)); + } + $record->longitude = ($longitude/10000) - 180; + if (GEOIP_CITY_EDITION_REV1 == $gi->databaseType){ + $metroarea_combo = 0; + if ($record->country_code == "US"){ + for ($j = 0;$j < 3;++$j){ + $char = ord(substr($record_buf,$record_buf_pos++,1)); + $metroarea_combo += ($char << ($j * 8)); + } + $record->metro_code = $record->dma_code = floor($metroarea_combo/1000); + $record->area_code = $metroarea_combo%1000; + } + } + return $record; +} + +function GeoIP_record_by_addr ($gi,$addr){ + if ($addr == NULL){ + return 0; + } + $ipnum = ip2long($addr); + return _get_record($gi, $ipnum); +} + +?> diff --git a/htdocs/includes/jquery/plugins/jpicker/ReadMe.txt b/htdocs/includes/jquery/plugins/jpicker/ReadMe.txt index 8dd55b76eec..c76be424026 100755 --- a/htdocs/includes/jquery/plugins/jpicker/ReadMe.txt +++ b/htdocs/includes/jquery/plugins/jpicker/ReadMe.txt @@ -12,17 +12,17 @@ John Dyers' website: (http://johndyer.name) Color Picker page: (http://johndyer.name/post/2007/09/PhotoShop-like-JavaScript-Color-Picker.aspx) - jPicker is a fast, lightweight jQuery plugin for including an advanced color picker in your web projects. -It has been painstakenly ported from John Dyers' awesome work on his picker using the Prototype framework. - - jPicker supports all current browsers and has been extensively tested in Chrome, Firefox, IE5.5+, Safari, -and Opera. - - If you are updating a current version, you MUST always use the CSS and image files from the download as -there may have been changes. - - If you are moving from a V1.0.* version, you MUST read the docs below to implement some changes to the -Color object returned by the callback functions. + jPicker is a fast, lightweight jQuery plugin for including an advanced color picker in your web projects. +It has been painstakenly ported from John Dyers' awesome work on his picker using the Prototype framework. + + jPicker supports all current browsers and has been extensively tested in Chrome, Firefox, IE5.5+, Safari, +and Opera. + + If you are updating a current version, you MUST always use the CSS and image files from the download as +there may have been changes. + + If you are moving from a V1.0.* version, you MUST read the docs below to implement some changes to the +Color object returned by the callback functions. Known Issues diff --git a/htdocs/includes/nusoap/lib/Mail/xmail.dtd b/htdocs/includes/nusoap/lib/Mail/xmail.dtd index 9779796167e..9f42ca8b331 100755 --- a/htdocs/includes/nusoap/lib/Mail/xmail.dtd +++ b/htdocs/includes/nusoap/lib/Mail/xmail.dtd @@ -1,19 +1,19 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + diff --git a/htdocs/includes/nusoap/lib/Mail/xmail.xsl b/htdocs/includes/nusoap/lib/Mail/xmail.xsl index 0e4ffe680de..0b948913f84 100755 --- a/htdocs/includes/nusoap/lib/Mail/xmail.xsl +++ b/htdocs/includes/nusoap/lib/Mail/xmail.xsl @@ -1,70 +1,70 @@ - - - - - - - - - - - - - - - - - - - - - - - : - - - - - - - - ; - - =" - - " - - - - - - - - - - - - - - - - - - - - -- - - - - ---- - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + : + + + + + + + + ; + + =" + + " + + + + + + + + + + + + + + + + + + + + -- + + + + ---- + + + + + + + + + + \ No newline at end of file diff --git a/htdocs/includes/nusoap/lib/changelog b/htdocs/includes/nusoap/lib/changelog index a9daba74443..b76580e2d18 100644 --- a/htdocs/includes/nusoap/lib/changelog +++ b/htdocs/includes/nusoap/lib/changelog @@ -1,648 +1,648 @@ -2003-07-21, version 0.6.5 -- soap_transport_http: SOAPAction header is quoted again, fixes problem w/ Weblogic Server -- applied Jason Levitt patch for proper array serialization, fixes problem w/ Amazon shopping cart services -- fixed null value serialization -- applied patch from "BZC ToOn'S" - fixes wsdl serialization when no parameters -- applied John's patch, implementing compression for the server - -2003-07-22, version 0.6.5 -- soap_server: fixed bug causing charset encoding not to be passed to the parser -- soap_fault: added default encoding to the fault serialization -- soap_parser: changed the parser to pre-load the parent's result array when processing scalar values. This increases parsing speed. - -2003-07-23, version 0.6.5 -- soap_base: fix code that overwrites user-supplied attributes in serialize_val -- soap_base: use arrays-of-arrays rather than attempting multi-dimensional in serialize_val -- xmlschema: emit import statements and qualify all elements with prefix in serializeSchema (better interop with validation tools) -- soapclient: get xml character encoding from HTTP Content-Type header if provided, e.g. text/xml;charset="UTF-8" -- soapclient: use headers in call if provided (previously ignored this parameter) -- soap_server: in parse_request, if neither getallheaders nor $_SERVER are available, use $HTTP_SERVER_VARS to get SOAPAction and xml encoding - -2003-07-24, version 0.6.5 -- soap_transport_http: apply patch from Steven Brown "if the server closes connection prematurely, nusoap would spin trying to read data that isn't there" - -2003-07-25, version 0.6.5 -- wsdl: apply patch from Sven to workaround single schema limitation -- wsdl: apply a variant of the patch from Holger to handle empty values for array by serializing an array with 0 elements -- xmlschema: remove the redundant default namespace attribute on the schema element; everything in xsd is explicitly specified as being from xsd -- soap_transport_http: fix setCredentials and add TODO comments in sendHTTPS about what to change if this setCredentials stays - -2003-07-30, version 0.6.5 -- nusoap_base: change documentation of soap_defencoding to specify it is the encoding for outgoing messages -- nusoap_base: only change &, <, > to entities, not all HTML entities -- soap_transport_http: update the Content-Type header in sendRequest, since soap_defencoding could be changed after ctor is called -- soap_server: use soap_defencoding instead of charset_encoding -- soap_server: read encoding from _SERVER if available -- nusoap_base: do entity translation for string parameters with an xsd type specified (thanks David Derr) - -2003-07-31, version 0.6.5 -- soap_transport_http: add proxy authentication -- soap_transport_http: build payload the same way for http and https -- wsdl: add proxy authentication -- soapclient: add proxy authentication -- soapclient: allow proxy information in ctor, so that it can be used for wsdl - -2003-08-01, version 0.6.5 -- soap_transport_http: close a persistent connection that's at EOF -- soap_transport_http: prevent conflicts between setEncoding and usePersistentConnection -- soap_transport_http: fix use of $headers instead of $this->incoming_headers in getResponse -- soapclient: improve handling of persistent connections -- soapclient: force xml_encoding to upper case -- soap_server: let the Web server decide whether to close the connection (no Connection: close header) -- soap_server: force xml_encoding to upper case - -2003-08-04, version 0.6.5 -- soap_parser: use XML type information to pick a PHP data type; also decode base64 -- soap_server: read all HTTP headers when using _SERVER or HTTP_SERVER_VARS -- soap_server: add gzip encoding support for outgoing messages -- soap_transport_http: deflate is gzcompress/gzuncompress (cf. http://archive.develooper.com/libwww@perl.org/msg04650.html) -- soap_transport_http: clean use of persistentConnection so it's always a set boolean -- soapclient: add responseData member to access deflated/gunzipped payload - -2003-08-05, version 0.6.5 -- soap_server: look multiple places when setting debug_flag - -2003-08-07, version 0.6.5 -- nusoap_base: serialize specified type (e.g. ArrayOfString) even for simple array -- wsdl: only specify encodingStyle in the input/output soap bindings when it is not empty (thanks Guillaume) - -2003-08-15, version 0.6.5 -- soap_parser: fix parsing of elements with no XSD type specified -- soap_parser: use PHP string type for XSD long and unsignedLong types - -2003-08-16, version 0.6.5 -- soap_parser: fix code generating warning (thanks Torsten) - -2003-08-19, version 0.6.5 -- soap_parser: fix another line of code generating a warning (thanks Torsten) - -2003-08-22, version 0.6.5 -- soap_server: remove all '--' from debug_str; previous code changed '---' to '- --' -- wsdl, soapclient, soap_parser: patch submitted by Mark Spavin as described by - the following... -> Changes for the multiple/nested imports from the wsdl file. This builds an -> array of files not just the last one and also checks for relative paths to -> the parent. This will then get the imported files from the remote site -> instead of your local disk. Local wsdl files should still work (untested). -> -> Changes for multiple encoding sytles as previously posted - -2003-08-24, version 0.6.5 -- wsdl, soapclient: fix some PHP notices from previous update - -2003-08-26, version 0.6.5 -- wsdl: support multiple SOAP ports -- soapclient, soap_server: when no charset is specified, use UTF-8, even though HTTP specifies US-ASCII. -- soap_transport_http: do not prepend $host with 'ssl://' for https (is this required for older cURL versions?) - -2003-08-27, version 0.6.5 -- soap_server: support compressed request messages (thanks John Huong) -- soap_parser: deserialize Apache Vector as an array -- xmlschema: use $this->typemap in getPHPType (which is not used) -- soapclient, wsdl: check for WSDL errors after serializing parameters -- nusoap_base: add serialization of Apache Map (when not using WSDL) -- wsdl: add serialization of Apache Map (when using WSDL) -- wsdl: only change &, <, > to entities, not all HTML entities - -2003-08-28, version 0.6.5 -- soap_transport_http: disable cURL verification of peer and server (formerly the cURL default) -- soap_transport_http: mingle cURL code with straight http, so sendHTTP is no longer needed - -2003-08-29, version 0.6.6 -- soap_transport_http: add setContentType -- soapclient: call setContentType using new getHTTPContentType and getHTTPContentTypeCharset - -2003-09-05, version 0.6.6 -- wsdl: add some more code to handle null/nil values (but there's still a way to go) - -2003-10-21, version 0.6.6 -- soap_transport_http: only include port in Host header if it was specified in the URL -- soap_transport_http: add some code to use OpenSSL for PHP ssl:// scheme, but comment out since it's not ready -- soap_server: use $_SERVER['PHP_SELF'] if $GLOBALS['PHP_SELF'] is not set -- wsdl: add WSDL request and response and transport debug to debug -- wsdl: handle custom type extending xmlschema namespace (GLUE ... Thanks Matt) -- soap_parser: add param to docs -- soapclient: add getHTTPBody, getHTTPContentType, getHTTPContentTypeCharset (anticipating MIME subclass) - -2003-10-28, version 0.6.6 -- nusoap_base: add expandEntities method -- wsdl: use expandEntities -- soap_fault: use expandEntities -- soap_transport_http: Allow credentials to be included in URL, rather than requiring setCredentials -- soap_transport_http: Merge HTTP headers that span multiple lines -- soap_parser: Properly set errors in ctor -- soapclient: Pass headers to parseResponse and parse them in that method - -2003-10-30, version 0.6.6 -- xmlschema: Add some information for the related type to an element - -2003-12-09, version 0.6.6 -- nusoap_base: Add some namespace methods previously in xmlschema -- xmlschema: Improve parsing of complexType, element and simpleType -- xmlschema: Improve serialization -- xmlschema: Track imports -- xmlschema: Track elementFormDefault and form attributes -- wsdl: Support multiple (note that setting $server->wsdl->schemaTargetNamespace no longer does anything! Use configureWSDL instead.) -- wsdl: Use form attribute of element to control namespace specification -- wsdl: Support chained imports (A imports B which imports C) -- wsdl: Include port in endpoint address when serializing -- soap_server: Fix use of style (rpc|document) and use (encoded|literal) -- soap_server: Support _SERVER[CONTENT_TYPE] in addition to _SERVER[HTTP_CONTENT_TYPE] -- soap_server: Support wsdl with multiple -- soap_client: Remove a var_dump -- soap_client: Add style and use parameters to call method to support doc/lit without WSDL -- soap_transport_http: Check that $this->fp exists when doing persistent connections - -2003-12-17, version 0.6.6 -- soap_server: pass namespaces to xmlschema constructor -- wsdl: post-process after all imports -- wsdl: remove some debug, add some error handling -- xmlschema: allow enclosing namespaces to be specified in constructor -- xmlschema: improve handling of compositors and simple types - -2004-01-08, version 0.6.6 -- soap_server: when requested WSDL is in a file, return to client using passthru (thanks Ingo Fischer) -- soapclient: have proxy inherit more client state -- soapclient: allow timeout and response timeout to be specified in the constructor -- wsdl: allow timeout and response timeout to be specified in the constructor -- soap_transport_http: allow response timeout to be specified in send and sendHTTPS - -2004-01-28, version 0.6.6 -- wsdl: add namespace for array and scalar when form is qualified -- wsdl: fix a bug in which data type of complexType elements were ignored in serialization -- wsdl: enhance handling of URLs with file scheme -- wsdl: add addSimpleType -- xmlschema: add addSimpleType -- xmlschema: always set phpType elements -- soapclient: allow a wsdl instance to be specified in constructor -- soap_server: allow a wsdl instance to be specified in constructor (not tested!) -- soap_server: fix default SOAPAction created in register method -- soap_transport_http: accept chunking with LF separators in addition to CRLF. -- wsdlcache: added class -- nusoapmime: fix comments - -2004-02-23, version 0.6.6 -- soap_transport_http: don't try to unchunk cURL data, since cURL already does it -- soap_transport_http: append CVS revision to version in User-Agent -- wsdl: serialize boolean as true|false, not 1|0, to agree with XML Schema -- soap_server: always exit() after returning WSDL -- soap_server: use the WSDL URL scheme as the default endpoint URL scheme -- soap_server: append CVS revision to version in X-SOAP-Server -- nusoap_base: add (CVS) revision -- wsdlcache: synchronize using a per-WSDL lock file (Thanks Ingo) -- wsdlcache: add cache lifetime, after which cache contents are invalidated (Thanks Ingo) - -2004-03-15, version 0.6.6 -- nusoap_base: add isArraySimpleOrStruct method -- soap_server: improve WSDL URL scheme determination -- soap_server: only deflate/gzip payloads > 1024 bytes -- soap_server: fix parameter order in fault method (always used as faultcode, faultstring) -- soap_server: refactor parse_request into multiple functions (for sanity) -- soap_server: set the namespace on the Response element to the same as the request -- soap_server: name the return value element 'return' by default -- soap_server: added and documented data fields, so that service programmers can use them if desired -- soap_parser: standardize parsing error message -- soap_parser: fix document and responseHeaders so they are the correct XML text (as documented) -- soap_transport_http: fix read from persistent connection -- soapclient: clean up debugging for persistent connection -- wsdl: enforce correct naming of messages parts when an associative array is used for parameters -- wsdl: better serialization of null values -- wsdl: standardize parsing error message -- xmlschema: standardize parsing error message - -2004-03-24, version 0.6.7 -- soap_transport_http: add digest authentication (based on code by Kevin A. Miller) -- xmlschema: improve parsing of import elements -- wsdl: do schema imports even if there are no wsdl imports - -2004-04-12, version 0.6.7 -- wsdl: serialize multiple elements when maxOccurs="unbounded" and value is an array -- wsdl: serialize soapval values (used to force an XML type, e.g. when WSDL uses an abstract type) -- nusoapmime: do not require nusoap.php (it is now the programmer's responsibility) - -2004-04-21, version 0.6.7 -- soap_parser: parse repeated element name into an array (de-serializes doc/lit array into a PHP array when there is more than 1 array element) -- soap_server: do not wrap response in a response element for a document style service - -2004-04-30, version 0.6.7 -- soap_transport_http: allow digest auth params to be separated by "," as well as ", " -- soap_transport_http: re-initialize incoming headers for each response -- soap_server: add methodreturnisliteralxml property to allow service function to return XML as a string -- soapclient: improve rpc/literal support -- soapclient: allow XML string as call params in addition to array -- soapclient: support document style and literal encoding when not using WSDL - -2004-05-05, version 0.6.7 -- wsdl: serialize PHP objects for WSDL XML Schema complexTypes, in addition to associative arrays -- wsdl: fix WSDL generation when there is no encodingStyle -- soap_transport_http: suppress fsockopen warnings -- soap_transport_http: detect socket timeouts when reading (0 bytes returned) -- soap_transport_http: read chunked content "in-line" so it works on a persistent connection -- nusoap_base: serialize boolean as true|false, not 1|0, to agree with XML Schema -- nusoap_base: serialize array of struct differently than array of array - -2004-06-25, version 0.6.8 -- soap_server: prefer gzip to deflate, since IE does not like our deflate -- soap_server: move webDescription to the wsdl class -- soap_server: allow class and instance method calls for service (thanks Ingo Fischer and Roland Knall) -- wsdl: get webDescription from the soap_server class -- wsdl: allow compression from the server -- wsdl: fix serialization of soapval without a type -- wsdl: propagate debug value from query string to SOAP endpoint in programmatic WSDL generation -- nusoap_base: add anyType, anySimpleType for 2001 XML Schema -- nusoap_base: provide additional debug functions -- soap_transport_http: ignore Content-Length when chunked encoding is used -- soap_transport_http: remove ':' from username for Basic authentication (cf. RFC 2617) -- soap_transport_http: urldecode username and password taken from URL -- soap_transport_http: use raw inflate/deflate for IE/IIS compatibility, rather than having Zlib headers according to HTTP 1.1 spec -- soap_transport_http: attempt to handle the case when both the service application and Web server compress the response -- soapclient: when creating proxy methods, replace '.' in operation name with '__' in function name -- soapclient: initialize requestHeaders in proxy -- general: use new debug methods; never access debug_str directly - -2004-09-30, version 0.6.8 -- soapclient: do not allow getProxy call when WSDL is not used -- soapclient: use ISO-8859-1 as the charset if not specified in the Content-Type header -- soapclient: when an empty string is specified for the call namespace, do not put the method element in a namespace -- soapclient: let soap_transport_http check for SSL support -- soapclient: have proxy inherit soap_defencoding from the client from which it is generated -- soapclient: do not assume that 'ns1' is an unused namespace prefix; always generate namespace prefixes randomly -- soap_parser: compare any encoding in the XML declaration to the charset from the HTTP Content-Type header (thanks Ingo Fischer) -- soap_parser: improve parse repeated element name into an array (de-serializes doc/lit array into a PHP array when there is more than 1 array element) -- soap_server: use ISO-8859-1 as the charset if not specified in the Content-Type header -- soap_server: allow suppression of automatic UTF-8 decoding -- soap_server: fix a bug when call_user_func_array() is used -- soap_transport_http: correct digest authentication through a proxy -- wsdl: serialize SOAP-ENC types similarly to XSD types -- xmlschema: force unprefixed type into default namespace -- xmlschema: fix serialization of definition of simple types - -2004-10-01, version 0.6.8 -- soap_parser: handle default namespace attributes -- soap_server: add default_utf8 field -- soap_server: support literal encoding (with RPC style) -- soap_transport_http: parse HTTP status and generate error for 300, 302-307, 400, 401-417, 501-505 (thanks for the idea Ghislain) -- soap_transport_http: follow HTTP redirection (HTTP status 301 and Location header) (thanks for the idea Ghislain) -- xmlschema: allow any attributes to be specified in an element of a complexType, e.g., abstract, default, form, minOccurs, maxOccurs, nillable (thanks Jirka Pech for the original patch) - -2004-10-02, version 0.6.8 -- soapclient: read/write cookies (thanks Ingo) -- soap_server: change faultcode on non-resendable faults to Client -- soap_transport_http: read/write cookies (thanks Ingo) - -2004-10-05, version 0.6.8 -- wsdl: add addElement method -- wsdl: support the document style in the register method -- xmlschema: parse unnamed simpleTypes, rather than ignoring them -- xmlschema: include untyped elements when parsing a complexType -- xmlschema: add addElement method - -2004-10-14, version 0.6.8 -- soapclient: support client certificates -- soap_parser: deserialize attributes, prefixing names with "!" -- soap_server: notify the client with HTML when WSDL is requested but not supported by service -- soap_transport_http: support client certificates -- wsdl: support defaults for elements of a complexType -- wsdl: serialize elements from complexType extension base -- wsdl: serialize data (associative array elements) as attributes according to XML Schema -- xmlschema: record extension base if present for a complexType - -2004-12-15, version 0.6.8 -- nusoap_base: add 2000 XML Schema (rare, but used by Akamai) -- soap_parser: avoid deserializing more common attributes that are not data -- soap_parser: be lax when HTTP specifies ISO-8859-1 (the default) and XML specifies UTF-8 (the norm) -- soap_server: account for the fact that get_class_methods returns methods in all lower case (thanks Steve Haldane) -- soap_transport_http: parse digest info that includes '=' in the data (thanks Jinsuk Kim) -- wsdl: feably handle some cases for literal serialization of form="unqualified" elements -- wsdl: don't serialize the decimal portion of a PHP double when the XML type is long -- wsdl: fix serialization of attributes for complexType that is an extension -- wsdlcache: enhance diagnostics -- xmlschema: handle untyped elements -- xmlschema: handle WSDL for SOAP Array that uses the base attribute plus a sequence of element - -2005-01-22, version 0.6.8 -- wsdl: allow an element in one schema to have a type from another schema - -2005-01-24, version 0.6.8 -- xmlschema: correctly parse nested complexType definitions - -2005-02-14, version 0.6.8 -- nusoap_base: fix a bug in which attributes were sometimes not serialized with a value -- nusoap_base: improve serialization of null values (thanks Dominique Stender) -- soap_parser: parse null values by handling the nil attribute (thanks Dominique Stender) -- soap_server: set character encoding for a fault to be the same as for the server (thanks Mark Scott) -- soap_server: correctly check for null value returned from method when WSDL is used (without WSDL, cannot distinguish whether NULL or void return is desired) -- soapclient: for document style, call should always return an array rooted at the response part (all bets are off when there are multiple parts) -- xmlschema: save enumeration values parsed from WSDL - -2005-02-10, version 0.6.9 -- soapclient: only set SOAP headers when they are specified in call params (so setHeaders still works) - -2005-04-04, version 0.6.9 -- soap_server: use get_class instead of is_a (thanks Thomas Noel) -- soapclient: use get_class instead of is_a (thanks Thomas Noel) -- soapclient: add setEndpoint method -- soap_transport_http: fix client certificates (thanks Doug Anarino and Eryan Eriobowo) - -2005-04-29, version 0.6.9 -- nusoap_base: add global variable and methods for setting debug level -- nusoap_base: use xsd:anyType instead of xsd:ur-type to serialize arrays with multiple element types (thanks Ingo Fischer) -- nusoap_base: expand entities in attributes (thanks Gaetano Giunta) -- soapclient: call parent constructor -- soapval: call parent constructor -- soap_fault: call parent constructor -- soap_parser: call parent constructor -- soap_server: assume get_class_methods always returns lower case for PHP 4.x only -- soap_server: call parent constructor -- soap_transport_http: do nothing in setEncoding if gzdeflate is not present (thanks Franck Touanen for pointing this out) -- soap_transport_http: fix check for server request for digest authentication (thanks Mark Spavin) -- soap_transport_http: call parent constructor -- wsdl: fix documentation page popup of one method after another (thanks Owen) -- wsdl: call parent constructor -- wsdl: expand entities in attributes (thanks Gaetano Giunta) -- xmlschema: call parent constructor - -2005-06-03, version 0.6.9 -- nusoap_base: serialize empty arrays as having elements xsd:anyType[0] -- nusoap_base: add encodingStyle parameter to serializeEnvelope -- nusoap_base: serialize xsi:type with nil values -- nusoap_base: improve debug and comments -- soap_parser: correctly parse an empty array to an empty array, not an empty string -- soap_parser: improve debug and comments -- soap_server: specify encodingStyle for envelope when WSDL is used -- soapclient: factor out new getProxyClassCode method -- soapclient: specify encodingStyle for envelope -- soapclient: improve debug and comments -- wsdl: add namespace for Apache SOAP types if a variable of such type is serialized -- wsdl: serialize nil value for nillable elements when no value is provided -- wsdl: serialize xsi:type with nil values -- wsdl: copy attributes as well as elements to an element from its complexType -- wsdl: specify encodingStyle for operations -- wsdl: improve debug and comments -- xmlschema: improve debug and comments - -2005-06-03, version 0.7.0 -- nusoap_base: improve debug and comments -- nusoap_base: fix version, which should have been 0.7.0 since 2005-03-04 - -2005-06-06, version 0.7.1 -- nusoap_base: adjust numeric element names for serialization, instead of forcing them to 'soapVal' -- nusoapmime: add type=text/xml to multipart/related (thanks Emmanuel Cordonnier) -- soap_fault: fix serialization of detail -- soap_server: check required parameters for register method -- soap_server: when getallheaders is used, massage header names -- soap_server: use SOAPAction to determine operation when doc/lit service does not wrap parameters in an element with the method name (thanks Peter Hrastnik) -- soap_transport_http: correctly handle multiple HTTP/1.1 100 responses for https (thanks Jan Slabon) -- wsdl: fixed documentation for addComplexType (thanks Csintalan dm) -- wsdl: serialize array data when maxOccurs = 'unbounded' OR maxOccurs > 1 (thanks Dominique Schreckling) -- wsdl: when serializing a string == 'false' as a boolean, set the value to false -- wsdl: when serializing a complexType, require the PHP value supplied to be an array - -2005-07-01, version 0.7.1 -- nusoap_base: Allow SOAP headers to be supplied as an array like parameters -- soap_parser: de-serialize simpleContent that accompanies complexContent -- soap_server: append debug information when programmatically-defined WSDL is returned -- soap_transport_http: Add debug when an outgoing header is set -- soapclient: Allow SOAP headers to be supplied as an array like parameters -- xmlschema: serialize attributes more generally, rather than assuming they are for SOAP 1.1 Array -- wsdl: when serializing, look up types by namespace, not prefix (simple programmatic doc/lit WSDL now seems to work) -- wsdl: process namespace declarations first when parsing an element - -2005-07-27, version 0.7.1 -- nusoap_base: do not override supplied element name with class name when serializing an object in serialize_val -- nusoap_base: remove http://soapinterop.org/xsd (si) from namespaces array -- nusoapmime: add nusoapservermime class to implement MIME attachments on the server -- soap_fault: improve documentation -- soap_server: improve documentation -- soap_server: make consistent use of _SERVER and HTTP_SERVER_VARS -- soap_server: make all incoming HTTP header keys lower case -- soap_server: add hook functions to support subclassing for MIME attachments -- soap_transport_http: remove an unnecessary global statement -- soapclient: when creating a proxy, make $params within each function an associative array -- soapval: improve documentation -- wsdl: when serializing complexType elements, used typed serialization if there is either a type or a reference for the element -- wsdl: allow PHP objects to be serialized as SOAP structs in serializeType -- wsdl: for WSDL and XML Schema imports, don't forget to use the TCP port number (thanks Luca GIOPPO) -- wsdl: make consistent use of _SERVER and HTTP_SERVER_VARS -- xmlschema: improve documentation - -2005-07-31, version 0.7.2 -- nusoap_base: correctly serialize attributes in serialize_val (thanks Hidran Arias) -- soap_parser: when resolving references, do not assume that buildVal returns an array (thanks Akshell) -- soap_parser: removed decode_entities, which does not work (thanks Martin Sarsale) -- soap_server: fix a bug parsing headers from _SERVER and HTTP_SERVER_VARS (thanks Bert Catsburg) -- soap_server: parse all "headers" from HTTP_SERVER_VARS (not just HTTP_*) -- soap_server: use PHP_SELF instead of SCRIPT_NAME for WSDL endpoint -- soap_server: when generating a fault while debug_flag is true, put debug into faultdetail -- wsdl: add enumeration parameter to addSimpleType -- xmlschema: add enumeration parameter to addSimpleType - -2006-02-02, version 0.7.2 -- soapclient: initialize paramArrayStr to improve proxy generation -- soap_parser: handle PHP5 soapclient's incorrect transmission of WSDL-described SOAP encoded arrays. -- soap_server: don't assume _SERVER['HTTPS'] is set; try HTTP_SERVER_VARS['HTTPS'] if it is not -- soap_server: "flatten out" the parameter array to call_user_func_array (thanks Andr Mamitzsch) -- soap_server: make thrown exceptions conform to specs -- wsdl: use serialize_val to serialize an array when the XSD type is soapenc:Array (JBoss/Axis does this) -- wsdl: change formatting of serialized XML for the WSDL -- xmlschema: change formatting of namespaces when serializing XML for the schema - -2006-04-07, version 0.7.2 -- soap_server: if methodparams is not an array, call call_user_func_array with an empty array (thanks Eric Grossi) -- wsdl: distinguish parts with element specified from those with type specified by suffixing element names with ^ -- wsdl: do a case-insensitive match on schema URI when looking for type -- xmlschema: only get element (not type) when name has ^ suffix - -2006-05-16, version 0.7.2 -- soapclient: add getHeader to get parsed SOAP Header -- soap_parser: check status when receiving Header or Body element -- soap_parser: add soapheader -- soap_server: add requestHeader with parsed SOAP Header - -2006-06-15, version 0.7.2 -- wsdl: fix bug in addComplexType (thanks Maarten Meijer) -- soap_transport_http: change cURL message - -2007-03-19, version 0.7.2 -- soapclient: declare as nusoapclient, then also subclass soapclient if SOAP extension not loaded -- soapclientmime: declare as nusoapclientmime, then also subclass soapclientmime if SOAP extension not loaded - -2007-03-28, version 0.7.2 -- nusoap_base: fix serialization of a soapval when its value is a soapval -- soapval: fix serialization of a soapval when its value is a soapval -- soapval: add __toString (cf. http://article.gmane.org/gmane.comp.php.nusoap.general/2776) -- nusoapclient: use lazy retrieval of WSDL instead of always getting it in the constructor -- nusoapclient: fix getProxy that was broken in last revision -- wsdl: add ability to set authorization credentials and retrieve WSDL outside of constructor - -2007-04-05, version 0.7.2 -- nusoapclientmime: don't rely exclusively on Content-Disposition to distinguish the root part from attachment; also check Content-Type (thanks Ben Bosman) -- nusoapclientmime: obey RFC 2045 Section 5.1 (thanks Chris Butler) -- nusoapservermime: don't rely exclusively on Content-Disposition to distinguish the root part from attachment; also check Content-Type (thanks Ben Bosman) -- nusoapservermime: obey RFC 2045 Section 5.1 (thanks Chris Butler) -- nusoap_base: remove extra whitespace from some XML elements -- nusoap_base: allow SOAP headers to be specified as an associative array (thanks Unique) -- nusoap_base: implement __toString -- nusoap_base: improve doc accuracy and consistency (thanks Martin K?gler) -- iso8601_to_timestamp: avoid problem with negative hours after calculation, etc. (thanks Guntram Trebs) -- nusoapclient: support user-settable cURL options (thanks Ciprian Popovici) -- nusoapclient: call SOAP 1.2 binding operations if no SOAP 1.1 present (there is no reason to believe this will always work!) -- nusoapclient: improve doc accuracy and consistency (thanks Martin K?gler) -- soap_server: don't try to use eval to call function when any parameter is an object -- soap_server: don't print return value within debug string; returned objects would need __toString in PHP 5.2 -- soap_server: use URL scheme for WSDL access as the scheme in SOAPAction -- soap_server: strip port number from server name (some FastCGI implementations include port in server name) -- soap_transport_http: support user-settable cURL options (thanks Ciprian Popovici) -- soap_transport_http: use cURL for NTLM authentication -- soap_transport_http: make digest authentication work for GET as well as POST -- soap_transport_http: improve doc accuracy and consistency (thanks Martin K?gler) -- soapval: remove __toString -- wsdl: set operation style if necessary, but do not override one already provided (thanks Raffaele Capobianco) -- wsdl: check SOAP 1.2 binding operations if no SOAP 1.1 present -- wsdl: improve doc accuracy and consistency (thanks Martin K?gler) -- xmlschema: fix simpleType serialization -- xmlschema: improve doc accuracy and consistency (thanks Martin K?gler) - -2007-04-09, version 0.7.2 -- nusoapclient: set decode_utf8 when creating a proxy (thanks Dmitri Dmitrienko) -- nusoapclient: rename class to nusoap_client -- soap_fault: also provide a class named nusoap_fault -- soap_parser: also provide a class named nusoap_parser -- soap_server: also provide a class named nusoap_server -- soap_transport_http: skip HTTP responses 301 and 401 when using cURL -- soap_transport_http: don't force HTTP Connection header when using cURL -- soap_transport_http: don't set HTTP Host and Content-Length headers when using cURL -- soap_transport_http: support CURLOPT_SSLCERTPASSWD (thanks David Blanco) -- wsdl: support user-settable cURL options (thanks Ciprian Popovici) -- wsdl: serialize parameters for non-SOAP 1.1 binding operations (there is no reason to believe this will always work!) -- xmlschema: also provide a class named nusoap_xmlschema -- nusoapclientmime: rename class to nusoap_client_mime -- nusoapservermime: rename class to nusoap_server_mime - -2007-04-11, version 0.7.2 -- nusoap_client: enable cURL usage to be forced (thanks Giunta Gaetano) -- soap_transport_http: enable cURL proxy usage (thanks Giunta Gaetano) -- soap_transport_http: enable cURL usage to be forced (thanks Giunta Gaetano) -- soap_transport_http: use cURL's HTTP authentication options for basic, digest -- wsdl: enable cURL usage to be forced (thanks Giunta Gaetano) - -2007-04-12, version 0.7.2 -- nusoap_client: add debug -- nusoap_xmlschema: don't add elements of complexTypes to elements array (thanks Heiko Hund) -- soap_transport_http: set cURL connection timeout if supported -- soap_transport_http: add debug when setting cURL option -- soap_transport_http: fix digest authentication broken in previous revision -- wsdl: add debug -- wsdlcache: address some issues with non-existing cache-files and PHP Warnings which came in such cases (thanks Ingo Fischer) -- wsdlcache: change class name to nusoap_wsdlcache - -2007-04-13, version 0.7.2 -- wsdl: wrap parameters if unwrapped values are supplied and WSDL specifies Microsoft-style wrapping - -2007-04-16, version 0.7.2 -- nusoap_base: avoid warning in getDebugAsXMLComment -- nusoap_client: small debug change -- nusoap_client_mime: set responseData when the root part is found - -2007-04-17, version 0.7.2 -- soap_transport_http: improve detection of undefined cURL options (thanks Ingo Fischer) - -2007-05-28, version 0.7.2 -- soap_transport_http: support digest authentication opaque feature (cf. RFC 2617) (thanks Daniel Lacroix) -- soap_transport_http: check safe_mode and open_basedir before setting CURLOPT_FOLLOWLOCATION -- soap_transport_http: skip "HTTP/1.0 200 Connection established" header when cURL returns it (thanks Raimund Jacob) -- nusoap_client: improve handling when getProxy is called and WSDL is not being used -- nusoap_base: add comments about which specifications are used/implemented by NuSOAP -- nusoap_xmlschema: create names for unnamed types that are unique by scope within XML Schema - -2007-06-11, version 0.7.2 -- wsdl: wrap return value if unwrapped value is supplied and WSDL specifies Microsoft-style wrapping - -2007-06-22, version 0.7.2 -- nusoap_xmlschema: fix serialization of simpleType restriction (thanks Rizwan Tejpar) - -2007-07-30, version 0.7.2 -- nusoap_server: Per http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735, rpc/literal accessor elements should not be in a namespace (thanks Kostas Kalevras) -- nusoap_client: Per http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735, rpc/literal accessor elements should not be in a namespace (thanks Kostas Kalevras) - -2007-10-21, version 0.7.2 -- nusoap_server: Per http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735, rpc/literal accessor elements should not be in a namespace (thanks Kostas Kalevras) -- nusoap_client: Per http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735, rpc/literal accessor elements should not be in a namespace (thanks Kostas Kalevras) - -2007-10-26, version 0.7.2 -- nusoap_server: Fix munging of _SERVER variables that start with HTTP_ (thanks Thomas Wieczorek) - -2007-10-30, version 0.7.2 -- nusoap_xmlschema: Serialize values for elementFormDefault, attributeFormDefault -- wsdl: Improve consistency between doc/lit schema auto-wrapping and client's parsed schema -- nusoap_server: Correct bug that placed encodingType in Envelope for doc/lit -- nusoap_server: Specify elementFormDefault for schema within doc/lit wsdl - -2007-10-31, version 0.7.2 -- wsdl: Fix typo in parametersMatchWrapped (thanks Sam Stepanyan) -- soap_transport_http: Fix three typos in setProxy (thanks Sam Stepanyan) -- nusoap_xmlschema: Fix typo in serializeTypeDef (thanks Sam Stepanyan) - -2007-11-06, version 1.0rc1 -- wsdl: Improve handling of return values from doc/lit methods -- nusoap_server: Handle case when method is not in a namespace - -2007-11-27, version 1.0rc1 -- nusoap_server: always try to invoke service for a POST -- nusoap_server: only return Location: for WSDL at http://... -- nusoap_base: change some syntax associated with globalDebugLevel - -2008-01-08, version 1.0rc1 -- nusoap_server: fix a typo where = was used instead of == (thanks J. (Johan) Bosma) - -2008-01-10, version 1.0rc1 -- nusoap_client: handle case where request or response has no content-type header (thanks Ingo Fischer) -- nusoap_server: handle case where request or response has no content-type header (thanks Ingo Fischer) -- wsdl: change CSS for .title in webDescription (thanks Marcus Uy) - -2008-01-25, version 1.0rc1 -- nusoap_xmlschema: when an element is of a complexType that is an extension, copy extensionBase from the type -- nusoap_xmlschema: do not apply elementFormDefault to globally defined elements - -2008-02-11, version 1.0rc1 -- wsdl: internally set form of wrapped parameter elements to unqualified (so server handles correctly) - -2008-03-03, version 1.0.rc1 -- nusoap_xmlschema: fix extension when base type has no explicit prefix -- nusoap_xmlschema: support XML Schema include -- wsdl: improve support for sequence by serializing inherited attributes and elements first - -2008-03-04, version 1.0.rc1 -- wsdl: allow WSDL port name to be specified in getOperations -- nusoap_client: allow WSDL port name to be specified in ctor - -2008-03-06, version 1.0rc1 -- wsdl: fix some port name variable references -- nusoap_base: change comments regarding preferred mode of support -- wsdl2nusoap: initial revision - -2008-03-14, version 1.0rc1 -- nusoap_base: fix timezone offset in timestamp_to_iso8601 (thanks Mario Trojan) - -2008-03-27, version 1.0rc1 -- nusoap_server: fix bug setting encodingStyle in serialize_return (thanks Luca Gobbo) - -2008-05-15, version 1.0rc1 -- nusoap_parser: handle case where Header or Body tags are used within SOAP messages (thanks Sergey Zhuravlev) - -2008-08-26, version 1.0rc1 -- wsdl: serialize simpleContent for complexType -- wsdl: avoid serializing complexType elements with no value and minOccurs = 0 regardless of nillability - -2010-04-26, version 0.9.5 -- nusoap_xmlschema: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) -- wsdl: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) -- soap_transport_http: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) -- soap_transport_http: remove call to deprecated function set_magic_quotes_runtime -- nusoap_server: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) -- nusoap_server: check that value is an object before calling get_class (thanks Pier-Luc Duchaine) -- nusoap_parser: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) -- nusoap_client: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) -- nusoap_client: do not assign the return value of new by reference (it is deprecated) (thanks Pier-Luc Duchaine) -- nusoap_base: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) -- nusoapmime: do not assign the return value of new by reference (it is deprecated) +2003-07-21, version 0.6.5 +- soap_transport_http: SOAPAction header is quoted again, fixes problem w/ Weblogic Server +- applied Jason Levitt patch for proper array serialization, fixes problem w/ Amazon shopping cart services +- fixed null value serialization +- applied patch from "BZC ToOn'S" - fixes wsdl serialization when no parameters +- applied John's patch, implementing compression for the server + +2003-07-22, version 0.6.5 +- soap_server: fixed bug causing charset encoding not to be passed to the parser +- soap_fault: added default encoding to the fault serialization +- soap_parser: changed the parser to pre-load the parent's result array when processing scalar values. This increases parsing speed. + +2003-07-23, version 0.6.5 +- soap_base: fix code that overwrites user-supplied attributes in serialize_val +- soap_base: use arrays-of-arrays rather than attempting multi-dimensional in serialize_val +- xmlschema: emit import statements and qualify all elements with prefix in serializeSchema (better interop with validation tools) +- soapclient: get xml character encoding from HTTP Content-Type header if provided, e.g. text/xml;charset="UTF-8" +- soapclient: use headers in call if provided (previously ignored this parameter) +- soap_server: in parse_request, if neither getallheaders nor $_SERVER are available, use $HTTP_SERVER_VARS to get SOAPAction and xml encoding + +2003-07-24, version 0.6.5 +- soap_transport_http: apply patch from Steven Brown "if the server closes connection prematurely, nusoap would spin trying to read data that isn't there" + +2003-07-25, version 0.6.5 +- wsdl: apply patch from Sven to workaround single schema limitation +- wsdl: apply a variant of the patch from Holger to handle empty values for array by serializing an array with 0 elements +- xmlschema: remove the redundant default namespace attribute on the schema element; everything in xsd is explicitly specified as being from xsd +- soap_transport_http: fix setCredentials and add TODO comments in sendHTTPS about what to change if this setCredentials stays + +2003-07-30, version 0.6.5 +- nusoap_base: change documentation of soap_defencoding to specify it is the encoding for outgoing messages +- nusoap_base: only change &, <, > to entities, not all HTML entities +- soap_transport_http: update the Content-Type header in sendRequest, since soap_defencoding could be changed after ctor is called +- soap_server: use soap_defencoding instead of charset_encoding +- soap_server: read encoding from _SERVER if available +- nusoap_base: do entity translation for string parameters with an xsd type specified (thanks David Derr) + +2003-07-31, version 0.6.5 +- soap_transport_http: add proxy authentication +- soap_transport_http: build payload the same way for http and https +- wsdl: add proxy authentication +- soapclient: add proxy authentication +- soapclient: allow proxy information in ctor, so that it can be used for wsdl + +2003-08-01, version 0.6.5 +- soap_transport_http: close a persistent connection that's at EOF +- soap_transport_http: prevent conflicts between setEncoding and usePersistentConnection +- soap_transport_http: fix use of $headers instead of $this->incoming_headers in getResponse +- soapclient: improve handling of persistent connections +- soapclient: force xml_encoding to upper case +- soap_server: let the Web server decide whether to close the connection (no Connection: close header) +- soap_server: force xml_encoding to upper case + +2003-08-04, version 0.6.5 +- soap_parser: use XML type information to pick a PHP data type; also decode base64 +- soap_server: read all HTTP headers when using _SERVER or HTTP_SERVER_VARS +- soap_server: add gzip encoding support for outgoing messages +- soap_transport_http: deflate is gzcompress/gzuncompress (cf. http://archive.develooper.com/libwww@perl.org/msg04650.html) +- soap_transport_http: clean use of persistentConnection so it's always a set boolean +- soapclient: add responseData member to access deflated/gunzipped payload + +2003-08-05, version 0.6.5 +- soap_server: look multiple places when setting debug_flag + +2003-08-07, version 0.6.5 +- nusoap_base: serialize specified type (e.g. ArrayOfString) even for simple array +- wsdl: only specify encodingStyle in the input/output soap bindings when it is not empty (thanks Guillaume) + +2003-08-15, version 0.6.5 +- soap_parser: fix parsing of elements with no XSD type specified +- soap_parser: use PHP string type for XSD long and unsignedLong types + +2003-08-16, version 0.6.5 +- soap_parser: fix code generating warning (thanks Torsten) + +2003-08-19, version 0.6.5 +- soap_parser: fix another line of code generating a warning (thanks Torsten) + +2003-08-22, version 0.6.5 +- soap_server: remove all '--' from debug_str; previous code changed '---' to '- --' +- wsdl, soapclient, soap_parser: patch submitted by Mark Spavin as described by + the following... +> Changes for the multiple/nested imports from the wsdl file. This builds an +> array of files not just the last one and also checks for relative paths to +> the parent. This will then get the imported files from the remote site +> instead of your local disk. Local wsdl files should still work (untested). +> +> Changes for multiple encoding sytles as previously posted + +2003-08-24, version 0.6.5 +- wsdl, soapclient: fix some PHP notices from previous update + +2003-08-26, version 0.6.5 +- wsdl: support multiple SOAP ports +- soapclient, soap_server: when no charset is specified, use UTF-8, even though HTTP specifies US-ASCII. +- soap_transport_http: do not prepend $host with 'ssl://' for https (is this required for older cURL versions?) + +2003-08-27, version 0.6.5 +- soap_server: support compressed request messages (thanks John Huong) +- soap_parser: deserialize Apache Vector as an array +- xmlschema: use $this->typemap in getPHPType (which is not used) +- soapclient, wsdl: check for WSDL errors after serializing parameters +- nusoap_base: add serialization of Apache Map (when not using WSDL) +- wsdl: add serialization of Apache Map (when using WSDL) +- wsdl: only change &, <, > to entities, not all HTML entities + +2003-08-28, version 0.6.5 +- soap_transport_http: disable cURL verification of peer and server (formerly the cURL default) +- soap_transport_http: mingle cURL code with straight http, so sendHTTP is no longer needed + +2003-08-29, version 0.6.6 +- soap_transport_http: add setContentType +- soapclient: call setContentType using new getHTTPContentType and getHTTPContentTypeCharset + +2003-09-05, version 0.6.6 +- wsdl: add some more code to handle null/nil values (but there's still a way to go) + +2003-10-21, version 0.6.6 +- soap_transport_http: only include port in Host header if it was specified in the URL +- soap_transport_http: add some code to use OpenSSL for PHP ssl:// scheme, but comment out since it's not ready +- soap_server: use $_SERVER['PHP_SELF'] if $GLOBALS['PHP_SELF'] is not set +- wsdl: add WSDL request and response and transport debug to debug +- wsdl: handle custom type extending xmlschema namespace (GLUE ... Thanks Matt) +- soap_parser: add param to docs +- soapclient: add getHTTPBody, getHTTPContentType, getHTTPContentTypeCharset (anticipating MIME subclass) + +2003-10-28, version 0.6.6 +- nusoap_base: add expandEntities method +- wsdl: use expandEntities +- soap_fault: use expandEntities +- soap_transport_http: Allow credentials to be included in URL, rather than requiring setCredentials +- soap_transport_http: Merge HTTP headers that span multiple lines +- soap_parser: Properly set errors in ctor +- soapclient: Pass headers to parseResponse and parse them in that method + +2003-10-30, version 0.6.6 +- xmlschema: Add some information for the related type to an element + +2003-12-09, version 0.6.6 +- nusoap_base: Add some namespace methods previously in xmlschema +- xmlschema: Improve parsing of complexType, element and simpleType +- xmlschema: Improve serialization +- xmlschema: Track imports +- xmlschema: Track elementFormDefault and form attributes +- wsdl: Support multiple (note that setting $server->wsdl->schemaTargetNamespace no longer does anything! Use configureWSDL instead.) +- wsdl: Use form attribute of element to control namespace specification +- wsdl: Support chained imports (A imports B which imports C) +- wsdl: Include port in endpoint address when serializing +- soap_server: Fix use of style (rpc|document) and use (encoded|literal) +- soap_server: Support _SERVER[CONTENT_TYPE] in addition to _SERVER[HTTP_CONTENT_TYPE] +- soap_server: Support wsdl with multiple +- soap_client: Remove a var_dump +- soap_client: Add style and use parameters to call method to support doc/lit without WSDL +- soap_transport_http: Check that $this->fp exists when doing persistent connections + +2003-12-17, version 0.6.6 +- soap_server: pass namespaces to xmlschema constructor +- wsdl: post-process after all imports +- wsdl: remove some debug, add some error handling +- xmlschema: allow enclosing namespaces to be specified in constructor +- xmlschema: improve handling of compositors and simple types + +2004-01-08, version 0.6.6 +- soap_server: when requested WSDL is in a file, return to client using passthru (thanks Ingo Fischer) +- soapclient: have proxy inherit more client state +- soapclient: allow timeout and response timeout to be specified in the constructor +- wsdl: allow timeout and response timeout to be specified in the constructor +- soap_transport_http: allow response timeout to be specified in send and sendHTTPS + +2004-01-28, version 0.6.6 +- wsdl: add namespace for array and scalar when form is qualified +- wsdl: fix a bug in which data type of complexType elements were ignored in serialization +- wsdl: enhance handling of URLs with file scheme +- wsdl: add addSimpleType +- xmlschema: add addSimpleType +- xmlschema: always set phpType elements +- soapclient: allow a wsdl instance to be specified in constructor +- soap_server: allow a wsdl instance to be specified in constructor (not tested!) +- soap_server: fix default SOAPAction created in register method +- soap_transport_http: accept chunking with LF separators in addition to CRLF. +- wsdlcache: added class +- nusoapmime: fix comments + +2004-02-23, version 0.6.6 +- soap_transport_http: don't try to unchunk cURL data, since cURL already does it +- soap_transport_http: append CVS revision to version in User-Agent +- wsdl: serialize boolean as true|false, not 1|0, to agree with XML Schema +- soap_server: always exit() after returning WSDL +- soap_server: use the WSDL URL scheme as the default endpoint URL scheme +- soap_server: append CVS revision to version in X-SOAP-Server +- nusoap_base: add (CVS) revision +- wsdlcache: synchronize using a per-WSDL lock file (Thanks Ingo) +- wsdlcache: add cache lifetime, after which cache contents are invalidated (Thanks Ingo) + +2004-03-15, version 0.6.6 +- nusoap_base: add isArraySimpleOrStruct method +- soap_server: improve WSDL URL scheme determination +- soap_server: only deflate/gzip payloads > 1024 bytes +- soap_server: fix parameter order in fault method (always used as faultcode, faultstring) +- soap_server: refactor parse_request into multiple functions (for sanity) +- soap_server: set the namespace on the Response element to the same as the request +- soap_server: name the return value element 'return' by default +- soap_server: added and documented data fields, so that service programmers can use them if desired +- soap_parser: standardize parsing error message +- soap_parser: fix document and responseHeaders so they are the correct XML text (as documented) +- soap_transport_http: fix read from persistent connection +- soapclient: clean up debugging for persistent connection +- wsdl: enforce correct naming of messages parts when an associative array is used for parameters +- wsdl: better serialization of null values +- wsdl: standardize parsing error message +- xmlschema: standardize parsing error message + +2004-03-24, version 0.6.7 +- soap_transport_http: add digest authentication (based on code by Kevin A. Miller) +- xmlschema: improve parsing of import elements +- wsdl: do schema imports even if there are no wsdl imports + +2004-04-12, version 0.6.7 +- wsdl: serialize multiple elements when maxOccurs="unbounded" and value is an array +- wsdl: serialize soapval values (used to force an XML type, e.g. when WSDL uses an abstract type) +- nusoapmime: do not require nusoap.php (it is now the programmer's responsibility) + +2004-04-21, version 0.6.7 +- soap_parser: parse repeated element name into an array (de-serializes doc/lit array into a PHP array when there is more than 1 array element) +- soap_server: do not wrap response in a response element for a document style service + +2004-04-30, version 0.6.7 +- soap_transport_http: allow digest auth params to be separated by "," as well as ", " +- soap_transport_http: re-initialize incoming headers for each response +- soap_server: add methodreturnisliteralxml property to allow service function to return XML as a string +- soapclient: improve rpc/literal support +- soapclient: allow XML string as call params in addition to array +- soapclient: support document style and literal encoding when not using WSDL + +2004-05-05, version 0.6.7 +- wsdl: serialize PHP objects for WSDL XML Schema complexTypes, in addition to associative arrays +- wsdl: fix WSDL generation when there is no encodingStyle +- soap_transport_http: suppress fsockopen warnings +- soap_transport_http: detect socket timeouts when reading (0 bytes returned) +- soap_transport_http: read chunked content "in-line" so it works on a persistent connection +- nusoap_base: serialize boolean as true|false, not 1|0, to agree with XML Schema +- nusoap_base: serialize array of struct differently than array of array + +2004-06-25, version 0.6.8 +- soap_server: prefer gzip to deflate, since IE does not like our deflate +- soap_server: move webDescription to the wsdl class +- soap_server: allow class and instance method calls for service (thanks Ingo Fischer and Roland Knall) +- wsdl: get webDescription from the soap_server class +- wsdl: allow compression from the server +- wsdl: fix serialization of soapval without a type +- wsdl: propagate debug value from query string to SOAP endpoint in programmatic WSDL generation +- nusoap_base: add anyType, anySimpleType for 2001 XML Schema +- nusoap_base: provide additional debug functions +- soap_transport_http: ignore Content-Length when chunked encoding is used +- soap_transport_http: remove ':' from username for Basic authentication (cf. RFC 2617) +- soap_transport_http: urldecode username and password taken from URL +- soap_transport_http: use raw inflate/deflate for IE/IIS compatibility, rather than having Zlib headers according to HTTP 1.1 spec +- soap_transport_http: attempt to handle the case when both the service application and Web server compress the response +- soapclient: when creating proxy methods, replace '.' in operation name with '__' in function name +- soapclient: initialize requestHeaders in proxy +- general: use new debug methods; never access debug_str directly + +2004-09-30, version 0.6.8 +- soapclient: do not allow getProxy call when WSDL is not used +- soapclient: use ISO-8859-1 as the charset if not specified in the Content-Type header +- soapclient: when an empty string is specified for the call namespace, do not put the method element in a namespace +- soapclient: let soap_transport_http check for SSL support +- soapclient: have proxy inherit soap_defencoding from the client from which it is generated +- soapclient: do not assume that 'ns1' is an unused namespace prefix; always generate namespace prefixes randomly +- soap_parser: compare any encoding in the XML declaration to the charset from the HTTP Content-Type header (thanks Ingo Fischer) +- soap_parser: improve parse repeated element name into an array (de-serializes doc/lit array into a PHP array when there is more than 1 array element) +- soap_server: use ISO-8859-1 as the charset if not specified in the Content-Type header +- soap_server: allow suppression of automatic UTF-8 decoding +- soap_server: fix a bug when call_user_func_array() is used +- soap_transport_http: correct digest authentication through a proxy +- wsdl: serialize SOAP-ENC types similarly to XSD types +- xmlschema: force unprefixed type into default namespace +- xmlschema: fix serialization of definition of simple types + +2004-10-01, version 0.6.8 +- soap_parser: handle default namespace attributes +- soap_server: add default_utf8 field +- soap_server: support literal encoding (with RPC style) +- soap_transport_http: parse HTTP status and generate error for 300, 302-307, 400, 401-417, 501-505 (thanks for the idea Ghislain) +- soap_transport_http: follow HTTP redirection (HTTP status 301 and Location header) (thanks for the idea Ghislain) +- xmlschema: allow any attributes to be specified in an element of a complexType, e.g., abstract, default, form, minOccurs, maxOccurs, nillable (thanks Jirka Pech for the original patch) + +2004-10-02, version 0.6.8 +- soapclient: read/write cookies (thanks Ingo) +- soap_server: change faultcode on non-resendable faults to Client +- soap_transport_http: read/write cookies (thanks Ingo) + +2004-10-05, version 0.6.8 +- wsdl: add addElement method +- wsdl: support the document style in the register method +- xmlschema: parse unnamed simpleTypes, rather than ignoring them +- xmlschema: include untyped elements when parsing a complexType +- xmlschema: add addElement method + +2004-10-14, version 0.6.8 +- soapclient: support client certificates +- soap_parser: deserialize attributes, prefixing names with "!" +- soap_server: notify the client with HTML when WSDL is requested but not supported by service +- soap_transport_http: support client certificates +- wsdl: support defaults for elements of a complexType +- wsdl: serialize elements from complexType extension base +- wsdl: serialize data (associative array elements) as attributes according to XML Schema +- xmlschema: record extension base if present for a complexType + +2004-12-15, version 0.6.8 +- nusoap_base: add 2000 XML Schema (rare, but used by Akamai) +- soap_parser: avoid deserializing more common attributes that are not data +- soap_parser: be lax when HTTP specifies ISO-8859-1 (the default) and XML specifies UTF-8 (the norm) +- soap_server: account for the fact that get_class_methods returns methods in all lower case (thanks Steve Haldane) +- soap_transport_http: parse digest info that includes '=' in the data (thanks Jinsuk Kim) +- wsdl: feably handle some cases for literal serialization of form="unqualified" elements +- wsdl: don't serialize the decimal portion of a PHP double when the XML type is long +- wsdl: fix serialization of attributes for complexType that is an extension +- wsdlcache: enhance diagnostics +- xmlschema: handle untyped elements +- xmlschema: handle WSDL for SOAP Array that uses the base attribute plus a sequence of element + +2005-01-22, version 0.6.8 +- wsdl: allow an element in one schema to have a type from another schema + +2005-01-24, version 0.6.8 +- xmlschema: correctly parse nested complexType definitions + +2005-02-14, version 0.6.8 +- nusoap_base: fix a bug in which attributes were sometimes not serialized with a value +- nusoap_base: improve serialization of null values (thanks Dominique Stender) +- soap_parser: parse null values by handling the nil attribute (thanks Dominique Stender) +- soap_server: set character encoding for a fault to be the same as for the server (thanks Mark Scott) +- soap_server: correctly check for null value returned from method when WSDL is used (without WSDL, cannot distinguish whether NULL or void return is desired) +- soapclient: for document style, call should always return an array rooted at the response part (all bets are off when there are multiple parts) +- xmlschema: save enumeration values parsed from WSDL + +2005-02-10, version 0.6.9 +- soapclient: only set SOAP headers when they are specified in call params (so setHeaders still works) + +2005-04-04, version 0.6.9 +- soap_server: use get_class instead of is_a (thanks Thomas Noel) +- soapclient: use get_class instead of is_a (thanks Thomas Noel) +- soapclient: add setEndpoint method +- soap_transport_http: fix client certificates (thanks Doug Anarino and Eryan Eriobowo) + +2005-04-29, version 0.6.9 +- nusoap_base: add global variable and methods for setting debug level +- nusoap_base: use xsd:anyType instead of xsd:ur-type to serialize arrays with multiple element types (thanks Ingo Fischer) +- nusoap_base: expand entities in attributes (thanks Gaetano Giunta) +- soapclient: call parent constructor +- soapval: call parent constructor +- soap_fault: call parent constructor +- soap_parser: call parent constructor +- soap_server: assume get_class_methods always returns lower case for PHP 4.x only +- soap_server: call parent constructor +- soap_transport_http: do nothing in setEncoding if gzdeflate is not present (thanks Franck Touanen for pointing this out) +- soap_transport_http: fix check for server request for digest authentication (thanks Mark Spavin) +- soap_transport_http: call parent constructor +- wsdl: fix documentation page popup of one method after another (thanks Owen) +- wsdl: call parent constructor +- wsdl: expand entities in attributes (thanks Gaetano Giunta) +- xmlschema: call parent constructor + +2005-06-03, version 0.6.9 +- nusoap_base: serialize empty arrays as having elements xsd:anyType[0] +- nusoap_base: add encodingStyle parameter to serializeEnvelope +- nusoap_base: serialize xsi:type with nil values +- nusoap_base: improve debug and comments +- soap_parser: correctly parse an empty array to an empty array, not an empty string +- soap_parser: improve debug and comments +- soap_server: specify encodingStyle for envelope when WSDL is used +- soapclient: factor out new getProxyClassCode method +- soapclient: specify encodingStyle for envelope +- soapclient: improve debug and comments +- wsdl: add namespace for Apache SOAP types if a variable of such type is serialized +- wsdl: serialize nil value for nillable elements when no value is provided +- wsdl: serialize xsi:type with nil values +- wsdl: copy attributes as well as elements to an element from its complexType +- wsdl: specify encodingStyle for operations +- wsdl: improve debug and comments +- xmlschema: improve debug and comments + +2005-06-03, version 0.7.0 +- nusoap_base: improve debug and comments +- nusoap_base: fix version, which should have been 0.7.0 since 2005-03-04 + +2005-06-06, version 0.7.1 +- nusoap_base: adjust numeric element names for serialization, instead of forcing them to 'soapVal' +- nusoapmime: add type=text/xml to multipart/related (thanks Emmanuel Cordonnier) +- soap_fault: fix serialization of detail +- soap_server: check required parameters for register method +- soap_server: when getallheaders is used, massage header names +- soap_server: use SOAPAction to determine operation when doc/lit service does not wrap parameters in an element with the method name (thanks Peter Hrastnik) +- soap_transport_http: correctly handle multiple HTTP/1.1 100 responses for https (thanks Jan Slabon) +- wsdl: fixed documentation for addComplexType (thanks Csintalan dm) +- wsdl: serialize array data when maxOccurs = 'unbounded' OR maxOccurs > 1 (thanks Dominique Schreckling) +- wsdl: when serializing a string == 'false' as a boolean, set the value to false +- wsdl: when serializing a complexType, require the PHP value supplied to be an array + +2005-07-01, version 0.7.1 +- nusoap_base: Allow SOAP headers to be supplied as an array like parameters +- soap_parser: de-serialize simpleContent that accompanies complexContent +- soap_server: append debug information when programmatically-defined WSDL is returned +- soap_transport_http: Add debug when an outgoing header is set +- soapclient: Allow SOAP headers to be supplied as an array like parameters +- xmlschema: serialize attributes more generally, rather than assuming they are for SOAP 1.1 Array +- wsdl: when serializing, look up types by namespace, not prefix (simple programmatic doc/lit WSDL now seems to work) +- wsdl: process namespace declarations first when parsing an element + +2005-07-27, version 0.7.1 +- nusoap_base: do not override supplied element name with class name when serializing an object in serialize_val +- nusoap_base: remove http://soapinterop.org/xsd (si) from namespaces array +- nusoapmime: add nusoapservermime class to implement MIME attachments on the server +- soap_fault: improve documentation +- soap_server: improve documentation +- soap_server: make consistent use of _SERVER and HTTP_SERVER_VARS +- soap_server: make all incoming HTTP header keys lower case +- soap_server: add hook functions to support subclassing for MIME attachments +- soap_transport_http: remove an unnecessary global statement +- soapclient: when creating a proxy, make $params within each function an associative array +- soapval: improve documentation +- wsdl: when serializing complexType elements, used typed serialization if there is either a type or a reference for the element +- wsdl: allow PHP objects to be serialized as SOAP structs in serializeType +- wsdl: for WSDL and XML Schema imports, don't forget to use the TCP port number (thanks Luca GIOPPO) +- wsdl: make consistent use of _SERVER and HTTP_SERVER_VARS +- xmlschema: improve documentation + +2005-07-31, version 0.7.2 +- nusoap_base: correctly serialize attributes in serialize_val (thanks Hidran Arias) +- soap_parser: when resolving references, do not assume that buildVal returns an array (thanks Akshell) +- soap_parser: removed decode_entities, which does not work (thanks Martin Sarsale) +- soap_server: fix a bug parsing headers from _SERVER and HTTP_SERVER_VARS (thanks Bert Catsburg) +- soap_server: parse all "headers" from HTTP_SERVER_VARS (not just HTTP_*) +- soap_server: use PHP_SELF instead of SCRIPT_NAME for WSDL endpoint +- soap_server: when generating a fault while debug_flag is true, put debug into faultdetail +- wsdl: add enumeration parameter to addSimpleType +- xmlschema: add enumeration parameter to addSimpleType + +2006-02-02, version 0.7.2 +- soapclient: initialize paramArrayStr to improve proxy generation +- soap_parser: handle PHP5 soapclient's incorrect transmission of WSDL-described SOAP encoded arrays. +- soap_server: don't assume _SERVER['HTTPS'] is set; try HTTP_SERVER_VARS['HTTPS'] if it is not +- soap_server: "flatten out" the parameter array to call_user_func_array (thanks Andr Mamitzsch) +- soap_server: make thrown exceptions conform to specs +- wsdl: use serialize_val to serialize an array when the XSD type is soapenc:Array (JBoss/Axis does this) +- wsdl: change formatting of serialized XML for the WSDL +- xmlschema: change formatting of namespaces when serializing XML for the schema + +2006-04-07, version 0.7.2 +- soap_server: if methodparams is not an array, call call_user_func_array with an empty array (thanks Eric Grossi) +- wsdl: distinguish parts with element specified from those with type specified by suffixing element names with ^ +- wsdl: do a case-insensitive match on schema URI when looking for type +- xmlschema: only get element (not type) when name has ^ suffix + +2006-05-16, version 0.7.2 +- soapclient: add getHeader to get parsed SOAP Header +- soap_parser: check status when receiving Header or Body element +- soap_parser: add soapheader +- soap_server: add requestHeader with parsed SOAP Header + +2006-06-15, version 0.7.2 +- wsdl: fix bug in addComplexType (thanks Maarten Meijer) +- soap_transport_http: change cURL message + +2007-03-19, version 0.7.2 +- soapclient: declare as nusoapclient, then also subclass soapclient if SOAP extension not loaded +- soapclientmime: declare as nusoapclientmime, then also subclass soapclientmime if SOAP extension not loaded + +2007-03-28, version 0.7.2 +- nusoap_base: fix serialization of a soapval when its value is a soapval +- soapval: fix serialization of a soapval when its value is a soapval +- soapval: add __toString (cf. http://article.gmane.org/gmane.comp.php.nusoap.general/2776) +- nusoapclient: use lazy retrieval of WSDL instead of always getting it in the constructor +- nusoapclient: fix getProxy that was broken in last revision +- wsdl: add ability to set authorization credentials and retrieve WSDL outside of constructor + +2007-04-05, version 0.7.2 +- nusoapclientmime: don't rely exclusively on Content-Disposition to distinguish the root part from attachment; also check Content-Type (thanks Ben Bosman) +- nusoapclientmime: obey RFC 2045 Section 5.1 (thanks Chris Butler) +- nusoapservermime: don't rely exclusively on Content-Disposition to distinguish the root part from attachment; also check Content-Type (thanks Ben Bosman) +- nusoapservermime: obey RFC 2045 Section 5.1 (thanks Chris Butler) +- nusoap_base: remove extra whitespace from some XML elements +- nusoap_base: allow SOAP headers to be specified as an associative array (thanks Unique) +- nusoap_base: implement __toString +- nusoap_base: improve doc accuracy and consistency (thanks Martin K?gler) +- iso8601_to_timestamp: avoid problem with negative hours after calculation, etc. (thanks Guntram Trebs) +- nusoapclient: support user-settable cURL options (thanks Ciprian Popovici) +- nusoapclient: call SOAP 1.2 binding operations if no SOAP 1.1 present (there is no reason to believe this will always work!) +- nusoapclient: improve doc accuracy and consistency (thanks Martin K?gler) +- soap_server: don't try to use eval to call function when any parameter is an object +- soap_server: don't print return value within debug string; returned objects would need __toString in PHP 5.2 +- soap_server: use URL scheme for WSDL access as the scheme in SOAPAction +- soap_server: strip port number from server name (some FastCGI implementations include port in server name) +- soap_transport_http: support user-settable cURL options (thanks Ciprian Popovici) +- soap_transport_http: use cURL for NTLM authentication +- soap_transport_http: make digest authentication work for GET as well as POST +- soap_transport_http: improve doc accuracy and consistency (thanks Martin K?gler) +- soapval: remove __toString +- wsdl: set operation style if necessary, but do not override one already provided (thanks Raffaele Capobianco) +- wsdl: check SOAP 1.2 binding operations if no SOAP 1.1 present +- wsdl: improve doc accuracy and consistency (thanks Martin K?gler) +- xmlschema: fix simpleType serialization +- xmlschema: improve doc accuracy and consistency (thanks Martin K?gler) + +2007-04-09, version 0.7.2 +- nusoapclient: set decode_utf8 when creating a proxy (thanks Dmitri Dmitrienko) +- nusoapclient: rename class to nusoap_client +- soap_fault: also provide a class named nusoap_fault +- soap_parser: also provide a class named nusoap_parser +- soap_server: also provide a class named nusoap_server +- soap_transport_http: skip HTTP responses 301 and 401 when using cURL +- soap_transport_http: don't force HTTP Connection header when using cURL +- soap_transport_http: don't set HTTP Host and Content-Length headers when using cURL +- soap_transport_http: support CURLOPT_SSLCERTPASSWD (thanks David Blanco) +- wsdl: support user-settable cURL options (thanks Ciprian Popovici) +- wsdl: serialize parameters for non-SOAP 1.1 binding operations (there is no reason to believe this will always work!) +- xmlschema: also provide a class named nusoap_xmlschema +- nusoapclientmime: rename class to nusoap_client_mime +- nusoapservermime: rename class to nusoap_server_mime + +2007-04-11, version 0.7.2 +- nusoap_client: enable cURL usage to be forced (thanks Giunta Gaetano) +- soap_transport_http: enable cURL proxy usage (thanks Giunta Gaetano) +- soap_transport_http: enable cURL usage to be forced (thanks Giunta Gaetano) +- soap_transport_http: use cURL's HTTP authentication options for basic, digest +- wsdl: enable cURL usage to be forced (thanks Giunta Gaetano) + +2007-04-12, version 0.7.2 +- nusoap_client: add debug +- nusoap_xmlschema: don't add elements of complexTypes to elements array (thanks Heiko Hund) +- soap_transport_http: set cURL connection timeout if supported +- soap_transport_http: add debug when setting cURL option +- soap_transport_http: fix digest authentication broken in previous revision +- wsdl: add debug +- wsdlcache: address some issues with non-existing cache-files and PHP Warnings which came in such cases (thanks Ingo Fischer) +- wsdlcache: change class name to nusoap_wsdlcache + +2007-04-13, version 0.7.2 +- wsdl: wrap parameters if unwrapped values are supplied and WSDL specifies Microsoft-style wrapping + +2007-04-16, version 0.7.2 +- nusoap_base: avoid warning in getDebugAsXMLComment +- nusoap_client: small debug change +- nusoap_client_mime: set responseData when the root part is found + +2007-04-17, version 0.7.2 +- soap_transport_http: improve detection of undefined cURL options (thanks Ingo Fischer) + +2007-05-28, version 0.7.2 +- soap_transport_http: support digest authentication opaque feature (cf. RFC 2617) (thanks Daniel Lacroix) +- soap_transport_http: check safe_mode and open_basedir before setting CURLOPT_FOLLOWLOCATION +- soap_transport_http: skip "HTTP/1.0 200 Connection established" header when cURL returns it (thanks Raimund Jacob) +- nusoap_client: improve handling when getProxy is called and WSDL is not being used +- nusoap_base: add comments about which specifications are used/implemented by NuSOAP +- nusoap_xmlschema: create names for unnamed types that are unique by scope within XML Schema + +2007-06-11, version 0.7.2 +- wsdl: wrap return value if unwrapped value is supplied and WSDL specifies Microsoft-style wrapping + +2007-06-22, version 0.7.2 +- nusoap_xmlschema: fix serialization of simpleType restriction (thanks Rizwan Tejpar) + +2007-07-30, version 0.7.2 +- nusoap_server: Per http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735, rpc/literal accessor elements should not be in a namespace (thanks Kostas Kalevras) +- nusoap_client: Per http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735, rpc/literal accessor elements should not be in a namespace (thanks Kostas Kalevras) + +2007-10-21, version 0.7.2 +- nusoap_server: Per http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735, rpc/literal accessor elements should not be in a namespace (thanks Kostas Kalevras) +- nusoap_client: Per http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735, rpc/literal accessor elements should not be in a namespace (thanks Kostas Kalevras) + +2007-10-26, version 0.7.2 +- nusoap_server: Fix munging of _SERVER variables that start with HTTP_ (thanks Thomas Wieczorek) + +2007-10-30, version 0.7.2 +- nusoap_xmlschema: Serialize values for elementFormDefault, attributeFormDefault +- wsdl: Improve consistency between doc/lit schema auto-wrapping and client's parsed schema +- nusoap_server: Correct bug that placed encodingType in Envelope for doc/lit +- nusoap_server: Specify elementFormDefault for schema within doc/lit wsdl + +2007-10-31, version 0.7.2 +- wsdl: Fix typo in parametersMatchWrapped (thanks Sam Stepanyan) +- soap_transport_http: Fix three typos in setProxy (thanks Sam Stepanyan) +- nusoap_xmlschema: Fix typo in serializeTypeDef (thanks Sam Stepanyan) + +2007-11-06, version 1.0rc1 +- wsdl: Improve handling of return values from doc/lit methods +- nusoap_server: Handle case when method is not in a namespace + +2007-11-27, version 1.0rc1 +- nusoap_server: always try to invoke service for a POST +- nusoap_server: only return Location: for WSDL at http://... +- nusoap_base: change some syntax associated with globalDebugLevel + +2008-01-08, version 1.0rc1 +- nusoap_server: fix a typo where = was used instead of == (thanks J. (Johan) Bosma) + +2008-01-10, version 1.0rc1 +- nusoap_client: handle case where request or response has no content-type header (thanks Ingo Fischer) +- nusoap_server: handle case where request or response has no content-type header (thanks Ingo Fischer) +- wsdl: change CSS for .title in webDescription (thanks Marcus Uy) + +2008-01-25, version 1.0rc1 +- nusoap_xmlschema: when an element is of a complexType that is an extension, copy extensionBase from the type +- nusoap_xmlschema: do not apply elementFormDefault to globally defined elements + +2008-02-11, version 1.0rc1 +- wsdl: internally set form of wrapped parameter elements to unqualified (so server handles correctly) + +2008-03-03, version 1.0.rc1 +- nusoap_xmlschema: fix extension when base type has no explicit prefix +- nusoap_xmlschema: support XML Schema include +- wsdl: improve support for sequence by serializing inherited attributes and elements first + +2008-03-04, version 1.0.rc1 +- wsdl: allow WSDL port name to be specified in getOperations +- nusoap_client: allow WSDL port name to be specified in ctor + +2008-03-06, version 1.0rc1 +- wsdl: fix some port name variable references +- nusoap_base: change comments regarding preferred mode of support +- wsdl2nusoap: initial revision + +2008-03-14, version 1.0rc1 +- nusoap_base: fix timezone offset in timestamp_to_iso8601 (thanks Mario Trojan) + +2008-03-27, version 1.0rc1 +- nusoap_server: fix bug setting encodingStyle in serialize_return (thanks Luca Gobbo) + +2008-05-15, version 1.0rc1 +- nusoap_parser: handle case where Header or Body tags are used within SOAP messages (thanks Sergey Zhuravlev) + +2008-08-26, version 1.0rc1 +- wsdl: serialize simpleContent for complexType +- wsdl: avoid serializing complexType elements with no value and minOccurs = 0 regardless of nillability + +2010-04-26, version 0.9.5 +- nusoap_xmlschema: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) +- wsdl: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) +- soap_transport_http: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) +- soap_transport_http: remove call to deprecated function set_magic_quotes_runtime +- nusoap_server: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) +- nusoap_server: check that value is an object before calling get_class (thanks Pier-Luc Duchaine) +- nusoap_parser: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) +- nusoap_client: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) +- nusoap_client: do not assign the return value of new by reference (it is deprecated) (thanks Pier-Luc Duchaine) +- nusoap_base: replace regex function calls (ereg, eregi, split) with PCRE calls (preg_match, preg_split) (thanks Pier-Luc Duchaine) +- nusoapmime: do not assign the return value of new by reference (it is deprecated) diff --git a/htdocs/includes/odtphp/zip/pclzip/gnu-lgpl.txt b/htdocs/includes/odtphp/zip/pclzip/gnu-lgpl.txt index 18fa6594ab4..2d73841c319 100644 --- a/htdocs/includes/odtphp/zip/pclzip/gnu-lgpl.txt +++ b/htdocs/includes/odtphp/zip/pclzip/gnu-lgpl.txt @@ -1,503 +1,503 @@ - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Libraries - - If you develop a new library, and you want it to be of the greatest -possible use to the public, we recommend making it free software that -everyone can redistribute and change. You can do so by permitting -redistribution under these terms (or, alternatively, under the terms of the -ordinary General Public License). - - To apply these terms, attach the following notices to the library. It is -safest to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least the -"copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; If not, see . - -Also add information on how to contact you by electronic and paper mail. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the library, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the - library `Frob' (a library for tweaking knobs) written by James Random Hacker. - - , 1 April 1990 - Ty Coon, President of Vice - -That's all there is to it! - - + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; If not, see . + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + diff --git a/htdocs/includes/phpexcel/PHPExcel/Shared/PCLZip/gnu-lgpl.txt b/htdocs/includes/phpexcel/PHPExcel/Shared/PCLZip/gnu-lgpl.txt index cbee875ba6d..b1e3f5a2638 100644 --- a/htdocs/includes/phpexcel/PHPExcel/Shared/PCLZip/gnu-lgpl.txt +++ b/htdocs/includes/phpexcel/PHPExcel/Shared/PCLZip/gnu-lgpl.txt @@ -1,504 +1,504 @@ - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Libraries - - If you develop a new library, and you want it to be of the greatest -possible use to the public, we recommend making it free software that -everyone can redistribute and change. You can do so by permitting -redistribution under these terms (or, alternatively, under the terms of the -ordinary General Public License). - - To apply these terms, attach the following notices to the library. It is -safest to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least the -"copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -Also add information on how to contact you by electronic and paper mail. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the library, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the - library `Frob' (a library for tweaking knobs) written by James Random Hacker. - - , 1 April 1990 - Ty Coon, President of Vice - -That's all there is to it! - - + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + diff --git a/htdocs/includes/phpexcel/PHPExcel/Shared/PCLZip/readme.txt b/htdocs/includes/phpexcel/PHPExcel/Shared/PCLZip/readme.txt index 6dfc58ed8b7..c5d2486d3ef 100644 --- a/htdocs/includes/phpexcel/PHPExcel/Shared/PCLZip/readme.txt +++ b/htdocs/includes/phpexcel/PHPExcel/Shared/PCLZip/readme.txt @@ -1,420 +1,420 @@ -// -------------------------------------------------------------------------------- -// PclZip 2.8.2 - readme.txt -// -------------------------------------------------------------------------------- -// License GNU/LGPL - August 2009 -// Vincent Blavet - vincent@phpconcept.net -// http://www.phpconcept.net -// -------------------------------------------------------------------------------- -// -------------------------------------------------------------------------------- - - - -0 - Sommaire -============ - 1 - Introduction - 2 - What's new - 3 - Corrected bugs - 4 - Known bugs or limitations - 5 - License - 6 - Warning - 7 - Documentation - 8 - Author - 9 - Contribute - -1 - Introduction -================ - - PclZip is a library that allow you to manage a Zip archive. - - Full documentation about PclZip can be found here : http://www.phpconcept.net/pclzip - -2 - What's new -============== - - Version 2.8.2 : - - PCLZIP_CB_PRE_EXTRACT and PCLZIP_CB_POST_EXTRACT are now supported with - extraction as a string (PCLZIP_OPT_EXTRACT_AS_STRING). The string - can also be modified in the post-extract call back. - **Bugs correction : - - PCLZIP_OPT_REMOVE_ALL_PATH was not working correctly - - Remove use of eval() and do direct call to callback functions - - Correct support of 64bits systems (Thanks to WordPress team) - - Version 2.8.1 : - - Move option PCLZIP_OPT_BY_EREG to PCLZIP_OPT_BY_PREG because ereg() is - deprecated in PHP 5.3. When using option PCLZIP_OPT_BY_EREG, PclZip will - automatically replace it by PCLZIP_OPT_BY_PREG. - - Version 2.8 : - - Improve extraction of zip archive for large files by using temporary files - This feature is working like the one defined in r2.7. - Options are renamed : PCLZIP_OPT_TEMP_FILE_ON, PCLZIP_OPT_TEMP_FILE_OFF, - PCLZIP_OPT_TEMP_FILE_THRESHOLD - - Add a ratio constant PCLZIP_TEMPORARY_FILE_RATIO to configure the auto - sense of temporary file use. - - Bug correction : Reduce filepath in returned file list to remove ennoying - './/' preambule in file path. - - Version 2.7 : - - Improve creation of zip archive for large files : - PclZip will now autosense the configured memory and use temporary files - when large file is suspected. - This feature can also ne triggered by manual options in create() and add() - methods. 'PCLZIP_OPT_ADD_TEMP_FILE_ON' force the use of temporary files, - 'PCLZIP_OPT_ADD_TEMP_FILE_OFF' disable the autosense technic, - 'PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD' allow for configuration of a size - threshold to use temporary files. - Using "temporary files" rather than "memory" might take more time, but - might give the ability to zip very large files : - Tested on my win laptop with a 88Mo file : - Zip "in-memory" : 18sec (max_execution_time=30, memory_limit=180Mo) - Zip "tmporary-files" : 23sec (max_execution_time=30, memory_limit=30Mo) - - Replace use of mktime() by time() to limit the E_STRICT error messages. - - Bug correction : When adding files with full windows path (drive letter) - PclZip is now working. Before, if the drive letter is not the default - path, PclZip was not able to add the file. - - Version 2.6 : - - Code optimisation - - New attributes PCLZIP_ATT_FILE_COMMENT gives the ability to - add a comment for a specific file. (Don't really know if this is usefull) - - New attribute PCLZIP_ATT_FILE_CONTENT gives the ability to add a string - as a file. - - New attribute PCLZIP_ATT_FILE_MTIME modify the timestamp associated with - a file. - - Correct a bug. Files archived with a timestamp with 0h0m0s were extracted - with current time - - Add CRC value in the informations returned back for each file after an - action. - - Add missing closedir() statement. - - When adding a folder, and removing the path of this folder, files were - incorrectly added with a '/' at the beginning. Which means files are - related to root in unix systems. Corrected. - - Add conditional if before constant definition. This will allow users - to redefine constants without changing the file, and then improve - upgrade of pclzip code for new versions. - - Version 2.5 : - - Introduce the ability to add file/folder with individual properties (file descriptor). - This gives for example the ability to change the filename of a zipped file. - . Able to add files individually - . Able to change full name - . Able to change short name - . Compatible with global options - - New attributes : PCLZIP_ATT_FILE_NAME, PCLZIP_ATT_FILE_NEW_SHORT_NAME, PCLZIP_ATT_FILE_NEW_FULL_NAME - - New error code : PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE - - Add a security control feature. PclZip can extract any file in any folder - of a system. People may use this to upload a zip file and try to override - a system file. The PCLZIP_OPT_EXTRACT_DIR_RESTRICTION will give the - ability to forgive any directory transversal behavior. - - New PCLZIP_OPT_EXTRACT_DIR_RESTRICTION : check extraction path - - New error code : PCLZIP_ERR_DIRECTORY_RESTRICTION - - Modification in PclZipUtilPathInclusion() : dir and path beginning with ./ will be prepend - by current path (getcwd()) - - Version 2.4 : - - Code improvment : try to speed up the code by removing unusefull call to pack() - - Correct bug in delete() : delete() should be called with no argument. This was not - the case in 2.3. This is corrected in 2.4. - - Correct a bug in path_inclusion function. When the path has several '../../', the - result was bad. - - Add a check for magic_quotes_runtime configuration. If enabled, PclZip will - disable it while working and det it back to its original value. - This resolve a lots of bad formated archive errors. - - Bug correction : PclZip now correctly unzip file in some specific situation, - when compressed content has same size as uncompressed content. - - Bug correction : When selecting option 'PCLZIP_OPT_REMOVE_ALL_PATH', - directories are not any more created. - - Code improvment : correct unclosed opendir(), better handling of . and .. in - loops. - - - Version 2.3 : - - Correct a bug with PHP5 : affecting the value 0xFE49FFE0 to a variable does not - give the same result in PHP4 and PHP5 .... - - Version 2.2 : - - Try development of PCLZIP_OPT_CRYPT ..... - However this becomes to a stop. To crypt/decrypt I need to multiply 2 long integers, - the result (greater than a long) is not supported by PHP. Even the use of bcmath - functions does not help. I did not find yet a solution ...; - - Add missing '/' at end of directory entries - - Check is a file is encrypted or not. Returns status 'unsupported_encryption' and/or - error code PCLZIP_ERR_UNSUPPORTED_ENCRYPTION. - - Corrected : Bad "version need to extract" field in local file header - - Add private method privCheckFileHeaders() in order to check local and central - file headers. PclZip is now supporting purpose bit flag bit 3. Purpose bit flag bit 3 gives - the ability to have a local file header without size, compressed size and crc filled. - - Add a generic status 'error' for file status - - Add control of compression type. PclZip only support deflate compression method. - Before v2.2, PclZip does not check the compression method used in an archive while - extracting. With v2.2 PclZip returns a new error status for a file using an unsupported - compression method. New status is "unsupported_compression". New error code is - PCLZIP_ERR_UNSUPPORTED_COMPRESSION. - - Add optional attribute PCLZIP_OPT_STOP_ON_ERROR. This will stop the extract of files - when errors like 'a folder with same name exists' or 'a newer file exists' or - 'a write protected file' exists, rather than set a status for the concerning file - and resume the extract of the zip. - - Add optional attribute PCLZIP_OPT_REPLACE_NEWER. This will force, during an extract' the - replacement of the file, even if a newer version of the file exists. - Note that today if a file with the same name already exists but is older it will be - replaced by the extracted one. - - Improve PclZipUtilOption() - - Support of zip archive with trailing bytes. Before 2.2, PclZip checks that the central - directory structure is the last data in the archive. Crypt encryption/decryption of - zip archive put trailing 0 bytes after decryption. PclZip is now supporting this. - - Version 2.1 : - - Add the ability to abort the extraction by using a user callback function. - The user can now return the value '2' in its callback which indicates to stop the - extraction. For a pre call-back extract is stopped before the extration of the current - file. For a post call back, the extraction is stopped after. - - Add the ability to extract a file (or several files) directly in the standard output. - This is done by the new parameter PCLZIP_OPT_EXTRACT_IN_OUTPUT with method extract(). - - Add support for parameters PCLZIP_OPT_COMMENT, PCLZIP_OPT_ADD_COMMENT, - PCLZIP_OPT_PREPEND_COMMENT. This will create, replace, add, or prepend comments - in the zip archive. - - When merging two archives, the comments are not any more lost, but merged, with a - blank space separator. - - Corrected bug : Files are not deleted when all files are asked to be deleted. - - Corrected bug : Folders with name '0' made PclZip to abort the create or add feature. - - - Version 2.0 : - ***** Warning : Some new features may break the backward compatibility for your scripts. - Please carefully read the readme file. - - Add the ability to delete by Index, name and regular expression. This feature is - performed by the method delete(), which uses the optional parameters - PCLZIP_OPT_BY_INDEX, PCLZIP_OPT_BY_NAME, PCLZIP_OPT_BY_EREG or PCLZIP_OPT_BY_PREG. - - Add the ability to extract by regular expression. To extract by regexp you must use the method - extract(), with the option PCLZIP_OPT_BY_EREG or PCLZIP_OPT_BY_PREG - (depending if you want to use ereg() or preg_match() syntax) followed by the - regular expression pattern. - - Add the ability to extract by index, directly with the extract() method. This is a - code improvment of the extractByIndex() method. - - Add the ability to extract by name. To extract by name you must use the method - extract(), with the option PCLZIP_OPT_BY_NAME followed by the filename to - extract or an array of filenames to extract. To extract all a folder, use the folder - name rather than the filename with a '/' at the end. - - Add the ability to add files without compression. This is done with a new attribute - which is PCLZIP_OPT_NO_COMPRESSION. - - Add the attribute PCLZIP_OPT_EXTRACT_AS_STRING, which allow to extract a file directly - in a string without using any file (or temporary file). - - Add constant PCLZIP_SEPARATOR for static configuration of filename separators in a single string. - The default separator is now a comma (,) and not any more a blank space. - THIS BREAK THE BACKWARD COMPATIBILITY : Please check if this may have an impact with - your script. - - Improve algorythm performance by removing the use of temporary files when adding or - extracting files in an archive. - - Add (correct) detection of empty filename zipping. This can occurs when the removed - path is the same - as a zipped dir. The dir is not zipped (['status'] = filtered), only its content. - - Add better support for windows paths (thanks for help from manus@manusfreedom.com). - - Corrected bug : When the archive file already exists with size=0, the add() method - fails. Corrected in 2.0. - - Remove the use of OS_WINDOWS constant. Use php_uname() function rather. - - Control the order of index ranges in extract by index feature. - - Change the internal management of folders (better handling of internal flag). - - - Version 1.3 : - - Removing the double include check. This is now done by include_once() and require_once() - PHP directives. - - Changing the error handling mecanism : Remove the use of an external error library. - The former PclError...() functions are replaced by internal equivalent methods. - By changing the environment variable PCLZIP_ERROR_EXTERNAL you can still use the former library. - Introducing the use of constants for error codes rather than integer values. This will help - in futur improvment. - Introduction of error handling functions like errorCode(), errorName() and errorInfo(). - - Remove the deprecated use of calling function with arguments passed by reference. - - Add the calling of extract(), extractByIndex(), create() and add() functions - with variable options rather than fixed arguments. - - Add the ability to remove all the file path while extracting or adding, - without any need to specify the path to remove. - This is available for extract(), extractByIndex(), create() and add() functionS by using - the new variable options parameters : - - PCLZIP_OPT_REMOVE_ALL_PATH : by indicating this option while calling the fct. - - Ability to change the mode of a file after the extraction (chmod()). - This is available for extract() and extractByIndex() functionS by using - the new variable options parameters. - - PCLZIP_OPT_SET_CHMOD : by setting the value of this option. - - Ability to definition call-back options. These call-back will be called during the adding, - or the extracting of file (extract(), extractByIndex(), create() and add() functions) : - - PCLZIP_CB_PRE_EXTRACT : will be called before each extraction of a file. The user - can trigerred the change the filename of the extracted file. The user can triggered the - skip of the extraction. This is adding a 'skipped' status in the file list result value. - - PCLZIP_CB_POST_EXTRACT : will be called after each extraction of a file. - Nothing can be triggered from that point. - - PCLZIP_CB_PRE_ADD : will be called before each add of a file. The user - can trigerred the change the stored filename of the added file. The user can triggered the - skip of the add. This is adding a 'skipped' status in the file list result value. - - PCLZIP_CB_POST_ADD : will be called after each add of a file. - Nothing can be triggered from that point. - - Two status are added in the file list returned as function result : skipped & filename_too_long - 'skipped' is used when a call-back function ask for skipping the file. - 'filename_too_long' is used while adding a file with a too long filename to archive (the file is - not added) - - Adding the function PclZipUtilPathInclusion(), that check the inclusion of a path into - a directory. - - Add a check of the presence of the archive file before some actions (like list, ...) - - Add the initialisation of field "index" in header array. This means that by - default index will be -1 when not explicitly set by the methods. - - Version 1.2 : - - Adding a duplicate function. - - Adding a merge function. The merge function is a "quick merge" function, - it just append the content of an archive at the end of the first one. There - is no check for duplicate files or more recent files. - - Improve the search of the central directory end. - - Version 1.1.2 : - - - Changing the license of PclZip. PclZip is now released under the GNU / LGPL license - (see License section). - - Adding the optional support of a static temporary directory. You will need to configure - the constant PCLZIP_TEMPORARY_DIR if you want to use this feature. - - Improving the rename() function. In some cases rename() does not work (different - Filesystems), so it will be replaced by a copy() + unlink() functions. - - Version 1.1.1 : - - - Maintenance release, no new feature. - - Version 1.1 : - - - New method Add() : adding files in the archive - - New method ExtractByIndex() : partial extract of the archive, files are identified by - their index in the archive - - New method DeleteByIndex() : delete some files/folder entries from the archive, - files are identified by their index in the archive. - - Adding a test of the zlib extension presence. If not present abort the script. - - Version 1.0.1 : - - - No new feature - - -3 - Corrected bugs -================== - - Corrected in Version 2.0 : - - Corrected : During an extraction, if a call-back fucntion is used and try to skip - a file, all the extraction process is stopped. - - Corrected in Version 1.3 : - - Corrected : Support of static synopsis for method extract() is broken. - - Corrected : invalid size of archive content field (0xFF) should be (0xFFFF). - - Corrected : When an extract is done with a remove_path parameter, the entry for - the directory with exactly the same path is not skipped/filtered. - - Corrected : extractByIndex() and deleteByIndex() were not managing index in the - right way. For example indexes '1,3-5,11' will only extract files 1 and 11. This - is due to a sort of the index resulting table that puts 11 before 3-5 (sort on - string and not interger). The sort is temporarilly removed, this means that - you must provide a sorted list of index ranges. - - Corrected in Version 1.2 : - - - Nothing. - - Corrected in Version 1.1.2 : - - - Corrected : Winzip is unable to delete or add new files in a PclZip created archives. - - Corrected in Version 1.1.1 : - - - Corrected : When archived file is not compressed (0% compression), the - extract method fails. - - Corrected in Version 1.1 : - - - Corrected : Adding a complete tree of folder may result in a bad archive - creation. - - Corrected in Version 1.0.1 : - - - Corrected : Error while compressing files greater than PCLZIP_READ_BLOCK_SIZE (default=1024). - - -4 - Known bugs or limitations -============================= - - Please publish bugs reports in SourceForge : - http://sourceforge.net/tracker/?group_id=40254&atid=427564 - - In Version 2.x : - - PclZip does only support file uncompressed or compressed with deflate (compression method 8) - - PclZip does not support password protected zip archive - - Some concern were seen when changing mtime of a file while archiving. - Seems to be linked to Daylight Saving Time (PclTest_changing_mtime). - - In Version 1.2 : - - - merge() methods does not check for duplicate files or last date of modifications. - - In Version 1.1 : - - - Limitation : Using 'extract' fields in the file header in the zip archive is not supported. - - WinZip is unable to delete a single file in a PclZip created archive. It is also unable to - add a file in a PclZip created archive. (Corrected in v.1.2) - - In Version 1.0.1 : - - - Adding a complete tree of folder may result in a bad archive - creation. (Corrected in V.1.1). - - Path given to methods must be in the unix format (/) and not the Windows format (\). - Workaround : Use only / directory separators. - - PclZip is using temporary files that are sometime the name of the file with a .tmp or .gz - added suffix. Files with these names may already exist and may be overwritten. - Workaround : none. - - PclZip does not check if the zlib extension is present. If it is absent, the zip - file is not created and the lib abort without warning. - Workaround : enable the zlib extension on the php install - - In Version 1.0 : - - - Error while compressing files greater than PCLZIP_READ_BLOCK_SIZE (default=1024). - (Corrected in v.1.0.1) - - Limitation : Multi-disk zip archive are not supported. - - -5 - License -=========== - - Since version 1.1.2, PclZip Library is released under GNU/LGPL license. - This library is free, so you can use it at no cost. - - HOWEVER, if you release a script, an application, a library or any kind of - code using PclZip library (or a part of it), YOU MUST : - - Indicate in the documentation (or a readme file), that your work - uses PclZip Library, and make a reference to the author and the web site - http://www.phpconcept.net - - Gives the ability to the final user to update the PclZip libary. - - I will also appreciate that you send me a mail (vincent@phpconcept.net), just to - be aware that someone is using PclZip. - - For more information about GNU/LGPL license : http://www.gnu.org - -6 - Warning -================= - - This library and the associated files are non commercial, non professional work. - It should not have unexpected results. However if any damage is caused by this software - the author can not be responsible. - The use of this software is at the risk of the user. - -7 - Documentation -================= - PclZip User Manuel is available in English on PhpConcept : http://www.phpconcept.net/pclzip/man/en/index.php - A Russian translation was done by Feskov Kuzma : http://php.russofile.ru/ru/authors/unsort/zip/ - -8 - Author -========== - - This software was written by Vincent Blavet (vincent@phpconcept.net) on its leasure time. - -9 - Contribute -============== - If you want to contribute to the development of PclZip, please contact vincent@phpconcept.net. - If you can help in financing PhpConcept hosting service, please go to - http://www.phpconcept.net/soutien.php +// -------------------------------------------------------------------------------- +// PclZip 2.8.2 - readme.txt +// -------------------------------------------------------------------------------- +// License GNU/LGPL - August 2009 +// Vincent Blavet - vincent@phpconcept.net +// http://www.phpconcept.net +// -------------------------------------------------------------------------------- +// -------------------------------------------------------------------------------- + + + +0 - Sommaire +============ + 1 - Introduction + 2 - What's new + 3 - Corrected bugs + 4 - Known bugs or limitations + 5 - License + 6 - Warning + 7 - Documentation + 8 - Author + 9 - Contribute + +1 - Introduction +================ + + PclZip is a library that allow you to manage a Zip archive. + + Full documentation about PclZip can be found here : http://www.phpconcept.net/pclzip + +2 - What's new +============== + + Version 2.8.2 : + - PCLZIP_CB_PRE_EXTRACT and PCLZIP_CB_POST_EXTRACT are now supported with + extraction as a string (PCLZIP_OPT_EXTRACT_AS_STRING). The string + can also be modified in the post-extract call back. + **Bugs correction : + - PCLZIP_OPT_REMOVE_ALL_PATH was not working correctly + - Remove use of eval() and do direct call to callback functions + - Correct support of 64bits systems (Thanks to WordPress team) + + Version 2.8.1 : + - Move option PCLZIP_OPT_BY_EREG to PCLZIP_OPT_BY_PREG because ereg() is + deprecated in PHP 5.3. When using option PCLZIP_OPT_BY_EREG, PclZip will + automatically replace it by PCLZIP_OPT_BY_PREG. + + Version 2.8 : + - Improve extraction of zip archive for large files by using temporary files + This feature is working like the one defined in r2.7. + Options are renamed : PCLZIP_OPT_TEMP_FILE_ON, PCLZIP_OPT_TEMP_FILE_OFF, + PCLZIP_OPT_TEMP_FILE_THRESHOLD + - Add a ratio constant PCLZIP_TEMPORARY_FILE_RATIO to configure the auto + sense of temporary file use. + - Bug correction : Reduce filepath in returned file list to remove ennoying + './/' preambule in file path. + + Version 2.7 : + - Improve creation of zip archive for large files : + PclZip will now autosense the configured memory and use temporary files + when large file is suspected. + This feature can also ne triggered by manual options in create() and add() + methods. 'PCLZIP_OPT_ADD_TEMP_FILE_ON' force the use of temporary files, + 'PCLZIP_OPT_ADD_TEMP_FILE_OFF' disable the autosense technic, + 'PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD' allow for configuration of a size + threshold to use temporary files. + Using "temporary files" rather than "memory" might take more time, but + might give the ability to zip very large files : + Tested on my win laptop with a 88Mo file : + Zip "in-memory" : 18sec (max_execution_time=30, memory_limit=180Mo) + Zip "tmporary-files" : 23sec (max_execution_time=30, memory_limit=30Mo) + - Replace use of mktime() by time() to limit the E_STRICT error messages. + - Bug correction : When adding files with full windows path (drive letter) + PclZip is now working. Before, if the drive letter is not the default + path, PclZip was not able to add the file. + + Version 2.6 : + - Code optimisation + - New attributes PCLZIP_ATT_FILE_COMMENT gives the ability to + add a comment for a specific file. (Don't really know if this is usefull) + - New attribute PCLZIP_ATT_FILE_CONTENT gives the ability to add a string + as a file. + - New attribute PCLZIP_ATT_FILE_MTIME modify the timestamp associated with + a file. + - Correct a bug. Files archived with a timestamp with 0h0m0s were extracted + with current time + - Add CRC value in the informations returned back for each file after an + action. + - Add missing closedir() statement. + - When adding a folder, and removing the path of this folder, files were + incorrectly added with a '/' at the beginning. Which means files are + related to root in unix systems. Corrected. + - Add conditional if before constant definition. This will allow users + to redefine constants without changing the file, and then improve + upgrade of pclzip code for new versions. + + Version 2.5 : + - Introduce the ability to add file/folder with individual properties (file descriptor). + This gives for example the ability to change the filename of a zipped file. + . Able to add files individually + . Able to change full name + . Able to change short name + . Compatible with global options + - New attributes : PCLZIP_ATT_FILE_NAME, PCLZIP_ATT_FILE_NEW_SHORT_NAME, PCLZIP_ATT_FILE_NEW_FULL_NAME + - New error code : PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE + - Add a security control feature. PclZip can extract any file in any folder + of a system. People may use this to upload a zip file and try to override + a system file. The PCLZIP_OPT_EXTRACT_DIR_RESTRICTION will give the + ability to forgive any directory transversal behavior. + - New PCLZIP_OPT_EXTRACT_DIR_RESTRICTION : check extraction path + - New error code : PCLZIP_ERR_DIRECTORY_RESTRICTION + - Modification in PclZipUtilPathInclusion() : dir and path beginning with ./ will be prepend + by current path (getcwd()) + + Version 2.4 : + - Code improvment : try to speed up the code by removing unusefull call to pack() + - Correct bug in delete() : delete() should be called with no argument. This was not + the case in 2.3. This is corrected in 2.4. + - Correct a bug in path_inclusion function. When the path has several '../../', the + result was bad. + - Add a check for magic_quotes_runtime configuration. If enabled, PclZip will + disable it while working and det it back to its original value. + This resolve a lots of bad formated archive errors. + - Bug correction : PclZip now correctly unzip file in some specific situation, + when compressed content has same size as uncompressed content. + - Bug correction : When selecting option 'PCLZIP_OPT_REMOVE_ALL_PATH', + directories are not any more created. + - Code improvment : correct unclosed opendir(), better handling of . and .. in + loops. + + + Version 2.3 : + - Correct a bug with PHP5 : affecting the value 0xFE49FFE0 to a variable does not + give the same result in PHP4 and PHP5 .... + + Version 2.2 : + - Try development of PCLZIP_OPT_CRYPT ..... + However this becomes to a stop. To crypt/decrypt I need to multiply 2 long integers, + the result (greater than a long) is not supported by PHP. Even the use of bcmath + functions does not help. I did not find yet a solution ...; + - Add missing '/' at end of directory entries + - Check is a file is encrypted or not. Returns status 'unsupported_encryption' and/or + error code PCLZIP_ERR_UNSUPPORTED_ENCRYPTION. + - Corrected : Bad "version need to extract" field in local file header + - Add private method privCheckFileHeaders() in order to check local and central + file headers. PclZip is now supporting purpose bit flag bit 3. Purpose bit flag bit 3 gives + the ability to have a local file header without size, compressed size and crc filled. + - Add a generic status 'error' for file status + - Add control of compression type. PclZip only support deflate compression method. + Before v2.2, PclZip does not check the compression method used in an archive while + extracting. With v2.2 PclZip returns a new error status for a file using an unsupported + compression method. New status is "unsupported_compression". New error code is + PCLZIP_ERR_UNSUPPORTED_COMPRESSION. + - Add optional attribute PCLZIP_OPT_STOP_ON_ERROR. This will stop the extract of files + when errors like 'a folder with same name exists' or 'a newer file exists' or + 'a write protected file' exists, rather than set a status for the concerning file + and resume the extract of the zip. + - Add optional attribute PCLZIP_OPT_REPLACE_NEWER. This will force, during an extract' the + replacement of the file, even if a newer version of the file exists. + Note that today if a file with the same name already exists but is older it will be + replaced by the extracted one. + - Improve PclZipUtilOption() + - Support of zip archive with trailing bytes. Before 2.2, PclZip checks that the central + directory structure is the last data in the archive. Crypt encryption/decryption of + zip archive put trailing 0 bytes after decryption. PclZip is now supporting this. + + Version 2.1 : + - Add the ability to abort the extraction by using a user callback function. + The user can now return the value '2' in its callback which indicates to stop the + extraction. For a pre call-back extract is stopped before the extration of the current + file. For a post call back, the extraction is stopped after. + - Add the ability to extract a file (or several files) directly in the standard output. + This is done by the new parameter PCLZIP_OPT_EXTRACT_IN_OUTPUT with method extract(). + - Add support for parameters PCLZIP_OPT_COMMENT, PCLZIP_OPT_ADD_COMMENT, + PCLZIP_OPT_PREPEND_COMMENT. This will create, replace, add, or prepend comments + in the zip archive. + - When merging two archives, the comments are not any more lost, but merged, with a + blank space separator. + - Corrected bug : Files are not deleted when all files are asked to be deleted. + - Corrected bug : Folders with name '0' made PclZip to abort the create or add feature. + + + Version 2.0 : + ***** Warning : Some new features may break the backward compatibility for your scripts. + Please carefully read the readme file. + - Add the ability to delete by Index, name and regular expression. This feature is + performed by the method delete(), which uses the optional parameters + PCLZIP_OPT_BY_INDEX, PCLZIP_OPT_BY_NAME, PCLZIP_OPT_BY_EREG or PCLZIP_OPT_BY_PREG. + - Add the ability to extract by regular expression. To extract by regexp you must use the method + extract(), with the option PCLZIP_OPT_BY_EREG or PCLZIP_OPT_BY_PREG + (depending if you want to use ereg() or preg_match() syntax) followed by the + regular expression pattern. + - Add the ability to extract by index, directly with the extract() method. This is a + code improvment of the extractByIndex() method. + - Add the ability to extract by name. To extract by name you must use the method + extract(), with the option PCLZIP_OPT_BY_NAME followed by the filename to + extract or an array of filenames to extract. To extract all a folder, use the folder + name rather than the filename with a '/' at the end. + - Add the ability to add files without compression. This is done with a new attribute + which is PCLZIP_OPT_NO_COMPRESSION. + - Add the attribute PCLZIP_OPT_EXTRACT_AS_STRING, which allow to extract a file directly + in a string without using any file (or temporary file). + - Add constant PCLZIP_SEPARATOR for static configuration of filename separators in a single string. + The default separator is now a comma (,) and not any more a blank space. + THIS BREAK THE BACKWARD COMPATIBILITY : Please check if this may have an impact with + your script. + - Improve algorythm performance by removing the use of temporary files when adding or + extracting files in an archive. + - Add (correct) detection of empty filename zipping. This can occurs when the removed + path is the same + as a zipped dir. The dir is not zipped (['status'] = filtered), only its content. + - Add better support for windows paths (thanks for help from manus@manusfreedom.com). + - Corrected bug : When the archive file already exists with size=0, the add() method + fails. Corrected in 2.0. + - Remove the use of OS_WINDOWS constant. Use php_uname() function rather. + - Control the order of index ranges in extract by index feature. + - Change the internal management of folders (better handling of internal flag). + + + Version 1.3 : + - Removing the double include check. This is now done by include_once() and require_once() + PHP directives. + - Changing the error handling mecanism : Remove the use of an external error library. + The former PclError...() functions are replaced by internal equivalent methods. + By changing the environment variable PCLZIP_ERROR_EXTERNAL you can still use the former library. + Introducing the use of constants for error codes rather than integer values. This will help + in futur improvment. + Introduction of error handling functions like errorCode(), errorName() and errorInfo(). + - Remove the deprecated use of calling function with arguments passed by reference. + - Add the calling of extract(), extractByIndex(), create() and add() functions + with variable options rather than fixed arguments. + - Add the ability to remove all the file path while extracting or adding, + without any need to specify the path to remove. + This is available for extract(), extractByIndex(), create() and add() functionS by using + the new variable options parameters : + - PCLZIP_OPT_REMOVE_ALL_PATH : by indicating this option while calling the fct. + - Ability to change the mode of a file after the extraction (chmod()). + This is available for extract() and extractByIndex() functionS by using + the new variable options parameters. + - PCLZIP_OPT_SET_CHMOD : by setting the value of this option. + - Ability to definition call-back options. These call-back will be called during the adding, + or the extracting of file (extract(), extractByIndex(), create() and add() functions) : + - PCLZIP_CB_PRE_EXTRACT : will be called before each extraction of a file. The user + can trigerred the change the filename of the extracted file. The user can triggered the + skip of the extraction. This is adding a 'skipped' status in the file list result value. + - PCLZIP_CB_POST_EXTRACT : will be called after each extraction of a file. + Nothing can be triggered from that point. + - PCLZIP_CB_PRE_ADD : will be called before each add of a file. The user + can trigerred the change the stored filename of the added file. The user can triggered the + skip of the add. This is adding a 'skipped' status in the file list result value. + - PCLZIP_CB_POST_ADD : will be called after each add of a file. + Nothing can be triggered from that point. + - Two status are added in the file list returned as function result : skipped & filename_too_long + 'skipped' is used when a call-back function ask for skipping the file. + 'filename_too_long' is used while adding a file with a too long filename to archive (the file is + not added) + - Adding the function PclZipUtilPathInclusion(), that check the inclusion of a path into + a directory. + - Add a check of the presence of the archive file before some actions (like list, ...) + - Add the initialisation of field "index" in header array. This means that by + default index will be -1 when not explicitly set by the methods. + + Version 1.2 : + - Adding a duplicate function. + - Adding a merge function. The merge function is a "quick merge" function, + it just append the content of an archive at the end of the first one. There + is no check for duplicate files or more recent files. + - Improve the search of the central directory end. + + Version 1.1.2 : + + - Changing the license of PclZip. PclZip is now released under the GNU / LGPL license + (see License section). + - Adding the optional support of a static temporary directory. You will need to configure + the constant PCLZIP_TEMPORARY_DIR if you want to use this feature. + - Improving the rename() function. In some cases rename() does not work (different + Filesystems), so it will be replaced by a copy() + unlink() functions. + + Version 1.1.1 : + + - Maintenance release, no new feature. + + Version 1.1 : + + - New method Add() : adding files in the archive + - New method ExtractByIndex() : partial extract of the archive, files are identified by + their index in the archive + - New method DeleteByIndex() : delete some files/folder entries from the archive, + files are identified by their index in the archive. + - Adding a test of the zlib extension presence. If not present abort the script. + + Version 1.0.1 : + + - No new feature + + +3 - Corrected bugs +================== + + Corrected in Version 2.0 : + - Corrected : During an extraction, if a call-back fucntion is used and try to skip + a file, all the extraction process is stopped. + + Corrected in Version 1.3 : + - Corrected : Support of static synopsis for method extract() is broken. + - Corrected : invalid size of archive content field (0xFF) should be (0xFFFF). + - Corrected : When an extract is done with a remove_path parameter, the entry for + the directory with exactly the same path is not skipped/filtered. + - Corrected : extractByIndex() and deleteByIndex() were not managing index in the + right way. For example indexes '1,3-5,11' will only extract files 1 and 11. This + is due to a sort of the index resulting table that puts 11 before 3-5 (sort on + string and not interger). The sort is temporarilly removed, this means that + you must provide a sorted list of index ranges. + + Corrected in Version 1.2 : + + - Nothing. + + Corrected in Version 1.1.2 : + + - Corrected : Winzip is unable to delete or add new files in a PclZip created archives. + + Corrected in Version 1.1.1 : + + - Corrected : When archived file is not compressed (0% compression), the + extract method fails. + + Corrected in Version 1.1 : + + - Corrected : Adding a complete tree of folder may result in a bad archive + creation. + + Corrected in Version 1.0.1 : + + - Corrected : Error while compressing files greater than PCLZIP_READ_BLOCK_SIZE (default=1024). + + +4 - Known bugs or limitations +============================= + + Please publish bugs reports in SourceForge : + http://sourceforge.net/tracker/?group_id=40254&atid=427564 + + In Version 2.x : + - PclZip does only support file uncompressed or compressed with deflate (compression method 8) + - PclZip does not support password protected zip archive + - Some concern were seen when changing mtime of a file while archiving. + Seems to be linked to Daylight Saving Time (PclTest_changing_mtime). + + In Version 1.2 : + + - merge() methods does not check for duplicate files or last date of modifications. + + In Version 1.1 : + + - Limitation : Using 'extract' fields in the file header in the zip archive is not supported. + - WinZip is unable to delete a single file in a PclZip created archive. It is also unable to + add a file in a PclZip created archive. (Corrected in v.1.2) + + In Version 1.0.1 : + + - Adding a complete tree of folder may result in a bad archive + creation. (Corrected in V.1.1). + - Path given to methods must be in the unix format (/) and not the Windows format (\). + Workaround : Use only / directory separators. + - PclZip is using temporary files that are sometime the name of the file with a .tmp or .gz + added suffix. Files with these names may already exist and may be overwritten. + Workaround : none. + - PclZip does not check if the zlib extension is present. If it is absent, the zip + file is not created and the lib abort without warning. + Workaround : enable the zlib extension on the php install + + In Version 1.0 : + + - Error while compressing files greater than PCLZIP_READ_BLOCK_SIZE (default=1024). + (Corrected in v.1.0.1) + - Limitation : Multi-disk zip archive are not supported. + + +5 - License +=========== + + Since version 1.1.2, PclZip Library is released under GNU/LGPL license. + This library is free, so you can use it at no cost. + + HOWEVER, if you release a script, an application, a library or any kind of + code using PclZip library (or a part of it), YOU MUST : + - Indicate in the documentation (or a readme file), that your work + uses PclZip Library, and make a reference to the author and the web site + http://www.phpconcept.net + - Gives the ability to the final user to update the PclZip libary. + + I will also appreciate that you send me a mail (vincent@phpconcept.net), just to + be aware that someone is using PclZip. + + For more information about GNU/LGPL license : http://www.gnu.org + +6 - Warning +================= + + This library and the associated files are non commercial, non professional work. + It should not have unexpected results. However if any damage is caused by this software + the author can not be responsible. + The use of this software is at the risk of the user. + +7 - Documentation +================= + PclZip User Manuel is available in English on PhpConcept : http://www.phpconcept.net/pclzip/man/en/index.php + A Russian translation was done by Feskov Kuzma : http://php.russofile.ru/ru/authors/unsort/zip/ + +8 - Author +========== + + This software was written by Vincent Blavet (vincent@phpconcept.net) on its leasure time. + +9 - Contribute +============== + If you want to contribute to the development of PclZip, please contact vincent@phpconcept.net. + If you can help in financing PhpConcept hosting service, please go to + http://www.phpconcept.net/soutien.php diff --git a/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/cache/utf8test.txt b/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/cache/utf8test.txt index 723a37d84b0..af794dfdb23 100644 --- a/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/cache/utf8test.txt +++ b/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/cache/utf8test.txt @@ -1,122 +1,122 @@ -Sentences that contain all letters commonly used in a language --------------------------------------------------------------- - -Markus Kuhn -- 2001-09-02 - -This file is UTF-8 encoded. - - -Danish (da) ---------- - - Quizdeltagerne spiste jordbær med fløde, mens cirkusklovnen - Wolther spillede på xylofon. - (= Quiz contestants were eating strawbery with cream while Wolther - the circus clown played on xylophone.) - -German (de) ------------ - - Falsches Üben von Xylophonmusik quält jeden größeren Zwerg - (= Wrongful practicing of xylophone music tortures every larger dwarf) - - Zwölf Boxkämpfer jagten Eva quer über den Sylter Deich - (= Twelve boxing fighters hunted Eva across the dike of Sylt) - - Heizölrückstoßabdämpfung - (= fuel oil recoil absorber) - (jqvwxy missing, but all non-ASCII letters in one word) - -English (en) ------------- - - The quick brown fox jumps over the lazy dog - -Spanish (es) ------------- - - El pingüino Wenceslao hizo kilómetros bajo exhaustiva lluvia y - frío, añoraba a su querido cachorro. - (Contains every letter and every accent, but not every combination - of vowel + acute.) - -French (fr) ------------ - - Portez ce vieux whisky au juge blond qui fume sur son île intérieure, à - côté de l'alcôve ovoïde, où les bûches se consument dans l'âtre, ce - qui lui permet de penser à la cænogenèse de l'être dont il est question - dans la cause ambiguë entendue à Moÿ, dans un capharnaüm qui, - pense-t-il, diminue çà et là la qualité de son œuvre. - - l'île exiguë - Où l'obèse jury mûr - Fête l'haï volapük, - Âne ex aéquo au whist, - Ôtez ce vœu déçu. - - Le cœur déçu mais l'âme plutôt naïve, Louÿs rêva de crapaüter en - canoë au delà des îles, près du mälström où brûlent les novæ. - -Irish Gaelic (ga) ------------------ - - D'fhuascail Íosa, Úrmhac na hÓighe Beannaithe, pór Éava agus Ádhaimh - -Hungarian (hu) --------------- - - Árvíztűrő tükörfúrógép - (= flood-proof mirror-drilling machine, only all non-ASCII letters) - -Icelandic (is) --------------- - - Kæmi ný öxi hér ykist þjófum nú bæði víl og ádrepa - - Sævör grét áðan því úlpan var ónýt - (some ASCII letters missing) - -Greek (el) -------------- - - Γαζέες καὶ μυρτιὲς δὲν θὰ βρῶ πιὰ στὸ χρυσαφὶ ξέφωτο - (= No more shall I see acacias or myrtles in the golden clearing) - - Ξεσκεπάζω τὴν ψυχοφθόρα βδελυγμία - (= I uncover the soul-destroying abhorrence) - -Hebrew (iw) ------------ - - ? דג סקרן שט בים מאוכזב ולפתע מצא לו חברה איך הקליטה - -Polish (pl) ------------ - - Pchnąć w tę łódź jeża lub osiem skrzyń fig - (= To push a hedgehog or eight bins of figs in this boat) - - Zażółć gęślą jaźń - -Russian (ru) ------------- - - В чащах юга жил бы цитрус? Да, но фальшивый экземпляр! - (= Would a citrus live in the bushes of south? Yes, but only a fake one!) - -Thai (th) ---------- - - [--------------------------|------------------------] - ๏ เป็นมนุษย์สุดประเสริฐเลิศคุณค่า กว่าบรรดาฝูงสัตว์เดรัจฉาน - จงฝ่าฟันพัฒนาวิชาการ อย่าล้างผลาญฤๅเข่นฆ่าบีฑาใคร - ไม่ถือโทษโกรธแช่งซัดฮึดฮัดด่า หัดอภัยเหมือนกีฬาอัชฌาสัย - ปฏิบัติประพฤติกฎกำหนดใจ พูดจาให้จ๊ะๆ จ๋าๆ น่าฟังเอย ฯ - - [The copyright for the Thai example is owned by The Computer - Association of Thailand under the Royal Patronage of His Majesty the - King.] - -Please let me know if you find others! Special thanks to the people -from all over the world who contributed these sentences. +Sentences that contain all letters commonly used in a language +-------------------------------------------------------------- + +Markus Kuhn -- 2001-09-02 + +This file is UTF-8 encoded. + + +Danish (da) +--------- + + Quizdeltagerne spiste jordbær med fløde, mens cirkusklovnen + Wolther spillede på xylofon. + (= Quiz contestants were eating strawbery with cream while Wolther + the circus clown played on xylophone.) + +German (de) +----------- + + Falsches Üben von Xylophonmusik quält jeden größeren Zwerg + (= Wrongful practicing of xylophone music tortures every larger dwarf) + + Zwölf Boxkämpfer jagten Eva quer über den Sylter Deich + (= Twelve boxing fighters hunted Eva across the dike of Sylt) + + Heizölrückstoßabdämpfung + (= fuel oil recoil absorber) + (jqvwxy missing, but all non-ASCII letters in one word) + +English (en) +------------ + + The quick brown fox jumps over the lazy dog + +Spanish (es) +------------ + + El pingüino Wenceslao hizo kilómetros bajo exhaustiva lluvia y + frío, añoraba a su querido cachorro. + (Contains every letter and every accent, but not every combination + of vowel + acute.) + +French (fr) +----------- + + Portez ce vieux whisky au juge blond qui fume sur son île intérieure, à + côté de l'alcôve ovoïde, où les bûches se consument dans l'âtre, ce + qui lui permet de penser à la cænogenèse de l'être dont il est question + dans la cause ambiguë entendue à Moÿ, dans un capharnaüm qui, + pense-t-il, diminue çà et là la qualité de son œuvre. + + l'île exiguë + Où l'obèse jury mûr + Fête l'haï volapük, + Âne ex aéquo au whist, + Ôtez ce vœu déçu. + + Le cœur déçu mais l'âme plutôt naïve, Louÿs rêva de crapaüter en + canoë au delà des îles, près du mälström où brûlent les novæ. + +Irish Gaelic (ga) +----------------- + + D'fhuascail Íosa, Úrmhac na hÓighe Beannaithe, pór Éava agus Ádhaimh + +Hungarian (hu) +-------------- + + Árvíztűrő tükörfúrógép + (= flood-proof mirror-drilling machine, only all non-ASCII letters) + +Icelandic (is) +-------------- + + Kæmi ný öxi hér ykist þjófum nú bæði víl og ádrepa + + Sævör grét áðan því úlpan var ónýt + (some ASCII letters missing) + +Greek (el) +------------- + + Γαζέες καὶ μυρτιὲς δὲν θὰ βρῶ πιὰ στὸ χρυσαφὶ ξέφωτο + (= No more shall I see acacias or myrtles in the golden clearing) + + Ξεσκεπάζω τὴν ψυχοφθόρα βδελυγμία + (= I uncover the soul-destroying abhorrence) + +Hebrew (iw) +----------- + + ? דג סקרן שט בים מאוכזב ולפתע מצא לו חברה איך הקליטה + +Polish (pl) +----------- + + Pchnąć w tę łódź jeża lub osiem skrzyń fig + (= To push a hedgehog or eight bins of figs in this boat) + + Zażółć gęślą jaźń + +Russian (ru) +------------ + + В чащах юга жил бы цитрус? Да, но фальшивый экземпляр! + (= Would a citrus live in the bushes of south? Yes, but only a fake one!) + +Thai (th) +--------- + + [--------------------------|------------------------] + ๏ เป็นมนุษย์สุดประเสริฐเลิศคุณค่า กว่าบรรดาฝูงสัตว์เดรัจฉาน + จงฝ่าฟันพัฒนาวิชาการ อย่าล้างผลาญฤๅเข่นฆ่าบีฑาใคร + ไม่ถือโทษโกรธแช่งซัดฮึดฮัดด่า หัดอภัยเหมือนกีฬาอัชฌาสัย + ปฏิบัติประพฤติกฎกำหนดใจ พูดจาให้จ๊ะๆ จ๋าๆ น่าฟังเอย ฯ + + [The copyright for the Thai example is owned by The Computer + Association of Thailand under the Royal Patronage of His Majesty the + King.] + +Please let me know if you find others! Special thanks to the people +from all over the world who contributed these sentences. diff --git a/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/fonts/utils/src/readme.txt b/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/fonts/utils/src/readme.txt index 6e5b40d98a1..f351cd9a485 100644 --- a/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/fonts/utils/src/readme.txt +++ b/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/fonts/utils/src/readme.txt @@ -1,17 +1,17 @@ -To embed TrueType and OpenType font files, you need to extract the -font metrics from the font files and build the required tables using -the utility TTF2UFM. - -TTF2UFM is a modified version of Mark Heath's TTF 2 PT1 converter -(http://ttf2pt1.sourceforge.net/) by Steven Wittens -(http://www.acko.net/blog/ufpdf). That version has been further -modified by Ulrich Telle for use with the wxWidgets component -wxPdfDocument. - -Following changes where made: - -1) Generated AFM files contain the glyph number for each character. -2) Generated UFM files contain the bounding box for each character. -3) OpenType support has been activated for the Windows binary, - and the generated AFM/UFM files contain the associated - original Unicode codes for each character. +To embed TrueType and OpenType font files, you need to extract the +font metrics from the font files and build the required tables using +the utility TTF2UFM. + +TTF2UFM is a modified version of Mark Heath's TTF 2 PT1 converter +(http://ttf2pt1.sourceforge.net/) by Steven Wittens +(http://www.acko.net/blog/ufpdf). That version has been further +modified by Ulrich Telle for use with the wxWidgets component +wxPdfDocument. + +Following changes where made: + +1) Generated AFM files contain the glyph number for each character. +2) Generated UFM files contain the bounding box for each character. +3) OpenType support has been activated for the Windows binary, + and the generated AFM/UFM files contain the associated + original Unicode codes for each character. diff --git a/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/images/bug.eps b/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/images/bug.eps index 7df891e7d9f..999829274f7 100644 --- a/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/images/bug.eps +++ b/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/images/bug.eps @@ -1,1809 +1,1809 @@ -%!PS-Adobe-3.0 EPSF-3.0 -%%Creator: Adobe Illustrator(TM) 3.2 -%%AI8_CreatorVersion: 12.0.0 -%%For: (fluxus) (x) -%%Title: (bug.eps) -%%CreationDate: 4/15/2006 11:11 PM -%%BoundingBox: -2 747 53 843 -% -2 747 53 843 -%%DocumentProcessColors: Cyan Magenta Yellow Black -%%DocumentSuppliedResources: procset Adobe_packedarray 2.0 0 -%%+ procset Adobe_cmykcolor 1.1 0 -%%+ procset Adobe_cshow 1.1 0 -%%+ procset Adobe_customcolor 1.0 0 -%%+ procset Adobe_pattern_AI3 1.0 0 -%%+ procset Adobe_Illustrator_AI3 1.0 1 -%AI3_ColorUsage: Color -%AI3_IncludePlacedImages -%%CMYKCustomColor: 1 1 1 1 ([Registration]) -%AI3_TemplateBox: 298.5 420.3896 298.5 420.3896 -%AI3_TileBox: 0.157715 0.044861 595.1177 841.9648 -%AI3_DocumentPreview: Header -%%PageOrigin:-32 11.8896 -%AI7_GridSettings: 72 8 72 8 1 0 0.8 0.8 0.8 0.9 0.9 0.9 -%AI9_Flatten: 1 -%AI12_CMSettings: 00.MS -%%EndComments -%%BeginProlog -%%BeginResource: procset Adobe_packedarray 2.0 0 -%%Title: (Packed Array Operators) -%%Version: 2.0 0 -%%CreationDate: (8/2/90) () -%%Copyright: ((C) 1987-1996 Adobe Systems Incorporated All Rights Reserved) -userdict /Adobe_packedarray 5 dict dup begin put -/initialize -{ -/packedarray where - { - pop - } - { - Adobe_packedarray begin - Adobe_packedarray - { - dup xcheck - { - bind - } if - userdict 3 1 roll put - } forall - end - } ifelse -} def -/terminate -{ -} def -/packedarray -{ -array astore readonly -} def -/setpacking -{ -pop -} def -/currentpacking -{ -false -} def -currentdict readonly pop end -%%EndResource -Adobe_packedarray /initialize get exec -%%BeginResource: procset Adobe_cmykcolor 1.1 0 -%%Title: (CMYK Color Operators) -%%Version: 1.1 0 -%%CreationDate: (1/23/89) () -%%Copyright: ((C) 1987-1996 Adobe Systems Incorporated All Rights Reserved) -currentpacking true setpacking -userdict /Adobe_cmykcolor 4 dict dup begin put -/initialize -{ -/setcmykcolor where - { - pop - } - { - userdict /Adobe_cmykcolor_vars 2 dict dup begin put - /_setrgbcolor - /setrgbcolor load def - /_currentrgbcolor - /currentrgbcolor load def - Adobe_cmykcolor begin - Adobe_cmykcolor - { - dup xcheck - { - bind - } if - pop pop - } forall - end - end - Adobe_cmykcolor begin - } ifelse -} def -/terminate -{ -currentdict Adobe_cmykcolor eq - { - end - } if -} def -/setcmykcolor -{ -1 sub 4 1 roll -3 - { - 3 index add neg dup 0 lt - { - pop 0 - } if - 3 1 roll - } repeat -Adobe_cmykcolor_vars /_setrgbcolor get exec -pop -} def -/currentcmykcolor -{ -Adobe_cmykcolor_vars /_currentrgbcolor get exec -3 - { - 1 sub neg 3 1 roll - } repeat -0 -} def -currentdict readonly pop end -setpacking -%%EndResource -%%BeginResource: procset Adobe_cshow 1.1 0 -%%Title: (cshow Operator) -%%Version: 1.1 0 -%%CreationDate: (1/23/89) () -%%Copyright: ((C) 1987-1996 Adobe Systems Incorporated All Rights Reserved) -currentpacking true setpacking -userdict /Adobe_cshow 3 dict dup begin put -/initialize -{ -/cshow where - { - pop - } - { - userdict /Adobe_cshow_vars 1 dict dup begin put - /_cshow - {} def - Adobe_cshow begin - Adobe_cshow - { - dup xcheck - { - bind - } if - userdict 3 1 roll put - } forall - end - end - } ifelse -} def -/terminate -{ -} def -/cshow -{ -exch -Adobe_cshow_vars - exch /_cshow - exch put - { - 0 0 Adobe_cshow_vars /_cshow get exec - } forall -} def -currentdict readonly pop end -setpacking -%%EndResource -%%BeginResource: procset Adobe_customcolor 1.0 0 -%%Title: (Custom Color Operators) -%%Version: 1.0 0 -%%CreationDate: (5/9/88) () -%%Copyright: ((C) 1987-1996 Adobe Systems Incorporated All Rights Reserved) -currentpacking true setpacking -userdict /Adobe_customcolor 5 dict dup begin put -/initialize -{ -/setcustomcolor where - { - pop - } - { - Adobe_customcolor begin - Adobe_customcolor - { - dup xcheck - { - bind - } if - pop pop - } forall - end - Adobe_customcolor begin - } ifelse -} def -/terminate -{ -currentdict Adobe_customcolor eq - { - end - } if -} def -/findcmykcustomcolor -{ -5 packedarray -} def -/setcustomcolor -{ -exch -aload pop pop -4 - { - 4 index mul 4 1 roll - } repeat -5 -1 roll pop -setcmykcolor -} def -/setoverprint -{ -pop -} def -currentdict readonly pop end -setpacking -%%EndResource -%%BeginResource: procset Adobe_pattern_AI3 1.1 0 -%%Title: (Adobe Illustrator (R) Version 3.0 Pattern Operators) -%%Version: 1.1 0 -%%CreationDate: (7/21/89) () -%%Copyright: ((C) 1987-1996 Adobe Systems Incorporated All Rights Reserved) -currentpacking true setpacking -userdict /Adobe_pattern_AI3 16 dict dup begin put -/initialize -{ -/definepattern where - { - pop - } - { - Adobe_pattern_AI3 begin - Adobe_pattern_AI3 - { - dup xcheck - { - bind - } if - pop pop - } forall - mark - cachestatus 7 1 roll pop pop pop pop exch pop exch - { - { - 10000 add - dup 2 index gt - { - exit - } if - dup setcachelimit - } loop - } stopped - cleartomark - } ifelse -} def -/terminate -{ -currentdict Adobe_pattern_AI3 eq - { - end - } if -} def -errordict -/nocurrentpoint -{ -pop -stop -} put -errordict -/invalidaccess -{ -pop -stop -} put -/patternencoding -256 array def -0 1 255 -{ -patternencoding exch ( ) 2 copy exch 0 exch put cvn put -} for -/definepattern -{ -17 dict begin -/uniform exch def -/cache exch def -/key exch def -/procarray exch def -/mtx exch matrix invertmatrix def -/height exch def -/width exch def -/ctm matrix currentmatrix def -/ptm matrix def -/str 32 string def -/slice 9 dict def -slice /s 1 put -slice /q 256 procarray length div sqrt floor cvi put -slice /b 0 put -/FontBBox [0 0 0 0] def -/FontMatrix mtx matrix copy def -/Encoding patternencoding def -/FontType 3 def -/BuildChar - { - exch - begin - /setstrokeadjust where {pop true setstrokeadjust} if - slice begin - dup q dup mul mod s idiv /i exch def - dup q dup mul mod s mod /j exch def - q dup mul idiv procarray exch get - /xl j width s div mul def - /xg j 1 add width s div mul def - /yl i height s div mul def - /yg i 1 add height s div mul def - uniform - { - 1 1 - } - { - width 0 dtransform - dup mul exch dup mul add sqrt dup 1 add exch div - 0 height dtransform - dup mul exch dup mul add sqrt dup 1 add exch div - } ifelse - width 0 cache - { - xl 4 index mul yl 4 index mul xg 6 index mul yg 6 index mul - setcachedevice - } - { - setcharwidth - } ifelse - gsave - scale - newpath - xl yl moveto - xg yl lineto - xg yg lineto - xl yg lineto - closepath - clip - newpath - end - end - exec - grestore - } def -key currentdict definefont -end -} def -/patterncachesize -{ -gsave -newpath -0 0 moveto -width 0 lineto -width height lineto -0 height lineto -closepath -patternmatrix setmatrix -pathbbox -exch ceiling 4 -1 roll floor sub 3 1 roll -ceiling exch floor sub -mul 1 add -grestore -} def -/patterncachelimit -{ -cachestatus 7 1 roll 6 npop 8 mul -} def -/patternpath -{ -exch dup begin setfont -ctm setmatrix -concat -slice exch /b exch slice /q get dup mul mul put -FontMatrix concat -uniform - { - width 0 dtransform round width div exch round width div exch - 0 height dtransform round height div exch height div exch - 0 0 transform round exch round exch - ptm astore setmatrix - } - { - ptm currentmatrix pop - } ifelse -{currentpoint} stopped not - { - 2 npop - pathbbox - true - 4 index 3 index eq - 4 index 3 index eq - and - { - pop false - { - {2 npop} - {3 npop true} - {7 npop true} - {pop true} - pathforall - } stopped - { - 5 npop true - } if - } if - { - height div ceiling height mul 4 1 roll - width div ceiling width mul 4 1 roll - height div floor height mul 4 1 roll - width div floor width mul 4 1 roll - 2 index sub height div ceiling cvi exch - 3 index sub width div ceiling cvi exch - 4 2 roll moveto - FontMatrix mtx invertmatrix - dup dup 4 get exch 5 get rmoveto - ptm ptm concatmatrix pop - slice /s - patterncachesize patterncachelimit div ceiling sqrt ceiling cvi - dup slice /q get gt - { - pop slice /q get - } if - put - 0 1 slice /s get dup mul 1 sub - { - slice /b get add - gsave - 0 1 str length 1 sub - { - str exch 2 index put - } for - pop - dup - { - gsave - ptm setmatrix - 1 index str length idiv {str show} repeat - 1 index str length mod str exch 0 exch getinterval show - grestore - 0 height rmoveto - } repeat - grestore - } for - 2 npop - } - { - 4 npop - } ifelse - } if -end -} def -/patternclip -{ -clip -} def -/patternstrokepath -{ -strokepath -} def -/patternmatrix -matrix def -/patternfill -{ -dup type /dicttype eq - { - Adobe_pattern_AI3 /patternmatrix get - } if -gsave -patternclip -Adobe_pattern_AI3 /patternpath get exec -grestore -newpath -} def -/patternstroke -{ -dup type /dicttype eq - { - Adobe_pattern_AI3 /patternmatrix get - } if -gsave -patternstrokepath -true - { - { - { - newpath - moveto - } - { - lineto - } - { - curveto - } - { - closepath - 3 copy - Adobe_pattern_AI3 /patternfill get exec - } pathforall - 3 npop - } stopped - { - 5 npop - patternclip - Adobe_pattern_AI3 /patternfill get exec - } if - } - { - patternclip - Adobe_pattern_AI3 /patternfill get exec - } ifelse -grestore -newpath -} def -/patternashow -{ -3 index type /dicttype eq - { - Adobe_pattern_AI3 /patternmatrix get 4 1 roll - } if - { - 2 npop (0) exch - 2 copy 0 exch put pop - gsave - false charpath currentpoint - 6 index 6 index 6 index - Adobe_pattern_AI3 /patternfill get exec - grestore - newpath moveto - 2 copy rmoveto - } exch cshow -5 npop -} def -/patternawidthshow -{ -6 index type /dicttype eq - { - Adobe_pattern_AI3 /patternmatrix get 7 1 roll - } if - { - 2 npop (0) exch - 2 copy 0 exch put - gsave - _sp eq {5 index 5 index rmoveto} if - false charpath currentpoint - 9 index 9 index 9 index - Adobe_pattern_AI3 /patternfill get exec - grestore - newpath moveto - 2 copy rmoveto - } exch cshow -8 npop -} def -/patternashowstroke -{ -4 index type /dicttype eq - { - patternmatrix /patternmatrix get 5 1 roll - } if -4 1 roll - { - 2 npop (0) exch - 2 copy 0 exch put pop - gsave - false charpath - currentpoint - 4 index setmatrix - 7 index 7 index 7 index - Adobe_pattern_AI3 /patternstroke get exec - grestore - newpath moveto - 2 copy rmoveto - } exch cshow -6 npop -} def -/patternawidthshowstroke -{ -7 index type /dicttype eq - { - patternmatrix /patternmatrix get 8 1 roll - } if -7 1 roll - { - 2 npop (0) exch - 2 copy 0 exch put - gsave - _sp eq {5 index 5 index rmoveto} if - false charpath currentpoint - 7 index setmatrix - 10 index 10 index 10 index - Adobe_pattern_AI3 /patternstroke get exec - grestore - newpath moveto - 2 copy rmoveto - } exch cshow -9 npop -} def -currentdict readonly pop end -setpacking -%%EndResource -%%BeginResource: procset Adobe_Illustrator_AI3 1.1 0 -%%Title: (Adobe Illustrator (R) Version 3.0 Full Prolog) -%%Version: 1.1 0 -%%CreationDate: (3/7/1994) () -%%Copyright: ((C) 1987-1996 Adobe Systems Incorporated All Rights Reserved) -currentpacking true setpacking -userdict /Adobe_Illustrator_AI3 71 dict dup begin put -/initialize -{ -userdict /Adobe_Illustrator_AI3_vars 67 dict dup begin put -/_lp /none def -/_pf {} def -/_ps {} def -/_psf {} def -/_pss {} def -/_pjsf {} def -/_pjss {} def -/_pola 0 def -/_doClip 0 def -/cf currentflat def -/_tm matrix def -/_renderStart [/e0 /r0 /a0 /o0 /e1 /r1 /a1 /i0] def -/_renderEnd [null null null null /i1 /i1 /i1 /i1] def -/_render -1 def -/_rise 0 def -/_ax 0 def -/_ay 0 def -/_cx 0 def -/_cy 0 def -/_leading [0 0] def -/_ctm matrix def -/_mtx matrix def -/_sp 16#020 def -/_hyphen (-) def -/_fScl 0 def -/_cnt 0 def -/_hs 1 def -/_nativeEncoding 0 def -/_useNativeEncoding 0 def -/_tempEncode 0 def -/_pntr 0 def -/_tDict 2 dict def -/_wv 0 def -/Tx {} def -/Tj {} def -/CRender {} def -/_AI3_savepage {} def -/_gf null def -/_cf 4 array def -/_if null def -/_of false def -/_fc {} def -/_gs null def -/_cs 4 array def -/_is null def -/_os false def -/_sc {} def -/_pd 1 dict def -/_ed 15 dict def -/_pm matrix def -/_fm null def -/_fd null def -/_fdd null def -/_sm null def -/_sd null def -/_sdd null def -/_i null def -Adobe_Illustrator_AI3 begin -Adobe_Illustrator_AI3 dup /nc get begin - { - dup xcheck - { - bind - } if - pop pop - } forall -end -end -end -Adobe_Illustrator_AI3 begin -Adobe_Illustrator_AI3_vars begin -newpath -} def -/terminate -{ -end -end -} def -/_ -null def -/ddef -{ -Adobe_Illustrator_AI3_vars 3 1 roll put -} def -/xput -{ -dup load dup length exch maxlength eq - { - dup dup load dup - length 2 mul dict copy def - } if -load begin def end -} def -/npop -{ - { - pop - } repeat -} def -/sw -{ -dup length exch stringwidth -exch 5 -1 roll 3 index mul add -4 1 roll 3 1 roll mul add -} def -/swj -{ -dup 4 1 roll -dup length exch stringwidth -exch 5 -1 roll 3 index mul add -4 1 roll 3 1 roll mul add -6 2 roll /_cnt 0 ddef -{1 index eq {/_cnt _cnt 1 add ddef} if} forall pop -exch _cnt mul exch _cnt mul 2 index add 4 1 roll 2 index add 4 1 roll pop pop -} def -/ss -{ -4 1 roll - { - 2 npop - (0) exch 2 copy 0 exch put pop - gsave - false charpath currentpoint - 4 index setmatrix - stroke - grestore - moveto - 2 copy rmoveto - } exch cshow -3 npop -} def -/jss -{ -4 1 roll - { - 2 npop - (0) exch 2 copy 0 exch put - gsave - _sp eq - { - exch 6 index 6 index 6 index 5 -1 roll widthshow - currentpoint - } - { - false charpath currentpoint - 4 index setmatrix stroke - }ifelse - grestore - moveto - 2 copy rmoveto - } exch cshow -6 npop -} def -/sp -{ - { - 2 npop (0) exch - 2 copy 0 exch put pop - false charpath - 2 copy rmoveto - } exch cshow -2 npop -} def -/jsp -{ - { - 2 npop - (0) exch 2 copy 0 exch put - _sp eq - { - exch 5 index 5 index 5 index 5 -1 roll widthshow - } - { - false charpath - }ifelse - 2 copy rmoveto - } exch cshow -5 npop -} def -/pl -{ -transform -0.25 sub round 0.25 add exch -0.25 sub round 0.25 add exch -itransform -} def -/setstrokeadjust where - { - pop true setstrokeadjust - /c - { - curveto - } def - /C - /c load def - /v - { - currentpoint 6 2 roll curveto - } def - /V - /v load def - /y - { - 2 copy curveto - } def - /Y - /y load def - /l - { - lineto - } def - /L - /l load def - /m - { - moveto - } def - } - { - /c - { - pl curveto - } def - /C - /c load def - /v - { - currentpoint 6 2 roll pl curveto - } def - /V - /v load def - /y - { - pl 2 copy curveto - } def - /Y - /y load def - /l - { - pl lineto - } def - /L - /l load def - /m - { - pl moveto - } def - } ifelse -/d -{ -setdash -} def -/cf {} def -/i -{ -dup 0 eq - { - pop cf - } if -setflat -} def -/j -{ -setlinejoin -} def -/J -{ -setlinecap -} def -/M -{ -setmiterlimit -} def -/w -{ -setlinewidth -} def -/H -{} def -/h -{ -closepath -} def -/N -{ -_pola 0 eq - { - _doClip 1 eq {clip /_doClip 0 ddef} if - newpath - } - { - /CRender {N} ddef - }ifelse -} def -/n -{N} def -/F -{ -_pola 0 eq - { - _doClip 1 eq - { - gsave _pf grestore clip newpath /_lp /none ddef _fc - /_doClip 0 ddef - } - { - _pf - }ifelse - } - { - /CRender {F} ddef - }ifelse -} def -/f -{ -closepath -F -} def -/S -{ -_pola 0 eq - { - _doClip 1 eq - { - gsave _ps grestore clip newpath /_lp /none ddef _sc - /_doClip 0 ddef - } - { - _ps - }ifelse - } - { - /CRender {S} ddef - }ifelse -} def -/s -{ -closepath -S -} def -/B -{ -_pola 0 eq - { - _doClip 1 eq - gsave F grestore - { - gsave S grestore clip newpath /_lp /none ddef _sc - /_doClip 0 ddef - } - { - S - }ifelse - } - { - /CRender {B} ddef - }ifelse -} def -/b -{ -closepath -B -} def -/W -{ -/_doClip 1 ddef -} def -/* -{ -count 0 ne - { - dup type (stringtype) eq {pop} if - } if -_pola 0 eq {newpath} if -} def -/u -{} def -/U -{} def -/q -{ -_pola 0 eq {gsave} if -} def -/Q -{ -_pola 0 eq {grestore} if -} def -/*u -{ -_pola 1 add /_pola exch ddef -} def -/*U -{ -_pola 1 sub /_pola exch ddef -_pola 0 eq {CRender} if -} def -/D -{pop} def -/*w -{} def -/*W -{} def -/` -{ -/_i save ddef -6 1 roll 4 npop -concat pop -userdict begin -/showpage {} def -0 setgray -0 setlinecap -1 setlinewidth -0 setlinejoin -10 setmiterlimit -[] 0 setdash -/setstrokeadjust where {pop false setstrokeadjust} if -newpath -0 setgray -false setoverprint -} def -/~ -{ -end -_i restore -} def -/@ -{} def -/& -{} def -/O -{ -0 ne -/_of exch ddef -/_lp /none ddef -} def -/R -{ -0 ne -/_os exch ddef -/_lp /none ddef -} def -/g -{ -/_gf exch ddef -/_fc -{ -_lp /fill ne - { - _of setoverprint - _gf setgray - /_lp /fill ddef - } if -} ddef -/_pf -{ -_fc -fill -} ddef -/_psf -{ -_fc -ashow -} ddef -/_pjsf -{ -_fc -awidthshow -} ddef -/_lp /none ddef -} def -/G -{ -/_gs exch ddef -/_sc -{ -_lp /stroke ne - { - _os setoverprint - _gs setgray - /_lp /stroke ddef - } if -} ddef -/_ps -{ -_sc -stroke -} ddef -/_pss -{ -_sc -ss -} ddef -/_pjss -{ -_sc -jss -} ddef -/_lp /none ddef -} def -/k -{ -_cf astore pop -/_fc -{ -_lp /fill ne - { - _of setoverprint - _cf aload pop setcmykcolor - /_lp /fill ddef - } if -} ddef -/_pf -{ -_fc -fill -} ddef -/_psf -{ -_fc -ashow -} ddef -/_pjsf -{ -_fc -awidthshow -} ddef -/_lp /none ddef -} def -/K -{ -_cs astore pop -/_sc -{ -_lp /stroke ne - { - _os setoverprint - _cs aload pop setcmykcolor - /_lp /stroke ddef - } if -} ddef -/_ps -{ -_sc -stroke -} ddef -/_pss -{ -_sc -ss -} ddef -/_pjss -{ -_sc -jss -} ddef -/_lp /none ddef -} def -/x -{ -/_gf exch ddef -findcmykcustomcolor -/_if exch ddef -/_fc -{ -_lp /fill ne - { - _of setoverprint - _if _gf 1 exch sub setcustomcolor - /_lp /fill ddef - } if -} ddef -/_pf -{ -_fc -fill -} ddef -/_psf -{ -_fc -ashow -} ddef -/_pjsf -{ -_fc -awidthshow -} ddef -/_lp /none ddef -} def -/X -{ -/_gs exch ddef -findcmykcustomcolor -/_is exch ddef -/_sc -{ -_lp /stroke ne - { - _os setoverprint - _is _gs 1 exch sub setcustomcolor - /_lp /stroke ddef - } if -} ddef -/_ps -{ -_sc -stroke -} ddef -/_pss -{ -_sc -ss -} ddef -/_pjss -{ -_sc -jss -} ddef -/_lp /none ddef -} def -/dp -{ -dup null eq -{ -pop -_dp 0 ne - { - 0 1 _dp 1 sub _dl mod - { - _da exch get 3 get - } for - _dp 1 sub _dl mod 1 add packedarray - _da 0 get aload pop 8 -1 roll 5 -1 roll pop 4 1 roll - definepattern pop - } if -} -{ -_dp 0 ne _dp _dl mod 0 eq and - { - null dp - } if -7 packedarray _da exch _dp _dl mod exch put -_dp _dl mod _da 0 get 4 get 2 packedarray -/_dp _dp 1 add def -} ifelse -} def -/E -{ -_ed begin -dup 0 get type /arraytype ne - { - 0 - { - dup 1 add index type /arraytype eq - { - 1 add - } - { - exit - } ifelse - } loop - array astore - } if -/_dd exch def -/_ury exch def -/_urx exch def -/_lly exch def -/_llx exch def -/_n exch def -/_y 0 def -/_dl 4 def -/_dp 0 def -/_da _dl array def -0 1 _dd length 1 sub - { - /_d exch _dd exch get def - 0 2 _d length 2 sub - { - /_x exch def - /_c _d _x get _ ne def - /_r _d _x 1 add get cvlit def - _r _ ne - { - _urx _llx sub _ury _lly sub [1 0 0 1 0 0] - [ - /save cvx - _llx neg _lly neg /translate cvx - _c - { - nc /begin cvx - } if - _r dup type /stringtype eq - { - cvx - } - { - {exec} /forall cvx - } ifelse - _c - { - /end cvx - } if - /restore cvx - ] cvx - /_fn 12 _n length add string def - _y _fn cvs pop - /_y _y 1 add def - _fn 12 _n putinterval - _fn _c false dp - _d exch _x 1 add exch put - } if - } for - } for -null dp -_n _dd /_pd -end xput -} def -/fc -{ -_fm dup concatmatrix pop -} def -/p -{ -/_fm exch ddef -9 -2 roll _pm translate fc -7 -2 roll _pm scale fc -5 -1 roll _pm rotate fc -4 -2 roll exch 0 ne - { - dup _pm rotate fc - 1 -1 _pm scale fc - neg _pm rotate fc - } - { - pop - } ifelse -dup _pm rotate fc -exch dup sin exch cos div 1 0 0 1 0 6 2 roll -_pm astore fc -neg _pm rotate fc -_pd exch get /_fdd exch ddef -/_pf -{ -save -/_doClip 0 ddef -0 1 _fdd length 1 sub - { - /_fd exch _fdd exch get ddef - _fd - 0 2 _fd length 2 sub - { - gsave - 2 copy get dup _ ne - { - cvx exec _fc - } - { - pop - } ifelse - 2 copy 1 add get dup _ ne - { - aload pop findfont _fm - patternfill - } - { - pop - fill - } ifelse - grestore - pop - } for - pop - } for -restore -newpath -} ddef -/_psf -{ -save -/_doClip 0 ddef -0 1 _fdd length 1 sub - { - /_fd exch _fdd exch get ddef - _fd - 0 2 _fd length 2 sub - { - gsave - 2 copy get dup _ ne - { - cvx exec _fc - } - { - pop - } ifelse - 2 copy 1 add get dup _ ne - { - aload pop findfont _fm - 9 copy 6 npop patternashow - } - { - pop - 6 copy 3 npop ashow - } ifelse - grestore - pop - } for - pop - } for -restore -%3 npop newpath -sw rmoveto -} ddef -/_pjsf -{ -save -/_doClip 0 ddef -0 1 _fdd length 1 sub - { - /_fd exch _fdd exch get ddef - _fd - 0 2 _fd length 2 sub - { - gsave - 2 copy get dup _ ne - { - cvx exec _fc - } - { - pop - } ifelse - 2 copy 1 add get dup _ ne - { - aload pop findfont _fm - 12 copy 6 npop patternawidthshow - } - { - pop 9 copy 3 npop awidthshow - } ifelse - grestore - pop - } for - pop - } for -restore -swj rmoveto -} ddef -/_lp /none ddef -} def -/sc -{ -_sm dup concatmatrix pop -} def -/P -{ -/_sm exch ddef -9 -2 roll _pm translate sc -7 -2 roll _pm scale sc -5 -1 roll _pm rotate sc -4 -2 roll exch 0 ne - { - dup _pm rotate sc - 1 -1 _pm scale sc - neg _pm rotate sc - } - { - pop - } ifelse -dup _pm rotate sc -exch dup sin exch cos div 1 0 0 1 0 6 2 roll -_pm astore sc -neg _pm rotate sc -_pd exch get /_sdd exch ddef -/_ps -{ -save -/_doClip 0 ddef -0 1 _sdd length 1 sub - { - /_sd exch _sdd exch get ddef - _sd - 0 2 _sd length 2 sub - { - gsave - 2 copy get dup _ ne - { - cvx exec _sc - } - { - pop - } ifelse - 2 copy 1 add get dup _ ne - { - aload pop findfont _sm - patternstroke - } - { - pop stroke - } ifelse - grestore - pop - } for - pop - } for -restore -newpath -} ddef -/_pss -{ -save -/_doClip 0 ddef -0 1 _sdd length 1 sub - { - /_sd exch _sdd exch get ddef - _sd - 0 2 _sd length 2 sub - { - gsave - 2 copy get dup _ ne - { - cvx exec _sc - } - { - pop - } ifelse - 2 copy 1 add get dup _ ne - { - aload pop findfont _sm - 10 copy 6 npop patternashowstroke - } - { - pop 7 copy 3 npop ss - } ifelse - grestore - pop - } for - pop - } for -restore -pop sw rmoveto -} ddef -/_pjss -{ -save -/_doClip 0 ddef -0 1 _sdd length 1 sub - { - /_sd exch _sdd exch get ddef - _sd - 0 2 _sd length 2 sub - { - gsave - 2 copy get dup _ ne - { - cvx exec _sc - } - { - pop - } ifelse - 2 copy 1 add get dup _ ne - { - aload pop findfont _sm - 13 copy 6 npop patternawidthshowstroke - } - { - pop 10 copy 3 npop jss - } ifelse - grestore - pop - } for - pop - } for -restore -pop swj rmoveto -} ddef -/_lp /none ddef -} def -/A -{ -pop -} def -/nc 3 dict def -nc begin -/setgray -{ -pop -} bind def -/setcmykcolor -{ -4 npop -} bind def -/setcustomcolor -{ -2 npop -} bind def -currentdict readonly pop end -currentdict readonly pop end -setpacking -/annotatepage -{ -} def -%%EndResource -%%EndProlog -%%BeginSetup -Adobe_cmykcolor /initialize get exec -Adobe_cshow /initialize get exec -Adobe_customcolor /initialize get exec -Adobe_pattern_AI3 /initialize get exec -Adobe_Illustrator_AI3 /initialize get exec -%%EndSetup -0 A -0 O -0.25 1 1 0.25 k -0 R -0 0 0 1 K -0 J 0 j 0.2 w 4 M []0 d -9.19971 841.8735 m -10.3311 842.1226 8.4126 839.4165 8 839.2729 c -9.57471 839.1421 9.3999 839.0728 v -9 838.9233 8.8623 838.561 8.6001 838.2729 c -7.39355 836.9985 6.49365 836.7915 7.3999 834.8735 C -8.03125 834.9233 8.1626 835.1919 8.6001 834.8735 c -9.32471 834.3423 7.78125 832.979 10 832.0728 c -11.356 831.5229 14.1997 832.1792 15.7998 832.2729 C -15.1997 831.8481 12.5186 830.4546 12.3999 829.6733 c -12.1812 828.2612 12.9434 828.686 13.5996 828.4731 C -13.2998 827.2544 13.106 827.5854 14.1997 827.0737 C -13.9058 825.7485 14.3687 824.8296 15.3999 824.0737 C -15.1309 824.0229 15.0996 823.2983 15.1997 823.4731 C -16.7246 820.23 19.1123 818.5229 21.9995 816.6733 C -21.6309 816.3979 20.6558 815.2925 20.5996 815.2739 C -21.5811 815.061 22.6807 814.1675 23.1997 814.0737 c -25.1621 813.7358 24.1309 815.5171 25.7998 814.2739 C -26.6689 815.0239 26.7061 815.8735 25.9995 816.2729 C -28.0439 816.4048 32.4873 820.0112 33.7998 821.6733 c -34.6494 822.7612 35.0557 823.9985 34.999 825.4731 C -36.499 826.3667 36.6807 826.5669 35.999 828.0737 C -38.5498 828.7544 34.6494 830.9604 33.5996 831.6733 C -35.2559 831.6235 37.4619 830.6421 39.3994 831.0728 c -40.8428 831.4048 40.2432 832.3169 40.5996 833.2729 c -41.0186 834.4165 42.5557 833.5415 42.999 834.4731 c -43.1182 834.7417 42.999 836.0728 Y -42.3311 836.8979 41.6055 837.5981 40.7998 838.2729 c -40.0811 838.8794 42.4736 838.6919 41.999 838.8735 c -41.293 839.1479 40.9424 840.7671 40.5996 841.4731 C -42.5557 840.1978 45.3623 837.6665 44.5986 833.8735 c -44.124 831.5298 41.2871 829.8423 40.1992 827.8735 c -37.6934 823.3608 36.5117 817.7612 33.3994 813.8735 c -33.2178 813.6548 33.1182 813.3608 32.7998 813.2739 c -32.3496 813.1606 33.4121 812.8677 33.5996 812.8735 c -38.4121 813.0864 39.874 811.2544 40.7998 816.0737 C -40.8428 815.8169 40.4053 818.0737 42.1992 818.6733 C -42.5557 815.4302 40.749 813.4673 39.3994 811.2739 C -37.5996 811.7231 36.3115 812.2739 33.7998 812.2739 C -33.7998 810.0112 33.793 805.686 33.1992 804.4731 c -33.168 804.4233 32.6182 803.5981 32.7998 803.4731 c -33.9248 802.7231 34.6367 801.4048 34.1992 800.0737 c -33.9365 799.3052 32.999 797.7427 33.7998 797.2739 c -35.624 796.2114 37.168 797.3052 38.7998 796.8735 C -40.0742 800.6548 40.874 803.8608 42.1992 807.8735 C -42.624 807.6987 42.6924 807.5425 42.999 807.2739 C -44.7861 810.73 46.999 812.7485 47.999 817.0737 C -48.3994 815.8735 L -49.7373 815.98 49.999 816.0737 V -48.4678 814.7856 47.0674 812.6235 46.999 812.4731 c -44.9561 809.3237 44.4111 808.8481 43.999 807.2739 C -44.9932 807.2427 44.6494 807.5552 45.5986 806.6733 C -44.6436 805.8989 45.2686 805.9048 44.7998 805.0737 c -44.7617 805.0171 44.0742 805.0737 43.999 805.0737 C -43.624 803.2427 42.4307 802.436 41.999 801.0737 c -41.3994 799.2046 41.5557 798.2983 40.3994 796.4741 c -38.4561 793.4302 38.249 794.9546 34.5996 793.8745 c -33.7686 792.7495 33.5996 792.6733 v -32.6748 792.2983 31.1309 792.1987 30.1992 792.0737 C -30.9619 790.1802 31.7998 790.4741 34.3994 790.4741 C -35.0371 788.0308 35.1934 789.2681 37.1992 788.2739 c -38.0742 787.8433 38.793 786.0991 39.3994 785.2739 c -39.999 784.4614 41.499 783.8433 41.999 783.0737 c -42.1807 782.7866 41.668 782.5308 41.5996 782.4741 C -44.5049 779.7056 47.499 773.8804 51.1992 772.0737 c -51.3242 772.0181 51.7803 771.8862 51.7998 771.8745 c -52.1436 771.6929 52.2178 771.3745 52.3994 771.2749 C -50.8682 771.6245 51.3057 771.1558 50.999 771.2749 C -51.2178 769.8745 50.5986 769.8745 V -49.4561 774.1743 45.3369 775.1304 43.5986 778.8745 C -43.3555 778.4624 42.8369 778.3179 42.7998 778.2749 C -40.999 780.8931 38.7305 783.2056 37.3994 786.0737 C -36.4248 785.9429 35.9678 785.9429 34.999 786.0737 C -35.1553 784.6245 35.5244 783.0181 35.3994 781.2749 c -35.2432 779.2612 34.8623 776.6558 34.5996 774.6743 C -35.3623 774.3237 36.1309 773.9556 36.7998 773.4741 c -37.2559 773.1499 38.1992 772.437 38.3994 771.8745 c -39.1621 769.6929 38.1992 765.2183 38.5996 762.0747 c -38.6748 761.437 39.2871 760.2368 39.1992 759.4741 c -39.1494 759.0991 38.4619 758.9116 38.5996 758.0747 c -38.7686 757.0122 39.7549 755.5435 40.1992 754.6753 c -41.0811 752.9253 41.6924 751.1128 41.999 748.8745 C -40.3496 749.8628 41.7373 748.5815 40.1992 748.0747 c -39.7061 747.9185 40.1992 748.8745 Y -40.3115 751.7866 39.9424 753.1685 38.999 755.2749 c -38.9492 755.3804 38.0498 756.2866 37.999 756.4741 c -37.2178 759.269 36.6367 763.4556 36.999 767.4741 c -37.1992 769.7495 37.5303 770.1245 35.999 770.8745 c -35.3311 771.2056 34.8994 771.2437 33.999 771.4741 C -33.3057 768.7056 32.5557 766.3491 30.999 764.4741 c -27.2686 759.9995 20.481 761.3491 17.9995 766.0737 c -17.1621 767.6675 16.3745 769.3179 15.7998 771.2749 C -14.7061 770.8745 14.106 770.73 13 770.2749 C -13.5308 766.6675 12.6812 763.0366 12.7998 760.0747 C -12.5308 760.4312 12.0562 760.731 11.7998 761.0747 C -10.4248 756.4253 6.0376 755.6304 5 750.2749 C -4.7998 752.7437 4 751.8745 Y -3.20605 751.9312 3.625 752.4683 3.6001 752.4741 C -5.65625 753.9116 9.43115 757.1304 10.3999 759.4741 c -11.6875 762.606 10.7437 769.3433 12 771.8745 c -12.4497 772.7993 14.3062 773.5366 15.1997 774.0737 C -14.7124 777.6558 14.1436 781.7925 14.5996 785.8745 C -13.8184 785.8745 12.9746 785.8745 12.1997 785.8745 C -11.6997 783.9868 10.1812 779.5679 9.19971 778.0737 c -9.125 777.9683 8.5376 778.2368 8.3999 778.2749 C -8.10596 777.1675 8.2876 776.6616 7.7998 775.6743 c -7.79346 775.6675 7.2251 775.6743 7.19971 775.6743 C -6.08105 773.3062 2.625 770.9116 4.19971 767.8745 C -3.88721 768.0425 3.49365 768.4312 3.3999 768.4741 C -3.33105 768.4741 3.26855 768.4741 3.19971 768.4741 C -3 768.6675 3.08105 769.1304 3 769.4741 C -0.90625 769.6245 1.65625 769.6187 2.6001 770.4741 c -3.94971 771.7124 5.19385 773.7368 6.19971 775.2749 c -4.34375 772.1187 8.3125 778.4487 7 778.4741 C -7.51855 779.5181 8.44336 780.4995 9 781.4741 C -8.78125 781.5181 9.19971 782.2749 Y -8.9751 782.2241 8.8999 782.1812 8.6001 782.0737 C -10.2813 783.4116 10.3062 786.6304 12 787.8745 c -14.1748 789.48 14.7935 787.48 15.5996 790.6733 C -18.1558 790.6733 19.1245 790.0806 19.7998 792.0737 C -19.8496 792.0864 18.7998 792.0737 Y -18.0435 792.2983 16.062 792.2495 15.1997 792.6733 c -14.9434 792.8052 14.6685 793.7808 14.3999 793.8745 c -10.856 795.1489 10.5747 792.9116 8.6001 796.6733 c -6.70605 800.2739 6.4126 803.3481 4.19971 806.0737 C -4.76855 806.9175 4.86865 806.7544 5.3999 807.0737 C -3.6626 809.73 2.69385 813.2114 0 814.2739 C -0 814.3481 0.037598 815.0552 0 815.0737 C -1.2251 815.4106 1.44385 815.311 2.3999 815.8735 C -1.44385 813.9487 5.23096 809.1489 6.3999 806.6733 C -7.1748 807.186 7.13721 807.6177 7.7998 806.2739 C -7.70605 806.2173 7.5874 805.2612 7.6001 805.0737 c -7.75 802.3608 9.5625 799.7358 10.1997 796.6733 C -12.1748 797.1802 13.3999 796.6304 15.5996 797.2739 C -15.2061 799.3921 14.6309 800.1548 14.1997 802.2739 C -15.4873 802.5171 15.231 802.6548 16.1997 803.4731 c -16.437 803.6802 15.8184 804.23 15.7998 804.2739 c -15.2749 805.3735 15.1875 810.2046 15.3999 812.0737 C -13.7124 811.73 12.3311 810.6606 11.1997 810.4731 c -10.7749 810.4106 10.4248 810.4731 10 810.4731 C -9.2749 812.2671 6.80615 814.355 6.6001 815.4731 c -6.4375 816.3481 6.875 816.7856 7 817.2729 C -7.1499 817.1733 7.94336 817.0854 8 817.0737 C -8.44336 814.0796 9.2373 813.8921 10.5996 811.4731 C -12.6558 811.8794 14.0186 812.7231 16.3999 813.0737 C -13.4497 817.5854 12.0747 823.5542 9.3999 828.4731 c -8.1875 830.6978 5.5249 832.2856 5.19971 835.2729 c -5.16846 835.5103 5.38086 836.1919 5.3999 836.0728 C -5.79346 838.0298 6.21875 838.8296 7.19971 840.0728 c -7.50586 840.4731 7.81836 840.9673 8.19971 841.2729 c -8.3999 841.4419 8.9624 841.8228 9.19971 841.8735 c -b -%%PageTrailer -gsave annotatepage grestore showpage -%%Trailer -Adobe_Illustrator_AI3 /terminate get exec -Adobe_pattern_AI3 /terminate get exec -Adobe_customcolor /terminate get exec -Adobe_cshow /terminate get exec -Adobe_cmykcolor /terminate get exec -Adobe_packedarray /terminate get exec -%%EOF +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: Adobe Illustrator(TM) 3.2 +%%AI8_CreatorVersion: 12.0.0 +%%For: (fluxus) (x) +%%Title: (bug.eps) +%%CreationDate: 4/15/2006 11:11 PM +%%BoundingBox: -2 747 53 843 +% -2 747 53 843 +%%DocumentProcessColors: Cyan Magenta Yellow Black +%%DocumentSuppliedResources: procset Adobe_packedarray 2.0 0 +%%+ procset Adobe_cmykcolor 1.1 0 +%%+ procset Adobe_cshow 1.1 0 +%%+ procset Adobe_customcolor 1.0 0 +%%+ procset Adobe_pattern_AI3 1.0 0 +%%+ procset Adobe_Illustrator_AI3 1.0 1 +%AI3_ColorUsage: Color +%AI3_IncludePlacedImages +%%CMYKCustomColor: 1 1 1 1 ([Registration]) +%AI3_TemplateBox: 298.5 420.3896 298.5 420.3896 +%AI3_TileBox: 0.157715 0.044861 595.1177 841.9648 +%AI3_DocumentPreview: Header +%%PageOrigin:-32 11.8896 +%AI7_GridSettings: 72 8 72 8 1 0 0.8 0.8 0.8 0.9 0.9 0.9 +%AI9_Flatten: 1 +%AI12_CMSettings: 00.MS +%%EndComments +%%BeginProlog +%%BeginResource: procset Adobe_packedarray 2.0 0 +%%Title: (Packed Array Operators) +%%Version: 2.0 0 +%%CreationDate: (8/2/90) () +%%Copyright: ((C) 1987-1996 Adobe Systems Incorporated All Rights Reserved) +userdict /Adobe_packedarray 5 dict dup begin put +/initialize +{ +/packedarray where + { + pop + } + { + Adobe_packedarray begin + Adobe_packedarray + { + dup xcheck + { + bind + } if + userdict 3 1 roll put + } forall + end + } ifelse +} def +/terminate +{ +} def +/packedarray +{ +array astore readonly +} def +/setpacking +{ +pop +} def +/currentpacking +{ +false +} def +currentdict readonly pop end +%%EndResource +Adobe_packedarray /initialize get exec +%%BeginResource: procset Adobe_cmykcolor 1.1 0 +%%Title: (CMYK Color Operators) +%%Version: 1.1 0 +%%CreationDate: (1/23/89) () +%%Copyright: ((C) 1987-1996 Adobe Systems Incorporated All Rights Reserved) +currentpacking true setpacking +userdict /Adobe_cmykcolor 4 dict dup begin put +/initialize +{ +/setcmykcolor where + { + pop + } + { + userdict /Adobe_cmykcolor_vars 2 dict dup begin put + /_setrgbcolor + /setrgbcolor load def + /_currentrgbcolor + /currentrgbcolor load def + Adobe_cmykcolor begin + Adobe_cmykcolor + { + dup xcheck + { + bind + } if + pop pop + } forall + end + end + Adobe_cmykcolor begin + } ifelse +} def +/terminate +{ +currentdict Adobe_cmykcolor eq + { + end + } if +} def +/setcmykcolor +{ +1 sub 4 1 roll +3 + { + 3 index add neg dup 0 lt + { + pop 0 + } if + 3 1 roll + } repeat +Adobe_cmykcolor_vars /_setrgbcolor get exec +pop +} def +/currentcmykcolor +{ +Adobe_cmykcolor_vars /_currentrgbcolor get exec +3 + { + 1 sub neg 3 1 roll + } repeat +0 +} def +currentdict readonly pop end +setpacking +%%EndResource +%%BeginResource: procset Adobe_cshow 1.1 0 +%%Title: (cshow Operator) +%%Version: 1.1 0 +%%CreationDate: (1/23/89) () +%%Copyright: ((C) 1987-1996 Adobe Systems Incorporated All Rights Reserved) +currentpacking true setpacking +userdict /Adobe_cshow 3 dict dup begin put +/initialize +{ +/cshow where + { + pop + } + { + userdict /Adobe_cshow_vars 1 dict dup begin put + /_cshow + {} def + Adobe_cshow begin + Adobe_cshow + { + dup xcheck + { + bind + } if + userdict 3 1 roll put + } forall + end + end + } ifelse +} def +/terminate +{ +} def +/cshow +{ +exch +Adobe_cshow_vars + exch /_cshow + exch put + { + 0 0 Adobe_cshow_vars /_cshow get exec + } forall +} def +currentdict readonly pop end +setpacking +%%EndResource +%%BeginResource: procset Adobe_customcolor 1.0 0 +%%Title: (Custom Color Operators) +%%Version: 1.0 0 +%%CreationDate: (5/9/88) () +%%Copyright: ((C) 1987-1996 Adobe Systems Incorporated All Rights Reserved) +currentpacking true setpacking +userdict /Adobe_customcolor 5 dict dup begin put +/initialize +{ +/setcustomcolor where + { + pop + } + { + Adobe_customcolor begin + Adobe_customcolor + { + dup xcheck + { + bind + } if + pop pop + } forall + end + Adobe_customcolor begin + } ifelse +} def +/terminate +{ +currentdict Adobe_customcolor eq + { + end + } if +} def +/findcmykcustomcolor +{ +5 packedarray +} def +/setcustomcolor +{ +exch +aload pop pop +4 + { + 4 index mul 4 1 roll + } repeat +5 -1 roll pop +setcmykcolor +} def +/setoverprint +{ +pop +} def +currentdict readonly pop end +setpacking +%%EndResource +%%BeginResource: procset Adobe_pattern_AI3 1.1 0 +%%Title: (Adobe Illustrator (R) Version 3.0 Pattern Operators) +%%Version: 1.1 0 +%%CreationDate: (7/21/89) () +%%Copyright: ((C) 1987-1996 Adobe Systems Incorporated All Rights Reserved) +currentpacking true setpacking +userdict /Adobe_pattern_AI3 16 dict dup begin put +/initialize +{ +/definepattern where + { + pop + } + { + Adobe_pattern_AI3 begin + Adobe_pattern_AI3 + { + dup xcheck + { + bind + } if + pop pop + } forall + mark + cachestatus 7 1 roll pop pop pop pop exch pop exch + { + { + 10000 add + dup 2 index gt + { + exit + } if + dup setcachelimit + } loop + } stopped + cleartomark + } ifelse +} def +/terminate +{ +currentdict Adobe_pattern_AI3 eq + { + end + } if +} def +errordict +/nocurrentpoint +{ +pop +stop +} put +errordict +/invalidaccess +{ +pop +stop +} put +/patternencoding +256 array def +0 1 255 +{ +patternencoding exch ( ) 2 copy exch 0 exch put cvn put +} for +/definepattern +{ +17 dict begin +/uniform exch def +/cache exch def +/key exch def +/procarray exch def +/mtx exch matrix invertmatrix def +/height exch def +/width exch def +/ctm matrix currentmatrix def +/ptm matrix def +/str 32 string def +/slice 9 dict def +slice /s 1 put +slice /q 256 procarray length div sqrt floor cvi put +slice /b 0 put +/FontBBox [0 0 0 0] def +/FontMatrix mtx matrix copy def +/Encoding patternencoding def +/FontType 3 def +/BuildChar + { + exch + begin + /setstrokeadjust where {pop true setstrokeadjust} if + slice begin + dup q dup mul mod s idiv /i exch def + dup q dup mul mod s mod /j exch def + q dup mul idiv procarray exch get + /xl j width s div mul def + /xg j 1 add width s div mul def + /yl i height s div mul def + /yg i 1 add height s div mul def + uniform + { + 1 1 + } + { + width 0 dtransform + dup mul exch dup mul add sqrt dup 1 add exch div + 0 height dtransform + dup mul exch dup mul add sqrt dup 1 add exch div + } ifelse + width 0 cache + { + xl 4 index mul yl 4 index mul xg 6 index mul yg 6 index mul + setcachedevice + } + { + setcharwidth + } ifelse + gsave + scale + newpath + xl yl moveto + xg yl lineto + xg yg lineto + xl yg lineto + closepath + clip + newpath + end + end + exec + grestore + } def +key currentdict definefont +end +} def +/patterncachesize +{ +gsave +newpath +0 0 moveto +width 0 lineto +width height lineto +0 height lineto +closepath +patternmatrix setmatrix +pathbbox +exch ceiling 4 -1 roll floor sub 3 1 roll +ceiling exch floor sub +mul 1 add +grestore +} def +/patterncachelimit +{ +cachestatus 7 1 roll 6 npop 8 mul +} def +/patternpath +{ +exch dup begin setfont +ctm setmatrix +concat +slice exch /b exch slice /q get dup mul mul put +FontMatrix concat +uniform + { + width 0 dtransform round width div exch round width div exch + 0 height dtransform round height div exch height div exch + 0 0 transform round exch round exch + ptm astore setmatrix + } + { + ptm currentmatrix pop + } ifelse +{currentpoint} stopped not + { + 2 npop + pathbbox + true + 4 index 3 index eq + 4 index 3 index eq + and + { + pop false + { + {2 npop} + {3 npop true} + {7 npop true} + {pop true} + pathforall + } stopped + { + 5 npop true + } if + } if + { + height div ceiling height mul 4 1 roll + width div ceiling width mul 4 1 roll + height div floor height mul 4 1 roll + width div floor width mul 4 1 roll + 2 index sub height div ceiling cvi exch + 3 index sub width div ceiling cvi exch + 4 2 roll moveto + FontMatrix mtx invertmatrix + dup dup 4 get exch 5 get rmoveto + ptm ptm concatmatrix pop + slice /s + patterncachesize patterncachelimit div ceiling sqrt ceiling cvi + dup slice /q get gt + { + pop slice /q get + } if + put + 0 1 slice /s get dup mul 1 sub + { + slice /b get add + gsave + 0 1 str length 1 sub + { + str exch 2 index put + } for + pop + dup + { + gsave + ptm setmatrix + 1 index str length idiv {str show} repeat + 1 index str length mod str exch 0 exch getinterval show + grestore + 0 height rmoveto + } repeat + grestore + } for + 2 npop + } + { + 4 npop + } ifelse + } if +end +} def +/patternclip +{ +clip +} def +/patternstrokepath +{ +strokepath +} def +/patternmatrix +matrix def +/patternfill +{ +dup type /dicttype eq + { + Adobe_pattern_AI3 /patternmatrix get + } if +gsave +patternclip +Adobe_pattern_AI3 /patternpath get exec +grestore +newpath +} def +/patternstroke +{ +dup type /dicttype eq + { + Adobe_pattern_AI3 /patternmatrix get + } if +gsave +patternstrokepath +true + { + { + { + newpath + moveto + } + { + lineto + } + { + curveto + } + { + closepath + 3 copy + Adobe_pattern_AI3 /patternfill get exec + } pathforall + 3 npop + } stopped + { + 5 npop + patternclip + Adobe_pattern_AI3 /patternfill get exec + } if + } + { + patternclip + Adobe_pattern_AI3 /patternfill get exec + } ifelse +grestore +newpath +} def +/patternashow +{ +3 index type /dicttype eq + { + Adobe_pattern_AI3 /patternmatrix get 4 1 roll + } if + { + 2 npop (0) exch + 2 copy 0 exch put pop + gsave + false charpath currentpoint + 6 index 6 index 6 index + Adobe_pattern_AI3 /patternfill get exec + grestore + newpath moveto + 2 copy rmoveto + } exch cshow +5 npop +} def +/patternawidthshow +{ +6 index type /dicttype eq + { + Adobe_pattern_AI3 /patternmatrix get 7 1 roll + } if + { + 2 npop (0) exch + 2 copy 0 exch put + gsave + _sp eq {5 index 5 index rmoveto} if + false charpath currentpoint + 9 index 9 index 9 index + Adobe_pattern_AI3 /patternfill get exec + grestore + newpath moveto + 2 copy rmoveto + } exch cshow +8 npop +} def +/patternashowstroke +{ +4 index type /dicttype eq + { + patternmatrix /patternmatrix get 5 1 roll + } if +4 1 roll + { + 2 npop (0) exch + 2 copy 0 exch put pop + gsave + false charpath + currentpoint + 4 index setmatrix + 7 index 7 index 7 index + Adobe_pattern_AI3 /patternstroke get exec + grestore + newpath moveto + 2 copy rmoveto + } exch cshow +6 npop +} def +/patternawidthshowstroke +{ +7 index type /dicttype eq + { + patternmatrix /patternmatrix get 8 1 roll + } if +7 1 roll + { + 2 npop (0) exch + 2 copy 0 exch put + gsave + _sp eq {5 index 5 index rmoveto} if + false charpath currentpoint + 7 index setmatrix + 10 index 10 index 10 index + Adobe_pattern_AI3 /patternstroke get exec + grestore + newpath moveto + 2 copy rmoveto + } exch cshow +9 npop +} def +currentdict readonly pop end +setpacking +%%EndResource +%%BeginResource: procset Adobe_Illustrator_AI3 1.1 0 +%%Title: (Adobe Illustrator (R) Version 3.0 Full Prolog) +%%Version: 1.1 0 +%%CreationDate: (3/7/1994) () +%%Copyright: ((C) 1987-1996 Adobe Systems Incorporated All Rights Reserved) +currentpacking true setpacking +userdict /Adobe_Illustrator_AI3 71 dict dup begin put +/initialize +{ +userdict /Adobe_Illustrator_AI3_vars 67 dict dup begin put +/_lp /none def +/_pf {} def +/_ps {} def +/_psf {} def +/_pss {} def +/_pjsf {} def +/_pjss {} def +/_pola 0 def +/_doClip 0 def +/cf currentflat def +/_tm matrix def +/_renderStart [/e0 /r0 /a0 /o0 /e1 /r1 /a1 /i0] def +/_renderEnd [null null null null /i1 /i1 /i1 /i1] def +/_render -1 def +/_rise 0 def +/_ax 0 def +/_ay 0 def +/_cx 0 def +/_cy 0 def +/_leading [0 0] def +/_ctm matrix def +/_mtx matrix def +/_sp 16#020 def +/_hyphen (-) def +/_fScl 0 def +/_cnt 0 def +/_hs 1 def +/_nativeEncoding 0 def +/_useNativeEncoding 0 def +/_tempEncode 0 def +/_pntr 0 def +/_tDict 2 dict def +/_wv 0 def +/Tx {} def +/Tj {} def +/CRender {} def +/_AI3_savepage {} def +/_gf null def +/_cf 4 array def +/_if null def +/_of false def +/_fc {} def +/_gs null def +/_cs 4 array def +/_is null def +/_os false def +/_sc {} def +/_pd 1 dict def +/_ed 15 dict def +/_pm matrix def +/_fm null def +/_fd null def +/_fdd null def +/_sm null def +/_sd null def +/_sdd null def +/_i null def +Adobe_Illustrator_AI3 begin +Adobe_Illustrator_AI3 dup /nc get begin + { + dup xcheck + { + bind + } if + pop pop + } forall +end +end +end +Adobe_Illustrator_AI3 begin +Adobe_Illustrator_AI3_vars begin +newpath +} def +/terminate +{ +end +end +} def +/_ +null def +/ddef +{ +Adobe_Illustrator_AI3_vars 3 1 roll put +} def +/xput +{ +dup load dup length exch maxlength eq + { + dup dup load dup + length 2 mul dict copy def + } if +load begin def end +} def +/npop +{ + { + pop + } repeat +} def +/sw +{ +dup length exch stringwidth +exch 5 -1 roll 3 index mul add +4 1 roll 3 1 roll mul add +} def +/swj +{ +dup 4 1 roll +dup length exch stringwidth +exch 5 -1 roll 3 index mul add +4 1 roll 3 1 roll mul add +6 2 roll /_cnt 0 ddef +{1 index eq {/_cnt _cnt 1 add ddef} if} forall pop +exch _cnt mul exch _cnt mul 2 index add 4 1 roll 2 index add 4 1 roll pop pop +} def +/ss +{ +4 1 roll + { + 2 npop + (0) exch 2 copy 0 exch put pop + gsave + false charpath currentpoint + 4 index setmatrix + stroke + grestore + moveto + 2 copy rmoveto + } exch cshow +3 npop +} def +/jss +{ +4 1 roll + { + 2 npop + (0) exch 2 copy 0 exch put + gsave + _sp eq + { + exch 6 index 6 index 6 index 5 -1 roll widthshow + currentpoint + } + { + false charpath currentpoint + 4 index setmatrix stroke + }ifelse + grestore + moveto + 2 copy rmoveto + } exch cshow +6 npop +} def +/sp +{ + { + 2 npop (0) exch + 2 copy 0 exch put pop + false charpath + 2 copy rmoveto + } exch cshow +2 npop +} def +/jsp +{ + { + 2 npop + (0) exch 2 copy 0 exch put + _sp eq + { + exch 5 index 5 index 5 index 5 -1 roll widthshow + } + { + false charpath + }ifelse + 2 copy rmoveto + } exch cshow +5 npop +} def +/pl +{ +transform +0.25 sub round 0.25 add exch +0.25 sub round 0.25 add exch +itransform +} def +/setstrokeadjust where + { + pop true setstrokeadjust + /c + { + curveto + } def + /C + /c load def + /v + { + currentpoint 6 2 roll curveto + } def + /V + /v load def + /y + { + 2 copy curveto + } def + /Y + /y load def + /l + { + lineto + } def + /L + /l load def + /m + { + moveto + } def + } + { + /c + { + pl curveto + } def + /C + /c load def + /v + { + currentpoint 6 2 roll pl curveto + } def + /V + /v load def + /y + { + pl 2 copy curveto + } def + /Y + /y load def + /l + { + pl lineto + } def + /L + /l load def + /m + { + pl moveto + } def + } ifelse +/d +{ +setdash +} def +/cf {} def +/i +{ +dup 0 eq + { + pop cf + } if +setflat +} def +/j +{ +setlinejoin +} def +/J +{ +setlinecap +} def +/M +{ +setmiterlimit +} def +/w +{ +setlinewidth +} def +/H +{} def +/h +{ +closepath +} def +/N +{ +_pola 0 eq + { + _doClip 1 eq {clip /_doClip 0 ddef} if + newpath + } + { + /CRender {N} ddef + }ifelse +} def +/n +{N} def +/F +{ +_pola 0 eq + { + _doClip 1 eq + { + gsave _pf grestore clip newpath /_lp /none ddef _fc + /_doClip 0 ddef + } + { + _pf + }ifelse + } + { + /CRender {F} ddef + }ifelse +} def +/f +{ +closepath +F +} def +/S +{ +_pola 0 eq + { + _doClip 1 eq + { + gsave _ps grestore clip newpath /_lp /none ddef _sc + /_doClip 0 ddef + } + { + _ps + }ifelse + } + { + /CRender {S} ddef + }ifelse +} def +/s +{ +closepath +S +} def +/B +{ +_pola 0 eq + { + _doClip 1 eq + gsave F grestore + { + gsave S grestore clip newpath /_lp /none ddef _sc + /_doClip 0 ddef + } + { + S + }ifelse + } + { + /CRender {B} ddef + }ifelse +} def +/b +{ +closepath +B +} def +/W +{ +/_doClip 1 ddef +} def +/* +{ +count 0 ne + { + dup type (stringtype) eq {pop} if + } if +_pola 0 eq {newpath} if +} def +/u +{} def +/U +{} def +/q +{ +_pola 0 eq {gsave} if +} def +/Q +{ +_pola 0 eq {grestore} if +} def +/*u +{ +_pola 1 add /_pola exch ddef +} def +/*U +{ +_pola 1 sub /_pola exch ddef +_pola 0 eq {CRender} if +} def +/D +{pop} def +/*w +{} def +/*W +{} def +/` +{ +/_i save ddef +6 1 roll 4 npop +concat pop +userdict begin +/showpage {} def +0 setgray +0 setlinecap +1 setlinewidth +0 setlinejoin +10 setmiterlimit +[] 0 setdash +/setstrokeadjust where {pop false setstrokeadjust} if +newpath +0 setgray +false setoverprint +} def +/~ +{ +end +_i restore +} def +/@ +{} def +/& +{} def +/O +{ +0 ne +/_of exch ddef +/_lp /none ddef +} def +/R +{ +0 ne +/_os exch ddef +/_lp /none ddef +} def +/g +{ +/_gf exch ddef +/_fc +{ +_lp /fill ne + { + _of setoverprint + _gf setgray + /_lp /fill ddef + } if +} ddef +/_pf +{ +_fc +fill +} ddef +/_psf +{ +_fc +ashow +} ddef +/_pjsf +{ +_fc +awidthshow +} ddef +/_lp /none ddef +} def +/G +{ +/_gs exch ddef +/_sc +{ +_lp /stroke ne + { + _os setoverprint + _gs setgray + /_lp /stroke ddef + } if +} ddef +/_ps +{ +_sc +stroke +} ddef +/_pss +{ +_sc +ss +} ddef +/_pjss +{ +_sc +jss +} ddef +/_lp /none ddef +} def +/k +{ +_cf astore pop +/_fc +{ +_lp /fill ne + { + _of setoverprint + _cf aload pop setcmykcolor + /_lp /fill ddef + } if +} ddef +/_pf +{ +_fc +fill +} ddef +/_psf +{ +_fc +ashow +} ddef +/_pjsf +{ +_fc +awidthshow +} ddef +/_lp /none ddef +} def +/K +{ +_cs astore pop +/_sc +{ +_lp /stroke ne + { + _os setoverprint + _cs aload pop setcmykcolor + /_lp /stroke ddef + } if +} ddef +/_ps +{ +_sc +stroke +} ddef +/_pss +{ +_sc +ss +} ddef +/_pjss +{ +_sc +jss +} ddef +/_lp /none ddef +} def +/x +{ +/_gf exch ddef +findcmykcustomcolor +/_if exch ddef +/_fc +{ +_lp /fill ne + { + _of setoverprint + _if _gf 1 exch sub setcustomcolor + /_lp /fill ddef + } if +} ddef +/_pf +{ +_fc +fill +} ddef +/_psf +{ +_fc +ashow +} ddef +/_pjsf +{ +_fc +awidthshow +} ddef +/_lp /none ddef +} def +/X +{ +/_gs exch ddef +findcmykcustomcolor +/_is exch ddef +/_sc +{ +_lp /stroke ne + { + _os setoverprint + _is _gs 1 exch sub setcustomcolor + /_lp /stroke ddef + } if +} ddef +/_ps +{ +_sc +stroke +} ddef +/_pss +{ +_sc +ss +} ddef +/_pjss +{ +_sc +jss +} ddef +/_lp /none ddef +} def +/dp +{ +dup null eq +{ +pop +_dp 0 ne + { + 0 1 _dp 1 sub _dl mod + { + _da exch get 3 get + } for + _dp 1 sub _dl mod 1 add packedarray + _da 0 get aload pop 8 -1 roll 5 -1 roll pop 4 1 roll + definepattern pop + } if +} +{ +_dp 0 ne _dp _dl mod 0 eq and + { + null dp + } if +7 packedarray _da exch _dp _dl mod exch put +_dp _dl mod _da 0 get 4 get 2 packedarray +/_dp _dp 1 add def +} ifelse +} def +/E +{ +_ed begin +dup 0 get type /arraytype ne + { + 0 + { + dup 1 add index type /arraytype eq + { + 1 add + } + { + exit + } ifelse + } loop + array astore + } if +/_dd exch def +/_ury exch def +/_urx exch def +/_lly exch def +/_llx exch def +/_n exch def +/_y 0 def +/_dl 4 def +/_dp 0 def +/_da _dl array def +0 1 _dd length 1 sub + { + /_d exch _dd exch get def + 0 2 _d length 2 sub + { + /_x exch def + /_c _d _x get _ ne def + /_r _d _x 1 add get cvlit def + _r _ ne + { + _urx _llx sub _ury _lly sub [1 0 0 1 0 0] + [ + /save cvx + _llx neg _lly neg /translate cvx + _c + { + nc /begin cvx + } if + _r dup type /stringtype eq + { + cvx + } + { + {exec} /forall cvx + } ifelse + _c + { + /end cvx + } if + /restore cvx + ] cvx + /_fn 12 _n length add string def + _y _fn cvs pop + /_y _y 1 add def + _fn 12 _n putinterval + _fn _c false dp + _d exch _x 1 add exch put + } if + } for + } for +null dp +_n _dd /_pd +end xput +} def +/fc +{ +_fm dup concatmatrix pop +} def +/p +{ +/_fm exch ddef +9 -2 roll _pm translate fc +7 -2 roll _pm scale fc +5 -1 roll _pm rotate fc +4 -2 roll exch 0 ne + { + dup _pm rotate fc + 1 -1 _pm scale fc + neg _pm rotate fc + } + { + pop + } ifelse +dup _pm rotate fc +exch dup sin exch cos div 1 0 0 1 0 6 2 roll +_pm astore fc +neg _pm rotate fc +_pd exch get /_fdd exch ddef +/_pf +{ +save +/_doClip 0 ddef +0 1 _fdd length 1 sub + { + /_fd exch _fdd exch get ddef + _fd + 0 2 _fd length 2 sub + { + gsave + 2 copy get dup _ ne + { + cvx exec _fc + } + { + pop + } ifelse + 2 copy 1 add get dup _ ne + { + aload pop findfont _fm + patternfill + } + { + pop + fill + } ifelse + grestore + pop + } for + pop + } for +restore +newpath +} ddef +/_psf +{ +save +/_doClip 0 ddef +0 1 _fdd length 1 sub + { + /_fd exch _fdd exch get ddef + _fd + 0 2 _fd length 2 sub + { + gsave + 2 copy get dup _ ne + { + cvx exec _fc + } + { + pop + } ifelse + 2 copy 1 add get dup _ ne + { + aload pop findfont _fm + 9 copy 6 npop patternashow + } + { + pop + 6 copy 3 npop ashow + } ifelse + grestore + pop + } for + pop + } for +restore +%3 npop newpath +sw rmoveto +} ddef +/_pjsf +{ +save +/_doClip 0 ddef +0 1 _fdd length 1 sub + { + /_fd exch _fdd exch get ddef + _fd + 0 2 _fd length 2 sub + { + gsave + 2 copy get dup _ ne + { + cvx exec _fc + } + { + pop + } ifelse + 2 copy 1 add get dup _ ne + { + aload pop findfont _fm + 12 copy 6 npop patternawidthshow + } + { + pop 9 copy 3 npop awidthshow + } ifelse + grestore + pop + } for + pop + } for +restore +swj rmoveto +} ddef +/_lp /none ddef +} def +/sc +{ +_sm dup concatmatrix pop +} def +/P +{ +/_sm exch ddef +9 -2 roll _pm translate sc +7 -2 roll _pm scale sc +5 -1 roll _pm rotate sc +4 -2 roll exch 0 ne + { + dup _pm rotate sc + 1 -1 _pm scale sc + neg _pm rotate sc + } + { + pop + } ifelse +dup _pm rotate sc +exch dup sin exch cos div 1 0 0 1 0 6 2 roll +_pm astore sc +neg _pm rotate sc +_pd exch get /_sdd exch ddef +/_ps +{ +save +/_doClip 0 ddef +0 1 _sdd length 1 sub + { + /_sd exch _sdd exch get ddef + _sd + 0 2 _sd length 2 sub + { + gsave + 2 copy get dup _ ne + { + cvx exec _sc + } + { + pop + } ifelse + 2 copy 1 add get dup _ ne + { + aload pop findfont _sm + patternstroke + } + { + pop stroke + } ifelse + grestore + pop + } for + pop + } for +restore +newpath +} ddef +/_pss +{ +save +/_doClip 0 ddef +0 1 _sdd length 1 sub + { + /_sd exch _sdd exch get ddef + _sd + 0 2 _sd length 2 sub + { + gsave + 2 copy get dup _ ne + { + cvx exec _sc + } + { + pop + } ifelse + 2 copy 1 add get dup _ ne + { + aload pop findfont _sm + 10 copy 6 npop patternashowstroke + } + { + pop 7 copy 3 npop ss + } ifelse + grestore + pop + } for + pop + } for +restore +pop sw rmoveto +} ddef +/_pjss +{ +save +/_doClip 0 ddef +0 1 _sdd length 1 sub + { + /_sd exch _sdd exch get ddef + _sd + 0 2 _sd length 2 sub + { + gsave + 2 copy get dup _ ne + { + cvx exec _sc + } + { + pop + } ifelse + 2 copy 1 add get dup _ ne + { + aload pop findfont _sm + 13 copy 6 npop patternawidthshowstroke + } + { + pop 10 copy 3 npop jss + } ifelse + grestore + pop + } for + pop + } for +restore +pop swj rmoveto +} ddef +/_lp /none ddef +} def +/A +{ +pop +} def +/nc 3 dict def +nc begin +/setgray +{ +pop +} bind def +/setcmykcolor +{ +4 npop +} bind def +/setcustomcolor +{ +2 npop +} bind def +currentdict readonly pop end +currentdict readonly pop end +setpacking +/annotatepage +{ +} def +%%EndResource +%%EndProlog +%%BeginSetup +Adobe_cmykcolor /initialize get exec +Adobe_cshow /initialize get exec +Adobe_customcolor /initialize get exec +Adobe_pattern_AI3 /initialize get exec +Adobe_Illustrator_AI3 /initialize get exec +%%EndSetup +0 A +0 O +0.25 1 1 0.25 k +0 R +0 0 0 1 K +0 J 0 j 0.2 w 4 M []0 d +9.19971 841.8735 m +10.3311 842.1226 8.4126 839.4165 8 839.2729 c +9.57471 839.1421 9.3999 839.0728 v +9 838.9233 8.8623 838.561 8.6001 838.2729 c +7.39355 836.9985 6.49365 836.7915 7.3999 834.8735 C +8.03125 834.9233 8.1626 835.1919 8.6001 834.8735 c +9.32471 834.3423 7.78125 832.979 10 832.0728 c +11.356 831.5229 14.1997 832.1792 15.7998 832.2729 C +15.1997 831.8481 12.5186 830.4546 12.3999 829.6733 c +12.1812 828.2612 12.9434 828.686 13.5996 828.4731 C +13.2998 827.2544 13.106 827.5854 14.1997 827.0737 C +13.9058 825.7485 14.3687 824.8296 15.3999 824.0737 C +15.1309 824.0229 15.0996 823.2983 15.1997 823.4731 C +16.7246 820.23 19.1123 818.5229 21.9995 816.6733 C +21.6309 816.3979 20.6558 815.2925 20.5996 815.2739 C +21.5811 815.061 22.6807 814.1675 23.1997 814.0737 c +25.1621 813.7358 24.1309 815.5171 25.7998 814.2739 C +26.6689 815.0239 26.7061 815.8735 25.9995 816.2729 C +28.0439 816.4048 32.4873 820.0112 33.7998 821.6733 c +34.6494 822.7612 35.0557 823.9985 34.999 825.4731 C +36.499 826.3667 36.6807 826.5669 35.999 828.0737 C +38.5498 828.7544 34.6494 830.9604 33.5996 831.6733 C +35.2559 831.6235 37.4619 830.6421 39.3994 831.0728 c +40.8428 831.4048 40.2432 832.3169 40.5996 833.2729 c +41.0186 834.4165 42.5557 833.5415 42.999 834.4731 c +43.1182 834.7417 42.999 836.0728 Y +42.3311 836.8979 41.6055 837.5981 40.7998 838.2729 c +40.0811 838.8794 42.4736 838.6919 41.999 838.8735 c +41.293 839.1479 40.9424 840.7671 40.5996 841.4731 C +42.5557 840.1978 45.3623 837.6665 44.5986 833.8735 c +44.124 831.5298 41.2871 829.8423 40.1992 827.8735 c +37.6934 823.3608 36.5117 817.7612 33.3994 813.8735 c +33.2178 813.6548 33.1182 813.3608 32.7998 813.2739 c +32.3496 813.1606 33.4121 812.8677 33.5996 812.8735 c +38.4121 813.0864 39.874 811.2544 40.7998 816.0737 C +40.8428 815.8169 40.4053 818.0737 42.1992 818.6733 C +42.5557 815.4302 40.749 813.4673 39.3994 811.2739 C +37.5996 811.7231 36.3115 812.2739 33.7998 812.2739 C +33.7998 810.0112 33.793 805.686 33.1992 804.4731 c +33.168 804.4233 32.6182 803.5981 32.7998 803.4731 c +33.9248 802.7231 34.6367 801.4048 34.1992 800.0737 c +33.9365 799.3052 32.999 797.7427 33.7998 797.2739 c +35.624 796.2114 37.168 797.3052 38.7998 796.8735 C +40.0742 800.6548 40.874 803.8608 42.1992 807.8735 C +42.624 807.6987 42.6924 807.5425 42.999 807.2739 C +44.7861 810.73 46.999 812.7485 47.999 817.0737 C +48.3994 815.8735 L +49.7373 815.98 49.999 816.0737 V +48.4678 814.7856 47.0674 812.6235 46.999 812.4731 c +44.9561 809.3237 44.4111 808.8481 43.999 807.2739 C +44.9932 807.2427 44.6494 807.5552 45.5986 806.6733 C +44.6436 805.8989 45.2686 805.9048 44.7998 805.0737 c +44.7617 805.0171 44.0742 805.0737 43.999 805.0737 C +43.624 803.2427 42.4307 802.436 41.999 801.0737 c +41.3994 799.2046 41.5557 798.2983 40.3994 796.4741 c +38.4561 793.4302 38.249 794.9546 34.5996 793.8745 c +33.7686 792.7495 33.5996 792.6733 v +32.6748 792.2983 31.1309 792.1987 30.1992 792.0737 C +30.9619 790.1802 31.7998 790.4741 34.3994 790.4741 C +35.0371 788.0308 35.1934 789.2681 37.1992 788.2739 c +38.0742 787.8433 38.793 786.0991 39.3994 785.2739 c +39.999 784.4614 41.499 783.8433 41.999 783.0737 c +42.1807 782.7866 41.668 782.5308 41.5996 782.4741 C +44.5049 779.7056 47.499 773.8804 51.1992 772.0737 c +51.3242 772.0181 51.7803 771.8862 51.7998 771.8745 c +52.1436 771.6929 52.2178 771.3745 52.3994 771.2749 C +50.8682 771.6245 51.3057 771.1558 50.999 771.2749 C +51.2178 769.8745 50.5986 769.8745 V +49.4561 774.1743 45.3369 775.1304 43.5986 778.8745 C +43.3555 778.4624 42.8369 778.3179 42.7998 778.2749 C +40.999 780.8931 38.7305 783.2056 37.3994 786.0737 C +36.4248 785.9429 35.9678 785.9429 34.999 786.0737 C +35.1553 784.6245 35.5244 783.0181 35.3994 781.2749 c +35.2432 779.2612 34.8623 776.6558 34.5996 774.6743 C +35.3623 774.3237 36.1309 773.9556 36.7998 773.4741 c +37.2559 773.1499 38.1992 772.437 38.3994 771.8745 c +39.1621 769.6929 38.1992 765.2183 38.5996 762.0747 c +38.6748 761.437 39.2871 760.2368 39.1992 759.4741 c +39.1494 759.0991 38.4619 758.9116 38.5996 758.0747 c +38.7686 757.0122 39.7549 755.5435 40.1992 754.6753 c +41.0811 752.9253 41.6924 751.1128 41.999 748.8745 C +40.3496 749.8628 41.7373 748.5815 40.1992 748.0747 c +39.7061 747.9185 40.1992 748.8745 Y +40.3115 751.7866 39.9424 753.1685 38.999 755.2749 c +38.9492 755.3804 38.0498 756.2866 37.999 756.4741 c +37.2178 759.269 36.6367 763.4556 36.999 767.4741 c +37.1992 769.7495 37.5303 770.1245 35.999 770.8745 c +35.3311 771.2056 34.8994 771.2437 33.999 771.4741 C +33.3057 768.7056 32.5557 766.3491 30.999 764.4741 c +27.2686 759.9995 20.481 761.3491 17.9995 766.0737 c +17.1621 767.6675 16.3745 769.3179 15.7998 771.2749 C +14.7061 770.8745 14.106 770.73 13 770.2749 C +13.5308 766.6675 12.6812 763.0366 12.7998 760.0747 C +12.5308 760.4312 12.0562 760.731 11.7998 761.0747 C +10.4248 756.4253 6.0376 755.6304 5 750.2749 C +4.7998 752.7437 4 751.8745 Y +3.20605 751.9312 3.625 752.4683 3.6001 752.4741 C +5.65625 753.9116 9.43115 757.1304 10.3999 759.4741 c +11.6875 762.606 10.7437 769.3433 12 771.8745 c +12.4497 772.7993 14.3062 773.5366 15.1997 774.0737 C +14.7124 777.6558 14.1436 781.7925 14.5996 785.8745 C +13.8184 785.8745 12.9746 785.8745 12.1997 785.8745 C +11.6997 783.9868 10.1812 779.5679 9.19971 778.0737 c +9.125 777.9683 8.5376 778.2368 8.3999 778.2749 C +8.10596 777.1675 8.2876 776.6616 7.7998 775.6743 c +7.79346 775.6675 7.2251 775.6743 7.19971 775.6743 C +6.08105 773.3062 2.625 770.9116 4.19971 767.8745 C +3.88721 768.0425 3.49365 768.4312 3.3999 768.4741 C +3.33105 768.4741 3.26855 768.4741 3.19971 768.4741 C +3 768.6675 3.08105 769.1304 3 769.4741 C +0.90625 769.6245 1.65625 769.6187 2.6001 770.4741 c +3.94971 771.7124 5.19385 773.7368 6.19971 775.2749 c +4.34375 772.1187 8.3125 778.4487 7 778.4741 C +7.51855 779.5181 8.44336 780.4995 9 781.4741 C +8.78125 781.5181 9.19971 782.2749 Y +8.9751 782.2241 8.8999 782.1812 8.6001 782.0737 C +10.2813 783.4116 10.3062 786.6304 12 787.8745 c +14.1748 789.48 14.7935 787.48 15.5996 790.6733 C +18.1558 790.6733 19.1245 790.0806 19.7998 792.0737 C +19.8496 792.0864 18.7998 792.0737 Y +18.0435 792.2983 16.062 792.2495 15.1997 792.6733 c +14.9434 792.8052 14.6685 793.7808 14.3999 793.8745 c +10.856 795.1489 10.5747 792.9116 8.6001 796.6733 c +6.70605 800.2739 6.4126 803.3481 4.19971 806.0737 C +4.76855 806.9175 4.86865 806.7544 5.3999 807.0737 C +3.6626 809.73 2.69385 813.2114 0 814.2739 C +0 814.3481 0.037598 815.0552 0 815.0737 C +1.2251 815.4106 1.44385 815.311 2.3999 815.8735 C +1.44385 813.9487 5.23096 809.1489 6.3999 806.6733 C +7.1748 807.186 7.13721 807.6177 7.7998 806.2739 C +7.70605 806.2173 7.5874 805.2612 7.6001 805.0737 c +7.75 802.3608 9.5625 799.7358 10.1997 796.6733 C +12.1748 797.1802 13.3999 796.6304 15.5996 797.2739 C +15.2061 799.3921 14.6309 800.1548 14.1997 802.2739 C +15.4873 802.5171 15.231 802.6548 16.1997 803.4731 c +16.437 803.6802 15.8184 804.23 15.7998 804.2739 c +15.2749 805.3735 15.1875 810.2046 15.3999 812.0737 C +13.7124 811.73 12.3311 810.6606 11.1997 810.4731 c +10.7749 810.4106 10.4248 810.4731 10 810.4731 C +9.2749 812.2671 6.80615 814.355 6.6001 815.4731 c +6.4375 816.3481 6.875 816.7856 7 817.2729 C +7.1499 817.1733 7.94336 817.0854 8 817.0737 C +8.44336 814.0796 9.2373 813.8921 10.5996 811.4731 C +12.6558 811.8794 14.0186 812.7231 16.3999 813.0737 C +13.4497 817.5854 12.0747 823.5542 9.3999 828.4731 c +8.1875 830.6978 5.5249 832.2856 5.19971 835.2729 c +5.16846 835.5103 5.38086 836.1919 5.3999 836.0728 C +5.79346 838.0298 6.21875 838.8296 7.19971 840.0728 c +7.50586 840.4731 7.81836 840.9673 8.19971 841.2729 c +8.3999 841.4419 8.9624 841.8228 9.19971 841.8735 c +b +%%PageTrailer +gsave annotatepage grestore showpage +%%Trailer +Adobe_Illustrator_AI3 /terminate get exec +Adobe_pattern_AI3 /terminate get exec +Adobe_customcolor /terminate get exec +Adobe_cshow /terminate get exec +Adobe_cmykcolor /terminate get exec +Adobe_packedarray /terminate get exec +%%EOF diff --git a/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/images/pelican.ai b/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/images/pelican.ai index e4d461e9689..4cd501a43ff 100644 --- a/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/images/pelican.ai +++ b/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/images/pelican.ai @@ -1,147 +1,147 @@ -%!PS-Adobe-3.0 -%%Creator: Adobe Illustrator(TM) 3.2 -%%AI8_CreatorVersion: 12.0.0 -%%For: (fluxus) (x) -%%Title: (pelican.ai) -%%CreationDate: 4/15/2006 11:28 PM -%%BoundingBox: 38 221 564 654 -%%DocumentProcessColors: Black -%%DocumentNeededResources: procset Adobe_packedarray 2.0 0 -%%+ procset Adobe_cshow 1.1 0 -%%+ procset Adobe_customcolor 1.0 0 -%%+ procset Adobe_pattern_AI3 1.0 0 -%%+ procset Adobe_Illustrator_AI3 1.0 1 -%AI3_ColorUsage: Color -%%CMYKCustomColor: 1 1 1 1 ([Registration]) -%AI3_TemplateBox: 298.5 420.3896 298.5 420.3896 -%AI3_TileBox: 0.157715 0.044861 595.1177 841.9648 -%AI3_DocumentPreview: None -%%PageOrigin:-32 11.8896 -%AI7_GridSettings: 72 8 72 8 1 0 0.8 0.8 0.8 0.9 0.9 0.9 -%AI9_Flatten: 1 -%AI12_CMSettings: 00.MS -%%EndComments -%%BeginProlog -%%IncludeResource: procset Adobe_packedarray 2.0 0 -Adobe_packedarray /initialize get exec -%%IncludeResource: procset Adobe_cshow 1.1 0 -%%IncludeResource: procset Adobe_customcolor 1.0 0 -%%IncludeResource: procset Adobe_pattern_AI3 1.0 0 -%%IncludeResource: procset Adobe_Illustrator_AI3 1.0 1 -%%EndProlog -%%BeginSetup -Adobe_cshow /initialize get exec -Adobe_customcolor /initialize get exec -Adobe_pattern_AI3 /initialize get exec -Adobe_Illustrator_AI3 /initialize get exec -%%EndSetup -0 A -0 O -0.823529 g -0 J 0 j 1 w 4 M []0 d -406.3574 653.9336 m -464.8369 654.4839 476.1016 604.7227 506.8555 577.2656 c -518.2334 567.1074 538.876 556.4058 541.0449 537.8945 C -525.793 545.1372 515.3398 557.5967 502.1924 566.9033 c -492.1299 574.0298 478.9131 577.0991 467.4844 582.9634 c -454.5439 589.603 441.3213 599.4785 424.4873 589.1792 c -413.7012 582.5776 412.9746 565.8579 406.3574 554.9893 c -401.2715 546.6338 390.2637 539.4668 382.0098 534.269 c -370.5801 527.0684 326.3232 509.3872 322.4365 499.042 C -331.416 493.8628 340.3955 488.6816 349.375 483.5005 C -370.4541 474.8203 420.0293 453.8994 428.1152 435.3247 C -427.9424 435.3247 427.7695 435.3247 427.5967 435.3247 C -422.0781 438.2988 418.0566 441.834 411.0205 443.6128 C -411.0205 442.9214 411.0205 442.2324 411.0205 441.541 C -415.6807 438.0884 420.3457 434.6333 425.0059 431.1807 C -426.5615 431.6968 428.1152 432.2153 429.6689 432.7339 C -436.3252 429.1694 440.0146 421.5771 446.2451 417.1924 c -468.749 401.3643 540.2861 360.04 557.624 408.9043 C -559.6963 408.7314 561.7676 408.5586 563.8398 408.3857 C -564.2002 369.6592 525.0967 377.3896 496.4951 382.4844 c -485.8457 384.3838 476.0742 379.3203 465.4141 380.9307 c -458.0371 382.0459 454.999 385.5068 447.8008 386.1123 C -444.6514 384.4326 443.9072 382.2314 441.583 379.8955 C -441.7559 379.5498 441.9287 379.2041 442.1016 378.8584 C -453.1211 376.5439 474.8496 358.7158 485.6162 352.4404 c -499.0371 344.6182 513.7188 346.8398 528.6133 341.043 C -531.0205 346.2412 546.2559 365.248 551.9258 365.9072 C -552.0986 365.3896 552.2715 364.8721 552.4424 364.3545 C -553.4883 360.7607 550.0078 356.1338 548.2988 353.4756 c -539.4346 339.6855 527.2559 336.8584 503.748 337.415 C -507.8379 329.7158 516.5977 331.1191 522.3965 325.501 C -510.8311 324.9131 495.6875 323.7822 486.6533 327.5732 C -483.0273 329.6455 479.4004 331.7178 475.7744 333.79 C -468.749 335.082 467.1133 328.6885 461.7891 327.5732 c -451.8096 325.4854 442.6299 328.9424 433.8125 329.6455 C -427.6152 314.2881 411.4697 330.1348 399.1045 326.5381 C -395.1328 323.6025 391.1621 320.666 387.1904 317.7314 C -380.2559 315.4561 375.2725 320.9756 368.0234 319.2861 C -363.707 316.8682 359.3877 314.4502 355.0732 312.0322 C -346.0449 325.4189 337.3516 308.3584 325.0264 313.0693 c -319.249 315.2764 317.3877 322.9951 312.0762 324.9834 c -302.3477 328.626 290.0044 321.8848 280.4756 325.501 c -275.7075 327.3125 274.5767 334.043 270.1157 335.8623 C -266.6616 335.6885 263.208 335.5166 259.7544 335.3428 C -254.7881 336.4834 253.1904 341.9092 248.8755 343.6338 C -245.7686 343.8066 242.6592 343.9775 239.5513 344.1494 C -236.9614 347.4326 234.3711 350.7119 231.7803 353.9941 C -227.1187 356.2158 222.1738 353.7666 218.312 356.0654 C -217.707 358.9385 216.9556 361.4961 214.6855 362.8008 C -210.5415 362.9736 206.396 363.1465 202.2529 363.3174 C -200.6987 365.3896 199.145 367.4639 197.5903 369.5332 C -193.9648 370.2246 190.3384 370.916 186.7119 371.6074 C -183.0776 383.6631 179.9097 377.1084 172.7246 383.0029 C -172.0347 384.5557 171.3433 386.1123 170.6528 387.665 C -167.4033 390.2705 160.396 389.1025 157.1846 391.291 C -150.2778 399.2334 143.3691 407.1787 136.4629 415.1201 C -135.7725 415.1201 135.0811 415.1201 134.3906 415.1201 C -129.8872 408.9912 123.022 405.2783 118.332 399.5791 c -109.856 389.2803 103.8877 376.3271 98.6465 362.8008 c -91.7344 344.96 87.7056 323.8467 83.6235 304.2627 c -81.5273 294.2061 81.9316 284.2168 78.4434 275.7705 c -74.5234 266.2822 66.5 259.7139 60.8296 251.9404 c -54.7129 243.5557 51.2388 224.7588 40.627 221.3779 C -40.7998 221.7217 40.9727 222.0674 41.144 222.4131 C -39.79 227.2139 42.2383 230.333 43.2163 234.3291 C -41.1147 235.4502 39.3652 235.8232 38.5547 238.4736 C -40.1084 244.3438 41.6626 250.2139 43.2163 256.085 C -42.6357 258.7764 38.5103 262.4824 40.1084 267.4814 c -41.354 271.3818 44.9365 271.5908 45.2896 277.3262 C -43.8086 279.5244 41.9907 280.7529 40.1084 282.5049 C -40.1084 282.6777 40.1084 282.8506 40.1084 283.0234 C -52.8052 283.6553 57.1475 290.5166 61.3481 299.6006 C -53.7988 301.8721 41.7808 303.3838 38.5547 309.96 C -46.126 307.9092 59.4692 305.3623 67.0459 307.3721 C -69.4639 315.3115 71.8813 323.2568 74.2993 331.1992 C -77.9248 347.085 81.5513 362.9736 85.1777 378.8584 C -87.957 392.2158 84.7827 409.2002 90.3579 419.7832 C -92.7749 421.6826 95.1934 423.5815 97.6104 425.481 C -99.3364 431.1782 101.064 436.8784 102.7905 442.5757 C -107.7554 450.8428 114.814 456.6777 119.3677 465.8892 C -115.0508 468.8232 110.7329 471.7593 106.417 474.6938 C -106.7617 476.2495 107.1074 477.8027 107.4531 479.3564 C -93.3389 475.1343 85.5649 470.4336 75.8525 462.7798 C -65.6665 462.7798 55.4756 462.7798 45.2896 462.7798 C -45.4609 463.1255 45.6338 463.4712 45.8066 463.8169 C -74.2612 470.5581 82.3726 479.2275 102.7905 491.7886 C -114.7041 497.832 126.6211 503.8774 138.5347 509.9204 C -142.1606 513.2007 145.7881 516.4824 149.4136 519.7622 C -168.4629 531.9883 188.5562 540.2256 210.5415 549.8081 c -217.877 553.0059 224.0391 558.6489 232.2988 561.2056 c -245.8008 565.3853 266.6577 569.8081 284.1025 566.3867 C -292.7354 563.4507 301.3701 560.5142 310.0039 557.5801 C -324.5254 553.9165 346.2764 558.8447 355.0732 564.3149 c -369.0625 573.0098 372.4688 593.5171 375.793 613.0088 C -376.6572 620.606 377.5195 628.2046 378.3838 635.8013 C -383.2783 647.8481 394.3535 648.647 406.3574 653.9336 C -f -%%PageTrailer -gsave annotatepage grestore showpage -%%Trailer -Adobe_Illustrator_AI3 /terminate get exec -Adobe_pattern_AI3 /terminate get exec -Adobe_customcolor /terminate get exec -Adobe_cshow /terminate get exec -Adobe_packedarray /terminate get exec -%%EOF +%!PS-Adobe-3.0 +%%Creator: Adobe Illustrator(TM) 3.2 +%%AI8_CreatorVersion: 12.0.0 +%%For: (fluxus) (x) +%%Title: (pelican.ai) +%%CreationDate: 4/15/2006 11:28 PM +%%BoundingBox: 38 221 564 654 +%%DocumentProcessColors: Black +%%DocumentNeededResources: procset Adobe_packedarray 2.0 0 +%%+ procset Adobe_cshow 1.1 0 +%%+ procset Adobe_customcolor 1.0 0 +%%+ procset Adobe_pattern_AI3 1.0 0 +%%+ procset Adobe_Illustrator_AI3 1.0 1 +%AI3_ColorUsage: Color +%%CMYKCustomColor: 1 1 1 1 ([Registration]) +%AI3_TemplateBox: 298.5 420.3896 298.5 420.3896 +%AI3_TileBox: 0.157715 0.044861 595.1177 841.9648 +%AI3_DocumentPreview: None +%%PageOrigin:-32 11.8896 +%AI7_GridSettings: 72 8 72 8 1 0 0.8 0.8 0.8 0.9 0.9 0.9 +%AI9_Flatten: 1 +%AI12_CMSettings: 00.MS +%%EndComments +%%BeginProlog +%%IncludeResource: procset Adobe_packedarray 2.0 0 +Adobe_packedarray /initialize get exec +%%IncludeResource: procset Adobe_cshow 1.1 0 +%%IncludeResource: procset Adobe_customcolor 1.0 0 +%%IncludeResource: procset Adobe_pattern_AI3 1.0 0 +%%IncludeResource: procset Adobe_Illustrator_AI3 1.0 1 +%%EndProlog +%%BeginSetup +Adobe_cshow /initialize get exec +Adobe_customcolor /initialize get exec +Adobe_pattern_AI3 /initialize get exec +Adobe_Illustrator_AI3 /initialize get exec +%%EndSetup +0 A +0 O +0.823529 g +0 J 0 j 1 w 4 M []0 d +406.3574 653.9336 m +464.8369 654.4839 476.1016 604.7227 506.8555 577.2656 c +518.2334 567.1074 538.876 556.4058 541.0449 537.8945 C +525.793 545.1372 515.3398 557.5967 502.1924 566.9033 c +492.1299 574.0298 478.9131 577.0991 467.4844 582.9634 c +454.5439 589.603 441.3213 599.4785 424.4873 589.1792 c +413.7012 582.5776 412.9746 565.8579 406.3574 554.9893 c +401.2715 546.6338 390.2637 539.4668 382.0098 534.269 c +370.5801 527.0684 326.3232 509.3872 322.4365 499.042 C +331.416 493.8628 340.3955 488.6816 349.375 483.5005 C +370.4541 474.8203 420.0293 453.8994 428.1152 435.3247 C +427.9424 435.3247 427.7695 435.3247 427.5967 435.3247 C +422.0781 438.2988 418.0566 441.834 411.0205 443.6128 C +411.0205 442.9214 411.0205 442.2324 411.0205 441.541 C +415.6807 438.0884 420.3457 434.6333 425.0059 431.1807 C +426.5615 431.6968 428.1152 432.2153 429.6689 432.7339 C +436.3252 429.1694 440.0146 421.5771 446.2451 417.1924 c +468.749 401.3643 540.2861 360.04 557.624 408.9043 C +559.6963 408.7314 561.7676 408.5586 563.8398 408.3857 C +564.2002 369.6592 525.0967 377.3896 496.4951 382.4844 c +485.8457 384.3838 476.0742 379.3203 465.4141 380.9307 c +458.0371 382.0459 454.999 385.5068 447.8008 386.1123 C +444.6514 384.4326 443.9072 382.2314 441.583 379.8955 C +441.7559 379.5498 441.9287 379.2041 442.1016 378.8584 C +453.1211 376.5439 474.8496 358.7158 485.6162 352.4404 c +499.0371 344.6182 513.7188 346.8398 528.6133 341.043 C +531.0205 346.2412 546.2559 365.248 551.9258 365.9072 C +552.0986 365.3896 552.2715 364.8721 552.4424 364.3545 C +553.4883 360.7607 550.0078 356.1338 548.2988 353.4756 c +539.4346 339.6855 527.2559 336.8584 503.748 337.415 C +507.8379 329.7158 516.5977 331.1191 522.3965 325.501 C +510.8311 324.9131 495.6875 323.7822 486.6533 327.5732 C +483.0273 329.6455 479.4004 331.7178 475.7744 333.79 C +468.749 335.082 467.1133 328.6885 461.7891 327.5732 c +451.8096 325.4854 442.6299 328.9424 433.8125 329.6455 C +427.6152 314.2881 411.4697 330.1348 399.1045 326.5381 C +395.1328 323.6025 391.1621 320.666 387.1904 317.7314 C +380.2559 315.4561 375.2725 320.9756 368.0234 319.2861 C +363.707 316.8682 359.3877 314.4502 355.0732 312.0322 C +346.0449 325.4189 337.3516 308.3584 325.0264 313.0693 c +319.249 315.2764 317.3877 322.9951 312.0762 324.9834 c +302.3477 328.626 290.0044 321.8848 280.4756 325.501 c +275.7075 327.3125 274.5767 334.043 270.1157 335.8623 C +266.6616 335.6885 263.208 335.5166 259.7544 335.3428 C +254.7881 336.4834 253.1904 341.9092 248.8755 343.6338 C +245.7686 343.8066 242.6592 343.9775 239.5513 344.1494 C +236.9614 347.4326 234.3711 350.7119 231.7803 353.9941 C +227.1187 356.2158 222.1738 353.7666 218.312 356.0654 C +217.707 358.9385 216.9556 361.4961 214.6855 362.8008 C +210.5415 362.9736 206.396 363.1465 202.2529 363.3174 C +200.6987 365.3896 199.145 367.4639 197.5903 369.5332 C +193.9648 370.2246 190.3384 370.916 186.7119 371.6074 C +183.0776 383.6631 179.9097 377.1084 172.7246 383.0029 C +172.0347 384.5557 171.3433 386.1123 170.6528 387.665 C +167.4033 390.2705 160.396 389.1025 157.1846 391.291 C +150.2778 399.2334 143.3691 407.1787 136.4629 415.1201 C +135.7725 415.1201 135.0811 415.1201 134.3906 415.1201 C +129.8872 408.9912 123.022 405.2783 118.332 399.5791 c +109.856 389.2803 103.8877 376.3271 98.6465 362.8008 c +91.7344 344.96 87.7056 323.8467 83.6235 304.2627 c +81.5273 294.2061 81.9316 284.2168 78.4434 275.7705 c +74.5234 266.2822 66.5 259.7139 60.8296 251.9404 c +54.7129 243.5557 51.2388 224.7588 40.627 221.3779 C +40.7998 221.7217 40.9727 222.0674 41.144 222.4131 C +39.79 227.2139 42.2383 230.333 43.2163 234.3291 C +41.1147 235.4502 39.3652 235.8232 38.5547 238.4736 C +40.1084 244.3438 41.6626 250.2139 43.2163 256.085 C +42.6357 258.7764 38.5103 262.4824 40.1084 267.4814 c +41.354 271.3818 44.9365 271.5908 45.2896 277.3262 C +43.8086 279.5244 41.9907 280.7529 40.1084 282.5049 C +40.1084 282.6777 40.1084 282.8506 40.1084 283.0234 C +52.8052 283.6553 57.1475 290.5166 61.3481 299.6006 C +53.7988 301.8721 41.7808 303.3838 38.5547 309.96 C +46.126 307.9092 59.4692 305.3623 67.0459 307.3721 C +69.4639 315.3115 71.8813 323.2568 74.2993 331.1992 C +77.9248 347.085 81.5513 362.9736 85.1777 378.8584 C +87.957 392.2158 84.7827 409.2002 90.3579 419.7832 C +92.7749 421.6826 95.1934 423.5815 97.6104 425.481 C +99.3364 431.1782 101.064 436.8784 102.7905 442.5757 C +107.7554 450.8428 114.814 456.6777 119.3677 465.8892 C +115.0508 468.8232 110.7329 471.7593 106.417 474.6938 C +106.7617 476.2495 107.1074 477.8027 107.4531 479.3564 C +93.3389 475.1343 85.5649 470.4336 75.8525 462.7798 C +65.6665 462.7798 55.4756 462.7798 45.2896 462.7798 C +45.4609 463.1255 45.6338 463.4712 45.8066 463.8169 C +74.2612 470.5581 82.3726 479.2275 102.7905 491.7886 C +114.7041 497.832 126.6211 503.8774 138.5347 509.9204 C +142.1606 513.2007 145.7881 516.4824 149.4136 519.7622 C +168.4629 531.9883 188.5562 540.2256 210.5415 549.8081 c +217.877 553.0059 224.0391 558.6489 232.2988 561.2056 c +245.8008 565.3853 266.6577 569.8081 284.1025 566.3867 C +292.7354 563.4507 301.3701 560.5142 310.0039 557.5801 C +324.5254 553.9165 346.2764 558.8447 355.0732 564.3149 c +369.0625 573.0098 372.4688 593.5171 375.793 613.0088 C +376.6572 620.606 377.5195 628.2046 378.3838 635.8013 C +383.2783 647.8481 394.3535 648.647 406.3574 653.9336 C +f +%%PageTrailer +gsave annotatepage grestore showpage +%%Trailer +Adobe_Illustrator_AI3 /terminate get exec +Adobe_pattern_AI3 /terminate get exec +Adobe_customcolor /terminate get exec +Adobe_cshow /terminate get exec +Adobe_packedarray /terminate get exec +%%EOF diff --git a/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/images/tiger.ai b/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/images/tiger.ai index 37c8b5b4848..e4944fb1158 100644 --- a/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/images/tiger.ai +++ b/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/images/tiger.ai @@ -1,3599 +1,3599 @@ -%!PS-Adobe-3.0 -%%Creator: Adobe Illustrator(TM) 3.2 -%%AI8_CreatorVersion: 12.0.0 -%%For: (fluxus) (x) -%%Title: (tiger.ai) -%%CreationDate: 4/14/2006 11:35 PM -%%BoundingBox: 22 167 567 730 -%%DocumentProcessColors: Cyan Magenta Yellow Black -%%DocumentNeededResources: procset Adobe_packedarray 2.0 0 -%%+ procset Adobe_cmykcolor 1.1 0 -%%+ procset Adobe_cshow 1.1 0 -%%+ procset Adobe_customcolor 1.0 0 -%%+ procset Adobe_pattern_AI3 1.0 0 -%%+ procset Adobe_Illustrator_AI3 1.0 1 -%AI3_ColorUsage: Color -%%CMYKCustomColor: 0.74902 0.678431 0.670588 0.901961 ([Registration]) -%AI3_TemplateBox: 306.5 396.5 306.5 396.5 -%AI3_TileBox: 0 1 612 793 -%AI3_DocumentPreview: None -%%PageOrigin:0 0 -%AI7_GridSettings: 72 8 72 8 1 0 0.8 0.8 0.8 0.9 0.9 0.9 -%AI9_Flatten: 1 -%AI12_CMSettings: 00.MS -%%EndComments -%%BeginProlog -%%IncludeResource: procset Adobe_packedarray 2.0 0 -Adobe_packedarray /initialize get exec -%%IncludeResource: procset Adobe_cmykcolor 1.1 0 -%%IncludeResource: procset Adobe_cshow 1.1 0 -%%IncludeResource: procset Adobe_customcolor 1.0 0 -%%IncludeResource: procset Adobe_pattern_AI3 1.0 0 -%%IncludeResource: procset Adobe_Illustrator_AI3 1.0 1 -%%EndProlog -0 A -u -0 O -1 g -0 J 0 j 1 w 4 M []0 d -90.5 477.5 m -90.5767 475.4434 89.7798 475.5801 v -88.7646 475.4863 70.6641 528.3682 48.02 525.9795 c -67.6445 533.9883 90.5 477.5 v -F -0 R -0 G -0.1892 w 10 M -90.5 477.5 m -90.5767 475.4434 89.7798 475.5801 v -88.7646 475.4863 70.6641 528.3682 48.02 525.9795 c -67.6445 533.9883 90.5 477.5 v -90.5 477.5 l -s -0 O -1 g -1 w 4 M -94.3398 480.8594 m -93.7446 478.8555 92.8999 479.1797 v -92.0552 479.5107 93.0249 535.3975 71.0601 540.8594 c -92.0981 541.709 94.3398 480.8594 v -F -0 R -0 G -0.1892 w 10 M -94.3398 480.8594 m -93.7446 478.8555 92.8999 479.1797 v -92.0552 479.5107 93.0249 535.3975 71.0601 540.8594 c -92.0981 541.709 94.3398 480.8594 v -94.3398 480.8594 l -s -0 O -1 g -1 w 4 M -124.5801 434.2998 m -126.3872 433.2363 125.7798 432.3799 v -125.3525 431.7461 71.2617 445.8291 60.98 425.6602 c -64.9063 446.4102 124.5801 434.2998 v -F -0 R -0 G -0.1892 w 10 M -124.5801 434.2998 m -126.3872 433.2363 125.7798 432.3799 v -125.3525 431.7461 71.2617 445.8291 60.98 425.6602 c -64.9063 446.4102 124.5801 434.2998 v -124.5801 434.2998 l -s -0 O -1 g -1 w 4 M -121.46 423.0195 m -123.5381 422.624 123.3799 421.8193 v -123.0249 420.8838 67.2534 417.207 63.8599 394.7002 c -61.04 415.7598 121.46 423.0195 v -F -0 R -0 G -0.1892 w 10 M -121.46 423.0195 m -123.5381 422.624 123.3799 421.8193 v -123.0249 420.8838 67.2534 417.207 63.8599 394.7002 c -61.04 415.7598 121.46 423.0195 v -121.46 423.0195 l -s -0 O -1 g -1 w 4 M -116.8999 429.0195 m -118.8223 428.4082 118.3398 427.5801 v -118.0615 426.7617 62.3481 431.2617 55.7002 409.5801 c -55.9902 430.7334 116.8999 429.0195 v -F -0 R -0 G -0.1892 w 10 M -116.8999 429.0195 m -118.8223 428.4082 118.3398 427.5801 v -118.0615 426.7617 62.3481 431.2617 55.7002 409.5801 c -55.9902 430.7334 116.8999 429.0195 v -116.8999 429.0195 l -s -0 O -1 g -1 w 4 M -105.1401 449.1797 m -106.5298 447.6514 105.8599 447.0195 v -105.123 446.5039 57.0054 474.9434 41.54 458.2998 c -51.0586 477.2549 105.1401 449.1797 v -F -0 R -0 G -0.1892 w 10 M -105.1401 449.1797 m -106.5298 447.6514 105.8599 447.0195 v -105.123 446.5039 57.0054 474.9434 41.54 458.2998 c -51.0586 477.2549 105.1401 449.1797 v -105.1401 449.1797 l -s -0 O -1 g -1 w 4 M -96.7402 444.6201 m -98.3936 443.2139 97.7002 442.46 v -97.1265 441.9131 46.0977 464.7266 32.4199 446.54 c -39.9297 466.3496 96.7402 444.6201 v -F -0 R -0 G -0.1892 w 10 M -96.7402 444.6201 m -98.3936 443.2139 97.7002 442.46 v -97.1265 441.9131 46.0977 464.7266 32.4199 446.54 c -39.9297 466.3496 96.7402 444.6201 v -96.7402 444.6201 l -s -0 O -1 g -1 w 4 M -93.8599 440.0596 m -95.6982 438.9629 95.0601 438.1396 v -94.6206 437.5059 40.9614 453.1494 30.02 433.3398 c -34.6279 453.917 93.8599 440.0596 v -F -0 R -0 G -0.1892 w 10 M -93.8599 440.0596 m -95.6982 438.9629 95.0601 438.1396 v -94.6206 437.5059 40.9614 453.1494 30.02 433.3398 c -34.6279 453.917 93.8599 440.0596 v -93.8599 440.0596 l -s -0 O -1 g -1 w 4 M -105.6201 439.3398 m -106.9736 437.7129 106.1001 437.1797 v -105.4302 436.7549 61.3545 471.1279 43.7002 456.6201 c -55.7529 474.1826 105.6201 439.3398 v -F -0 R -0 G -0.1892 w 10 M -105.6201 439.3398 m -106.9736 437.7129 106.1001 437.1797 v -105.4302 436.7549 61.3545 471.1279 43.7002 456.6201 c -55.7529 474.1826 105.6201 439.3398 v -105.6201 439.3398 l -s -0 O -1 g -1 w 4 M -84.02 471.2598 m -84.6416 469.2607 83.7798 469.0996 v -82.8799 468.8213 51.4209 515.0215 30.2598 506.7803 c -47.0215 519.6416 84.02 471.2598 v -F -0 R -0 G -0.1892 w 10 M -84.02 471.2598 m -84.6416 469.2607 83.7798 469.0996 v -82.8799 468.8213 51.4209 515.0215 30.2598 506.7803 c -47.0215 519.6416 84.02 471.2598 v -84.02 471.2598 l -s -0 O -1 g -1 w 4 M -84.7402 463.5801 m -85.8174 461.7725 84.98 461.4199 v -84.1929 460.9639 43.5078 499.292 24.7402 486.6201 c -38.2158 502.8535 84.7402 463.5801 v -F -0 R -0 G -0.1892 w 10 M -84.7402 463.5801 m -85.8174 461.7725 84.98 461.4199 v -84.1929 460.9639 43.5078 499.292 24.7402 486.6201 c -38.2158 502.8535 84.7402 463.5801 v -84.7402 463.5801 l -s -0 O -1 g -1 w 4 M -84.5 458.7803 m -85.8535 457.0732 84.98 456.6201 v -84.3105 456.1182 40.2344 490.4883 22.5801 476.0596 c -34.6328 493.541 84.5 458.7803 v -F -0 R -0 G -0.1892 w 10 M -84.5 458.7803 m -85.8535 457.0732 84.98 456.6201 v -84.3105 456.1182 40.2344 490.4883 22.5801 476.0596 c -34.6328 493.541 84.5 458.7803 v -84.5 458.7803 l -s -0 O -1 g -1 w 4 M -82.1001 456.8594 m -82.7407 450.2168 83.8281 442.9902 85.7002 439.5801 c -81.7808 425.9189 91.46 411.5 v -91.0205 403.4795 92.8999 399.9795 v -97.1816 390.7207 102.5 389.8994 v -106.7334 389.1299 116.3286 385.7529 127.2197 384.1396 c -146.0215 368.7197 142.5801 354.6201 v -142.0615 336.6006 138.02 334.9395 v -150.8599 347.1582 140.4199 328.7002 v -135.3799 308.0596 l -163.6206 331.7598 146.4199 311.4199 v -135.3799 282.8594 l -157.0205 303.1592 149.0601 293.8994 v -145.7002 284.2998 l -193.1001 314.1582 159.1401 281.6602 v -168.02 285.5596 172.8198 282.3799 v -180.3418 283.8008 179.54 282.1396 v -156.5815 270.6006 152.6602 250.46 v -161.8613 261.3584 158.4199 249.5 v -158.8999 236.7803 l -163.1816 260.4795 162.7402 219.0195 v -183.8599 238.9209 171.1401 216.1396 v -171.1401 197.6602 l -187.8198 215.5996 180.7402 201.5 v -191.7798 211.2002 187.46 194.54 v -186.5 183.0391 191.2998 195.2598 v -208.9399 229.0205 202.3398 200.2998 v -201.4614 179.0791 206.6602 195.2598 v -207.1807 183.9199 217.2197 176.0596 v -215.9814 231.8789 230.1802 192.3799 v -234.5 174.1396 l -237.541 184.3594 237.1401 189.9795 v -253.3809 208.1191 246.02 181.3398 v -262.6206 206.3594 259.2197 191.8994 v -250.7407 174.2402 252.5 168.8594 v -270.98 207.2402 272.4199 208.9395 v -270.1016 162.3584 282.02 201.9795 v -288.1401 188.7607 285.1401 183.9795 v -293.8613 192.7207 293.0601 196.2197 v -298.04 205.2607 301.2197 190.2197 v -303.1016 179.96 304.8198 183.5 v -309.2598 157.0781 310.5801 182.0596 v -312.3418 197.1201 304.3398 209.8994 v -305.2998 213.3994 302.1802 217.8193 v -317.1797 194.04 309.3799 225.7393 v -321.582 216.9199 322.8203 216.8594 v -307.9395 242.4385 317.54 237.2598 v -311.9004 248.5996 331.7002 235.3398 v -314.1006 252.999 333.3799 242.54 v -342.2617 235.3994 333.8594 246.3799 v -318.0605 264.001 342.2598 244.2197 v -355.0205 226.1602 355.9395 223.0996 v -344.9023 255.2002 340.0996 258.3799 v -349.3018 298.3203 394.5801 281.1797 v -402.1016 262.2393 407.0605 282.3799 v -421.0215 289.5195 433.46 259.0996 v -437.7422 274.1191 436.8203 277.0996 v -444.3418 275.8779 443.54 277.0996 v -457.9805 272.3594 459.3799 273.2598 v -466.7813 265.7598 467.2998 269.6602 v -477.3418 266.6406 475.2197 270.6201 v -484.8223 253.4404 485.2998 249.5 v -487.9395 264.8594 l -490.0996 261.7393 l -491.8613 270.1592 491.0605 271.5801 v -490.1025 272.7988 512.9814 264.001 518.1797 241.0996 c -520.5801 231.9795 l -527.0625 248.1602 525.3799 252.6201 v -531.0225 251.6787 531.3799 246.8594 v -535.8613 272.3594 530.6602 279.0195 v -535.4219 279.8408 536.6602 275.8994 v -536.6602 283.8193 l -544.6621 282.9199 544.5801 285.5 v -549.502 289.959 551.7793 284.7803 v -538.0615 323.4004 558.2598 302.2998 v -566.2207 290.4004 562.3398 311.1797 v -558.3008 331.7598 553.9014 333.5186 559.2207 333.9795 c -560.0625 337.9209 557.7793 339.7393 v -555.6602 341.4385 559.2207 339.7393 y -564.4609 335.2803 558.7402 359.4199 v -565.7813 357.7207 552.5 389.8994 v -555.6602 392.4795 551.2998 401.6602 v -560.0625 396.8789 563.0605 398.54 v -562.7021 400.3994 559.2207 404.7803 v -535.4219 465.0801 557.7793 440.7803 v -570.8965 425.9746 563.7793 451.0996 v -553.834 477.4658 554.6602 482.2998 v -82.1001 456.8594 l -F -0 R -0 G -1.1 w 10 M -82.1001 456.8594 m -82.7407 450.2168 83.8281 442.9902 85.7002 439.5801 c -81.7808 425.9189 91.46 411.5 v -91.0205 403.4795 92.8999 399.9795 v -97.1816 390.7207 102.5 389.8994 v -106.7334 389.1299 116.3286 385.7529 127.2197 384.1396 c -146.0215 368.7197 142.5801 354.6201 v -142.0615 336.6006 138.02 334.9395 v -150.8599 347.1582 140.4199 328.7002 v -135.3799 308.0596 l -163.6206 331.7598 146.4199 311.4199 v -135.3799 282.8594 l -157.0205 303.1592 149.0601 293.8994 v -145.7002 284.2998 l -193.1001 314.1582 159.1401 281.6602 v -168.02 285.5596 172.8198 282.3799 v -180.3418 283.8008 179.54 282.1396 v -156.5815 270.6006 152.6602 250.46 v -161.8613 261.3584 158.4199 249.5 v -158.8999 236.7803 l -163.1816 260.4795 162.7402 219.0195 v -183.8599 238.9209 171.1401 216.1396 v -171.1401 197.6602 l -187.8198 215.5996 180.7402 201.5 v -191.7798 211.2002 187.46 194.54 v -186.5 183.0391 191.2998 195.2598 v -208.9399 229.0205 202.3398 200.2998 v -201.4614 179.0791 206.6602 195.2598 v -207.1807 183.9199 217.2197 176.0596 v -215.9814 231.8789 230.1802 192.3799 v -234.5 174.1396 l -237.541 184.3594 237.1401 189.9795 v -253.3809 208.1191 246.02 181.3398 v -262.6206 206.3594 259.2197 191.8994 v -250.7407 174.2402 252.5 168.8594 v -270.98 207.2402 272.4199 208.9395 v -270.1016 162.3584 282.02 201.9795 v -288.1401 188.7607 285.1401 183.9795 v -293.8613 192.7207 293.0601 196.2197 v -298.04 205.2607 301.2197 190.2197 v -303.1016 179.96 304.8198 183.5 v -309.2598 157.0781 310.5801 182.0596 v -312.3418 197.1201 304.3398 209.8994 v -305.2998 213.3994 302.1802 217.8193 v -317.1797 194.04 309.3799 225.7393 v -321.582 216.9199 322.8203 216.8594 v -307.9395 242.4385 317.54 237.2598 v -311.9004 248.5996 331.7002 235.3398 v -314.1006 252.999 333.3799 242.54 v -342.2617 235.3994 333.8594 246.3799 v -318.0605 264.001 342.2598 244.2197 v -355.0205 226.1602 355.9395 223.0996 v -344.9023 255.2002 340.0996 258.3799 v -349.3018 298.3203 394.5801 281.1797 v -402.1016 262.2393 407.0605 282.3799 v -421.0215 289.5195 433.46 259.0996 v -437.7422 274.1191 436.8203 277.0996 v -444.3418 275.8779 443.54 277.0996 v -457.9805 272.3594 459.3799 273.2598 v -466.7813 265.7598 467.2998 269.6602 v -477.3418 266.6406 475.2197 270.6201 v -484.8223 253.4404 485.2998 249.5 v -487.9395 264.8594 l -490.0996 261.7393 l -491.8613 270.1592 491.0605 271.5801 v -490.1025 272.7988 512.9814 264.001 518.1797 241.0996 c -520.5801 231.9795 l -527.0625 248.1602 525.3799 252.6201 v -531.0225 251.6787 531.3799 246.8594 v -535.8613 272.3594 530.6602 279.0195 v -535.4219 279.8408 536.6602 275.8994 v -536.6602 283.8193 l -544.6621 282.9199 544.5801 285.5 v -549.502 289.959 551.7793 284.7803 v -538.0615 323.4004 558.2598 302.2998 v -566.2207 290.4004 562.3398 311.1797 v -558.3008 331.7598 553.9014 333.5186 559.2207 333.9795 c -560.0625 337.9209 557.7793 339.7393 v -555.6602 341.4385 559.2207 339.7393 y -564.4609 335.2803 558.7402 359.4199 v -565.7813 357.7207 552.5 389.8994 v -555.6602 392.4795 551.2998 401.6602 v -560.0625 396.8789 563.0605 398.54 v -562.7021 400.3994 559.2207 404.7803 v -535.4219 465.0801 557.7793 440.7803 v -570.8965 425.9746 563.7793 451.0996 v -553.834 477.4658 554.6602 482.2998 v -82.1001 456.8594 l -82.1001 456.8594 l -s -0 O -0.164706 0.627451 1 0.031373 k -1 w 4 M -554.6602 482.0596 m -555.3799 481.7715 557.8066 480.5361 559.2197 478.7002 c -566.6621 466.8418 560.9004 487.0996 v -550.8223 518.7607 560.4199 506.54 v -567.1016 498.5215 563.54 513.5 v -559.3301 531.5498 556.5801 538.46 y -569.3027 533.2803 539.7793 576.8594 v -549.6201 572.7793 l -527.9414 616.4404 504.2598 622.2197 v -495.3799 628.7002 l -537.623 670.5605 523.46 711.0195 v -516.0605 716.7607 505.46 706.7002 v -498.4609 701.3594 491.7793 703.0996 v -457.9805 701.8018 455.7793 701.8994 v -453.582 701.8018 415.3018 742.7217 343.2197 723.2598 c -337.4219 721.1602 332.6602 722.54 v -312.3418 740.0811 258.7397 715.0996 v -247.6616 712.8008 246.02 712.7002 v -244.1406 712.8008 241.0615 712.8008 232.3398 705.7393 c -223.46 698.7197 223.0205 697.8418 220.8198 696.1396 c -202.7817 683.7607 197.54 682.9395 v -184.7407 675.8408 180.02 664.9395 v -175.9399 663.5 l -174.1807 655.6016 173.7798 654.3799 v -168.4614 650.3213 167.54 644.0596 v -157.9014 637.5605 158.4199 632.7793 v -156.5815 627.001 155.7798 621.7393 v -147.7808 616.4404 148.5801 613.3398 v -140.2998 597.9609 141.6201 590.54 v -134.5806 590.9209 131.54 588.3799 v -130.6206 583.001 128.8999 582.6201 v -125.7798 581.2393 128.4199 576.8594 v -126.6606 573.7617 126.2598 572.0596 v -127.1001 568.9209 122.1797 562.7002 v -115.2197 542.0811 117.3799 536.2998 v -117.8599 531.0801 114.7397 529.3398 v -110.8208 529.7598 120.02 516.6201 v -120.9414 515.2393 117.3799 512.54 v -98.5015 508.6396 95.7798 490.7002 v -80.8999 474.3193 80.8999 468.6201 v -80.8999 466.0664 81.1973 462.6025 81.8599 457.5801 c -81.3418 448.3594 111.6201 447.5 v -142.0615 446.5996 554.6602 482.0596 y -F -0 R -0 G -1.1 w 10 M -554.6602 482.0596 m -555.3799 481.7715 557.8066 480.5361 559.2197 478.7002 c -566.6621 466.8418 560.9004 487.0996 v -550.8223 518.7607 560.4199 506.54 v -567.1016 498.5215 563.54 513.5 v -559.3301 531.5498 556.5801 538.46 y -569.3027 533.2803 539.7793 576.8594 v -549.6201 572.7793 l -527.9414 616.4404 504.2598 622.2197 v -495.3799 628.7002 l -537.623 670.5605 523.46 711.0195 v -516.0605 716.7607 505.46 706.7002 v -498.4609 701.3594 491.7793 703.0996 v -457.9805 701.8018 455.7793 701.8994 v -453.582 701.8018 415.3018 742.7217 343.2197 723.2598 c -337.4219 721.1602 332.6602 722.54 v -312.3418 740.0811 258.7397 715.0996 v -247.6616 712.8008 246.02 712.7002 v -244.1406 712.8008 241.0615 712.8008 232.3398 705.7393 c -223.46 698.7197 223.0205 697.8418 220.8198 696.1396 c -202.7817 683.7607 197.54 682.9395 v -184.7407 675.8408 180.02 664.9395 v -175.9399 663.5 l -174.1807 655.6016 173.7798 654.3799 v -168.4614 650.3213 167.54 644.0596 v -157.9014 637.5605 158.4199 632.7793 v -156.5815 627.001 155.7798 621.7393 v -147.7808 616.4404 148.5801 613.3398 v -140.2998 597.9609 141.6201 590.54 v -134.5806 590.9209 131.54 588.3799 v -130.6206 583.001 128.8999 582.6201 v -125.7798 581.2393 128.4199 576.8594 v -126.6606 573.7617 126.2598 572.0596 v -127.1001 568.9209 122.1797 562.7002 v -115.2197 542.0811 117.3799 536.2998 v -117.8599 531.0801 114.7397 529.3398 v -110.8208 529.7598 120.02 516.6201 v -120.9414 515.2393 117.3799 512.54 v -98.5015 508.6396 95.7798 490.7002 v -80.8999 474.3193 80.8999 468.6201 v -80.8999 466.0664 81.1973 462.6025 81.8599 457.5801 c -81.3418 448.3594 111.6201 447.5 v -142.0615 446.5996 554.6602 482.0596 y -554.6602 482.0596 l -s -0 O -0.164706 0.627451 1 0.031373 k -1 w 4 M -97.9399 457.3398 m -70.3398 500.7197 86.1802 438.6201 y -95.8613 400.8389 238.3398 442.2197 y -424.1025 475.6396 436.3398 480.1396 v -448.7402 484.4404 553.46 477.5 y -547.2207 495.9795 l -476.0215 546.9199 454.9014 521.4004 439.9395 525.7402 c -424.9805 530.2012 427.6211 519.6416 424.0996 518.7803 c -420.582 517.8799 377.4609 545.1602 370.3398 544.2197 c -363.3828 543.4014 335.5059 569.5273 351.8594 534.6201 c -369.541 497.2012 287.7007 491.4795 269.2998 503.8994 c -250.7407 516.1201 277.2197 483.5 y -297.3799 461.5615 259.46 480.1396 y -221.7007 494.1201 195.3008 465.9609 191.7798 465.0195 c -188.2617 464.2012 182.9814 460.6807 182.1802 467.6602 c -181.2197 474.7617 172.959 493.1309 138.02 464.2998 c -116.1006 445.9395 100.8198 470.0596 y -97.9399 457.3398 l -F -0.054902 0.607843 0.878431 0 k -371.7793 542.2998 m -364.8203 541.4814 336.918 567.5938 353.2998 532.7002 c -371.6406 493.9609 289.1406 489.5596 270.7402 501.9795 c -252.1807 514.2002 278.6602 481.5801 y -298.8198 459.6416 260.8999 478.2197 y -223.1406 492.2002 196.7407 464.04 193.2197 463.0996 c -189.7017 462.2813 184.4214 458.7607 183.6201 465.7393 c -182.6602 472.8418 174.543 491.0283 139.46 462.3799 c -116.1802 443.1992 101.2998 466.7002 y -97.9399 455.6602 l -70.3208 499.46 86.8999 435.2598 y -96.5815 397.4785 239.7798 440.2998 y -425.54 473.7197 437.7793 478.2197 v -450.1807 482.5205 553.9395 475.5801 y -547.9395 494.54 l -476.5801 545.6406 456.3418 519.4805 441.3799 523.8193 c -426.4209 528.2813 429.0605 517.7217 425.54 516.8594 c -422.0215 515.96 378.9004 543.2402 371.7793 542.2998 c -F -0.047059 0.537255 0.772549 0 k -373.2197 540.3799 m -366.2598 539.5615 339.0537 565.9922 354.7402 530.7793 c -372.6416 490.9395 290.5806 487.6396 272.1802 500.0596 c -253.6206 512.2783 280.1001 479.6602 y -300.2598 457.7188 262.3398 476.2998 y -224.5806 490.2793 198.1807 462.1182 194.6602 461.1797 c -191.1392 460.3594 185.8594 456.8379 185.0601 463.8193 c -184.1001 470.9189 176.127 488.9238 140.8999 460.46 c -116.2593 440.458 101.7798 463.3398 y -97.7002 453.9795 l -71.6216 496.8799 87.6201 431.8994 y -97.3018 394.1191 241.2197 438.3799 y -426.9805 471.7998 439.2197 476.2998 v -451.6211 480.5977 554.4199 473.6602 y -548.4199 493.3398 l -477.1406 544.3594 457.7813 517.5605 442.8203 521.8994 c -427.8613 526.3613 430.501 515.8018 426.9805 514.9395 c -423.4609 514.04 380.3408 541.3203 373.2197 540.3799 c -F -0.039216 0.462745 0.67451 0 k -374.6602 538.46 m -367.7002 537.6416 340.498 564.0752 356.1797 528.8594 c -374.7422 487.5293 291.4326 486.1113 273.6201 498.1396 c -255.0605 510.3604 281.54 477.7393 y -301.7002 455.8018 263.7798 474.3799 y -226.0205 488.3594 199.6206 460.2002 196.1001 459.2598 c -192.5815 458.4414 187.3018 454.9209 186.5 461.8994 c -185.54 469.001 177.7134 486.8164 142.3398 458.54 c -116.3408 437.7197 102.2598 460.2197 y -97.7002 452.2998 l -73.7983 492.7617 88.3398 428.54 y -98.0215 390.7588 242.6602 436.46 y -428.4199 469.8799 440.6602 474.3799 v -453.0625 478.6807 554.9004 471.9795 y -548.9004 492.1396 l -477.7012 543.0801 459.2217 515.6406 444.2598 519.9795 c -429.3008 524.4414 431.9414 513.8818 428.4199 513.0195 c -424.9014 512.1201 381.7813 539.4004 374.6602 538.46 c -F -0.035294 0.396078 0.572549 0 k -376.0996 536.54 m -369.1406 535.7188 342.4951 562.3994 357.6201 526.9395 c -376.1816 483.7998 293.4609 483.7998 275.0601 496.2197 c -256.501 508.4385 282.98 475.8193 y -303.1401 453.8789 265.2197 472.46 y -227.4609 486.4395 201.0605 458.2783 197.54 457.3398 c -194.0215 456.5186 188.7417 452.998 187.9399 459.9795 c -186.98 467.0791 179.2974 484.7139 143.7798 456.6201 c -116.4199 434.9785 102.5 456.8594 y -97.7002 450.6201 l -75.98 488.8613 89.0601 425.1797 y -98.7393 387.3994 244.1001 434.54 y -429.8623 467.96 442.0996 472.46 v -454.5039 476.7578 555.3799 470.0596 y -549.6201 490.7002 l -478.2637 541.8008 460.6621 513.7178 445.7002 518.0596 c -430.7432 522.5186 433.3828 511.959 429.8594 511.0996 c -426.3418 510.2002 383.2227 537.4785 376.0996 536.54 c -F -0.031373 0.333333 0.470588 0 k -377.54 534.6201 m -370.582 533.8018 342.0225 559.5967 359.0605 525.0195 c -380.2617 482.3213 294.9009 481.8799 276.5 494.2998 c -257.9409 506.5205 284.4199 473.8994 y -304.5801 451.959 266.6602 470.54 y -228.9009 484.5195 202.501 456.3604 198.98 455.4199 c -195.4614 454.6016 190.1816 451.0801 189.3799 458.0596 c -188.4199 465.1592 180.8818 482.6094 145.2197 454.7002 c -116.5015 432.2383 102.98 453.5 y -97.7002 448.9395 l -77.9409 485.4004 89.7798 421.8193 y -99.4614 384.0391 245.54 432.6201 y -431.3027 466.04 443.54 470.54 v -455.9434 474.8408 555.8594 468.1396 y -550.0996 489.5 l -478.8223 540.5186 462.1016 511.8008 447.1406 516.1396 c -432.1836 520.6016 434.8232 510.0391 431.2998 509.1797 c -427.7813 508.2793 384.6631 535.5605 377.54 534.6201 c -F -0.027451 0.278431 0.372549 0 k -378.9805 532.7002 m -372.0195 531.8818 343.0449 557.4678 360.5 523.0996 c -383.0215 479.0791 296.3408 479.96 277.9399 492.3799 c -259.3809 504.5977 285.8599 471.9795 y -306.02 450.0391 268.1001 468.6201 y -230.3408 482.5996 203.9409 454.4385 200.4199 453.5 c -196.9014 452.6787 191.6216 449.1582 190.8198 456.1396 c -189.8599 463.2393 182.4658 480.5049 146.6602 452.7793 c -116.5806 429.5 103.46 450.1396 y -97.7002 447.2598 l -80.1201 480.3994 90.5 418.46 y -100.1792 380.6787 246.98 430.7002 y -432.7422 464.1201 444.9805 468.6201 v -457.3828 472.918 556.3398 466.46 y -550.5801 488.2998 l -479.3818 539.2393 463.541 509.8779 448.5801 514.2197 c -433.623 518.6816 436.2637 508.1191 432.7402 507.2598 c -429.2217 506.3594 386.1035 533.6406 378.9805 532.7002 c -F -0.019608 0.215686 0.286275 0 k -380.4199 530.7793 m -373.4629 529.959 343.2754 554.9023 361.9395 521.1797 c -386.2227 477.6006 297.7808 478.04 279.3799 490.46 c -260.8208 502.6807 287.2998 470.0596 y -307.46 448.1191 269.54 466.7002 y -231.7808 480.6797 205.3809 452.5205 201.8599 451.5801 c -198.3418 450.7588 193.0615 447.2402 192.2598 454.2197 c -191.2998 461.3193 184.0498 478.3994 148.1001 450.8594 c -116.6602 426.7588 103.9399 446.7793 y -97.7002 445.5801 l -81.8599 476.7197 91.2197 415.0996 y -100.9014 377.3193 248.4199 428.7793 y -434.1826 462.2002 446.4199 466.7002 v -458.8232 471.001 556.8203 464.54 y -551.2998 486.8594 l -479.9434 537.9609 464.9814 507.9609 450.0195 512.2998 c -435.0625 516.7588 437.7031 506.1992 434.1797 505.3398 c -430.6621 504.4395 387.543 531.7207 380.4199 530.7793 c -F -0.015686 0.156863 0.203922 0 k -381.8594 528.8594 m -374.9023 528.0391 344.7148 552.9824 363.3799 519.2598 c -387.6631 475.6777 299.2231 476.1201 280.8198 488.54 c -262.2607 500.7578 288.7402 468.1396 y -308.9023 446.1992 270.98 464.7793 y -233.2207 478.7598 206.8208 450.5977 203.2998 449.6602 c -199.7817 448.8389 194.5015 445.3184 193.7002 452.2998 c -192.7402 459.3994 185.6357 476.2949 149.54 448.9395 c -116.7417 424.0186 104.1802 443.4199 y -97.7002 443.6602 l -82.7192 472.8193 91.9399 411.7393 y -101.6216 373.959 249.8599 426.8594 y -435.623 460.2793 447.8594 464.7793 v -460.2637 469.0781 557.2998 462.6201 y -551.7793 485.6602 l -480.502 536.6787 466.4219 506.0381 451.46 510.3799 c -436.501 514.8389 439.1426 504.2793 435.6201 503.4199 c -432.1016 502.5195 388.9834 529.7979 381.8594 528.8594 c -F -0.011765 0.098039 0.12549 0 k -383.2998 526.9395 m -376.3418 526.1191 346.582 551.2949 364.8203 517.3398 c -389.1006 472.4404 300.6606 474.2002 282.2598 486.6201 c -263.7007 498.8408 290.1802 466.2197 y -310.3418 444.2793 272.4199 462.8594 y -234.6606 476.8398 208.2607 448.6807 204.7402 447.7393 c -201.2217 446.9189 195.9414 443.4004 195.1401 450.3799 c -194.1802 457.4785 187.2197 474.1904 150.98 447.0195 c -116.8208 421.2793 104.6602 440.0596 y -97.7002 441.9795 l -83.3599 468.4805 92.6602 408.3799 y -102.3418 370.5986 251.2998 424.9395 y -437.0625 458.3594 449.2998 462.8594 v -461.7012 467.1602 557.7793 460.9395 y -552.2598 484.46 l -481.0615 535.3994 467.8613 504.1201 452.9004 508.46 c -437.9414 512.9189 440.5801 502.3594 437.0605 501.5 c -433.541 500.5996 390.4209 527.8809 383.2998 526.9395 c -F -0 0.039216 0.05098 0 k -384.7402 525.0195 m -377.7822 524.2012 349.208 549.9893 366.2598 515.4199 c -389.6621 468.3193 302.1006 472.2793 283.7002 484.7002 c -265.1406 496.918 291.6201 464.2998 y -311.7822 442.3594 273.8599 460.9395 y -236.1006 474.9199 209.7007 446.7578 206.1802 445.8193 c -202.6616 444.999 197.3818 441.4785 196.5801 448.46 c -195.6226 455.5586 188.8042 472.085 152.4199 445.0996 c -116.8999 418.5391 105.1401 436.7002 y -97.7002 440.2998 l -83.5591 465.8984 93.3799 405.0195 y -103.0615 367.2393 252.7402 423.0195 y -438.502 456.4395 450.7402 460.9395 v -463.1426 465.2383 558.2598 459.0195 y -552.9805 483.0195 l -481.6211 534.1201 469.3018 502.1982 454.3398 506.54 c -439.3828 511.001 442.0234 500.4385 438.5 499.5801 c -434.9814 498.6797 391.8613 525.9609 384.7402 525.0195 c -F -1 g -97.7002 438.6201 m -83.54 462.8818 94.1001 401.6602 y -103.7817 363.8789 254.1802 421.0996 y -439.9424 454.5195 452.1797 459.0195 v -464.5801 463.3203 558.7402 457.0996 y -553.46 481.8193 l -482.1826 532.8418 470.7422 500.2803 455.7793 504.6201 c -440.8203 509.0811 443.4609 498.5215 439.9395 497.6602 c -436.4219 496.7598 393.3008 524.041 386.1797 523.0996 c -379.2227 522.2813 351.4785 548.4678 367.7002 513.5 c -392.2305 461.002 300.9463 472.0898 285.1401 482.7803 c -266.5806 495.001 293.0601 462.3799 y -313.2197 440.4395 275.2998 459.0195 y -237.541 473 211.1406 444.8408 207.6201 443.8994 c -204.1016 443.0791 198.8218 439.5586 198.02 446.54 c -197.0601 453.6416 190.3877 469.9834 153.8599 443.1797 c -116.9814 415.8008 105.6201 433.3398 y -97.7002 438.6201 l -F -0 g -143.2998 405.7402 m -135.4614 392.9189 158.4199 378.3799 v -159.8818 376.8584 140.1802 381.5 v -133.2607 383.6787 131.54 395.1797 v -126.2217 399.958 120.98 406.2197 v -115.6616 412.2803 143.2998 405.7402 y -F -0.8 g -297.3799 458.0596 m -316.8486 428.5371 316.0996 423.2598 v -314.7607 411.8408 314.54 401.2803 318.0195 396.8594 c -321.582 392.4795 331.2197 356.0596 y -330.8223 354.6387 344.4199 396.3799 v -357.2217 414.0391 335.2998 434.2998 v -296.5015 465.9609 297.3799 458.0596 v -F -0 g -165.3799 376.2197 m -177.7017 368.2803 161.7798 333.9795 v -168.98 336.6201 l -168.02 324.2793 164.4199 321.7393 v -172.3398 325.0996 l -177.7017 316.3594 173.2998 311.1797 v -191.7798 302.2803 190.8198 295.3398 v -197.9409 304.04 193.46 311.1797 v -189.1401 318.1201 181.2197 313.7188 182.1802 333.9795 c -172.3398 330.3799 l -178.5801 340.1191 178.5801 347.1797 v -169.7002 344.54 l -186.7949 373.7549 174.98 375.2598 v -168.4614 376.2002 165.3799 376.2197 y -F -0.8 g -201.1401 357.7393 m -204.1016 362.5586 201.1401 361.5801 v -197.9409 360.7998 163.6206 344.5205 156.98 333.9795 c -194.8613 360.7998 201.1401 357.7393 v -F -212.4199 348.8594 m -215.54 353.7578 212.4199 352.9395 v -209.3818 351.999 175.0615 335.7197 168.5 325.0996 c -206.2998 351.999 212.4199 348.8594 v -F -227.0601 365.6602 m -230.0601 370.4795 227.0601 369.5 v -223.9014 368.7197 189.5815 352.4404 182.8999 341.8994 c -220.8198 368.7197 227.0601 365.6602 v -F -201.3799 317.6602 m -201.4614 324.2793 198.5 323.4199 v -195.3008 322.5195 155.7007 303.1592 149.0601 292.7002 c -195.3008 320.7578 201.3799 317.6602 v -F -202.8198 329.6602 m -204.1016 334.8389 201.1401 333.9795 v -198.8218 333.958 169.7817 321.2002 163.2197 310.7002 c -195.7402 334.3994 202.8198 329.6602 v -F -186.98 277.0996 m -175.9399 268.9395 l -187.3809 277.2002 191.2998 275.8994 v -183.8599 263.5586 182.8999 257.8994 v -194.4199 271.9209 200.6602 271.5801 v -208.9399 271.04 209.0601 259.0996 v -215.1006 270.6006 218.6602 270.1396 v -219.9414 263.1201 218.6602 255.7393 v -223.0205 264.001 227.54 262.2197 v -234.4614 264.4395 233.54 251.6602 v -233.5806 240.2402 232.8198 237.2598 v -238.8608 266.1992 241.46 266.54 v -250.3018 267.958 255.6201 258.3799 v -251.1802 266.6406 256.5801 264.3799 v -268.3398 262.6777 271.9399 255.2598 v -264.3799 268.3994 270.5 264.8594 v -278.0215 264.8789 279.3799 257.8994 v -288.5815 234.5186 290.8999 232.7002 v -282.4209 256.5195 284.1802 256.46 v -281.9814 269.7197 287.7798 253.3398 v -284.1802 268.8389 290.4199 267.9795 v -296.5015 267.0801 301.3398 256.0781 310.5801 258.6201 c -321.1426 252.5596 323.2998 328.7002 v -186.98 277.0996 l -F -0 g -192.2598 379.3398 m -208.501 385.8799 252.5 379.3398 v -260.4199 378.8408 267.8599 388.46 v -275.3818 398.1992 304.8608 406.1191 312.0195 403.8193 c -322.5801 396.8594 l -323.2998 395.6602 l -336.9824 384.1201 337.46 375.7393 v -337.8613 367.3994 321.582 314.5996 311.0605 297.0195 c -300.4614 279.3994 289.9014 265.7598 268.8198 268.46 c -245.8999 272.7988 217.7002 268.46 v -185.6216 270.1592 182.6602 279.0195 v -179.4609 287.7578 194.8999 304.46 y -199.7002 313.7188 198.5 329.6602 v -197.0601 345.3994 197.5015 376.2002 192.2598 379.3398 c -F -0.047059 0.745098 0.211765 0 k -216.5 377.1797 m -225.6606 356.8398 193.2197 285.0195 y -190.9014 283.3594 207.0273 276.7109 218.1802 279.5 c -230.2207 282.3008 274.5801 277.5801 y -300.4614 294.7998 314.6602 343.5801 y -325.9805 370.04 306.7402 373.5801 v -287.2617 377.0791 216.5 377.1797 y -F -0.247059 0.933333 0.509804 0.070588 k -214.1001 343.0996 m -217.8438 357.1641 219.5864 370.1426 216.5 377.1797 c -285.0605 370.04 297.3799 393.0195 v -302.0454 401.583 318.2813 367.8389 317.7793 357.2598 c -248.54 341.4385 232.3398 353.6602 v -214.1001 343.0996 l -F -0.266667 0.972549 0.580392 0.137255 k -219.1401 325.0996 m -221.2617 317.2393 218.6602 312.8594 v -216.8599 311.96 215.54 311.4199 v -216.8599 307.5586 223.46 305.8994 v -225.6606 300.958 228.2598 300.6201 v -230.9409 300.0801 236.2207 293.9189 240.7402 295.3398 c -245.0215 296.5586 257.2998 300.8594 y -263.5015 304.4795 273.1401 300.6201 v -275.792 301.4023 276.2598 305.8994 v -276.8096 310.9707 280.2197 315.0391 282.5 317.1797 c -284.6216 319.4404 295.1816 333.5186 293.7798 333.9795 c -292.5415 334.3994 219.1401 325.0996 y -F -0 0.698039 0.356863 0 k -214.3398 378.3799 m -211.1406 353.7578 214.5801 344.54 v -218.1802 335.2803 217.3018 333.0801 216.5 328.7002 c -215.54 324.2793 220.3809 313.2803 226.5801 306.6201 c -239.7798 304.9395 l -256.46 308.8809 266.6602 305.8994 v -276.4736 304.3232 280.3398 320.7803 v -285.5 327.7998 293.54 330.8594 v -301.3398 333.958 309.2598 379.7188 304.8198 388.46 c -300.4614 397.3203 284.6216 402.1592 267.1401 385.0996 c -249.4209 367.8389 247.2197 386.3193 214.3398 378.3799 c -F -0 R -0 G -1.1 w 10 M -214.3398 378.3799 m -211.1406 353.7578 214.5801 344.54 v -218.1802 335.2803 217.3018 333.0801 216.5 328.7002 c -215.54 324.2793 220.3809 313.2803 226.5801 306.6201 c -239.7798 304.9395 l -256.46 308.8809 266.6602 305.8994 v -276.4736 304.3232 280.3398 320.7803 v -285.5 327.7998 293.54 330.8594 v -301.3398 333.958 309.2598 379.7188 304.8198 388.46 c -300.4614 397.3203 284.6216 402.1592 267.1401 385.0996 c -249.4209 367.8389 247.2197 386.3193 214.3398 378.3799 c -214.3398 378.3799 l -s -0 O -0.011765 0 0.239216 0 k -1 w 4 M -216.02 296.0596 m -215.1006 298.3203 210.2598 298.7002 v -185.6216 302.7197 176.4199 316.46 v -168.9009 322.5195 173.7798 309.7393 v -185.1802 287.3193 192.7402 284.2998 v -210.7017 279.8408 216.02 296.0596 v -F -0 R -0 G -0.550001 w 10 M -216.02 296.0596 m -215.1006 298.3203 210.2598 298.7002 v -185.6216 302.7197 176.4199 316.46 v -168.9009 322.5195 173.7798 309.7393 v -185.1802 287.3193 192.7402 284.2998 v -210.7017 279.8408 216.02 296.0596 v -216.02 296.0596 l -s -0 O -0.145098 0.898039 0.682353 0.027451 k -1 w 4 M -303.8599 366.3799 m -304.6426 375.1855 306.7905 384.6602 304.8198 388.46 c -297.771 402.7041 279.0991 396.7754 267.1401 385.0996 c -249.4209 367.8389 247.2197 386.3193 214.3398 378.3799 c -212.2998 363.041 213.1401 351.9795 v -254.2617 364.7598 255.1401 358.7002 v -256.9014 362.1201 267.1401 362.0596 v -277.1406 362.1201 302.1558 363.4082 303.8599 366.3799 c -F -0 R -0.231373 1 0.941176 0.172549 K -2.2 w 10 M -256.5801 377.4199 m -261.7402 372.2402 257.7798 361.5801 v -241.9399 344.0791 244.1001 328.7002 v -S -0 O -0.011765 0 0.239216 0 k -1 w 4 M -203.7798 284.2998 m -198.8218 298.3203 208.5801 290.7803 v -213.7808 288.6387 212.4199 286.9395 v -211.1406 285.1201 204.98 280.7188 203.7798 284.2998 c -F -0 R -0 G -0.550001 w 10 M -203.7798 284.2998 m -198.8218 298.3203 208.5801 290.7803 v -213.7808 288.6387 212.4199 286.9395 v -211.1406 285.1201 204.98 280.7188 203.7798 284.2998 c -203.7798 284.2998 l -s -0 O -0.011765 0 0.239216 0 k -1 w 4 M -209.2998 282.8594 m -205.333 294.1826 213.1401 288.1396 v -217.9399 285.5068 216.2598 285.0195 v -211.2295 283.623 216.2432 280.8076 209.2998 282.8594 c -F -0 R -0 G -0.550001 w 10 M -209.2998 282.8594 m -205.333 294.1826 213.1401 288.1396 v -217.9399 285.5068 216.2598 285.0195 v -211.2295 283.623 216.2432 280.8076 209.2998 282.8594 c -209.2998 282.8594 l -s -0 O -0.011765 0 0.239216 0 k -1 w 4 M -214.5801 282.8594 m -210.6128 294.1826 218.4199 288.1396 v -223.1694 285.6582 221.54 285.0195 v -217.8296 283.623 221.5229 280.8076 214.5801 282.8594 c -F -0 R -0 G -0.550001 w 10 M -214.5801 282.8594 m -210.6128 294.1826 218.4199 288.1396 v -223.1694 285.6582 221.54 285.0195 v -217.8296 283.623 221.5229 280.8076 214.5801 282.8594 c -214.5801 282.8594 l -s -0 O -0.011765 0 0.239216 0 k -1 w 4 M -221.7798 282.6201 m -217.8726 293.9648 225.6201 287.8994 v -230.4365 285.4131 228.7402 284.7803 v -225.5288 283.623 228.7856 280.5869 221.7798 282.6201 c -F -0 R -0 G -0.550001 w 10 M -221.7798 282.6201 m -217.8726 293.9648 225.6201 287.8994 v -230.4365 285.4131 228.7402 284.7803 v -225.5288 283.623 228.7856 280.5869 221.7798 282.6201 c -221.7798 282.6201 l -s -0 O -0.011765 0 0.239216 0 k -1 w 4 M -228.98 282.8594 m -225.001 294.0508 232.8198 288.1396 v -236.9697 286.3086 235.9399 284.7803 v -234.8574 283.4912 235.9136 280.6758 228.98 282.8594 c -F -0 R -0 G -0.550001 w 10 M -228.98 282.8594 m -225.001 294.0508 232.8198 288.1396 v -236.9697 286.3086 235.9399 284.7803 v -234.8574 283.4912 235.9136 280.6758 228.98 282.8594 c -228.98 282.8594 l -s -0 O -0.011765 0 0.239216 0 k -1 w 4 M -236.1802 282.1396 m -230.9409 295.6807 240.98 288.6201 v -246.3418 286.4404 245.0601 284.7803 v -243.7017 282.9199 245.0215 279.3994 236.1802 282.1396 c -F -0 R -0 G -0.550001 w 10 M -236.1802 282.1396 m -230.9409 295.6807 240.98 288.6201 v -246.3418 286.4404 245.0601 284.7803 v -243.7017 282.9199 245.0215 279.3994 236.1802 282.1396 c -236.1802 282.1396 l -s -*u -0.266667 0.972549 0.580392 0.137255 K -2.2 w -204.98 300.8594 m -219.5 304.04 226.1001 300.6201 v -232.7002 299.1992 234.02 299.6602 v -235.3398 300.0801 238.8198 300.6201 y -S -1 D -242.4199 291.2598 m -255.5815 306.2402 268.8198 301.3398 v -276.4976 298.5703 275.3818 302.2803 276.2598 305.4199 c -277.1406 308.4385 277.3613 313.0586 282.98 316.46 c -S -*U -0 D -0 O -0.011765 0 0.239216 0 k -1 w 4 M -261.3799 308.7803 m -256.9014 320.7578 253.9399 306.6201 v -250.7407 292.5986 247.2197 288.6387 245.54 285.5 c -245.4609 279.8408 254.6602 280.2197 v -266.5806 280.7188 267.1401 283.8193 v -267.4614 286.8799 265.7002 299.6406 261.3799 308.7803 c -F -0 R -0 G -0.550001 w 10 M -261.3799 308.7803 m -256.9014 320.7578 253.9399 306.6201 v -250.7407 292.5986 247.2197 288.6387 245.54 285.5 c -245.4609 279.8408 254.6602 280.2197 v -266.5806 280.7188 267.1401 283.8193 v -267.4614 286.8799 265.7002 299.6406 261.3799 308.7803 c -261.3799 308.7803 l -s -*u -0.266667 0.972549 0.580392 0.137255 K -2.2 w -276.7402 300.8594 m -280.6616 303.6006 283.2197 302.2998 v -S -283.9399 319.0996 m -287.041 324.3896 292.3398 325.3398 v -S -*U -0 O -0.701961 g -1 w 4 M -196.5801 278.54 m -216.4209 275 221.2998 276.8594 v -230.9409 276.7588 221.7798 274.46 v -207.6201 274.5586 198.7402 275.8994 v -186.0605 282.0391 196.5801 278.54 v -F -0.011765 0 0.239216 0 k -211.9399 381.0195 m -231.3799 381.0391 233.54 380.0596 v -241.501 346.2803 237.6201 337.8193 v -236.2207 334.8389 233.0601 340.9395 v -212.8999 377.0791 209.2998 379.3398 v -205.8608 381.4805 210.7017 381.0391 211.9399 381.0195 c -F -0 R -0 G -0.550001 w 10 M -211.9399 381.0195 m -231.3799 381.0391 233.54 380.0596 v -241.501 346.2803 237.6201 337.8193 v -236.2207 334.8389 233.0601 340.9395 v -212.8999 377.0791 209.2998 379.3398 v -205.8608 381.4805 210.7017 381.0391 211.9399 381.0195 c -211.9399 381.0195 l -s -0 O -0.011765 0 0.239216 0 k -1 w 4 M -127.2197 383.8994 m -137 382.1406 150.98 379.3398 v -156.1401 354.6387 159.6201 349.3398 v -163.1816 344.0791 159.2217 344.0791 155.2998 347.1797 c -151.3018 350.2393 135.02 365.6406 132.7402 370.46 c -130.6206 375.3193 127.2197 383.8994 y -F -0 R -0 G -0.550001 w 10 M -127.2197 383.8994 m -137 382.1406 150.98 379.3398 v -156.1401 354.6387 159.6201 349.3398 v -163.1816 344.0791 159.2217 344.0791 155.2998 347.1797 c -151.3018 350.2393 135.02 365.6406 132.7402 370.46 c -130.6206 375.3193 127.2197 383.8994 y -127.2197 383.8994 l -s -0 O -0.011765 0 0.239216 0 k -1 w 4 M -151.2197 379.0996 m -157.6377 377.3379 158.6602 375.0195 v -159.855 372.4658 157.46 368.7803 y -156.3247 365.2041 155.0601 367.5801 v -153.6802 369.9629 150.5215 378.3867 151.2197 379.0996 c -F -0 R -0 G -0.550001 w 10 M -151.2197 379.0996 m -157.6377 377.3379 158.6602 375.0195 v -159.855 372.4658 157.46 368.7803 y -156.3247 365.2041 155.0601 367.5801 v -153.6802 369.9629 150.5215 378.3867 151.2197 379.0996 c -151.2197 379.0996 l -s -0 O -0 g -1 w 4 M -151.2197 379.3398 m -155.2617 373.5586 159.1401 373.5801 v -163.1816 373.5586 163.6016 374.0146 166.8198 373.3398 c -171.7617 372.2402 171.3198 374.4385 178.5801 373.0996 c -181.4839 372.5908 184.3018 373.5586 187.46 372.1396 c -190.46 370.9209 193.981 371.7988 195.3799 374.0596 c -196.6206 376.2002 201.8599 380.7803 y -187.8198 378.8408 184.8198 377.8994 v -160.1001 376.6396 151.2197 379.3398 v -F -0.011765 0 0.239216 0 k -200.4199 379.0996 m -193.2656 375.209 192.7402 372.6201 v -192.3848 369.9297 198.5 365.8994 y -201.625 360.7998 202.3398 363.5 v -202.9448 366.0801 201.2407 378.6201 200.4199 379.0996 c -F -0 R -0 G -0.550001 w 10 M -200.4199 379.0996 m -193.2656 375.209 192.7402 372.6201 v -192.3848 369.9297 198.5 365.8994 y -201.625 360.7998 202.3398 363.5 v -202.9448 366.0801 201.2407 378.6201 200.4199 379.0996 c -200.4199 379.0996 l -s -0 O -0.011765 0 0.239216 0 k -1 w 4 M -159.1401 373.0996 m -166.8345 360.7422 167.0601 373.0996 v -167.6865 374.458 165.8599 374.54 v -159.0679 374.5664 160.7407 379.0781 159.1401 373.0996 c -F -0 R -0 G -0.550001 w 10 M -159.1401 373.0996 m -166.8345 360.7422 167.0601 373.0996 v -167.6865 374.458 165.8599 374.54 v -159.0679 374.5664 160.7407 379.0781 159.1401 373.0996 c -159.1401 373.0996 l -s -0 O -0.011765 0 0.239216 0 k -1 w 4 M -167.0601 372.8594 m -175.7358 360.4707 174.98 372.8594 v -175.0449 373.2441 173.0601 373.3398 v -167.8926 373.8682 168.272 378.8359 167.0601 372.8594 c -F -0 R -0 G -0.550001 w 10 M -167.0601 372.8594 m -175.7358 360.4707 174.98 372.8594 v -175.0449 373.2441 173.0601 373.3398 v -167.8926 373.8682 168.272 378.8359 167.0601 372.8594 c -167.0601 372.8594 l -s -0 O -0.011765 0 0.239216 0 k -1 w 4 M -174.98 372.8594 m -183.7134 361.0762 182.8999 371.6602 v -183.1089 373.0664 181.2197 373.3398 v -177.0078 374.1729 176.7754 377.7461 174.98 372.8594 c -F -0 R -0 G -0.550001 w 10 M -174.98 372.8594 m -183.7134 361.0762 182.8999 371.6602 v -183.1089 373.0664 181.2197 373.3398 v -177.0078 374.1729 176.7754 377.7461 174.98 372.8594 c -174.98 372.8594 l -s -0 O -0.011765 0 0.239216 0 k -1 w 4 M -182.4199 372.6201 m -191.2109 359.9619 191.54 370.7002 v -193.4023 372.2354 191.54 372.3799 v -185.0815 373.2939 185.96 378.1953 182.4199 372.6201 c -F -0 R -0 G -0.550001 w 10 M -182.4199 372.6201 m -191.2109 359.9619 191.54 370.7002 v -193.4023 372.2354 191.54 372.3799 v -185.0815 373.2939 185.96 378.1953 182.4199 372.6201 c -182.4199 372.6201 l -s -0 O -0.105882 0.031373 0.356863 0 k -1 w 4 M -142.8198 368.7803 m -134.4199 370.46 l -131.4463 375.9795 129.1401 382.7002 y -136.1216 381.6465 149.7798 378.6201 v -150.8335 374.9141 152.4199 368.54 v -142.8198 368.7803 l -F -214.3398 373.8193 m -212.4702 376.6807 211.0229 378.6152 210.2598 379.0996 c -206.9937 381.1328 211.5513 380.7178 212.8999 380.7803 c -231.02 380.7178 233.0601 379.8193 v -233.6694 377.4219 234.5 373.5801 v -223.3232 375.9033 214.3398 373.8193 v -F -0.164706 0.627451 1 0.031373 k -273.3799 525.9795 m -303.7617 521.5303 331.832 560.7363 333.8594 571.3398 c -335.7051 582.0322 324.5 595.0996 y -326.0264 598.4883 320.7012 613.9756 314.9004 624.1396 c -309.085 634.3057 291.5938 633.2334 272.4199 634.2197 c -254.876 635.2734 234.5479 609.6201 233.0601 607.5801 c -231.644 605.749 238.4214 563.6406 239.7798 557.4199 c -241.3232 551.0547 238.3398 521.8994 y -276.085 532.0254 242.7754 530.2441 273.3799 525.9795 c -F -0.047059 0.517647 0.756863 0 k -233.7798 606.8594 m -232.4722 605.0713 239.125 563.7266 240.5 557.6602 c -241.9761 551.3721 239.0601 522.8594 y -275.0649 532.6279 243.4014 530.9385 273.3799 526.7002 c -303.2769 522.3848 330.8379 560.876 332.6602 571.3398 c -334.6406 581.7871 323.7793 594.6201 y -325.1357 597.9434 319.9082 613.1504 314.1797 623.1797 c -308.5039 633.1084 291.332 632.0547 272.4199 633.0195 c -255.2817 634.0586 235.3232 608.873 233.7798 606.8594 c -F -0.035294 0.372549 0.533333 0 k -234.7402 606.1396 m -233.2998 604.3926 239.8281 563.8154 241.2197 557.6602 c -242.6265 551.6885 239.7798 523.8193 y -274.3735 533.7822 244.0254 531.6338 273.3799 527.4199 c -302.792 523.2393 329.8447 561.0176 331.7002 571.3398 c -333.5762 581.54 322.8203 594.1396 y -324.248 597.3965 319.1172 612.3223 313.46 622.2197 c -307.9238 631.9111 291.0703 630.8789 272.4199 631.8193 c -255.6846 632.8447 236.0981 608.124 234.7402 606.1396 c -F -0.023529 0.239216 0.32549 0 k -235.46 605.6602 m -234.1255 603.7158 240.5313 563.9043 241.9399 557.8994 c -243.2769 552.0049 240.5 524.54 y -272.9121 534.4951 244.6494 532.3301 273.3799 528.1396 c -302.3096 524.0938 328.8516 561.1563 330.7402 571.3398 c -332.5117 581.293 322.0996 593.6602 y -323.3594 596.8516 318.3242 611.4941 312.7402 621.0195 c -307.3418 630.7129 290.8066 629.7002 272.6602 630.6201 c -256.0903 631.6299 236.8711 607.376 235.46 605.6602 c -F -0.011765 0.109804 0.137255 0 k -236.1802 604.9395 m -234.9536 603.0391 241.2368 563.9912 242.6602 558.1396 c -243.9297 552.3223 241.2197 525.5 y -271.8921 535.208 245.2759 533.0234 273.6201 529.0996 c -301.8247 524.9453 327.8555 561.2979 329.54 571.0996 c -331.4453 581.0479 321.1406 593.1797 y -322.4697 596.3066 317.5332 610.6689 312.2598 620.0596 c -306.7617 629.5186 290.5449 628.5244 272.6602 629.4199 c -256.4961 630.416 237.6465 606.6289 236.1802 604.9395 c -F -1 g -273.6201 529.8193 m -301.3398 525.7998 326.8613 561.4395 328.5801 571.0996 c -330.3828 580.8008 320.1797 592.7002 y -321.582 595.7598 316.7402 609.8408 311.54 619.0996 c -306.1807 628.3203 290.2808 627.3457 272.6602 628.2197 c -256.9014 629.2012 238.4214 605.8809 237.1401 604.2197 c -235.7817 602.3594 241.9399 564.0801 243.3799 558.3799 c -244.5801 552.6416 241.9399 526.2197 y -269.9912 535.7002 245.8999 533.7197 273.6201 529.8193 c -F -0.8 g -324.7402 567.2598 m -294.0801 558.7998 281.2998 560.54 v -263.9409 567.8213 254.1802 543.7393 v -250.3018 535.9209 248.1802 533.6602 v -245.8999 531.5215 324.7402 567.2598 y -F -0 g -328.8203 569.6602 m -296.9409 556.1602 285.8599 556.7002 v -267.9009 561.6602 258.7402 545.6602 v -249.4209 535.4814 246.02 533.6602 v -245.4609 531.9609 252.5 536.2998 v -264.02 530.54 l -280.2197 520.0801 290.8999 537.7393 v -295.1816 550.001 295.2197 552.1396 v -295.1816 554.4004 318.5 560.5615 320.1797 561.0195 c -322.0205 561.4395 329.2813 566.0596 328.8203 569.6602 c -F -0.45098 0 1 0 k -276.7402 530.0596 m -269.1416 530.0762 259.9302 534.3271 259.9399 541.0996 c -259.9302 548.0742 269.1416 554.9648 276.7402 555.0195 c -284.2617 554.9648 290.3911 549.3945 290.4199 542.54 c -290.3911 535.6465 284.2617 530.0762 276.7402 530.0596 c -F -0.658824 0.2 1 0.039216 k -272.6602 548.54 m -267.3848 547.6328 261.7881 545.9814 261.8599 546.1396 c -263.5591 551.2998 270.5576 554.9648 276.7402 555.0195 c -281.4248 554.9648 285.5938 552.79 288.02 549.5 c -282.2046 549.8408 272.6602 548.54 v -F -1 g -285.8599 548.7793 m -281.1006 552.2002 281.0601 549.7393 v -285.0605 544.9395 285.8599 548.7793 v -F -0 g -275.0601 539.6602 m -272.1919 539.7412 269.9624 541.9707 270.02 544.7002 c -269.9624 547.4697 272.1919 549.6992 275.0601 549.7393 c -277.6904 549.6992 279.9199 547.4697 279.8599 544.7002 c -279.9199 541.9707 277.6904 539.7412 275.0601 539.6602 c -F -0.164706 0.627451 1 0.031373 k -160.5801 554.2998 m -157.0205 577.7217 159.6201 582.6201 v -171.541 593.5615 171.1401 597.5 v -170.6602 617.3213 169.46 618.1396 v -168.02 619.0801 159.6606 625.6807 153.1401 618.6201 c -141.6201 598.8418 142.5801 591.7393 v -142.5801 589.5801 l -134.1416 590.04 132.5 587.8994 v -131.0601 582.1201 129.8599 581.6602 v -126.6606 579.041 128.8999 575.8994 v -126.6606 573.3193 127.2197 568.9395 v -135.3799 564.6201 l -137.6602 548.6816 149.54 543.0195 v -154.8608 540.3994 158.3408 547.8008 160.5801 554.2998 c -F -1 g -159.3799 556.46 m -156.272 577.4121 158.6602 581.6602 v -169.3398 591.668 168.98 595.3398 v -168.5479 613.0518 167.2998 613.8193 v -166.1719 614.6357 158.6479 620.5752 152.6602 614.2998 c -142.4121 596.4199 143.2998 590.0596 v -143.2998 588.1396 l -135.6802 588.5 134.1802 586.46 v -132.9082 581.3721 131.7798 580.9395 v -128.9478 578.5996 130.8198 575.8994 v -128.9478 573.4521 129.3799 569.4199 v -136.8198 565.5801 l -138.8481 551.2754 149.54 546.1396 v -154.3281 543.8232 157.46 550.4863 159.3799 556.46 c -F -0.043137 0.478431 0.701961 0 k -168.7402 617.1797 m -167.6455 618.0576 159.4063 624.4063 152.8999 617.6602 c -141.8193 598.2363 142.5801 591.2598 v -142.5801 589.3398 l -134.5254 589.6563 132.7402 587.4199 v -131.5229 581.9336 130.3398 581.4199 v -127.2319 578.9307 129.3799 575.8994 v -127.2319 573.3535 127.7002 569.1797 v -135.8599 564.8594 l -137.9575 549.3291 149.54 543.7393 v -154.7266 541.2559 158.1201 548.4697 160.3398 555.0195 c -156.8335 577.6445 159.3799 582.3799 v -170.9912 593.0889 170.6602 597.0195 v -170.1318 616.2529 168.7402 617.1797 v -F -0.027451 0.305882 0.423529 0 k -168.2598 615.9795 m -167.271 617.0332 159.1543 623.1289 152.8999 616.46 c -142.0161 597.6318 142.8198 591.0195 v -142.8198 588.8594 l -134.9097 589.2705 133.2197 587.1797 v -131.9839 581.7461 130.8198 581.4199 v -127.8032 578.8203 129.8599 575.8994 v -127.8032 573.3867 128.1802 569.1797 v -136.1001 565.0996 l -138.2554 549.9795 149.54 544.46 v -154.5942 542.1104 157.9014 549.1426 160.1001 555.5 c -156.6465 577.5674 159.1401 582.1396 v -170.4414 592.6133 169.9399 596.2998 v -169.604 615.1875 168.2598 615.9795 v -F -0.015686 0.141176 0.184314 0 k -167.7798 615.0195 m -166.8994 616.0107 158.8999 621.8525 152.8999 615.2598 c -142.2153 597.0244 143.0601 590.54 v -143.0601 588.3799 l -135.2959 588.8857 133.7002 586.9395 v -132.4473 581.5586 131.2998 581.1797 v -128.377 578.71 130.3398 575.8994 v -128.377 573.4209 128.8999 569.4199 v -136.5801 565.3398 l -138.5503 550.6279 149.54 545.4199 v -154.46 542.9668 157.6807 549.8145 159.6201 555.9795 c -156.459 577.4912 158.8999 581.8994 v -169.8896 592.1426 169.46 595.8193 v -169.0762 614.1201 167.7798 615.0195 v -F -1 g -159.3799 556.46 m -156.272 577.4121 158.6602 581.6602 v -169.3398 591.668 168.98 595.3398 v -168.5479 613.0518 167.2998 613.8193 v -166.5249 614.9883 158.6479 620.5752 152.6602 614.2998 c -142.4121 596.4199 143.2998 590.0596 v -143.2998 588.1396 l -135.6802 588.5 134.1802 586.46 v -132.9082 581.3721 131.7798 580.9395 v -128.9478 578.5996 130.8198 575.8994 v -128.9478 573.4521 129.3799 569.4199 v -136.8198 565.5801 l -138.8481 551.2754 149.54 546.1396 v -154.3281 543.8232 157.46 550.5938 159.3799 556.46 c -F -0.8 g -156.02 563.4199 m -132.2695 574.6396 131.2998 575.4199 v -141.291 566.501 142.1001 566.54 v -143.0503 566.501 156.02 563.4199 y -F -0 g -137.2998 570.1396 m -157.46 566.2803 157.46 561.5 v -157.46 558.2383 157.1934 543.4756 151.2197 545.1797 c -142.0615 547.8008 146.0215 563.6406 137.2998 570.1396 c -F -0.45098 0 1 0 k -146.4199 566.0596 m -156.3369 564.4395 157.46 561.5 v -158.1201 559.6807 158.8496 550.541 152.8999 549.2598 c -147.8335 548.3379 145.3809 559.582 146.4199 566.0596 c -F -0 g -240.98 519.2598 m -240.5098 521.1729 241.9497 521.0283 243.8599 521.6602 c -246.1206 522.2813 259.5415 526.46 260.4199 529.3398 c -261.3008 532.1816 275.7798 527.4199 y -277.8008 526.46 282.7402 523.5801 y -287.9214 522.2813 295.2197 521.8994 y -297.8218 520.7402 301.46 517.5801 y -317.6211 506.4414 331.2197 514.46 y -353.2617 521.6211 346.5801 540.6201 y -343.3613 550.4404 346.8203 554.2998 y -347.1006 558.3604 354.9805 551.4199 y -357.8818 546.7012 358.8203 541.0996 y -367.5605 528.8818 363.8594 548.54 y -364.043 549.5596 360.9609 553.5195 360.9805 554.7793 c -360.9609 556.1602 359.0605 559.8193 y -355.6807 563.6406 358.3398 571.3398 y -360.3008 586.5195 357.8594 584.54 y -356.5615 586.5195 346.3398 575.4199 y -344.0215 571.7813 337.46 570.1396 y -334.3418 568.04 330.5 569.6602 y -327.7422 570.0195 321.6201 562.2197 y -324.6602 562.541 327.3008 557.7002 330.0195 557.4199 c -332.5801 557.2617 334.5605 560.1201 336.2598 560.7793 c -338.082 561.4395 341.0605 555.0195 y -341.6025 552.2002 335.54 546.8594 y -335.002 541.8604 333.1406 543.7393 y -329.9414 544.2793 328.6211 540.1016 327.6201 535.0996 c -326.4219 529.9805 321.8594 529.5801 y -320.041 521.4004 318.7402 524.7793 y -318.5 530.8613 312.0195 524.54 y -310.5801 522.2813 305.54 524.7793 y -298.04 526.9014 300.7402 529.0996 y -302.6602 531.5215 314.9004 529.0996 y -317.4004 530.8613 308.6602 535.3398 y -307.9395 537.2402 309.1406 542.0596 y -310.3613 545.5996 317.7793 551.6602 y -328.1816 553.0801 325.2197 554.7793 y -318.2813 560.5615 312.0195 552.1396 y -309.4805 545.3818 290.4199 528.8594 y -285.0605 525.1396 287.9214 532.6201 283.46 528.8594 c -279.1206 525.1396 256.5801 535.0996 y -243.7422 536.3525 240.7373 519.0361 236.8999 522.3799 c -242.8135 513.0967 240.98 519.2598 v -F -455.2998 702.1396 m -427.1816 693.4395 424.0996 672.8594 v -421.4629 647.6816 444.0195 628.2197 v -444.3418 621.2813 446.6602 617.6602 v -444.7813 612.4805 465.3799 620.7793 v -495.3799 630.1396 l -502.4219 632.7197 508.0996 642.3799 v -513.8623 652.0801 530.5801 672.7617 526.5801 700.46 c -527.9414 712.8008 521.2998 713.1797 v -512.1006 715.001 504.2598 706.7002 v -496.7021 703.1211 494.1797 703.5801 v -455.2998 702.1396 l -F -515.54 703.3398 m -517.7334 713.1533 512.4199 707.8994 v -504.668 701.5371 496.3398 701.4199 v -480.4668 699.1162 475.6992 684.6201 v -471.2695 655.0732 480.0195 648.8594 v -485.3047 640.5537 492.9805 647.8994 v -500.7949 655.0732 517.8438 688.3252 515.54 703.3398 c -F -0.2 g -515.0605 702.8594 m -517.3105 712.5537 512.1797 707.4199 v -504.4805 701.1514 496.3398 701.1797 v -480.7207 698.7725 475.9395 684.6201 v -471.6914 655.5293 480.2598 649.3398 v -485.4727 641.2734 492.9805 648.3799 v -500.6797 655.5293 517.3877 688.2051 515.0605 702.8594 c -F -0.4 g -514.5801 702.6201 m -516.8906 711.9561 511.6992 706.9395 v -504.2959 700.7617 496.3398 700.7002 v -480.9746 698.4297 476.4199 684.3799 v -472.1143 655.9873 480.5 649.8193 v -485.6387 641.9961 493.2197 649.0996 v -500.5664 655.9873 516.9346 688.083 514.5801 702.6201 c -F -0.6 g -514.0996 702.1396 m -516.4668 711.3584 511.46 706.2197 v -504.1113 700.376 496.3398 700.46 v -481.2324 698.0859 476.6602 684.3799 v -472.5371 656.4463 480.7402 650.54 v -485.8066 642.7178 493.2197 649.5801 v -500.4512 656.4463 516.4785 687.9629 514.0996 702.1396 c -F -0.8 g -513.8594 701.6602 m -516.0469 710.7578 511.2197 705.7393 v -503.9258 699.9893 496.3398 699.9795 v -481.4863 697.7432 476.9004 684.3799 v -472.959 656.9043 480.9805 651.0195 v -485.9746 643.4385 493.2197 650.0596 v -500.3359 656.9043 516.0225 687.8428 513.8594 701.6602 c -F -1 g -513.3799 701.4199 m -515.6211 710.1602 510.7402 705.2598 v -503.7422 699.6006 496.3398 699.5 v -481.7402 697.3994 477.3799 684.1396 v -473.3809 657.3604 481.2197 651.7393 v -486.1426 644.1602 493.2197 650.7793 v -500.2207 657.3604 515.5664 687.7207 513.3799 701.4199 c -F -0.254902 0.941176 1 0.243137 k -280.5801 477.7402 m -258.2217 498.9609 249.3799 499.8193 v -211.5801 504.2402 195.3799 484.46 v -214.6616 506.8809 245.0601 500.7803 v -221.2617 505.5605 207.6201 501.9795 v -189.1401 502.04 178.5801 486.6201 v -175.46 481.3398 l -179.8999 497.6406 200.1802 504.1396 v -225.2217 509.5205 237.1401 504.1396 v -213.3418 511.7217 202.3398 509.4199 v -168.9009 512.1602 154.8198 483.0195 v -159.2217 498.9609 175.46 506.7803 v -190.46 516.5596 212.8999 513.5 v -228.7402 509.96 234.5 507.2598 v -240.1807 504.6797 238.8608 507.7617 229.7002 513.0195 c -223.46 524.041 208.1001 523.5801 v -160.981 519.6416 149.54 506.54 v -164.5015 518.7607 175.9399 521.8994 v -200.5806 530.6406 209.7798 529.8193 v -237.1016 528.6602 245.54 533.1797 v -233.1416 527.5615 236.6602 524.0596 v -240.1807 520.5195 247.6616 512.1602 247.7002 510.8594 c -247.6616 509.5205 274.2798 485.2109 278.1802 480.3799 c -280.5801 477.7402 l -F -0.8 g -432.9805 264.3799 m -415.8516 304.5918 402.0195 315.0195 v -430.7002 297.4395 434.6602 277.5801 v -434.5498 266.6406 432.9805 264.3799 v -F -484.5801 256.2197 m -455.4512 316.6904 435.1406 343.0996 v -482.9502 301.8418 488.4199 272.7803 v -488.9004 266.54 l -485.7793 269.4199 l -485.1514 259.4912 484.5801 256.2197 v -F -546.7402 309.5 m -478.002 374.9912 476.4199 377.6602 v -542.9004 305.1416 546.2598 296.7803 v -544.002 306.79 546.7402 309.5 v -F -339.3799 261.7393 m -360.8506 318.8906 381.8594 294.1396 v -398.25 283.1406 397.7002 279.7393 v -393.3008 286.9902 373.46 286.46 v -352.6016 289.7402 339.3799 261.7393 v -F -548.9004 401.8994 m -499.4502 433.292 491.2998 435.0195 v -478.2129 437.5371 545.6504 403.04 551.0605 391.5801 c -553.3496 394.2412 548.9004 401.8994 v -F -0 g -383.2998 284.7803 m -405.623 286.8799 413.0605 294.3799 v -417.8594 290.2998 l -437.2998 332.54 l -441.3799 327.0195 l -457.1025 343.2002 456.2598 351.9795 v -455.3408 360.7998 470.4199 345.5 y -469.4219 358.1602 477.3799 350.7803 v -474.7012 367.8389 483.8594 358.9395 v -472.3496 392.2139 497.0605 363.9795 v -503.3027 356.8398 498.5 364.2197 y -469.8613 417.1201 493.7002 401.1797 v -495.8213 426.3584 494.4199 431.1797 v -493.1816 436.04 490.9805 460.6807 485.7793 466.46 c -480.4209 472.1211 486.1426 473.8809 492.2598 468.1396 c -479.9814 494.5615 494.4199 481.3398 v -490.541 498.0801 485.7793 501.2598 v -479.543 520.0811 496.3398 508.2197 v -491.4219 521.8398 487.9395 525.2598 v -475.1406 555.7207 483.1406 550.46 v -487.9395 546.3799 l -480.4209 561.8818 487.46 556.9395 v -494.502 552.2002 494.4199 552.6201 y -471.1807 589.1602 493.7002 569.8994 v -484.6465 585.1113 480.9805 592.7002 v -460.1816 615.1201 475.9395 608.0596 v -481.2197 606.3799 l -471.623 617.3213 462.7402 619.0996 v -454.0205 620.8398 465.4609 627.8818 472.5801 625.5801 c -479.543 623.4795 496.8203 615.0195 y -510.7813 594.4395 515.2998 593.8994 v -493.1816 602.3594 499.7002 593.6602 v -515.6211 578.1602 507.6201 578.54 v -501.1016 570.6797 506.4199 561.0195 v -486.0752 581.2305 502.3398 553.0996 v -510.0195 535.0996 l -483.0605 562.3203 495.3799 538.2197 v -514.3018 512.1602 516.5 511.8193 v -518.7012 511.2803 523.46 501.5 y -518.6602 503.8994 l -524.4199 494.0596 l -512.1006 507.3193 518.6602 492.8594 v -524.9004 477.0195 l -502.4219 501.1611 517.46 468.6201 v -499.3418 474.3193 509.0605 455.4199 v -507.2617 437.7988 507.6201 432.1396 v -508.1406 426.3584 509.4609 395.1201 504.7402 386.2998 c -499.7813 377.5205 511.2227 356.4004 513.3799 351.9795 c -515.6211 347.5996 519.582 335.7197 510.0195 345.7393 c -500.2207 355.959 505.0615 349.8008 507.3799 340.2197 c -509.4609 330.4395 516.0605 313.2803 515.2998 307.0996 c -513.8623 305.7988 510.2598 309.7393 v -494.0625 334.8389 495.8594 319.0996 v -494.502 310.2002 491.0605 300.6201 v -487.4629 288.6387 487.46 298.2197 v -483.9414 316.8008 480.9805 308.54 v -477.7813 300.0801 473.8203 293.4795 470.6602 290.7803 c -467.6621 288.2002 461.9414 313.2803 460.5801 301.8193 c -447.4209 315.4805 442.0996 297.5 v -429.3799 279.5 l -428.9414 293.04 427.7002 286.46 v -394.6211 279.8408 383.2998 284.7803 v -F -345.3799 677.1797 m -332.5801 685.9609 328.0996 685.5801 v -323.7822 685.0801 358.541 695.2012 403.9395 664.9395 c -409.1406 661.7598 413.0605 662.2998 v -416.6211 659.5615 413.54 655.5801 v -403.8613 645.041 416.1797 632.7793 v -436.4219 625.2412 430.3398 634.9395 v -442.1406 630.5215 444.7402 626.0596 v -447.4209 621.7207 446.1797 626.0596 y -439.0615 634.04 432.5 639.7393 v -426.7422 641.96 423.6201 651.2598 v -420.582 660.4395 417.9414 671.4414 422.9004 675.0195 c -418.3809 670.1211 419.2998 674.54 v -420.1426 678.9199 424.1025 682.8799 425.7793 683.4199 c -427.6211 683.7607 445.6621 701.1416 453.1406 701.6602 c -443.0215 700.04 439.7002 701.1797 v -436.4219 702.2402 407.1602 714.7803 400.5801 716.0596 c -382.0801 723.3604 395.2998 721.0996 v -434.6621 716.9814 454.5801 702.3799 v -446.7607 711.7012 426.5 719.4199 v -402.1016 733.2607 363.3799 727.8193 v -343.8008 724.2412 335.2998 722.2998 v -332.3623 722.9209 331.7002 723.2598 v -331.043 723.7998 318.0605 733.7002 287.7798 725.8994 c -269 720.9414 259.46 715.5801 v -242.8208 714.3408 238.8198 710.7793 v -218.4009 694.7598 216.2598 693.9795 v -214.0015 693.001 201.4614 684.6416 200.6602 684.1396 c -227.6406 691.46 230.1802 694.2197 v -232.9209 696.7393 252.0605 699.6006 254.6602 698.0596 c -257.3408 696.5215 266.5806 697.1816 256.1001 696.6201 c -339.1807 680.2393 340.0996 678.1396 v -340.9424 675.8408 345.3799 677.1797 y -F -0.164706 0.627451 1 0.031373 k -423.8594 687.2598 m -412.6621 695.4199 410.4199 695.4199 v -408.2617 695.4199 394.6211 706.6396 390.0195 706.2197 c -385.3809 705.7617 371.9629 716.7607 341.7793 707.6602 c -341.1602 709.9395 345.1406 710.7793 v -352.1621 713.2393 352.5801 713.8994 v -374.8203 718.5195 382.8203 714.6201 v -392.8613 711.7012 399.6201 704.7793 v -412.002 701.3594 415.46 702.3799 v -425.2012 700.04 425.54 698.0596 v -432.0225 694.7598 430.0996 691.8193 v -430.4814 690.1396 423.8594 687.2598 v -F -410.1797 689.6602 m -411.0508 688.9063 412.1719 688.7979 412.8203 687.9795 c -413.0938 687.5625 412.7773 687.2041 412.3398 687.0195 c -411.2842 686.749 410.123 687.375 408.9805 686.7793 c -408.4238 686.501 407.7178 686.7002 407.0605 686.7793 c -405.3125 687.3506 403.3018 687.377 401.54 686.54 c -399.2578 687.8623 396.6631 687.2217 394.3398 688.2197 c -394.3086 688.3516 394.0645 687.9697 394.0996 687.9795 c -390.6318 689.2588 386.5156 688.9492 383.7793 691.5801 c -381.1709 691.9131 378.5762 692.4219 375.8594 693.2598 c -373.9063 693.7305 372.3584 694.8174 370.5801 695.6602 c -369.0605 696.5117 367.457 697.085 365.7793 697.5801 c -363.7207 697.9922 361.707 697.8701 359.54 698.54 c -359.5234 698.4678 359.3125 698.0908 359.2998 698.0596 c -358.8652 698.2393 358.5469 698.8809 358.3398 698.7793 c -356.5088 698.2471 354.8721 699.3174 353.0605 699.0195 c -351.7441 700.2871 349.8438 700.0186 348.2598 700.46 c -344.8828 701.4365 341.415 700.04 338.1797 701.1797 c -342.6055 703.167 347.7607 701.8105 352.3398 704.0596 c -354.791 705.3916 357.7188 704.1797 360.5 705.0195 c -361.0801 705.1729 361.8418 705.3965 362.1797 704.7793 c -362.4297 704.8086 362.6289 705.0723 362.6602 705.0195 c -365.3887 703.7695 367.9355 702.3682 370.5801 701.1797 c -371.0391 701.0332 371.627 701.29 372.0195 701.1797 c -373.5752 699.7305 375.7109 699.8428 377.2998 698.54 c -379.1094 699.0537 381.082 698.6338 383.0605 699.2598 c -383.0693 699.3506 383.3262 698.9766 383.2998 699.0195 c -384.6055 699.8232 385.875 699.5264 386.9004 699.2598 c -387.2285 699.0625 387.959 698.792 388.3398 698.7793 c -389.5303 698.4072 390.4736 697.8799 391.7002 697.5801 c -391.8965 697.6592 392.0986 698.0332 392.1797 698.0596 c -393.4141 697.5195 394.5586 697.5801 395.2998 696.3799 c -395.4297 696.4492 395.6113 696.7109 395.7793 696.6201 c -396.8311 696.3105 397.5469 695.4795 398.6602 695.1797 c -399.291 695.0977 399.9629 694.4092 400.5801 694.2197 c -403.2266 693.4111 405.2559 691.7285 407.7793 690.8594 c -408.5049 690.4033 409.4668 690.1465 410.1797 689.6602 c -F -325.9395 705.2598 m -323.0957 707.1514 320.4922 708.3682 317.7793 710.2998 c -317.6055 710.4795 317.2109 710.29 317.0605 710.54 c -315.8789 711.0967 314.9043 711.7354 313.9395 712.46 c -313.2295 712.9209 312.3271 712.9082 311.7793 713.1797 c -308.9697 714.6123 306.0776 715.2266 303.3799 716.54 c -304.0713 717.2432 305.3047 716.9736 306.02 717.9795 c -306.1733 717.5527 306.4351 717.2402 306.7402 717.5 c -308.6699 718.4453 310.7051 718.6133 312.5 718.46 c -314.4248 718.4121 316.3164 718.0781 318.2598 717.7393 c -318.6055 717.7275 318.8242 717.1514 319.2197 717.0195 c -321.6318 716.3145 324.2598 716.8926 326.6602 716.0596 c -328.3398 715.2793 330.0684 714.375 331.46 712.9395 c -331.707 712.6855 331.3496 712.3545 330.9805 712.2197 c -331.4697 712.2607 331.7695 712.0352 331.9395 711.7393 c -331.9834 711.4277 331.9834 711.0938 331.9395 710.7793 c -331.7676 710.4893 331.46 710.377 330.9805 710.2998 c -329.502 710.1123 331.4502 711.6289 330.7402 711.0195 c -329.2813 710.2422 330.1016 708.6963 329.2998 707.4199 c -328.9736 707.5137 328.7217 707.7529 328.8203 708.1396 c -329.0977 707.6064 328.4355 707.2881 328.3398 706.9395 c -327.8281 706.1426 326.8398 704.585 325.9395 705.2598 c -F -290.1802 697.0996 m -286.6494 698.043 283.2944 697.918 279.8599 699.2598 c -279.9033 699.3535 279.6582 698.9697 279.6201 699.0195 c -278.084 699.6533 277.0737 700.7168 275.7798 701.8994 c -274.8872 702.8428 273.063 702.418 271.7002 702.8594 c -271.3042 703.0898 271.0806 703.6514 270.7402 703.5801 c -269.4102 703.8682 268.3906 704.9121 267.1401 705.5 c -269.811 706.4141 272.4629 706.3809 275.0601 706.7002 c -275.2949 706.8242 275.4536 706.4697 275.54 706.46 c -275.751 706.4697 275.8926 706.7119 276.02 706.9395 c -276.2554 706.5537 276.5864 706.1934 276.98 706.46 c -277.4722 707.0674 278.084 706.8584 278.6602 706.7002 c -278.835 706.8027 278.9746 706.4697 279.1401 706.46 c -279.2695 706.4697 279.4136 706.8125 279.6201 706.7002 c -279.7109 706.8105 279.855 706.4697 280.1001 706.46 c -280.1504 706.4697 280.292 706.7119 280.3398 706.9395 c -281.2017 706.001 282.1733 706.6113 282.98 706.46 c -284.2207 706.165 284.5137 704.8994 285.6201 704.54 c -290.8833 703.1377 295.4336 700.7793 300.2598 698.54 c -300.5693 698.3213 300.7998 698.0479 300.7402 697.5801 c -300.9751 697.6201 301.3184 697.7168 301.46 697.5801 c -302.6914 696.7666 303.8359 696.1641 304.5801 694.9395 c -304.8418 694.585 304.479 694.1357 304.3398 694.2197 c -299.3506 695.2881 294.9438 695.9551 290.1802 697.0996 c -F -274.8198 648.6201 m -273.1206 649.8799 272.4775 652.1113 271.2197 654.1396 c -271.0015 654.4561 271.3042 654.8047 271.7002 654.8594 c -272.2686 655.0752 272.8662 654.5498 273.3799 654.3799 c -275.2354 653.3789 276.9248 652.0137 279.1401 651.9795 c -281.3096 649.4043 285.9941 648.9795 286.1001 645.2598 c -286.0039 644.3164 284.4321 645.3242 283.9399 644.2998 c -281.2642 645.4834 278.6357 645.3701 276.02 646.9395 c -275.3384 647.4033 275.7031 647.9023 274.8198 648.6201 c -F -244.5801 706.46 m -244.729 706.3711 252.4614 706.1143 252.5 705.9795 c -252.3945 705.6514 243.8911 704.4971 243.3799 704.7793 c -243.3105 704.7676 235.0474 702.0938 234.98 702.1396 c -235.1934 702.3896 244.2871 706.373 244.5801 706.46 c -F -0 g -261.6201 695.6602 m -245.2402 693.6602 240.5 692.2998 v -235.5605 691.0205 215.1006 682.6611 211.7002 680.54 c -197.0601 674.5205 178.3398 652.46 v -186.7207 656.2617 189.1401 659.4199 v -204.1016 673.2002 203.7798 670.46 v -217.3018 679.8008 216.7402 677.4199 v -243.481 689.7002 241.2197 686.2998 v -265.04 691.2412 264.02 688.9395 v -284.6216 684.2002 281.54 683.8994 v -275.1606 682.6611 282.2598 678.6201 v -278.4609 673.8604 272.4199 678.3799 v -266.5806 682.6611 269.8809 680.2393 264.5 679.0996 c -261.5215 678.2598 256.5801 682.7002 v -250.3018 687.7207 240.7402 683.6602 v -206.96 669.9004 204.7402 669.2598 v -200.8018 666.1611 198.2598 662.2998 v -191.7798 657.3604 188.4199 655.8193 v -174.4014 643.0615 173.0601 641.4199 v -169.3398 635.8018 168.5 635.4199 v -175.501 639.54 177.6201 641.6602 v -193.1001 652.7402 198.98 653.6602 v -203.8809 656.9209 204.7402 658.46 v -220.6016 668.5801 225.1401 668.54 v -235.3398 662.8613 238.1001 670.46 v -244.3613 672.54 250.5801 671.1797 v -254.041 674.0811 253.2197 676.46 v -254.9214 678.4805 256.1001 674.2998 v -259.7598 670.3398 264.98 672.6201 v -269.4414 672.7617 267.1401 670.2197 v -262.3999 665.9404 249.3799 665.6602 v -235.7817 665.0596 217.7002 656.7793 v -184.9614 645.2598 174.7402 633.7393 v -167.8018 624.1396 161.7798 622.9395 v -155.48 621.9414 148.8198 613.8193 v -159.6606 620.1797 169.46 620.2998 v -173.96 622.8193 169.7002 618.8594 v -165.8218 610.501 167.54 604.46 v -166.9209 598.8418 166.1001 597.0195 v -157.46 583.001 157.46 580.46 v -157.46 577.7217 158.7798 566.9404 159.1401 566.2998 c -159.6606 565.6201 158.1201 568.04 162.2598 565.3398 c -166.4814 562.7598 169.5605 561.001 170.4199 557.8994 c -171.3198 554.8398 168.2407 563.8613 168.02 565.8193 c -167.8018 567.8213 163.1816 575.7412 164.1802 578.2998 c -165.1616 577.2793 166.1001 575.6602 v -165.3799 576.4014 166.1001 580.46 v -166.9209 586.0801 168.5 589.5801 v -170 593.1201 172.2007 597.3008 172.5801 598.2197 c -173.0815 599.0596 173.0815 605.4414 174.7402 602.54 c -178.3398 599.6602 l -175.2798 602.5801 177.6201 604.9395 v -176.6001 611.1602 178.5801 614.0596 v -186.2817 623.2617 187.9399 624.3799 v -189.7998 625.46 188.1802 625.0996 y -194.8613 629.6406 188.4199 627.9795 v -184.0806 626.1201 180.7402 626.0596 v -172.4214 623.9209 176.8999 628.46 v -181.2197 633.1611 192.2217 639.1016 196.3398 638.7793 c -197.2998 637.0996 l -209.54 639.7393 l -208.3398 638.7793 l -208.0615 639.1016 212.6602 639.5 v -217.3018 639.9795 223.6807 638.4414 225.1401 640.46 c -226.7598 642.4014 230.5015 643.501 230.1802 641.8994 c -229.6206 640.4209 229.46 638.2998 y -234.9009 644.5996 234.2598 642.1396 v -233.5806 639.7617 224.5615 634.04 222.98 627.2598 c -234.5 636.1396 l -238.3398 639.5 l -242.3818 637.1211 242.6602 638.7793 v -242.8208 640.6396 247.8799 647.0215 249.1401 646.7002 c -250.52 646.5801 252.7207 649.6611 252.5 646.7002 c -252.2817 643.9395 260.6602 638.0596 y -264.1616 639.9795 265.7002 638.54 v -267.2407 636.9004 271.9399 660.1396 y -299.2998 671.8994 l -347.2998 675.7393 l -328.5801 683.1797 l -261.6201 695.6602 l -F -*u -1 D -0 R -0.435294 0.886275 0.8 0.670588 K -1 J 2.2 w 10 M -281.54 476.7803 m -265.04 495.2217 255.8599 498.1396 v -241.0615 505.5605 214.1001 496.9395 v -S -252.2598 499.5801 m -224.5615 508.4209 207.6201 503.8994 v -187.3809 501.6006 178.1001 486.3799 v -S -248.4199 501.0195 m -229.6206 508.8604 213.3799 511.3398 v -195.0801 514.1406 176.8999 506.2998 v -163.3999 499.6201 157.46 488.2998 v -S -249.3799 500.54 m -232.4814 512.5996 231.3799 514.2197 v -223.6807 526.2412 209.2998 526.7002 v -185.8398 525.7998 166.8198 517.0996 v -S -*U -0 D -0 O -0 g -0 J 1 w 4 M -247.9399 510.3799 m -249.6802 508.7842 279.3799 477.0195 y -318.0605 436.7002 287.2998 474.3799 y -278.8999 479.5996 268.8198 500.2998 y -267.4614 503.3594 284.1802 492.3799 y -288.5815 491.4795 303.6201 470.2998 y -296.0601 473 301.46 465.0195 y -304.4214 462.8818 326.9004 445.8193 y -330.8223 441.3193 335.2998 439.5801 y -350.6211 445.2793 343.7002 430.7002 y -346.2227 423.2793 352.3398 435.9795 y -364.7021 454.5195 346.5801 451.8193 y -313.6621 448.8008 306.2598 466.46 y -303.541 469.04 313.2197 466.46 y -322.4629 464.2012 305.2998 480.1396 y -307.9395 480.041 318.0195 472.46 y -329.502 462.4395 331.7002 464.54 y -351.502 474.3193 362.9004 465.9795 y -365.1416 464.2012 358.9805 456.7207 360.7402 451.0996 c -362.502 445.2793 367.7002 431.6602 y -365.1416 429.8789 365.54 417.9795 y -384.0605 392.4795 373.46 394.7002 y -356.3408 395.1201 372.7402 386.7793 y -376.1406 384.5596 385.9395 376.7002 y -382.7402 377.96 380.9004 372.1396 y -386.2617 367.8389 383.2998 362.54 y -376.582 361.2393 375.3799 356.7793 y -382.7402 348.0391 371.7793 347.6602 y -375.7012 342.7588 370.3398 329.6602 y -365.1416 329.5586 358.0996 323.4199 y -360.7422 318.1201 349.2197 311.8994 y -340.0615 310.2002 343.2197 302.7793 y -334.3418 296.1201 331.7002 278.54 y -330.8223 267.0801 328.1816 263.5586 333.8594 265.8193 c -339.623 267.958 338.6602 281.6602 y -333.4609 298.7598 380.6602 316.46 y -384.9414 318.1201 385.9395 323.8994 y -388.0215 323.4004 397.7002 315.0195 y -406.0615 302.7197 406.5801 312.8594 y -407.8203 316.8008 406.0996 323.4199 y -412.6621 347.1582 397.2197 354.1396 y -386.2617 391.1602 401.7793 381.9795 y -404.7422 375.7588 416.6602 369.9795 y -420.5 372.6201 l -418.8223 377.96 428.1797 384.6201 y -431.1416 377.5205 437.7793 386.2998 y -441.7012 413.1582 455.2998 397.3398 y -459.7422 396.001 461.0605 403.5801 y -465.0225 414.9199 461.0605 429.9795 y -465.0225 430.3203 475.7002 423.7393 y -478.6621 427.6807 468.541 446.1582 473.0605 443.4199 c -477.3418 440.8809 482.1797 439.0996 y -483.0605 441.3193 472.0996 454.9395 y -467.2207 458.04 461.54 480.3799 y -469.4219 476.5205 458.4199 493.3398 y -458.4219 496.7598 465.1406 509.1797 y -464.1416 516.5596 465.1406 516.1396 y -468.1016 514.8008 476.9023 513.041 469.46 519.9795 c -461.9414 527.1201 470.4199 532.46 y -475.1406 535.4814 460.0996 535.0996 y -454.4629 539.8809 454.8203 544.2197 y -463.7021 542.0811 447.8623 557.9209 445.2197 561.9795 c -442.582 565.8418 453.1406 571.5801 y -467.6621 575.5205 454.8203 579.0195 y -433.3418 578.5996 445.2197 590.54 y -451.8223 590.04 450.0195 592.7002 y -444.3418 594.001 433.7002 601.0996 y -429.3828 605 433.46 604.2197 y -451.8223 602.8018 420.2598 615.0195 y -428.9414 615.1201 409.2197 626.54 y -406.9424 628.3203 403.46 636.6201 y -396.8223 642.4014 391.46 649.8193 y -391.1025 654.7207 385.9395 659.8994 y -373.0615 674.96 366.9805 674.54 y -350.6211 678.4805 344.9004 677.6602 y -286.8198 672.8594 l -257.7798 658.6807 266.4199 635.6602 y -273.4014 626.3408 283.46 630.6201 y -288.5815 637.3398 301.46 634.9395 y -323.7822 631.3994 320.9004 635.4199 y -318.2813 640.4209 300.4614 647.2393 300.2598 647.8994 c -300.02 648.5596 290.4199 652.2197 y -287.041 653.6211 282.2598 663.7393 y -278.6816 667.4814 296.1802 661.0996 y -294.7402 660.001 302.8999 655.5801 y -322.0205 656.7002 333.6201 644.7793 y -345.5625 626.5615 345.8594 635.6602 y -348.8623 645.9199 335.7793 669.2598 y -336.3223 671.4414 345.3799 664.2197 y -346.8828 666.3799 347.7793 659.8994 y -347.9814 657.3604 352.0996 648.6201 y -355.2422 634.2607 359.2998 642.3799 y -364.3398 632.0596 l -365.8018 629.2012 359.2998 620.7793 y -358.9805 617.7607 359.8613 617.9814 353.7793 609.7393 c -347.543 601.2607 351.3799 596.54 y -349.7402 589.1602 359.54 589.5801 y -362.2813 587.1797 366.0195 587.1797 y -368.002 584.9814 370.5801 585.7393 y -372.4014 589.8193 379.2197 587.6602 y -380.7607 590.2617 389.7793 590.7793 y -390.8809 593.5615 391.3203 595.3203 395.0605 596.0596 c -398.8018 596.6406 371.7793 644.0596 y -378.7813 644.8203 369.8594 658.46 y -367.3418 665.7197 379.8828 649.6611 382.3398 648.1396 c -384.7207 646.5801 385.8223 644.1602 384.0195 644.2998 c -382.3018 644.5996 380.3223 642.1807 381.8594 641.8994 c -383.4004 641.7412 397.7021 625.2412 401.54 614.0596 c -405.1807 602.8018 411.7813 598.3994 418.5801 591.7393 c -425.4219 585.2002 424.5801 558.6201 y -424.1025 548.8994 430.8203 537.2598 y -432.9004 533.0596 428.1797 513.0195 y -426.082 510.6201 427.7002 509.6602 y -428.7227 508.4209 436.0996 493.8193 y -434.2207 494.1201 438.2598 490.2197 y -443.9023 483.5596 436.8203 486.8594 y -430.2607 488.6211 438.0195 477.7393 y -439.2822 475.8604 429.3799 480.8594 y -419.2617 481.5801 432.0195 473.6602 y -441.4805 465.7393 428.9004 470.54 y -423.8809 472.5605 427.46 465.0195 y -430.9209 463.3203 449.7793 455.6602 y -450.2813 451.4404 446.9004 445.8193 y -447.4209 441.54 444.9805 437.8994 y -443.6816 428.7793 443.0605 427.8193 y -438.4014 427.6807 430.3398 412.46 y -428.2813 409.6396 417.1406 396.3799 y -414.8623 388.7402 395.0605 396.6201 y -387.8027 392.9189 390.0195 396.6201 y -389.5615 399.0801 394.8203 405.7393 y -402.541 408.54 399.6201 420.3799 y -404.082 421.959 391.7617 425.04 391.9395 426.3799 c -392.2012 427.6807 398.6602 429.2598 y -407.3809 431.4199 402.5 434.0596 y -401.8809 438.459 405.1406 444.6201 y -417.9414 445.501 405.1406 463.3398 y -393.3008 471.6797 392.1797 477.9795 y -406.0615 487.0801 397.043 500.7197 397.2197 504.6201 c -397.4814 508.6396 398.9004 532.46 y -396.6006 539.2207 393.3799 554.2998 y -395.7227 559.9014 403.9395 573.7393 y -406.9424 578.3818 416.6211 583.6611 414.2598 586.9395 c -411.7813 590.2617 403.2197 588.3799 y -394.6211 589.8193 395.2998 584.0596 y -393.5215 583.001 392.6602 577.5801 y -391.8486 568.7744 382.0996 561.9795 y -369.7617 555.0605 379.9395 550.7002 y -386.4824 543.4014 375.6201 543.2598 y -363.6006 545.1602 372.7402 533.8994 y -384.502 519.8594 381.1406 516.8594 y -369.9824 515.6816 383.7793 505.5801 y -382.9609 507.7617 383.2998 505.8193 v -383.4004 503.8018 386.7012 499.1816 387.6201 496.9395 c -388.4629 494.7793 384.0195 494.54 y -384.7207 484.001 367.7002 488.54 y -367.7813 488.6211 366.0195 488.2998 v -364.2607 488.1797 351.9414 489.0605 345.6201 491.4199 c -339.1807 493.9014 331.7002 493.8193 y -327.3008 491.9209 318.9805 492.1396 v -310.5801 492.3604 301.7002 489.2598 y -296.9409 489.7207 306.4014 494.5615 306.7402 494.2998 c -306.8408 494.1201 313.002 500.2803 304.1001 499.5801 c -280.2246 497.8232 268.3398 509.1797 y -266.1416 510.6201 263.2998 513.7393 y -252.2817 515.8994 264.7402 500.0596 y -266.1416 498.5215 264.5 497.4199 y -263.7197 499.1816 255.1401 505.0996 y -252.0488 506.1914 250.5488 507.6582 247.9399 510.3799 c -F -0.435294 0.886275 0.8 0.670588 k -221.7798 523.0996 m -234.4614 517.001 237.3799 513.9795 v -240.1807 510.8408 255.6201 498.3799 y -249.6416 500.501 246.7402 502.46 v -243.9199 504.4609 232.1001 513.5 y -227.8613 520.0801 221.7798 523.0996 v -F -0.45098 0 1 0 k -157.9399 557.4199 m -158.2617 557.6406 157.6855 560.624 157.46 561.2598 c -156.3369 564.2188 146.4199 565.8193 y -146.2109 564.3389 146.1514 562.585 146.1802 560.7793 c -151.6206 554.71 157.9399 557.4199 v -F -0.658824 0.2 1 0.039216 k -157.9399 557.6602 m -157.395 557.5225 157.875 560.7051 157.7002 561.2598 c -156.5552 564.2188 146.4199 566.0596 y -146.2109 564.4492 146.1514 562.6924 146.1802 560.7793 c -150.9609 555.2598 157.9399 557.6602 v -F -0 g -153.1401 557.6602 m -152.3721 557.54 151.8154 558.7949 151.7002 560.2998 c -151.8154 561.8857 152.3721 563.1416 153.1401 563.1797 c -153.7471 563.1416 154.3066 561.8857 154.3398 560.2998 c -154.3066 558.7949 153.7471 557.54 153.1401 557.6602 c -F -102.98 449.6602 m -96.7402 438.6797 124.1001 445.3398 v -139.4214 446.5996 142.1001 449.1797 v -143.3818 448.3594 152.583 445.1338 155.7798 444.3799 c -163.1816 442.6396 172.3398 453.7402 y -177.481 465.1904 180.5 465.2598 v -183.6416 465.1904 180.02 463.3398 y -172.8608 452.3193 173.2998 450.6201 v -167.5806 428.5586 150.02 427.5801 v -132.2144 426.6338 133.7002 420.1396 v -143.3818 422.8398 145.9399 420.1396 v -157.9014 420.6387 149.0601 413.6602 v -141.6201 400.9395 l -141.7734 396.5313 130.5801 400.46 v -119.8398 404.1387 108.5 418.2197 y -90.9658 434.333 102.98 449.6602 v -F -0.066667 0.470588 0.290196 0 k -101.54 445.3398 m -99.3799 434.7197 139.9399 446.0596 v -144.7017 446.1582 147.3799 445.3398 v -149.9814 444.3994 163.1816 441.3193 165.3799 442.7002 c -157.46 427.6807 144.7402 429.5 v -130.1816 427.6807 130.5801 422.2998 v -135.02 414.4805 140.4199 411.7402 v -143.3818 409.2002 143.0601 405.7402 v -142.501 402.1592 139.4214 400.3994 137.2998 399.5 c -135.02 398.6406 131.5015 402.1592 129.8599 402.1396 c -127.981 402.1592 118.7407 409.2002 114.02 414.3799 c -109.0615 419.7578 99.8218 432.958 100.3398 435.9795 c -100.7002 439.1191 101.54 445.3398 y -F -0.262745 0.682353 0.52549 0.062745 k -105.1401 426.1396 m -107.96 421.7402 111.481 417.1201 114.02 414.3799 c -118.7407 409.2002 127.981 402.1592 129.8599 402.1396 c -131.5015 402.1592 135.02 398.6406 137.2998 399.5 c -139.4214 400.3994 142.501 402.1592 143.0601 405.7402 c -143.3818 409.2002 140.4199 411.7402 y -136.9277 413.5254 133.9136 417.3682 132.2598 419.8994 c -132.3799 417.1201 126.7402 417.9795 v -120.9414 418.8799 115.2197 421.959 113.54 425.4199 c -111.7017 429.001 109.0615 431.6406 110.8999 427.5801 c -112.5801 423.7207 115.2197 419.7578 116.8999 419.4199 c -118.7407 418.8799 118.3018 417.5596 115.7002 417.9795 c -113.0215 418.4404 109.9399 418.8799 105.1401 424.7002 c -F -0.254902 0.941176 1 0.243137 k -102.2598 449.1797 m -104.2207 464.2012 105.6201 468.6201 v -104.6602 476.0811 107.2998 480.6201 v -109.9399 485.3213 112.1406 492.1396 115.46 498.1396 c -118.7407 504.0195 118.9614 508.4209 123.3799 510.1396 c -127.7598 511.9395 134.3599 521.4004 137.54 522.6201 c -140.5205 523.6016 140.4199 522.6201 y -147.7808 539 162.7402 534.6201 v -144.9199 537.6797 162.2598 548.0596 v -157.0205 546.8115 160.5801 554.54 v -163.0713 559.6445 162.5215 552.2002 150.5 539.1797 c -144.9199 529.7598 139.2197 526.46 v -133.4814 523.1602 120.2817 515.4609 119.0601 511.3398 c -117.6416 507.1016 114.1206 500.7197 111.8599 498.8594 c -109.7217 497.2012 106.6401 492.5811 106.1001 488.7803 c -104.8809 484.4404 103.46 483.0195 v -101.8018 481.8008 101.5806 478.2803 101.54 476.0596 c -101.5806 473.8809 99.3799 470.8018 99.6201 468.1396 c -100.4814 447.2598 100.1001 445.0996 v -102.2598 449.1797 l -F -1 g -92.8999 444.1396 m -90.5815 445.7188 85.7002 439.0996 v -93.771 402.8193 93.8599 401.1797 v -94.981 403.5898 93.6201 411.5 v -92.1201 419.4297 91.2197 433.3398 y -92.8999 444.1396 l -F -0.254902 0.941176 1 0.243137 k -116.6602 510.8594 m -97.1816 507.3193 97.7002 475.0996 v -96.7402 447.9795 l -95.4199 476.0811 94.1001 477.7393 v -92.7798 479.5996 97.1816 491.9209 93.6201 485.4199 c -78.2598 469.9209 87.1401 446.54 v -88.7095 442.9707 85.46 447.9795 v -80.3506 461.8896 81.6201 468.8594 v -81.7808 471.3506 83.7798 474.3799 v -93.3296 487.3018 96.2598 489.7393 v -98.2808 505.6709 115.2197 511.3398 v -121.4912 513.9199 116.6602 510.8594 v -F -0 g -269.7798 583.5801 m -270.6055 584.0498 270.5957 585.1182 271.2197 585.2598 c -272.499 585.6846 272.6792 586.8584 273.1401 587.6602 c -274.208 589.1719 274.4214 590.8594 275.0601 592.46 c -275.3599 593.2686 275.3911 594.3193 275.0601 595.0996 c -273.7544 597.7734 272.9814 600.4688 271.46 603.0195 c -271.1001 603.6318 270.812 604.5049 270.5 605.1797 c -270.0825 606.6865 268.7002 607.7764 267.8599 609.2598 c -267.4375 609.7129 268.0137 610.7305 267.1401 610.9395 c -266.2402 610.9395 264.6465 611.5752 264.5 610.46 c -263.7441 607.6016 264.855 604.8271 265.9399 602.0596 c -265.0591 601.3779 265.4263 600.3682 265.7002 599.4199 c -266.377 595.5557 265.0566 591.8691 264.2598 588.1396 c -264.1953 587.9336 264.5718 587.7148 264.5 587.6602 c -263.1968 584.6934 261.5981 582.0029 259.7002 579.5 c -258.7642 578.293 257.8066 577.2842 257.2998 576.1396 c -256.8535 575.249 256.4048 574.1885 256.5801 573.0195 c -252.9033 570.0439 250.4263 565.8125 247.46 561.5 c -247.0474 560.835 247.3662 559.5049 247.9399 559.0996 c -248.8662 558.7705 249.9199 559.8965 250.3398 560.7793 c -250.8633 561.5957 251.252 562.3105 251.7798 562.9395 c -251.9385 563.2109 251.7417 563.6719 251.7798 563.8994 c -254.7871 566.3857 256.623 569.6162 259.2197 572.2998 c -261.4663 572.583 263.1558 573.6797 264.98 574.7002 c -265.417 574.9902 265.9951 574.7168 266.4199 574.9395 c -268.2417 576.2266 268.2393 578.4678 268.3398 580.46 c -268.4097 581.54 268.6255 582.9893 269.7798 583.5801 c -F -260.1802 588.6201 m -260.2905 588.6582 260.1201 589.124 260.1802 589.3398 c -260.4199 589.7168 260.8613 589.9229 261.1401 590.2998 c -261.1616 590.5186 260.9814 590.9355 261.1401 591.0195 c -263.6982 593.7842 263.979 597.1113 262.8198 600.3799 c -263.9673 601.0635 264.0342 602.4512 263.54 603.5 c -262.6279 605.252 262.417 607.3711 261.3799 609.0195 c -260.4609 610.4648 258.7256 611.833 257.2998 610.46 c -256.7554 609.958 256.3999 609.0938 256.8198 608.2998 c -256.7769 608.1318 257.0913 607.9707 257.0601 607.8193 c -256.9424 607.5244 256.3423 607.2773 256.3398 606.8594 c -256.3042 605.333 255.2529 603.6699 255.8599 602.2998 c -256.7959 600.418 257.6958 598.373 258.5 596.54 c -257.0815 594.0918 258.2192 591.3994 256.3398 589.3398 c -256.1406 589.1738 256.1504 588.749 256.3398 588.6201 c -256.6064 587.9932 257.0527 587.5469 257.54 587.1797 c -257.811 587.0908 258.1929 587.0908 258.5 587.1797 c -259.0498 587.624 259.4863 588.1592 260.1802 588.6201 c -F -329.2998 599.8994 m -330.7754 597.9434 331.0957 594.8691 328.8203 593.4199 c -329.4463 589.7002 333.1328 591.877 335.54 592.46 c -335.3223 592.8867 335.5713 593.2666 335.7793 593.1797 c -337.0449 593.2881 337.793 594.4229 338.9004 594.1396 c -339.4395 595.9326 341.2402 596.7051 342.0195 598.2197 c -343.8457 602.2881 343.1982 606.9893 340.3398 610.46 c -340.1338 610.8389 340.3711 611.4072 340.3398 611.8994 c -339.4043 614.2373 337.1289 614.583 335.0605 615.2598 c -333.707 619.6035 332.9785 624.0361 330.9805 628.2197 c -329.2666 628.376 328.498 630.2881 327.1406 631.0996 c -325.5605 631.8701 324.9365 630.1348 324.9805 628.9395 c -324.9902 628.7598 325.4863 628.5127 325.2197 628.2197 c -325.2148 627.9297 324.9297 627.8096 324.9805 627.7393 c -324.9316 627.5117 325.1738 627.3682 325.2197 627.2598 c -324.3105 626.3193 322.7461 625.793 322.3398 624.6201 c -321.373 620.4531 324.2021 617.0166 325.9395 613.5801 c -326.6865 612.248 325.877 610.8486 324.9805 609.5 c -324.5605 608.7559 324.6797 607.5146 324.9805 606.6201 c -325.8105 604.0107 327.5605 602.0957 329.2998 599.8994 c -F -288.2598 579.7393 m -286.7358 577.6543 282.9849 574.8291 286.1001 572.7793 c -286.4048 572.5664 286.8125 572.5615 287.0601 572.7793 c -289.2246 574.4307 291.4302 575.4248 294.02 576.1396 c -294.2456 576.0967 294.5479 575.583 294.98 575.6602 c -296.7271 576.5332 298.9375 576.4688 300.2598 578.0596 c -304.3833 577.6953 308.3047 578.9209 312.0195 580.46 c -313.3135 580.8535 314.7109 581.4678 316.0996 582.1396 c -317.5449 582.6533 318.8691 583.6758 320.1797 585.0195 c -320.2373 585.0801 320.6289 584.9814 320.9004 585.0195 c -320.8789 585.9297 321.9365 586.0713 322.0996 586.7002 c -322.3086 587.0098 322.1426 587.4463 322.3398 587.6602 c -324.6416 589.3496 325.6543 591.5693 324.2598 594.1396 c -324.0537 594.8213 323.7793 595.501 323.0605 596.0596 c -321.9629 597.0244 320.751 596.0859 319.7002 596.54 c -319.4258 595.7305 318.625 595.918 318.2598 595.8193 c -317.2539 595.2197 315.7881 595.8633 314.9004 595.3398 c -313.3447 594.6152 311.9785 594.4297 310.3398 593.8994 c -310.0713 593.9258 309.2168 594.0293 309.1406 593.4199 c -308.8926 593.4893 308.7295 593.7461 308.6602 593.6602 c -306.5146 593.2852 305.1294 593.0498 303.6201 591.2598 c -303.584 591.0439 303.0967 591.2402 302.8999 591.0195 c -301.8701 590.2012 301.4263 588.8457 300.2598 588.1396 c -299.9937 587.9697 299.605 588.1563 299.2998 587.8994 c -298.6807 587.54 298.2773 586.834 297.6201 586.46 c -297.2095 586.0898 296.7705 586.4473 296.8999 586.7002 c -297.0752 588.8721 297.793 590.8369 297.1401 592.9395 c -299.4463 595.6729 302.2134 597.8164 304.1001 600.8594 c -304.2178 603.2041 304.9785 605.5635 304.8198 607.8193 c -304.8418 608.0596 304.5249 608.8662 304.3398 609.2598 c -304.0449 610.1885 305.041 611.3594 304.1001 612.1396 c -302.5688 613.4814 301.1479 612.5166 300.2598 610.9395 c -298.2178 610.5098 295.9448 609.749 294.2598 611.1797 c -293.103 611.9717 292.4673 612.9697 291.6201 614.0596 c -290.5039 615.5625 290.8735 617.1416 290.8999 618.8594 c -290.9551 619.0039 290.6094 619.1523 290.6602 619.3398 c -290.6118 619.4502 290.8521 619.5938 290.8999 619.8193 c -290.2231 620.4297 289.9209 621.5938 288.7402 621.9795 c -289.1357 623.1416 288.3921 624.1133 287.54 624.3799 c -285.2383 625.208 283.395 623.1025 281.2998 622.9395 c -280.748 623.002 280.2344 624.1445 279.6201 624.6201 c -279.0464 624.7393 278.271 624.7754 277.9399 624.3799 c -277.1167 623.9287 276.4688 623.8037 275.54 623.6602 c -273.855 623.0977 272.4512 621.8936 270.7402 621.0195 c -269.1895 620.0117 268.1382 618.4297 266.8999 616.9395 c -265.9136 615.7109 265.7646 613.0566 267.3799 612.6201 c -269.355 611.792 270.7881 614.7656 272.8999 614.2998 c -273.2935 614.3506 273.5215 614.0068 273.3799 613.5801 c -273.8286 613.46 274.0688 613.7119 274.3398 614.0596 c -275.2231 612.9004 276.5049 612.5283 277.46 611.6602 c -278.605 610.5752 280.5249 611.0332 281.54 609.9795 c -283.3232 608.2852 282.7065 605.3359 284.8999 603.9795 c -284.1968 602.4561 283.5298 601.0518 283.2197 599.4199 c -282.8506 598.1553 283.9424 596.8398 285.3799 597.0195 c -286.6592 597.041 286.9473 597.877 287.54 599.1797 c -287.7754 598.7666 288.291 598.4404 288.2598 598.2197 c -287.7417 595.5771 286.6133 593.3857 286.1001 590.7793 c -286.0449 590.3623 285.709 590.1387 285.3799 590.2998 c -284.7656 585.6963 280.3086 583.0635 277.46 579.5 c -277.0664 579.0293 277.0615 577.6563 277.46 577.0996 c -279.0537 575.6865 281.2109 577.3877 282.98 578.0596 c -283.3135 579.2666 284.2593 580.3037 285.6201 580.2197 c -286.0063 580.2314 286.2656 580.8271 286.5801 580.9395 c -287.0049 581.1221 287.5566 580.875 287.7798 581.1797 c -289.772 582.4082 291.3223 583.625 293.2998 585.0195 c -293.4438 585.0752 293.8232 584.9023 294.02 585.0195 c -294.4185 585.2002 294.625 585.624 294.98 585.7393 c -295.3613 586.0469 295.6279 585.7275 295.9399 585.5 c -295.1313 585.0361 295.1265 583.9834 294.5 583.8193 c -293.6338 583.4668 293.0166 582.9033 292.3398 582.3799 c -291.9536 582.2002 291.229 582.4707 291.1401 582.3799 c -290.4561 581.1436 289.1528 580.6611 288.2598 579.7393 c -F -227.54 633.9795 m -217.2583 637.2002 204.98 609.0195 v -202.3398 603.2402 199.7002 601.0996 v -197.0601 598.8418 184.7407 594.8818 182.6602 590.54 c -171.1401 572.7793 l -187.3809 590.4795 190.8198 593.1797 v -199.7002 602.3594 196.1001 594.8594 v -180.7808 583.001 182.1802 572.7793 v -175.9399 557.04 174.98 554.7793 v -192.6606 590.04 195.3799 591.2598 v -197.9409 592.6807 199.2607 592.6807 198.02 588.6201 c -196.6206 584.7607 196.1816 566.7197 193.2197 564.6201 c -201.9009 586.9609 201.1401 590.54 v -204.541 594.4395 207.1401 588.6201 v -205.9399 571.0996 l -210.7402 557.8994 l -208.0615 570.2402 209.7798 587.4199 v -207.6201 598.8418 211.9399 592.7002 v -216.4209 586.5195 226.981 579.9199 227.0601 574.7002 c -221.2617 594.001 211.2197 599.1797 v -206.6602 592.7002 l -205.46 594.8594 l -201.4614 595.7598 206.4199 603.2598 v -211.1406 610.7217 210.7402 611.6602 y -217.7407 603.6797 219.6201 603.7393 v -234.02 612.041 235.46 585.2598 v -242.8208 601.04 232.8198 608.54 v -216.4209 610.7217 217.7002 616.46 v -225.6201 630.1396 l -229.6206 635.8018 227.7798 632.7793 y -F -205.46 615.9795 m -191.3408 616.001 187.9399 610.2197 v -180.02 599.6602 l -198.8218 610.7217 203.2998 612.1396 v -207.6201 613.3613 205.46 615.9795 y -F -161.54 609.0195 m -159.2217 607.6396 158.8999 604.46 v -158.3408 601.4814 155.7007 601.04 156.5 597.9795 c -157.46 594.8818 159.6606 592.2412 159.6201 596.54 c -159.6606 601.04 161.4199 603.2402 162.2598 604.46 c -163.1816 605.8809 164.9409 610.7217 161.54 609.0195 c -F -151.7002 541.5801 m -142.501 546.041 138.98 549.9795 v -135.4614 553.9609 135.9585 548.2783 130.5801 548.7793 c -124.189 549.166 125.2998 566.7793 y -120.98 558.3799 l -119.6216 542.5205 128.4199 545.1797 v -132.7183 546.4492 134.1416 544.7217 132.5 543.7393 c -130.6206 542.96 138.541 542.5205 135.3799 540.8594 c -132.3799 539 148.2197 544.7217 145.7002 533.1797 c -151.7002 541.5801 l -F -137.7798 525.7393 m -120.9414 520.9609 116.8999 531.5 v -111.7017 528.8818 114.02 525.5 v -116.54 522.2813 117.8599 521.8994 y -123.7998 520.5195 123.1401 519.7393 v -122.48 518.7607 119.7798 514.9395 y -131.0601 521.6211 137.7798 525.7393 v -F -1 g -389.0605 439.8193 m -388.6523 437.4316 386.8135 436.5508 384.7402 435.7402 c -382.6133 436.8721 379.7559 440.29 377.7793 437.8994 c -377.1602 438.5479 376.3037 438.6123 375.8594 439.3398 c -375.4141 440.3311 375.7129 441.4805 375.3799 442.46 c -374.7363 443.7578 373.957 445.2607 374.1797 446.7803 c -376.1484 447.6025 376.8027 449.6982 376.3398 451.5801 c -376.2051 451.9209 375.7324 452.1387 375.8594 452.54 c -376.1582 452.8779 376.5078 453.1279 376.8203 453.5 c -376.6523 453.2715 376.4941 453.0146 376.3398 453.0195 c -375.7012 453.1543 375.8359 453.8545 375.8594 454.2197 c -376.623 456.2021 378.8379 456.4922 380.4199 455.1797 c -380.6025 455.8018 381.1621 455.5879 381.6201 455.6602 c -381.5859 456.2578 382.0352 456.8379 382.3398 457.3398 c -382.8223 458.5059 384.6152 457.2891 385.46 458.0596 c -386.6738 458.8711 387.8438 459.6416 389.0605 459.0195 c -391.0215 457.8633 392.9004 456.5313 394.0996 454.7002 c -394.8516 453.6963 395.1152 452.2881 395.0605 451.3398 c -395.0098 450.5215 393.4902 450.9102 393.1406 449.8994 c -392.4033 447.9658 394.417 447.3945 395.2998 445.8193 c -395.4678 445.5391 395.1777 445.2031 394.8203 445.0996 c -394.3789 444.9561 393.5166 445.165 393.6201 444.6201 c -394.7363 441.1514 391.7051 440.4082 389.0605 439.8193 c -F -378.5 418.2197 m -378.5527 420.1299 376.791 422.0645 378.0195 423.9795 c -378.2695 423.793 378.4141 423.5498 378.5 423.5 c -378.7109 423.5498 378.8555 423.793 378.9805 423.9795 c -380.6455 421.5029 384.6631 420.4805 384.5 417.2598 c -384.4834 416.8594 383.2881 415.8486 384.2598 415.0996 c -382.2871 413.6572 382.2266 411.0508 381.1406 408.8594 c -379.8398 409.2939 378.5078 409.6924 377.2998 410.2998 c -377.6289 411.9346 377.499 413.7871 378.5 415.3398 c -378.8789 416.0068 378.5645 417.1924 378.5 418.2197 c -F -0.8 g -195.8599 428.0596 m -177.1953 416.9697 192.7402 433.8193 v -202.3398 444.3994 213.3799 450.6201 y -224.7798 455.4004 228.7402 456.6201 v -232.7002 458.041 249.4209 463.7598 252.98 464.2998 c -256.46 464.6406 267.02 469.04 274.5801 464.54 c -281.9814 460.2412 290.8999 455.4199 y -272.7417 464.6406 268.8198 461.8994 v -264.8218 459.3604 256.9014 459.7998 250.3398 456.3799 c -234.02 451.4404 230.4199 449.1797 v -226.981 447.0391 215.54 434.2803 213.8599 435.2598 c -212.0215 436.04 214.2197 436.4795 215.54 439.5801 c -216.8599 442.6396 214.6616 444.3994 205.9399 437.4199 c -197.0601 430.3203 195.8599 428.0596 y -F -0 g -203.7798 434.7803 m -205.436 449.0264 214.8198 447.2598 v -223.8105 451.7842 226.8198 453.9795 v -235.7578 455.8203 237.1401 456.3799 v -257.5254 466.0684 273.7183 461.0986 274.3398 462.3799 c -274.9185 463.5605 296.5063 455.7314 300.5 451.3398 c -300.9082 450.749 289.2222 457.3945 278.6602 459.5 c -269.4536 461.249 245.6934 459.2021 233.7798 453.0195 c -230.4248 451.4521 220.585 445.0898 217.7002 445.0996 c -215.0166 445.335 203.7798 434.7803 y -F -0.8 g -199.7002 406.46 m -182.9814 409.2002 201.3799 411.0195 v -221.2617 413.1582 225.6201 418.9395 v -240.6201 429.001 243.6201 429.5 v -246.7808 429.8789 279.7808 437.7988 280.3398 440.54 c -280.6616 443.0791 286.8198 443.0791 288.5 442.2197 c -290.3408 441.3193 289.46 440 286.3398 439.0996 c -283.3018 438.2402 248.9814 420.2002 241.9399 418.9395 c -234.9009 417.5596 222.1401 409.2002 216.98 407.8994 c -211.5801 406.5586 199.7002 406.46 y -F -0 g -221.0601 414.6201 m -211.731 415.6113 221.2998 416.54 v -230.8906 420.2764 233.0601 423.2598 v -240.8047 428.3887 242.4199 428.54 v -243.9585 428.8369 259.3135 432.8936 259.46 434.2998 c -259.7646 435.5957 297.2383 449.4365 302.1802 445.8193 c -305.3022 443.6162 294.4111 445.46 283.7002 440.54 c -282.3223 439.9277 245.084 423.8818 241.46 423.2598 c -237.8745 422.5303 231.3418 418.251 228.7402 417.5 c -225.9346 416.8975 221.0601 414.6201 y -F -212.4199 412.2197 m -218.1802 412.7188 216.98 411.0195 v -215.54 409.2002 212.8999 410.0596 y -212.4199 412.2197 l -F -204.5 410.54 m -210.2598 410.96 209.0601 409.0996 v -207.6201 407.4395 204.98 408.3799 y -204.5 410.54 l -F -193.2197 408.8594 m -198.8218 409.2002 197.54 407.4199 v -196.1816 405.6797 193.46 406.46 y -193.2197 408.8594 l -F -184.8198 407.8994 m -190.46 408.3193 189.1401 406.46 v -187.8198 404.7988 185.2998 405.7402 y -184.8198 407.8994 l -F -227.0601 451.3398 m -231.8218 451.4404 230.4199 449.6602 v -229.1816 447.9199 225.6201 448.46 y -227.0601 451.3398 l -F -216.02 445.3398 m -223.1357 447.6338 220.3398 443.8994 v -219.0605 442.2002 216.5 443.1797 y -216.02 445.3398 l -F -203.7798 440.0596 m -209.3818 440.4395 208.1001 438.6201 v -206.7417 436.9209 204.02 437.8994 y -203.7798 440.0596 l -F -195.3799 433.3398 m -201.02 433.8389 199.7002 432.1396 v -198.3799 430.3203 195.8599 431.1797 y -195.3799 433.3398 l -F -187.9399 428.0596 m -193.5415 428.5586 192.2598 426.8594 v -190.9014 425.041 188.1802 425.8994 y -187.9399 428.0596 l -F -230.8999 421.0996 m -238.4238 421.6689 236.6602 419.4199 v -234.9102 416.9834 231.3799 418.2197 y -230.8999 421.0996 l -F -242.1802 426.3799 m -249.8647 426.9482 248.1802 424.7002 v -246.3511 422.2637 242.8999 423.5 y -242.1802 426.3799 l -F -254.1802 431.1797 m -261.7446 431.7891 259.9399 429.5 v -258.231 427.1045 254.6602 428.2998 y -254.1802 431.1797 l -F -265.46 436.46 m -273.1831 437.0693 271.46 434.7803 v -269.6694 432.3848 266.1802 433.5801 y -265.46 436.46 l -F -235.2197 456.3799 m -242.8232 456.8691 240.98 454.46 v -239.3096 452.1846 234.98 452.54 y -235.2197 456.3799 l -F -246.2598 459.7402 m -253.8247 460.3877 252.02 458.0596 v -250.311 455.7031 245.54 455.8994 y -246.2598 459.7402 l -F -221.2998 415.8193 m -226.981 416.2402 225.6201 414.3799 v -224.3408 412.7188 221.7798 413.6602 y -221.2998 415.8193 l -F -0.254902 0.941176 1 0.243137 k -140.6602 525.0195 m -135.9009 515.2393 135.3799 511.8193 v -136.3398 521.4004 137.7798 523.5801 v -138.98 525.7998 140.6602 525.0195 y -F -120.5 509.4199 m -116.9814 493.6807 117.3799 490.7002 v -116.1006 503.3594 116.6602 504.6201 v -116.9814 506 120.5 509.4199 y -F -0.8 g -143.2998 591.5 m -143.0601 588.1396 l -140.6602 587.8994 l -156.3608 573.9795 156.98 565.5801 v -157.9014 574.6396 143.2998 591.5 v -F -0 g -147.8599 590.2998 m -147.2891 590.6475 147.5288 591.4658 147.1401 591.7393 c -146.1919 592.3203 148.5078 592.3828 148.3398 593.1797 c -147.8359 594.4971 148.0425 594.5215 147.8599 595.8193 c -147.8457 596.5801 148.4912 598.2744 148.8198 598.7002 c -150.5073 600.5762 149.0503 603.8018 150.7402 605.4199 c -151.189 605.8252 151.6016 606.4326 151.9399 606.8594 c -152.6406 607.9521 153.9414 608.4893 155.0601 609.5 c -155.3384 609.7041 155.1152 610.6133 155.7798 610.46 c -156.5264 610.3857 157.8921 610.5293 157.9399 609.5 c -157.7192 607.2705 156.2578 605.3789 154.8198 603.5 c -155.3457 602.7705 154.8418 602.0713 154.5801 601.3398 c -153.0605 598.5771 153.2695 595.4502 153.1401 592.2197 c -153.0703 592.2344 152.7344 592.1475 152.6602 591.9795 c -153.1304 589.5225 153.7734 587.1025 154.8198 584.54 c -155.1416 583.6279 155.6602 582.6436 155.7798 581.6602 c -155.9478 580.8682 156.0605 579.9531 155.54 579.2598 c -157.8511 575.998 156.4111 573.082 157.7002 569.1797 c -157.9233 568.5098 159.7856 566.4053 159.3799 566.54 c -156.5117 567.54 156.3896 567.9775 156.2598 568.7002 c -156.0342 569.4922 155.6694 571.0059 155.2998 571.5801 c -155.3384 571.8486 155.1514 573.9219 155.0601 573.9795 c -153.4014 576.6748 154.8945 576.4834 153.3799 579.0195 c -151.8174 579.8232 150.7544 581.0381 149.54 582.3799 c -149.3022 582.54 150.5601 583.3369 150.2598 583.5801 c -149.1582 584.9912 147.8911 585.833 148.3398 587.4199 c -148.4312 588.2334 148.5801 589.3975 147.8599 590.2998 c -F -143.7798 588.3799 m -144.2598 580.8008 146.8999 579.0195 v -149.54 577.2793 148.2197 578.1602 144.7402 579.5 c -141.1807 580.8008 142.5801 581.6602 y -139.4214 581.2393 142.1001 579.0195 v -144.7017 576.8408 148.6616 574.2002 146.8999 574.2197 c -145.1406 574.2002 136.7817 578.5996 136.8198 581.6602 c -136.7817 584.7607 135.6201 589.3398 y -136.8896 590.1514 142.1001 590.0596 v -143.7104 589.2705 143.7798 588.3799 v -F -1 g -143.0601 567.7393 m -133.5679 570.8906 113.2998 567.2598 v -123.1733 569.4463 143.7798 567.0195 v -155.1514 565.5654 143.0601 567.7393 y -F -0 R -0 G -1 J 0.11 w 10 M -143.0601 567.7393 m -133.5679 570.8906 113.2998 567.2598 v -123.1733 569.4463 143.7798 567.0195 v -155.1514 565.5654 143.0601 567.7393 y -143.0601 567.7393 l -s -0 O -1 g -0 J 1 w 4 M -145.2197 567.9795 m -136.1768 571.7695 115.7002 569.8994 v -125.6982 571.2266 145.9399 567.0195 v -157.2178 564.5957 145.2197 567.9795 y -F -0 R -0 G -1 J 0.11 w 10 M -145.2197 567.9795 m -136.1768 571.7695 115.7002 569.8994 v -125.6982 571.2266 145.9399 567.0195 v -157.2178 564.5957 145.2197 567.9795 y -145.2197 567.9795 l -s -0 O -1 g -0 J 1 w 4 M -147.1401 567.7393 m -138.457 572.3311 117.8599 571.8193 v -127.9663 572.5713 147.8599 566.7793 v -158.9048 563.6113 147.1401 567.7393 y -F -0 R -0 G -1 J 0.11 w 10 M -147.1401 567.7393 m -138.457 572.3311 117.8599 571.8193 v -127.9663 572.5713 147.8599 566.7793 v -158.9048 563.6113 147.1401 567.7393 y -147.1401 567.7393 l -s -0 O -1 g -0 J 1 w 4 M -148.5801 567.5 m -141.1064 572.2881 122.6602 573.5 v -131.7178 573.3105 149.2998 566.54 v -158.7729 562.9014 148.5801 567.5 y -F -0 R -0 G -1 J 0.11 w 10 M -148.5801 567.5 m -141.1064 572.2881 122.6602 573.5 v -131.7178 573.3105 149.2998 566.54 v -158.7729 562.9014 148.5801 567.5 y -148.5801 567.5 l -s -0 O -1 g -0 J 1 w 4 M -275.54 555.9795 m -274.3999 555.2764 274.5801 556.46 v -274.8726 557.873 305.9023 572.3594 309.8594 572.0596 c -276.6055 557.5586 275.54 555.9795 v -F -0 R -0 G -1 J 0.11 w 10 M -275.54 555.9795 m -274.3999 555.2764 274.5801 556.46 v -274.8726 557.873 305.9023 572.3594 309.8594 572.0596 c -276.6055 557.5586 275.54 555.9795 v -275.54 555.9795 l -s -0 O -1 g -0 J 1 w 4 M -271.7002 555.2598 m -270.728 554.4941 270.98 555.7393 v -270.9922 557.1201 300.7881 574.001 304.8198 573.9795 c -272.7441 556.9424 271.7002 555.2598 v -F -0 R -0 G -1 J 0.11 w 10 M -271.7002 555.2598 m -270.728 554.4941 270.98 555.7393 v -270.9922 557.1201 300.7881 574.001 304.8198 573.9795 c -272.7441 556.9424 271.7002 555.2598 v -271.7002 555.2598 l -s -0 O -1 g -0 J 1 w 4 M -268.1001 553.8193 m -267.1665 552.9199 267.1401 554.2998 v -267.2578 555.5576 289.0566 572.6045 299.7798 574.7002 c -280.0161 565.7266 268.1001 553.8193 v -F -0 R -0 G -1 J 0.11 w 10 M -268.1001 553.8193 m -267.1665 552.9199 267.1401 554.2998 v -267.2578 555.5576 289.0566 572.6045 299.7798 574.7002 c -280.0161 565.7266 268.1001 553.8193 v -268.1001 553.8193 l -s -0 O -1 g -0 J 1 w 4 M -264.98 551.6602 m -264.0918 550.9561 264.02 552.1396 v -264.1758 553.3301 283.7935 568.6709 293.54 570.6201 c -275.6602 562.4814 264.98 551.6602 v -F -0 R -0 G -1 J 0.11 w 10 M -264.98 551.6602 m -264.0918 550.9561 264.02 552.1396 v -264.1758 553.3301 283.7935 568.6709 293.54 570.6201 c -275.6602 562.4814 264.98 551.6602 v -264.98 551.6602 l -s -0 O -0.8 g -0 J 1 w 4 M -230.1802 388.9395 m -213.3418 391.5986 231.8599 393.2598 v -251.6216 395.5586 256.1001 401.1797 v -270.98 411.3994 274.1001 411.7402 v -277.1406 412.2803 295.1816 416.2402 295.7002 418.9395 c -296.0601 421.5195 302.6602 424.1602 304.3398 423.2598 c -306.1807 422.4004 306.1807 412.2803 303.1401 411.5 c -300.02 410.5205 279.3418 402.6006 272.4199 401.1797 c -265.2607 399.958 252.5 391.5986 247.2197 390.3799 c -241.9399 388.959 230.1802 388.9395 y -F -0 g -310.3398 429.9795 m -307.0615 428.3408 305.7798 425.4199 v -298.7002 413.8203 282.98 410.2998 v -257.7798 400.3994 249.1401 398.2998 v -234.4614 392.7002 226.3398 393.5 v -218.6216 393.3584 225.3799 391.5801 v -247.6616 393.7998 251.2998 395.6602 v -268.5605 401.499 271.9399 404.2998 v -275.1606 407.2207 295.1816 412.7188 297.6201 414.8594 c -300.02 417.1201 310.8008 426.3584 310.3398 429.9795 c -F -245.7798 395.4199 m -251.5229 395.6865 250.3398 393.9795 v -248.9863 392.2783 246.2598 393.2598 y -245.7798 395.4199 l -F -237.8599 393.9795 m -243.5981 394.2002 242.4199 392.54 v -241.064 390.79 238.3398 391.8193 y -237.8599 393.9795 l -F -226.3398 392.54 m -232.1289 392.8281 230.8999 391.0996 v -229.5918 389.4199 226.8198 390.3799 y -226.3398 392.54 l -F -217.9399 392.0596 m -223.731 392.2275 222.5 390.6201 v -221.1943 388.8193 218.4199 389.8994 y -217.9399 392.0596 l -F -264.02 403.5801 m -271.6133 403.9082 270.02 401.6602 v -268.2368 399.3701 264.7402 400.7002 y -264.02 403.5801 l -F -275.2998 408.3799 m -281.8569 412.0762 281.2998 406.46 v -280.9736 403.6953 276.02 405.5 y -275.2998 408.3799 l -F -285.3799 411.5 m -293.2231 415.6113 291.3799 409.5801 v -290.4609 406.9063 286.1001 408.6201 y -285.3799 411.5 l -F -295.7002 416.7803 m -300.6079 422.2373 301.7002 414.8594 v -302.228 412.1162 296.4199 413.8994 y -295.7002 416.7803 l -F -254.4199 398.54 m -260.2686 398.8945 258.98 397.0996 v -257.7319 395.4844 255.1401 396.3799 y -254.4199 398.54 l -F -1 g -293.7798 532.2197 m -292.8799 531.4473 292.8198 532.7002 v -292.8774 533.8018 312.1113 548.3906 321.8594 549.9795 c -304.1289 542.5107 293.7798 532.2197 v -F -0 R -0 G -1 J 0.11 w 10 M -293.7798 532.2197 m -292.8799 531.4473 292.8198 532.7002 v -292.8774 533.8018 312.1113 548.3906 321.8594 549.9795 c -304.1289 542.5107 293.7798 532.2197 v -293.7798 532.2197 l -s -0 O -0 g -0 J 1 w 4 M -296.8999 461.8994 m -321.1426 437.3594 331.2197 433.3398 v -341.3818 421.0811 336.9805 392.54 v -333.4609 384.1201 330.0195 406.9395 v -333.4609 434.7197 321.1406 417.0195 v -311.9004 428.0098 318.9805 427.5801 v -322.4629 425.4795 322.8203 427.3398 v -323.3408 429.001 314.54 443.96 295.7002 459.7402 c -276.7017 475.6396 296.8999 461.8994 y -F -1 g -232.8198 419.4199 m -232.4814 421.2988 234.5 420.3799 v -236.4414 419.54 340.0615 412.7188 374.9004 386.2998 c -325.1025 411.8408 232.8198 419.4199 v -F -0 R -0 G -1 J 0.11 w 10 M -232.8198 419.4199 m -232.4814 421.2988 234.5 420.3799 v -236.4414 419.54 340.0615 412.7188 374.9004 386.2998 c -325.1025 411.8408 232.8198 419.4199 v -232.8198 419.4199 l -s -0 O -1 g -0 J 1 w 4 M -244.1001 424.2197 m -243.9199 426.1396 246.02 425.1797 v -247.8799 424.3809 398.1416 425.4795 424.0996 389.8994 c -399.9004 417.5596 244.1001 424.2197 v -F -0 R -0 G -1 J 0.11 w 10 M -244.1001 424.2197 m -243.9199 426.1396 246.02 425.1797 v -247.8799 424.3809 398.1416 425.4795 424.0996 389.8994 c -399.9004 417.5596 244.1001 424.2197 v -244.1001 424.2197 l -s -0 O -1 g -0 J 1 w 4 M -256.8198 428.54 m -256.6807 430.5391 258.7402 429.7402 v -260.6406 428.7803 451.3809 443.0791 477.3799 407.4199 c -466.7813 435.6006 256.8198 428.54 v -F -0 R -0 G -1 J 0.11 w 10 M -256.8198 428.54 m -256.6807 430.5391 258.7402 429.7402 v -260.6406 428.7803 451.3809 443.0791 477.3799 407.4199 c -466.7813 435.6006 256.8198 428.54 v -256.8198 428.54 l -s -0 O -1 g -0 J 1 w 4 M -267.8599 433.8193 m -267.6802 435.8193 269.7798 435.0195 v -271.6401 434.0596 406.0615 476.5205 432.0195 440.7803 c -417.2813 467.9404 267.8599 433.8193 v -F -0 R -0 G -1 J 0.11 w 10 M -267.8599 433.8193 m -267.6802 435.8193 269.7798 435.0195 v -271.6401 434.0596 406.0615 476.5205 432.0195 440.7803 c -417.2813 467.9404 267.8599 433.8193 v -267.8599 433.8193 l -s -0 O -1 g -0 J 1 w 4 M -204.02 408.8594 m -203.8809 410.7393 205.9399 409.8193 v -207.8408 408.9795 227.4199 406.5586 229.7002 363.9795 c -221.7007 410.0791 204.02 408.8594 v -F -0 R -0 G -1 J 0.11 w 10 M -204.02 408.8594 m -203.8809 410.7393 205.9399 409.8193 v -207.8408 408.9795 227.4199 406.5586 229.7002 363.9795 c -221.7007 410.0791 204.02 408.8594 v -204.02 408.8594 l -s -0 O -1 g -0 J 1 w 4 M -194.4199 406.9395 m -194.2017 408.9795 196.1001 408.1396 v -198.1616 407.2207 213.7808 412.2803 210.7402 369.5 c -212.0215 408.3193 194.4199 406.9395 v -F -0 R -0 G -1 J 0.11 w 10 M -194.4199 406.9395 m -194.2017 408.9795 196.1001 408.1396 v -198.1616 407.2207 213.7808 412.2803 210.7402 369.5 c -212.0215 408.3193 194.4199 406.9395 v -194.4199 406.9395 l -s -0 O -1 g -0 J 1 w 4 M -185.54 406.46 m -185.4009 408.541 187.46 407.6602 v -189.3608 406.7793 206.2998 406.1191 192.7402 381.5 c -203.2207 407.8809 185.54 406.46 v -F -0 R -0 G -1 J 0.11 w 10 M -185.54 406.46 m -185.4009 408.541 187.46 407.6602 v -189.3608 406.7793 206.2998 406.1191 192.7402 381.5 c -203.2207 407.8809 185.54 406.46 v -185.54 406.46 l -s -0 O -1 g -0 J 1 w 4 M -237.6201 455.4199 m -237.1904 453.1299 238.8198 454.46 v -256.5703 468.3555 292.2559 533.1484 353.54 539.4199 c -311.3691 552.668 237.6201 455.4199 v -F -0 R -0 G -1 J 0.11 w 10 M -237.6201 455.4199 m -237.1904 453.1299 238.8198 454.46 v -256.5703 468.3555 292.2559 533.1484 353.54 539.4199 c -311.3691 552.668 237.6201 455.4199 v -237.6201 455.4199 l -s -0 O -1 g -0 J 1 w 4 M -250.1001 457.3398 m -248.499 458.6211 250.5801 459.2598 v -252.6104 459.9971 376.2949 539.749 419.54 531.0195 c -389.6914 539.2471 250.1001 457.3398 v -F -0 R -0 G -1 J 0.11 w 10 M -250.1001 457.3398 m -248.499 458.6211 250.5801 459.2598 v -252.6104 459.9971 376.2949 539.749 419.54 531.0195 c -389.6914 539.2471 250.1001 457.3398 v -250.1001 457.3398 l -s -0 O -1 g -0 J 1 w 4 M -227.0601 450.6201 m -226.5151 448.8389 228.5 449.8994 v -238.2681 455.5449 242.2446 518.4746 290.1802 519.7402 c -254.5278 536.043 227.0601 450.6201 v -F -0 R -0 G -1 J 0.11 w 10 M -227.0601 450.6201 m -226.5151 448.8389 228.5 449.8994 v -238.2681 455.5449 242.2446 518.4746 290.1802 519.7402 c -254.5278 536.043 227.0601 450.6201 v -227.0601 450.6201 l -s -0 O -1 g -0 J 1 w 4 M -205.2197 438.3799 m -203.9746 437.0547 206.1802 437.4199 v -217.3926 438.7998 240.9365 484.1953 289.9399 478.7002 c -254.6577 494.3906 205.2197 438.3799 v -F -0 R -0 G -1 J 0.11 w 10 M -205.2197 438.3799 m -203.9746 437.0547 206.1802 437.4199 v -217.3926 438.7998 240.9365 484.1953 289.9399 478.7002 c -254.6577 494.3906 205.2197 438.3799 v -205.2197 438.3799 l -s -0 O -1 g -0 J 1 w 4 M -217.46 445.0996 m -216.6294 443.5898 218.6602 444.3799 v -229.4624 447.8818 243.855 496.9521 292.8198 500.7803 c -255.3633 509.5928 217.46 445.0996 v -F -0 R -0 G -1 J 0.11 w 10 M -217.46 445.0996 m -216.6294 443.5898 218.6602 444.3799 v -229.4624 447.8818 243.855 496.9521 292.8198 500.7803 c -255.3633 509.5928 217.46 445.0996 v -217.46 445.0996 l -s -0 O -1 g -0 J 1 w 4 M -197.2998 432.8594 m -196.4551 431.6914 198.2598 431.8994 v -207.3247 433.1045 226.395 469.877 265.9399 465.2598 c -237.5098 478.1338 197.2998 432.8594 v -F -0 R -0 G -1 J 0.11 w 10 M -197.2998 432.8594 m -196.4551 431.6914 198.2598 431.8994 v -207.3247 433.1045 226.395 469.877 265.9399 465.2598 c -237.5098 478.1338 197.2998 432.8594 v -197.2998 432.8594 l -s -0 O -1 g -0 J 1 w 4 M -189.1401 426.3799 m -187.9497 425.1895 189.6201 425.4199 v -194.2856 425.6572 227.9863 462.0459 248.4199 445.0996 c -235.0854 465.5889 189.1401 426.3799 v -F -0 R -0 G -1 J 0.11 w 10 M -189.1401 426.3799 m -187.9497 425.1895 189.6201 425.4199 v -194.2856 425.6572 227.9863 462.0459 248.4199 445.0996 c -235.0854 465.5889 189.1401 426.3799 v -189.1401 426.3799 l -s -0 O -1 g -0 J 1 w 4 M -265.46 461.4199 m -264.2192 462.9434 266.4199 463.3398 v -268.4697 463.791 401.2441 527.2734 443.0605 513.0195 c -414.4668 525.082 265.46 461.4199 v -F -0 R -0 G -1 J 0.11 w 10 M -265.46 461.4199 m -264.2192 462.9434 266.4199 463.3398 v -268.4697 463.791 401.2441 527.2734 443.0605 513.0195 c -414.4668 525.082 265.46 461.4199 v -265.46 461.4199 l -s -0 O -1 g -0 J 1 w 4 M -228.7402 390.6201 m -228.5215 392.7002 230.4199 391.8193 v -232.4814 390.9395 249.4209 390.2793 235.7002 365.6602 c -246.3418 392.041 228.7402 390.6201 v -F -0 R -0 G -1 J 0.11 w 10 M -228.7402 390.6201 m -228.5215 392.7002 230.4199 391.8193 v -232.4814 390.9395 249.4209 390.2793 235.7002 365.6602 c -246.3418 392.041 228.7402 390.6201 v -228.7402 390.6201 l -s -0 O -1 g -0 J 1 w 4 M -240.2598 392.54 m -239.96 394.46 241.9399 393.5 v -243.9199 392.7002 263.5015 390.2793 265.7002 347.6602 c -257.7798 393.7998 240.2598 392.54 v -F -0 R -0 G -1 J 0.11 w 10 M -240.2598 392.54 m -239.96 394.46 241.9399 393.5 v -243.9199 392.7002 263.5015 390.2793 265.7002 347.6602 c -257.7798 393.7998 240.2598 392.54 v -240.2598 392.54 l -s -0 O -1 g -0 J 1 w 4 M -247.7002 394.2197 m -247.4409 396.2188 249.3799 395.4199 v -251.4009 394.46 278.4609 390.7207 304.3398 355.0996 c -265.2607 395.5586 247.7002 394.2197 v -F -0 R -0 G -1 J 0.11 w 10 M -247.7002 394.2197 m -247.4409 396.2188 249.3799 395.4199 v -251.4009 394.46 278.4609 390.7207 304.3398 355.0996 c -265.2607 395.5586 247.7002 394.2197 v -247.7002 394.2197 l -s -0 O -1 g -0 J 1 w 4 M -256.1001 396.3799 m -255.5674 398.4053 257.54 397.8193 v -259.7266 397.1865 282.2021 399.2764 324.0195 361.5801 c -273.3174 400.1191 256.1001 396.3799 v -F -0 R -0 G -1 J 0.11 w 10 M -256.1001 396.3799 m -255.5674 398.4053 257.54 397.8193 v -259.7266 397.1865 282.2021 399.2764 324.0195 361.5801 c -273.3174 400.1191 256.1001 396.3799 v -256.1001 396.3799 l -s -0 O -1 g -0 J 1 w 4 M -267.3799 401.4199 m -267.0078 403.2461 269.0601 402.6201 v -271.165 402.0273 309.4834 397.0762 366.2598 358.7002 c -284.7559 404.96 267.3799 401.4199 v -F -0 R -0 G -1 J 0.11 w 10 M -267.3799 401.4199 m -267.0078 403.2461 269.0601 402.6201 v -271.165 402.0273 309.4834 397.0762 366.2598 358.7002 c -284.7559 404.96 267.3799 401.4199 v -267.3799 401.4199 l -s -0 O -1 g -0 J 1 w 4 M -222.98 414.1396 m -222.7998 416.0186 224.8999 415.0996 v -226.7598 414.2598 285.5 411.3994 318.9805 381.9795 c -280.5488 409.1719 222.98 414.1396 v -F -0 R -0 G -1 J 0.11 w 10 M -222.98 414.1396 m -222.7998 416.0186 224.8999 415.0996 v -226.7598 414.2598 285.5 411.3994 318.9805 381.9795 c -280.5488 409.1719 222.98 414.1396 v -222.98 414.1396 l -s -0 O -1 g -0 J 1 w 4 M -211.9399 409.5801 m -211.8008 411.6201 213.8599 410.7803 v -215.7607 409.8584 242.8208 406.1191 268.8198 370.46 c -229.6206 410.96 211.9399 409.5801 v -F -0 R -0 G -1 J 0.11 w 10 M -211.9399 409.5801 m -211.8008 411.6201 213.8599 410.7803 v -215.7607 409.8584 242.8208 406.1191 268.8198 370.46 c -229.6206 410.96 211.9399 409.5801 v -211.9399 409.5801 l -s -0 O -1 g -0 J 1 w 4 M -279.3799 406.46 m -278.833 408.2764 281.0601 407.8994 v -283.0688 407.3672 321.6465 405.2354 381.1406 370.9395 c -295.748 408.8672 279.3799 406.46 v -F -0 R -0 G -1 J 0.11 w 10 M -279.3799 406.46 m -278.833 408.2764 281.0601 407.8994 v -283.0688 407.3672 321.6465 405.2354 381.1406 370.9395 c -295.748 408.8672 279.3799 406.46 v -279.3799 406.46 l -s -0 O -1 g -0 J 1 w 4 M -288.7402 409.0996 m -288.0728 410.917 290.1802 410.54 v -292.3086 410.0068 330.8867 407.876 390.5 373.5801 c -305.6479 411.9463 288.7402 409.0996 v -F -0 R -0 G -1 J 0.11 w 10 M -288.7402 409.0996 m -288.0728 410.917 290.1802 410.54 v -292.3086 410.0068 330.8867 407.876 390.5 373.5801 c -305.6479 411.9463 288.7402 409.0996 v -288.7402 409.0996 l -s -0 O -1 g -0 J 1 w 4 M -299.2998 414.6201 m -298.6328 416.415 300.7402 416.0596 v -302.8687 415.5049 350.2471 410.7363 449.0605 373.0996 c -316.208 417.4473 299.2998 414.6201 v -F -0 R -0 G -1 J 0.11 w 10 M -299.2998 414.6201 m -298.6328 416.415 300.7402 416.0596 v -302.8687 415.5049 350.2471 410.7363 449.0605 373.0996 c -316.208 417.4473 299.2998 414.6201 v -299.2998 414.6201 l -s -0 O -0 g -0 J 1 w 4 M -176.8999 406.9395 m -182.54 407.4395 181.2197 405.7402 v -179.8999 403.9209 177.3799 404.7803 y -176.8999 406.9395 l -F -210.7402 391.5801 m -216.4209 392.041 215.0601 390.3799 v -213.7808 388.5195 211.2197 389.4199 y -210.7402 391.5801 l -F -201.1401 392.0596 m -206.7417 392.4795 205.46 390.6201 v -204.1016 388.959 201.3799 389.8994 y -201.1401 392.0596 l -F -96.02 405.0195 m -101.665 403.585 99.8599 402.3799 v -98.0166 401.1221 95.7798 402.8594 y -96.02 405.0195 l -F -98.4199 415.5801 m -103.8633 414.1445 102.02 412.9395 v -100.2178 411.6826 97.9399 413.4199 y -98.4199 415.5801 l -F -90.5 420.3799 m -95.9434 418.9854 94.1001 417.7402 v -92.2974 416.5225 90.02 418.2197 y -90.5 420.3799 l -F -0.8 g -178.1001 337.8193 m -176.3818 337.9209 172.1001 335.6602 v -169.7817 335.7197 157.46 331.7598 151.2197 320.7803 c -164.9409 331.3203 178.1001 337.8193 v -F -274.5801 236.0596 m -274.7842 235.7266 274.8438 235.2627 275.0601 235.3398 c -275.8877 235.2002 277.2441 234.8691 277.2197 235.5801 c -276.1733 240.3057 275.2134 245.7363 270.7402 247.8193 c -269.9648 248.0313 268.3784 247.5771 268.3398 246.6201 c -268.1553 244.9277 268.0278 243.4443 268.3398 241.8193 c -268.6978 240.2695 271.0713 240.2578 272.1802 241.8193 c -273.1113 239.9404 273.5864 237.9121 274.5801 236.0596 c -F -262.3398 230.7803 m -263.2666 229.2461 263.125 227.2012 264.7402 226.7002 c -265.4961 226.2607 267.5313 227.333 267.1401 228.6201 c -266.1895 230.7803 265.7622 233.2441 264.2598 235.3398 c -264.0151 235.5244 264.2769 236.1104 264.02 236.54 c -263.4487 237.8115 262.189 238.623 260.6602 238.2197 c -259.4146 235.8369 260.6768 233.4941 262.3398 231.5 c -262.501 231.4473 262.3184 231.0342 262.3398 230.7803 c -F -218.8999 236.54 m -218.7607 236.9258 218.7197 237.4346 218.8999 237.7393 c -219.4854 238.9229 220.3569 240.1592 220.1001 241.3398 c -219.603 242.4434 218.377 242.2441 217.7002 241.5801 c -216.4136 240.5234 216.3584 238.5146 215.54 237.0195 c -215.3838 236.5947 215.4395 235.9658 215.0601 235.5801 c -214.4336 235.0732 213.9487 233.3955 214.1001 232.7002 c -214.1118 232.4238 213.9102 221.5254 214.1001 221.8994 c -214.8369 222.6201 218.1919 233.3291 218.1802 234.3799 c -218.3311 235.1143 219.1353 235.625 218.8999 236.54 c -F -190.5801 243.9795 m -193.5752 246.7305 196.6445 249.9893 196.1001 254.0596 c -196.0303 255.1445 194.0767 254.5664 193.9399 253.5801 c -192.9897 249.6465 190.748 246.7207 187.9399 243.9795 c -185.5063 241.8369 183.459 234.8594 183.1401 234.3799 c -187.2681 240.082 189.7495 243.1016 190.5801 243.9795 c -F -175.7002 250.46 m -176.3218 250.9492 175.9902 251.4893 176.1802 251.8994 c -177.2769 253.457 178.707 254.8281 178.8198 256.7002 c -178.731 257.0449 178.3159 257.3857 177.8599 257.1797 c -177.6416 256.9375 177.2646 256.793 177.1401 256.7002 c -174.915 253.957 173.3745 251.0186 171.8599 247.8193 c -171.5864 247.5322 170.3262 242.5928 170.6602 242.54 c -170.9336 242.377 172.8271 246.9746 173.0601 247.0996 c -174.4473 247.8555 174.459 249.6318 175.7002 250.46 c -F -194.1802 229.0996 m -194.6406 230 196.3735 231.3223 196.3398 232.2197 c -196.1216 233.3213 196.6353 234.9082 195.6201 234.1396 c -194.2495 233.1074 190.4551 231.625 190.1001 225.2598 c -190.1313 224.6064 193.4023 227.5713 194.1802 229.0996 c -F -210.02 247.8193 m -210.481 248.6738 211.2583 248.1533 211.7002 248.54 c -212.4775 248.8516 213.1494 249.4658 213.3799 250.2197 c -214.5366 252.543 216.4834 254.5469 216.7402 257.1797 c -215 258.7256 214.2534 256.4814 213.6201 255.5 c -212.1055 257.2305 211.0063 255.1709 209.54 254.54 c -209.499 254.5684 209.2642 254.9502 209.2998 255.0195 c -207.8862 254.4365 207.1401 253.2461 205.9399 252.3799 c -205.8535 252.2402 205.4097 252.4395 205.2197 252.3799 c -204.5288 251.626 203.4585 251.2686 203.0601 250.46 c -201.9297 247.541 198.4761 245.2354 196.3398 237.0195 c -196.8198 235.9395 201.3633 244.2461 201.8599 244.9395 c -202.8198 246.3291 202.9497 243.1875 204.2598 243.9795 c -204.4087 243.9482 204.6128 243.6865 204.7402 243.5 c -204.9727 243.8477 205.2129 244.0996 205.7002 243.9795 c -205.6401 244.4189 205.4937 245.0313 205.7002 245.1797 c -207.0752 246.2813 206.9814 247.4551 207.8599 248.7803 c -208.3447 247.9521 209.5112 248.7412 210.02 247.8193 c -F -275.7798 188.0596 m -283.9614 210.54 279.1401 222.8594 v -291.6606 199.0996 286.5801 186.8594 v -286.1602 198.2188 281.7798 203.6602 v -277.3613 189.6387 275.7798 188.0596 v -F -259.46 190.9395 m -265.4814 200.6406 256.5801 220.9395 v -255.7998 198.4395 248.4199 186.3799 v -263.9409 208.5605 259.46 190.9395 v -F -248.6602 193.0996 m -248.3218 215.1602 248.6602 218.54 v -244.5801 200.1992 233.2998 189.7393 v -249.2002 202.8389 248.6602 193.0996 v -F -238.1001 228.3799 m -244.5801 213.3994 233.54 193.0996 v -240.6201 206.5781 235.46 214.2197 v -238.2007 218.0186 238.1001 228.3799 v -F -216.98 193.5801 m -215.7607 210.7588 217.7002 213.2598 v -217.9614 220.2197 217.46 221.4199 v -221.9214 228.1396 222.2598 219.9795 v -223.6807 211.4189 226.8198 206.2998 v -230.7197 200.4199 230.4199 193.3398 v -219.5 226.5986 216.98 193.5801 v -F -212.8999 224.0596 m -205.6401 212.0791 203.7798 191.1797 v -202.1216 198.001 206.4199 213.7393 v -210.9199 230.7803 212.8999 224.0596 v -F -188.8999 202.2197 m -194.4199 208.1191 195.8599 213.5 v -199.9209 231.001 192.98 221.4199 v -193.1001 212.7393 184.1001 204.6201 v -189.3608 207.2402 188.8999 202.2197 v -F -182.6602 207.7393 m -186.2817 226.8193 187.2197 227.6602 v -189.1401 231.4395 186.02 227.8994 v -176.3818 206.7988 172.1001 199.5801 v -180.7808 209.6602 182.6602 207.7393 v -F -176.1802 225.9795 m -188.9214 250.5801 164.8999 222.1396 v -177.0415 232.9785 176.1802 225.9795 v -F -159.1401 242.0596 m -164.5015 262.6777 167.2998 262.46 v -176.3818 272.3594 169.2197 260.7803 v -162.5215 250.1406 163.2197 239.4199 v -162.5215 249.9199 159.1401 242.0596 v -F -522.5 254.54 m -509.3496 265.541 506.6602 269.4199 v -521.4512 249.041 521.54 241.3398 v -524.2012 249.5908 522.5 254.54 v -F -528.5 278.7803 m -505.501 295.2412 501.6201 303.5 v -530.8018 271.04 530.9004 266.0596 v -531.3516 275.9912 528.5 278.7803 v -F -547.2197 448.2197 m -534.1016 456.9414 532.3398 454.7002 v -544.002 447.5908 546.7402 438.1396 v -545.1006 448.1406 547.2197 448.2197 v -F -556.5801 359.6602 m -537.3799 372.8594 l -558.3008 354.0918 558.7402 349.5801 v -556.5801 359.6602 l -F -*u -0 R -0 G -1 J 1.1 w 10 M -126.7402 384.3799 m -150.98 379.0996 l -S -1 D -182.1802 206.0596 m -181.5513 209.9912 171.6201 198.3799 v -S -188.1802 200.54 m -190.3496 207.79 183.1401 202.9395 v -S -247.46 191.1797 m -249.2002 203.3906 236.6602 189.0195 v -S -*U -U -%%PageTrailer -gsave annotatepage grestore showpage -%%Trailer -Adobe_Illustrator_AI3 /terminate get exec -Adobe_pattern_AI3 /terminate get exec -Adobe_customcolor /terminate get exec -Adobe_cshow /terminate get exec -Adobe_cmykcolor /terminate get exec -Adobe_packedarray /terminate get exec -%%EOF +%!PS-Adobe-3.0 +%%Creator: Adobe Illustrator(TM) 3.2 +%%AI8_CreatorVersion: 12.0.0 +%%For: (fluxus) (x) +%%Title: (tiger.ai) +%%CreationDate: 4/14/2006 11:35 PM +%%BoundingBox: 22 167 567 730 +%%DocumentProcessColors: Cyan Magenta Yellow Black +%%DocumentNeededResources: procset Adobe_packedarray 2.0 0 +%%+ procset Adobe_cmykcolor 1.1 0 +%%+ procset Adobe_cshow 1.1 0 +%%+ procset Adobe_customcolor 1.0 0 +%%+ procset Adobe_pattern_AI3 1.0 0 +%%+ procset Adobe_Illustrator_AI3 1.0 1 +%AI3_ColorUsage: Color +%%CMYKCustomColor: 0.74902 0.678431 0.670588 0.901961 ([Registration]) +%AI3_TemplateBox: 306.5 396.5 306.5 396.5 +%AI3_TileBox: 0 1 612 793 +%AI3_DocumentPreview: None +%%PageOrigin:0 0 +%AI7_GridSettings: 72 8 72 8 1 0 0.8 0.8 0.8 0.9 0.9 0.9 +%AI9_Flatten: 1 +%AI12_CMSettings: 00.MS +%%EndComments +%%BeginProlog +%%IncludeResource: procset Adobe_packedarray 2.0 0 +Adobe_packedarray /initialize get exec +%%IncludeResource: procset Adobe_cmykcolor 1.1 0 +%%IncludeResource: procset Adobe_cshow 1.1 0 +%%IncludeResource: procset Adobe_customcolor 1.0 0 +%%IncludeResource: procset Adobe_pattern_AI3 1.0 0 +%%IncludeResource: procset Adobe_Illustrator_AI3 1.0 1 +%%EndProlog +0 A +u +0 O +1 g +0 J 0 j 1 w 4 M []0 d +90.5 477.5 m +90.5767 475.4434 89.7798 475.5801 v +88.7646 475.4863 70.6641 528.3682 48.02 525.9795 c +67.6445 533.9883 90.5 477.5 v +F +0 R +0 G +0.1892 w 10 M +90.5 477.5 m +90.5767 475.4434 89.7798 475.5801 v +88.7646 475.4863 70.6641 528.3682 48.02 525.9795 c +67.6445 533.9883 90.5 477.5 v +90.5 477.5 l +s +0 O +1 g +1 w 4 M +94.3398 480.8594 m +93.7446 478.8555 92.8999 479.1797 v +92.0552 479.5107 93.0249 535.3975 71.0601 540.8594 c +92.0981 541.709 94.3398 480.8594 v +F +0 R +0 G +0.1892 w 10 M +94.3398 480.8594 m +93.7446 478.8555 92.8999 479.1797 v +92.0552 479.5107 93.0249 535.3975 71.0601 540.8594 c +92.0981 541.709 94.3398 480.8594 v +94.3398 480.8594 l +s +0 O +1 g +1 w 4 M +124.5801 434.2998 m +126.3872 433.2363 125.7798 432.3799 v +125.3525 431.7461 71.2617 445.8291 60.98 425.6602 c +64.9063 446.4102 124.5801 434.2998 v +F +0 R +0 G +0.1892 w 10 M +124.5801 434.2998 m +126.3872 433.2363 125.7798 432.3799 v +125.3525 431.7461 71.2617 445.8291 60.98 425.6602 c +64.9063 446.4102 124.5801 434.2998 v +124.5801 434.2998 l +s +0 O +1 g +1 w 4 M +121.46 423.0195 m +123.5381 422.624 123.3799 421.8193 v +123.0249 420.8838 67.2534 417.207 63.8599 394.7002 c +61.04 415.7598 121.46 423.0195 v +F +0 R +0 G +0.1892 w 10 M +121.46 423.0195 m +123.5381 422.624 123.3799 421.8193 v +123.0249 420.8838 67.2534 417.207 63.8599 394.7002 c +61.04 415.7598 121.46 423.0195 v +121.46 423.0195 l +s +0 O +1 g +1 w 4 M +116.8999 429.0195 m +118.8223 428.4082 118.3398 427.5801 v +118.0615 426.7617 62.3481 431.2617 55.7002 409.5801 c +55.9902 430.7334 116.8999 429.0195 v +F +0 R +0 G +0.1892 w 10 M +116.8999 429.0195 m +118.8223 428.4082 118.3398 427.5801 v +118.0615 426.7617 62.3481 431.2617 55.7002 409.5801 c +55.9902 430.7334 116.8999 429.0195 v +116.8999 429.0195 l +s +0 O +1 g +1 w 4 M +105.1401 449.1797 m +106.5298 447.6514 105.8599 447.0195 v +105.123 446.5039 57.0054 474.9434 41.54 458.2998 c +51.0586 477.2549 105.1401 449.1797 v +F +0 R +0 G +0.1892 w 10 M +105.1401 449.1797 m +106.5298 447.6514 105.8599 447.0195 v +105.123 446.5039 57.0054 474.9434 41.54 458.2998 c +51.0586 477.2549 105.1401 449.1797 v +105.1401 449.1797 l +s +0 O +1 g +1 w 4 M +96.7402 444.6201 m +98.3936 443.2139 97.7002 442.46 v +97.1265 441.9131 46.0977 464.7266 32.4199 446.54 c +39.9297 466.3496 96.7402 444.6201 v +F +0 R +0 G +0.1892 w 10 M +96.7402 444.6201 m +98.3936 443.2139 97.7002 442.46 v +97.1265 441.9131 46.0977 464.7266 32.4199 446.54 c +39.9297 466.3496 96.7402 444.6201 v +96.7402 444.6201 l +s +0 O +1 g +1 w 4 M +93.8599 440.0596 m +95.6982 438.9629 95.0601 438.1396 v +94.6206 437.5059 40.9614 453.1494 30.02 433.3398 c +34.6279 453.917 93.8599 440.0596 v +F +0 R +0 G +0.1892 w 10 M +93.8599 440.0596 m +95.6982 438.9629 95.0601 438.1396 v +94.6206 437.5059 40.9614 453.1494 30.02 433.3398 c +34.6279 453.917 93.8599 440.0596 v +93.8599 440.0596 l +s +0 O +1 g +1 w 4 M +105.6201 439.3398 m +106.9736 437.7129 106.1001 437.1797 v +105.4302 436.7549 61.3545 471.1279 43.7002 456.6201 c +55.7529 474.1826 105.6201 439.3398 v +F +0 R +0 G +0.1892 w 10 M +105.6201 439.3398 m +106.9736 437.7129 106.1001 437.1797 v +105.4302 436.7549 61.3545 471.1279 43.7002 456.6201 c +55.7529 474.1826 105.6201 439.3398 v +105.6201 439.3398 l +s +0 O +1 g +1 w 4 M +84.02 471.2598 m +84.6416 469.2607 83.7798 469.0996 v +82.8799 468.8213 51.4209 515.0215 30.2598 506.7803 c +47.0215 519.6416 84.02 471.2598 v +F +0 R +0 G +0.1892 w 10 M +84.02 471.2598 m +84.6416 469.2607 83.7798 469.0996 v +82.8799 468.8213 51.4209 515.0215 30.2598 506.7803 c +47.0215 519.6416 84.02 471.2598 v +84.02 471.2598 l +s +0 O +1 g +1 w 4 M +84.7402 463.5801 m +85.8174 461.7725 84.98 461.4199 v +84.1929 460.9639 43.5078 499.292 24.7402 486.6201 c +38.2158 502.8535 84.7402 463.5801 v +F +0 R +0 G +0.1892 w 10 M +84.7402 463.5801 m +85.8174 461.7725 84.98 461.4199 v +84.1929 460.9639 43.5078 499.292 24.7402 486.6201 c +38.2158 502.8535 84.7402 463.5801 v +84.7402 463.5801 l +s +0 O +1 g +1 w 4 M +84.5 458.7803 m +85.8535 457.0732 84.98 456.6201 v +84.3105 456.1182 40.2344 490.4883 22.5801 476.0596 c +34.6328 493.541 84.5 458.7803 v +F +0 R +0 G +0.1892 w 10 M +84.5 458.7803 m +85.8535 457.0732 84.98 456.6201 v +84.3105 456.1182 40.2344 490.4883 22.5801 476.0596 c +34.6328 493.541 84.5 458.7803 v +84.5 458.7803 l +s +0 O +1 g +1 w 4 M +82.1001 456.8594 m +82.7407 450.2168 83.8281 442.9902 85.7002 439.5801 c +81.7808 425.9189 91.46 411.5 v +91.0205 403.4795 92.8999 399.9795 v +97.1816 390.7207 102.5 389.8994 v +106.7334 389.1299 116.3286 385.7529 127.2197 384.1396 c +146.0215 368.7197 142.5801 354.6201 v +142.0615 336.6006 138.02 334.9395 v +150.8599 347.1582 140.4199 328.7002 v +135.3799 308.0596 l +163.6206 331.7598 146.4199 311.4199 v +135.3799 282.8594 l +157.0205 303.1592 149.0601 293.8994 v +145.7002 284.2998 l +193.1001 314.1582 159.1401 281.6602 v +168.02 285.5596 172.8198 282.3799 v +180.3418 283.8008 179.54 282.1396 v +156.5815 270.6006 152.6602 250.46 v +161.8613 261.3584 158.4199 249.5 v +158.8999 236.7803 l +163.1816 260.4795 162.7402 219.0195 v +183.8599 238.9209 171.1401 216.1396 v +171.1401 197.6602 l +187.8198 215.5996 180.7402 201.5 v +191.7798 211.2002 187.46 194.54 v +186.5 183.0391 191.2998 195.2598 v +208.9399 229.0205 202.3398 200.2998 v +201.4614 179.0791 206.6602 195.2598 v +207.1807 183.9199 217.2197 176.0596 v +215.9814 231.8789 230.1802 192.3799 v +234.5 174.1396 l +237.541 184.3594 237.1401 189.9795 v +253.3809 208.1191 246.02 181.3398 v +262.6206 206.3594 259.2197 191.8994 v +250.7407 174.2402 252.5 168.8594 v +270.98 207.2402 272.4199 208.9395 v +270.1016 162.3584 282.02 201.9795 v +288.1401 188.7607 285.1401 183.9795 v +293.8613 192.7207 293.0601 196.2197 v +298.04 205.2607 301.2197 190.2197 v +303.1016 179.96 304.8198 183.5 v +309.2598 157.0781 310.5801 182.0596 v +312.3418 197.1201 304.3398 209.8994 v +305.2998 213.3994 302.1802 217.8193 v +317.1797 194.04 309.3799 225.7393 v +321.582 216.9199 322.8203 216.8594 v +307.9395 242.4385 317.54 237.2598 v +311.9004 248.5996 331.7002 235.3398 v +314.1006 252.999 333.3799 242.54 v +342.2617 235.3994 333.8594 246.3799 v +318.0605 264.001 342.2598 244.2197 v +355.0205 226.1602 355.9395 223.0996 v +344.9023 255.2002 340.0996 258.3799 v +349.3018 298.3203 394.5801 281.1797 v +402.1016 262.2393 407.0605 282.3799 v +421.0215 289.5195 433.46 259.0996 v +437.7422 274.1191 436.8203 277.0996 v +444.3418 275.8779 443.54 277.0996 v +457.9805 272.3594 459.3799 273.2598 v +466.7813 265.7598 467.2998 269.6602 v +477.3418 266.6406 475.2197 270.6201 v +484.8223 253.4404 485.2998 249.5 v +487.9395 264.8594 l +490.0996 261.7393 l +491.8613 270.1592 491.0605 271.5801 v +490.1025 272.7988 512.9814 264.001 518.1797 241.0996 c +520.5801 231.9795 l +527.0625 248.1602 525.3799 252.6201 v +531.0225 251.6787 531.3799 246.8594 v +535.8613 272.3594 530.6602 279.0195 v +535.4219 279.8408 536.6602 275.8994 v +536.6602 283.8193 l +544.6621 282.9199 544.5801 285.5 v +549.502 289.959 551.7793 284.7803 v +538.0615 323.4004 558.2598 302.2998 v +566.2207 290.4004 562.3398 311.1797 v +558.3008 331.7598 553.9014 333.5186 559.2207 333.9795 c +560.0625 337.9209 557.7793 339.7393 v +555.6602 341.4385 559.2207 339.7393 y +564.4609 335.2803 558.7402 359.4199 v +565.7813 357.7207 552.5 389.8994 v +555.6602 392.4795 551.2998 401.6602 v +560.0625 396.8789 563.0605 398.54 v +562.7021 400.3994 559.2207 404.7803 v +535.4219 465.0801 557.7793 440.7803 v +570.8965 425.9746 563.7793 451.0996 v +553.834 477.4658 554.6602 482.2998 v +82.1001 456.8594 l +F +0 R +0 G +1.1 w 10 M +82.1001 456.8594 m +82.7407 450.2168 83.8281 442.9902 85.7002 439.5801 c +81.7808 425.9189 91.46 411.5 v +91.0205 403.4795 92.8999 399.9795 v +97.1816 390.7207 102.5 389.8994 v +106.7334 389.1299 116.3286 385.7529 127.2197 384.1396 c +146.0215 368.7197 142.5801 354.6201 v +142.0615 336.6006 138.02 334.9395 v +150.8599 347.1582 140.4199 328.7002 v +135.3799 308.0596 l +163.6206 331.7598 146.4199 311.4199 v +135.3799 282.8594 l +157.0205 303.1592 149.0601 293.8994 v +145.7002 284.2998 l +193.1001 314.1582 159.1401 281.6602 v +168.02 285.5596 172.8198 282.3799 v +180.3418 283.8008 179.54 282.1396 v +156.5815 270.6006 152.6602 250.46 v +161.8613 261.3584 158.4199 249.5 v +158.8999 236.7803 l +163.1816 260.4795 162.7402 219.0195 v +183.8599 238.9209 171.1401 216.1396 v +171.1401 197.6602 l +187.8198 215.5996 180.7402 201.5 v +191.7798 211.2002 187.46 194.54 v +186.5 183.0391 191.2998 195.2598 v +208.9399 229.0205 202.3398 200.2998 v +201.4614 179.0791 206.6602 195.2598 v +207.1807 183.9199 217.2197 176.0596 v +215.9814 231.8789 230.1802 192.3799 v +234.5 174.1396 l +237.541 184.3594 237.1401 189.9795 v +253.3809 208.1191 246.02 181.3398 v +262.6206 206.3594 259.2197 191.8994 v +250.7407 174.2402 252.5 168.8594 v +270.98 207.2402 272.4199 208.9395 v +270.1016 162.3584 282.02 201.9795 v +288.1401 188.7607 285.1401 183.9795 v +293.8613 192.7207 293.0601 196.2197 v +298.04 205.2607 301.2197 190.2197 v +303.1016 179.96 304.8198 183.5 v +309.2598 157.0781 310.5801 182.0596 v +312.3418 197.1201 304.3398 209.8994 v +305.2998 213.3994 302.1802 217.8193 v +317.1797 194.04 309.3799 225.7393 v +321.582 216.9199 322.8203 216.8594 v +307.9395 242.4385 317.54 237.2598 v +311.9004 248.5996 331.7002 235.3398 v +314.1006 252.999 333.3799 242.54 v +342.2617 235.3994 333.8594 246.3799 v +318.0605 264.001 342.2598 244.2197 v +355.0205 226.1602 355.9395 223.0996 v +344.9023 255.2002 340.0996 258.3799 v +349.3018 298.3203 394.5801 281.1797 v +402.1016 262.2393 407.0605 282.3799 v +421.0215 289.5195 433.46 259.0996 v +437.7422 274.1191 436.8203 277.0996 v +444.3418 275.8779 443.54 277.0996 v +457.9805 272.3594 459.3799 273.2598 v +466.7813 265.7598 467.2998 269.6602 v +477.3418 266.6406 475.2197 270.6201 v +484.8223 253.4404 485.2998 249.5 v +487.9395 264.8594 l +490.0996 261.7393 l +491.8613 270.1592 491.0605 271.5801 v +490.1025 272.7988 512.9814 264.001 518.1797 241.0996 c +520.5801 231.9795 l +527.0625 248.1602 525.3799 252.6201 v +531.0225 251.6787 531.3799 246.8594 v +535.8613 272.3594 530.6602 279.0195 v +535.4219 279.8408 536.6602 275.8994 v +536.6602 283.8193 l +544.6621 282.9199 544.5801 285.5 v +549.502 289.959 551.7793 284.7803 v +538.0615 323.4004 558.2598 302.2998 v +566.2207 290.4004 562.3398 311.1797 v +558.3008 331.7598 553.9014 333.5186 559.2207 333.9795 c +560.0625 337.9209 557.7793 339.7393 v +555.6602 341.4385 559.2207 339.7393 y +564.4609 335.2803 558.7402 359.4199 v +565.7813 357.7207 552.5 389.8994 v +555.6602 392.4795 551.2998 401.6602 v +560.0625 396.8789 563.0605 398.54 v +562.7021 400.3994 559.2207 404.7803 v +535.4219 465.0801 557.7793 440.7803 v +570.8965 425.9746 563.7793 451.0996 v +553.834 477.4658 554.6602 482.2998 v +82.1001 456.8594 l +82.1001 456.8594 l +s +0 O +0.164706 0.627451 1 0.031373 k +1 w 4 M +554.6602 482.0596 m +555.3799 481.7715 557.8066 480.5361 559.2197 478.7002 c +566.6621 466.8418 560.9004 487.0996 v +550.8223 518.7607 560.4199 506.54 v +567.1016 498.5215 563.54 513.5 v +559.3301 531.5498 556.5801 538.46 y +569.3027 533.2803 539.7793 576.8594 v +549.6201 572.7793 l +527.9414 616.4404 504.2598 622.2197 v +495.3799 628.7002 l +537.623 670.5605 523.46 711.0195 v +516.0605 716.7607 505.46 706.7002 v +498.4609 701.3594 491.7793 703.0996 v +457.9805 701.8018 455.7793 701.8994 v +453.582 701.8018 415.3018 742.7217 343.2197 723.2598 c +337.4219 721.1602 332.6602 722.54 v +312.3418 740.0811 258.7397 715.0996 v +247.6616 712.8008 246.02 712.7002 v +244.1406 712.8008 241.0615 712.8008 232.3398 705.7393 c +223.46 698.7197 223.0205 697.8418 220.8198 696.1396 c +202.7817 683.7607 197.54 682.9395 v +184.7407 675.8408 180.02 664.9395 v +175.9399 663.5 l +174.1807 655.6016 173.7798 654.3799 v +168.4614 650.3213 167.54 644.0596 v +157.9014 637.5605 158.4199 632.7793 v +156.5815 627.001 155.7798 621.7393 v +147.7808 616.4404 148.5801 613.3398 v +140.2998 597.9609 141.6201 590.54 v +134.5806 590.9209 131.54 588.3799 v +130.6206 583.001 128.8999 582.6201 v +125.7798 581.2393 128.4199 576.8594 v +126.6606 573.7617 126.2598 572.0596 v +127.1001 568.9209 122.1797 562.7002 v +115.2197 542.0811 117.3799 536.2998 v +117.8599 531.0801 114.7397 529.3398 v +110.8208 529.7598 120.02 516.6201 v +120.9414 515.2393 117.3799 512.54 v +98.5015 508.6396 95.7798 490.7002 v +80.8999 474.3193 80.8999 468.6201 v +80.8999 466.0664 81.1973 462.6025 81.8599 457.5801 c +81.3418 448.3594 111.6201 447.5 v +142.0615 446.5996 554.6602 482.0596 y +F +0 R +0 G +1.1 w 10 M +554.6602 482.0596 m +555.3799 481.7715 557.8066 480.5361 559.2197 478.7002 c +566.6621 466.8418 560.9004 487.0996 v +550.8223 518.7607 560.4199 506.54 v +567.1016 498.5215 563.54 513.5 v +559.3301 531.5498 556.5801 538.46 y +569.3027 533.2803 539.7793 576.8594 v +549.6201 572.7793 l +527.9414 616.4404 504.2598 622.2197 v +495.3799 628.7002 l +537.623 670.5605 523.46 711.0195 v +516.0605 716.7607 505.46 706.7002 v +498.4609 701.3594 491.7793 703.0996 v +457.9805 701.8018 455.7793 701.8994 v +453.582 701.8018 415.3018 742.7217 343.2197 723.2598 c +337.4219 721.1602 332.6602 722.54 v +312.3418 740.0811 258.7397 715.0996 v +247.6616 712.8008 246.02 712.7002 v +244.1406 712.8008 241.0615 712.8008 232.3398 705.7393 c +223.46 698.7197 223.0205 697.8418 220.8198 696.1396 c +202.7817 683.7607 197.54 682.9395 v +184.7407 675.8408 180.02 664.9395 v +175.9399 663.5 l +174.1807 655.6016 173.7798 654.3799 v +168.4614 650.3213 167.54 644.0596 v +157.9014 637.5605 158.4199 632.7793 v +156.5815 627.001 155.7798 621.7393 v +147.7808 616.4404 148.5801 613.3398 v +140.2998 597.9609 141.6201 590.54 v +134.5806 590.9209 131.54 588.3799 v +130.6206 583.001 128.8999 582.6201 v +125.7798 581.2393 128.4199 576.8594 v +126.6606 573.7617 126.2598 572.0596 v +127.1001 568.9209 122.1797 562.7002 v +115.2197 542.0811 117.3799 536.2998 v +117.8599 531.0801 114.7397 529.3398 v +110.8208 529.7598 120.02 516.6201 v +120.9414 515.2393 117.3799 512.54 v +98.5015 508.6396 95.7798 490.7002 v +80.8999 474.3193 80.8999 468.6201 v +80.8999 466.0664 81.1973 462.6025 81.8599 457.5801 c +81.3418 448.3594 111.6201 447.5 v +142.0615 446.5996 554.6602 482.0596 y +554.6602 482.0596 l +s +0 O +0.164706 0.627451 1 0.031373 k +1 w 4 M +97.9399 457.3398 m +70.3398 500.7197 86.1802 438.6201 y +95.8613 400.8389 238.3398 442.2197 y +424.1025 475.6396 436.3398 480.1396 v +448.7402 484.4404 553.46 477.5 y +547.2207 495.9795 l +476.0215 546.9199 454.9014 521.4004 439.9395 525.7402 c +424.9805 530.2012 427.6211 519.6416 424.0996 518.7803 c +420.582 517.8799 377.4609 545.1602 370.3398 544.2197 c +363.3828 543.4014 335.5059 569.5273 351.8594 534.6201 c +369.541 497.2012 287.7007 491.4795 269.2998 503.8994 c +250.7407 516.1201 277.2197 483.5 y +297.3799 461.5615 259.46 480.1396 y +221.7007 494.1201 195.3008 465.9609 191.7798 465.0195 c +188.2617 464.2012 182.9814 460.6807 182.1802 467.6602 c +181.2197 474.7617 172.959 493.1309 138.02 464.2998 c +116.1006 445.9395 100.8198 470.0596 y +97.9399 457.3398 l +F +0.054902 0.607843 0.878431 0 k +371.7793 542.2998 m +364.8203 541.4814 336.918 567.5938 353.2998 532.7002 c +371.6406 493.9609 289.1406 489.5596 270.7402 501.9795 c +252.1807 514.2002 278.6602 481.5801 y +298.8198 459.6416 260.8999 478.2197 y +223.1406 492.2002 196.7407 464.04 193.2197 463.0996 c +189.7017 462.2813 184.4214 458.7607 183.6201 465.7393 c +182.6602 472.8418 174.543 491.0283 139.46 462.3799 c +116.1802 443.1992 101.2998 466.7002 y +97.9399 455.6602 l +70.3208 499.46 86.8999 435.2598 y +96.5815 397.4785 239.7798 440.2998 y +425.54 473.7197 437.7793 478.2197 v +450.1807 482.5205 553.9395 475.5801 y +547.9395 494.54 l +476.5801 545.6406 456.3418 519.4805 441.3799 523.8193 c +426.4209 528.2813 429.0605 517.7217 425.54 516.8594 c +422.0215 515.96 378.9004 543.2402 371.7793 542.2998 c +F +0.047059 0.537255 0.772549 0 k +373.2197 540.3799 m +366.2598 539.5615 339.0537 565.9922 354.7402 530.7793 c +372.6416 490.9395 290.5806 487.6396 272.1802 500.0596 c +253.6206 512.2783 280.1001 479.6602 y +300.2598 457.7188 262.3398 476.2998 y +224.5806 490.2793 198.1807 462.1182 194.6602 461.1797 c +191.1392 460.3594 185.8594 456.8379 185.0601 463.8193 c +184.1001 470.9189 176.127 488.9238 140.8999 460.46 c +116.2593 440.458 101.7798 463.3398 y +97.7002 453.9795 l +71.6216 496.8799 87.6201 431.8994 y +97.3018 394.1191 241.2197 438.3799 y +426.9805 471.7998 439.2197 476.2998 v +451.6211 480.5977 554.4199 473.6602 y +548.4199 493.3398 l +477.1406 544.3594 457.7813 517.5605 442.8203 521.8994 c +427.8613 526.3613 430.501 515.8018 426.9805 514.9395 c +423.4609 514.04 380.3408 541.3203 373.2197 540.3799 c +F +0.039216 0.462745 0.67451 0 k +374.6602 538.46 m +367.7002 537.6416 340.498 564.0752 356.1797 528.8594 c +374.7422 487.5293 291.4326 486.1113 273.6201 498.1396 c +255.0605 510.3604 281.54 477.7393 y +301.7002 455.8018 263.7798 474.3799 y +226.0205 488.3594 199.6206 460.2002 196.1001 459.2598 c +192.5815 458.4414 187.3018 454.9209 186.5 461.8994 c +185.54 469.001 177.7134 486.8164 142.3398 458.54 c +116.3408 437.7197 102.2598 460.2197 y +97.7002 452.2998 l +73.7983 492.7617 88.3398 428.54 y +98.0215 390.7588 242.6602 436.46 y +428.4199 469.8799 440.6602 474.3799 v +453.0625 478.6807 554.9004 471.9795 y +548.9004 492.1396 l +477.7012 543.0801 459.2217 515.6406 444.2598 519.9795 c +429.3008 524.4414 431.9414 513.8818 428.4199 513.0195 c +424.9014 512.1201 381.7813 539.4004 374.6602 538.46 c +F +0.035294 0.396078 0.572549 0 k +376.0996 536.54 m +369.1406 535.7188 342.4951 562.3994 357.6201 526.9395 c +376.1816 483.7998 293.4609 483.7998 275.0601 496.2197 c +256.501 508.4385 282.98 475.8193 y +303.1401 453.8789 265.2197 472.46 y +227.4609 486.4395 201.0605 458.2783 197.54 457.3398 c +194.0215 456.5186 188.7417 452.998 187.9399 459.9795 c +186.98 467.0791 179.2974 484.7139 143.7798 456.6201 c +116.4199 434.9785 102.5 456.8594 y +97.7002 450.6201 l +75.98 488.8613 89.0601 425.1797 y +98.7393 387.3994 244.1001 434.54 y +429.8623 467.96 442.0996 472.46 v +454.5039 476.7578 555.3799 470.0596 y +549.6201 490.7002 l +478.2637 541.8008 460.6621 513.7178 445.7002 518.0596 c +430.7432 522.5186 433.3828 511.959 429.8594 511.0996 c +426.3418 510.2002 383.2227 537.4785 376.0996 536.54 c +F +0.031373 0.333333 0.470588 0 k +377.54 534.6201 m +370.582 533.8018 342.0225 559.5967 359.0605 525.0195 c +380.2617 482.3213 294.9009 481.8799 276.5 494.2998 c +257.9409 506.5205 284.4199 473.8994 y +304.5801 451.959 266.6602 470.54 y +228.9009 484.5195 202.501 456.3604 198.98 455.4199 c +195.4614 454.6016 190.1816 451.0801 189.3799 458.0596 c +188.4199 465.1592 180.8818 482.6094 145.2197 454.7002 c +116.5015 432.2383 102.98 453.5 y +97.7002 448.9395 l +77.9409 485.4004 89.7798 421.8193 y +99.4614 384.0391 245.54 432.6201 y +431.3027 466.04 443.54 470.54 v +455.9434 474.8408 555.8594 468.1396 y +550.0996 489.5 l +478.8223 540.5186 462.1016 511.8008 447.1406 516.1396 c +432.1836 520.6016 434.8232 510.0391 431.2998 509.1797 c +427.7813 508.2793 384.6631 535.5605 377.54 534.6201 c +F +0.027451 0.278431 0.372549 0 k +378.9805 532.7002 m +372.0195 531.8818 343.0449 557.4678 360.5 523.0996 c +383.0215 479.0791 296.3408 479.96 277.9399 492.3799 c +259.3809 504.5977 285.8599 471.9795 y +306.02 450.0391 268.1001 468.6201 y +230.3408 482.5996 203.9409 454.4385 200.4199 453.5 c +196.9014 452.6787 191.6216 449.1582 190.8198 456.1396 c +189.8599 463.2393 182.4658 480.5049 146.6602 452.7793 c +116.5806 429.5 103.46 450.1396 y +97.7002 447.2598 l +80.1201 480.3994 90.5 418.46 y +100.1792 380.6787 246.98 430.7002 y +432.7422 464.1201 444.9805 468.6201 v +457.3828 472.918 556.3398 466.46 y +550.5801 488.2998 l +479.3818 539.2393 463.541 509.8779 448.5801 514.2197 c +433.623 518.6816 436.2637 508.1191 432.7402 507.2598 c +429.2217 506.3594 386.1035 533.6406 378.9805 532.7002 c +F +0.019608 0.215686 0.286275 0 k +380.4199 530.7793 m +373.4629 529.959 343.2754 554.9023 361.9395 521.1797 c +386.2227 477.6006 297.7808 478.04 279.3799 490.46 c +260.8208 502.6807 287.2998 470.0596 y +307.46 448.1191 269.54 466.7002 y +231.7808 480.6797 205.3809 452.5205 201.8599 451.5801 c +198.3418 450.7588 193.0615 447.2402 192.2598 454.2197 c +191.2998 461.3193 184.0498 478.3994 148.1001 450.8594 c +116.6602 426.7588 103.9399 446.7793 y +97.7002 445.5801 l +81.8599 476.7197 91.2197 415.0996 y +100.9014 377.3193 248.4199 428.7793 y +434.1826 462.2002 446.4199 466.7002 v +458.8232 471.001 556.8203 464.54 y +551.2998 486.8594 l +479.9434 537.9609 464.9814 507.9609 450.0195 512.2998 c +435.0625 516.7588 437.7031 506.1992 434.1797 505.3398 c +430.6621 504.4395 387.543 531.7207 380.4199 530.7793 c +F +0.015686 0.156863 0.203922 0 k +381.8594 528.8594 m +374.9023 528.0391 344.7148 552.9824 363.3799 519.2598 c +387.6631 475.6777 299.2231 476.1201 280.8198 488.54 c +262.2607 500.7578 288.7402 468.1396 y +308.9023 446.1992 270.98 464.7793 y +233.2207 478.7598 206.8208 450.5977 203.2998 449.6602 c +199.7817 448.8389 194.5015 445.3184 193.7002 452.2998 c +192.7402 459.3994 185.6357 476.2949 149.54 448.9395 c +116.7417 424.0186 104.1802 443.4199 y +97.7002 443.6602 l +82.7192 472.8193 91.9399 411.7393 y +101.6216 373.959 249.8599 426.8594 y +435.623 460.2793 447.8594 464.7793 v +460.2637 469.0781 557.2998 462.6201 y +551.7793 485.6602 l +480.502 536.6787 466.4219 506.0381 451.46 510.3799 c +436.501 514.8389 439.1426 504.2793 435.6201 503.4199 c +432.1016 502.5195 388.9834 529.7979 381.8594 528.8594 c +F +0.011765 0.098039 0.12549 0 k +383.2998 526.9395 m +376.3418 526.1191 346.582 551.2949 364.8203 517.3398 c +389.1006 472.4404 300.6606 474.2002 282.2598 486.6201 c +263.7007 498.8408 290.1802 466.2197 y +310.3418 444.2793 272.4199 462.8594 y +234.6606 476.8398 208.2607 448.6807 204.7402 447.7393 c +201.2217 446.9189 195.9414 443.4004 195.1401 450.3799 c +194.1802 457.4785 187.2197 474.1904 150.98 447.0195 c +116.8208 421.2793 104.6602 440.0596 y +97.7002 441.9795 l +83.3599 468.4805 92.6602 408.3799 y +102.3418 370.5986 251.2998 424.9395 y +437.0625 458.3594 449.2998 462.8594 v +461.7012 467.1602 557.7793 460.9395 y +552.2598 484.46 l +481.0615 535.3994 467.8613 504.1201 452.9004 508.46 c +437.9414 512.9189 440.5801 502.3594 437.0605 501.5 c +433.541 500.5996 390.4209 527.8809 383.2998 526.9395 c +F +0 0.039216 0.05098 0 k +384.7402 525.0195 m +377.7822 524.2012 349.208 549.9893 366.2598 515.4199 c +389.6621 468.3193 302.1006 472.2793 283.7002 484.7002 c +265.1406 496.918 291.6201 464.2998 y +311.7822 442.3594 273.8599 460.9395 y +236.1006 474.9199 209.7007 446.7578 206.1802 445.8193 c +202.6616 444.999 197.3818 441.4785 196.5801 448.46 c +195.6226 455.5586 188.8042 472.085 152.4199 445.0996 c +116.8999 418.5391 105.1401 436.7002 y +97.7002 440.2998 l +83.5591 465.8984 93.3799 405.0195 y +103.0615 367.2393 252.7402 423.0195 y +438.502 456.4395 450.7402 460.9395 v +463.1426 465.2383 558.2598 459.0195 y +552.9805 483.0195 l +481.6211 534.1201 469.3018 502.1982 454.3398 506.54 c +439.3828 511.001 442.0234 500.4385 438.5 499.5801 c +434.9814 498.6797 391.8613 525.9609 384.7402 525.0195 c +F +1 g +97.7002 438.6201 m +83.54 462.8818 94.1001 401.6602 y +103.7817 363.8789 254.1802 421.0996 y +439.9424 454.5195 452.1797 459.0195 v +464.5801 463.3203 558.7402 457.0996 y +553.46 481.8193 l +482.1826 532.8418 470.7422 500.2803 455.7793 504.6201 c +440.8203 509.0811 443.4609 498.5215 439.9395 497.6602 c +436.4219 496.7598 393.3008 524.041 386.1797 523.0996 c +379.2227 522.2813 351.4785 548.4678 367.7002 513.5 c +392.2305 461.002 300.9463 472.0898 285.1401 482.7803 c +266.5806 495.001 293.0601 462.3799 y +313.2197 440.4395 275.2998 459.0195 y +237.541 473 211.1406 444.8408 207.6201 443.8994 c +204.1016 443.0791 198.8218 439.5586 198.02 446.54 c +197.0601 453.6416 190.3877 469.9834 153.8599 443.1797 c +116.9814 415.8008 105.6201 433.3398 y +97.7002 438.6201 l +F +0 g +143.2998 405.7402 m +135.4614 392.9189 158.4199 378.3799 v +159.8818 376.8584 140.1802 381.5 v +133.2607 383.6787 131.54 395.1797 v +126.2217 399.958 120.98 406.2197 v +115.6616 412.2803 143.2998 405.7402 y +F +0.8 g +297.3799 458.0596 m +316.8486 428.5371 316.0996 423.2598 v +314.7607 411.8408 314.54 401.2803 318.0195 396.8594 c +321.582 392.4795 331.2197 356.0596 y +330.8223 354.6387 344.4199 396.3799 v +357.2217 414.0391 335.2998 434.2998 v +296.5015 465.9609 297.3799 458.0596 v +F +0 g +165.3799 376.2197 m +177.7017 368.2803 161.7798 333.9795 v +168.98 336.6201 l +168.02 324.2793 164.4199 321.7393 v +172.3398 325.0996 l +177.7017 316.3594 173.2998 311.1797 v +191.7798 302.2803 190.8198 295.3398 v +197.9409 304.04 193.46 311.1797 v +189.1401 318.1201 181.2197 313.7188 182.1802 333.9795 c +172.3398 330.3799 l +178.5801 340.1191 178.5801 347.1797 v +169.7002 344.54 l +186.7949 373.7549 174.98 375.2598 v +168.4614 376.2002 165.3799 376.2197 y +F +0.8 g +201.1401 357.7393 m +204.1016 362.5586 201.1401 361.5801 v +197.9409 360.7998 163.6206 344.5205 156.98 333.9795 c +194.8613 360.7998 201.1401 357.7393 v +F +212.4199 348.8594 m +215.54 353.7578 212.4199 352.9395 v +209.3818 351.999 175.0615 335.7197 168.5 325.0996 c +206.2998 351.999 212.4199 348.8594 v +F +227.0601 365.6602 m +230.0601 370.4795 227.0601 369.5 v +223.9014 368.7197 189.5815 352.4404 182.8999 341.8994 c +220.8198 368.7197 227.0601 365.6602 v +F +201.3799 317.6602 m +201.4614 324.2793 198.5 323.4199 v +195.3008 322.5195 155.7007 303.1592 149.0601 292.7002 c +195.3008 320.7578 201.3799 317.6602 v +F +202.8198 329.6602 m +204.1016 334.8389 201.1401 333.9795 v +198.8218 333.958 169.7817 321.2002 163.2197 310.7002 c +195.7402 334.3994 202.8198 329.6602 v +F +186.98 277.0996 m +175.9399 268.9395 l +187.3809 277.2002 191.2998 275.8994 v +183.8599 263.5586 182.8999 257.8994 v +194.4199 271.9209 200.6602 271.5801 v +208.9399 271.04 209.0601 259.0996 v +215.1006 270.6006 218.6602 270.1396 v +219.9414 263.1201 218.6602 255.7393 v +223.0205 264.001 227.54 262.2197 v +234.4614 264.4395 233.54 251.6602 v +233.5806 240.2402 232.8198 237.2598 v +238.8608 266.1992 241.46 266.54 v +250.3018 267.958 255.6201 258.3799 v +251.1802 266.6406 256.5801 264.3799 v +268.3398 262.6777 271.9399 255.2598 v +264.3799 268.3994 270.5 264.8594 v +278.0215 264.8789 279.3799 257.8994 v +288.5815 234.5186 290.8999 232.7002 v +282.4209 256.5195 284.1802 256.46 v +281.9814 269.7197 287.7798 253.3398 v +284.1802 268.8389 290.4199 267.9795 v +296.5015 267.0801 301.3398 256.0781 310.5801 258.6201 c +321.1426 252.5596 323.2998 328.7002 v +186.98 277.0996 l +F +0 g +192.2598 379.3398 m +208.501 385.8799 252.5 379.3398 v +260.4199 378.8408 267.8599 388.46 v +275.3818 398.1992 304.8608 406.1191 312.0195 403.8193 c +322.5801 396.8594 l +323.2998 395.6602 l +336.9824 384.1201 337.46 375.7393 v +337.8613 367.3994 321.582 314.5996 311.0605 297.0195 c +300.4614 279.3994 289.9014 265.7598 268.8198 268.46 c +245.8999 272.7988 217.7002 268.46 v +185.6216 270.1592 182.6602 279.0195 v +179.4609 287.7578 194.8999 304.46 y +199.7002 313.7188 198.5 329.6602 v +197.0601 345.3994 197.5015 376.2002 192.2598 379.3398 c +F +0.047059 0.745098 0.211765 0 k +216.5 377.1797 m +225.6606 356.8398 193.2197 285.0195 y +190.9014 283.3594 207.0273 276.7109 218.1802 279.5 c +230.2207 282.3008 274.5801 277.5801 y +300.4614 294.7998 314.6602 343.5801 y +325.9805 370.04 306.7402 373.5801 v +287.2617 377.0791 216.5 377.1797 y +F +0.247059 0.933333 0.509804 0.070588 k +214.1001 343.0996 m +217.8438 357.1641 219.5864 370.1426 216.5 377.1797 c +285.0605 370.04 297.3799 393.0195 v +302.0454 401.583 318.2813 367.8389 317.7793 357.2598 c +248.54 341.4385 232.3398 353.6602 v +214.1001 343.0996 l +F +0.266667 0.972549 0.580392 0.137255 k +219.1401 325.0996 m +221.2617 317.2393 218.6602 312.8594 v +216.8599 311.96 215.54 311.4199 v +216.8599 307.5586 223.46 305.8994 v +225.6606 300.958 228.2598 300.6201 v +230.9409 300.0801 236.2207 293.9189 240.7402 295.3398 c +245.0215 296.5586 257.2998 300.8594 y +263.5015 304.4795 273.1401 300.6201 v +275.792 301.4023 276.2598 305.8994 v +276.8096 310.9707 280.2197 315.0391 282.5 317.1797 c +284.6216 319.4404 295.1816 333.5186 293.7798 333.9795 c +292.5415 334.3994 219.1401 325.0996 y +F +0 0.698039 0.356863 0 k +214.3398 378.3799 m +211.1406 353.7578 214.5801 344.54 v +218.1802 335.2803 217.3018 333.0801 216.5 328.7002 c +215.54 324.2793 220.3809 313.2803 226.5801 306.6201 c +239.7798 304.9395 l +256.46 308.8809 266.6602 305.8994 v +276.4736 304.3232 280.3398 320.7803 v +285.5 327.7998 293.54 330.8594 v +301.3398 333.958 309.2598 379.7188 304.8198 388.46 c +300.4614 397.3203 284.6216 402.1592 267.1401 385.0996 c +249.4209 367.8389 247.2197 386.3193 214.3398 378.3799 c +F +0 R +0 G +1.1 w 10 M +214.3398 378.3799 m +211.1406 353.7578 214.5801 344.54 v +218.1802 335.2803 217.3018 333.0801 216.5 328.7002 c +215.54 324.2793 220.3809 313.2803 226.5801 306.6201 c +239.7798 304.9395 l +256.46 308.8809 266.6602 305.8994 v +276.4736 304.3232 280.3398 320.7803 v +285.5 327.7998 293.54 330.8594 v +301.3398 333.958 309.2598 379.7188 304.8198 388.46 c +300.4614 397.3203 284.6216 402.1592 267.1401 385.0996 c +249.4209 367.8389 247.2197 386.3193 214.3398 378.3799 c +214.3398 378.3799 l +s +0 O +0.011765 0 0.239216 0 k +1 w 4 M +216.02 296.0596 m +215.1006 298.3203 210.2598 298.7002 v +185.6216 302.7197 176.4199 316.46 v +168.9009 322.5195 173.7798 309.7393 v +185.1802 287.3193 192.7402 284.2998 v +210.7017 279.8408 216.02 296.0596 v +F +0 R +0 G +0.550001 w 10 M +216.02 296.0596 m +215.1006 298.3203 210.2598 298.7002 v +185.6216 302.7197 176.4199 316.46 v +168.9009 322.5195 173.7798 309.7393 v +185.1802 287.3193 192.7402 284.2998 v +210.7017 279.8408 216.02 296.0596 v +216.02 296.0596 l +s +0 O +0.145098 0.898039 0.682353 0.027451 k +1 w 4 M +303.8599 366.3799 m +304.6426 375.1855 306.7905 384.6602 304.8198 388.46 c +297.771 402.7041 279.0991 396.7754 267.1401 385.0996 c +249.4209 367.8389 247.2197 386.3193 214.3398 378.3799 c +212.2998 363.041 213.1401 351.9795 v +254.2617 364.7598 255.1401 358.7002 v +256.9014 362.1201 267.1401 362.0596 v +277.1406 362.1201 302.1558 363.4082 303.8599 366.3799 c +F +0 R +0.231373 1 0.941176 0.172549 K +2.2 w 10 M +256.5801 377.4199 m +261.7402 372.2402 257.7798 361.5801 v +241.9399 344.0791 244.1001 328.7002 v +S +0 O +0.011765 0 0.239216 0 k +1 w 4 M +203.7798 284.2998 m +198.8218 298.3203 208.5801 290.7803 v +213.7808 288.6387 212.4199 286.9395 v +211.1406 285.1201 204.98 280.7188 203.7798 284.2998 c +F +0 R +0 G +0.550001 w 10 M +203.7798 284.2998 m +198.8218 298.3203 208.5801 290.7803 v +213.7808 288.6387 212.4199 286.9395 v +211.1406 285.1201 204.98 280.7188 203.7798 284.2998 c +203.7798 284.2998 l +s +0 O +0.011765 0 0.239216 0 k +1 w 4 M +209.2998 282.8594 m +205.333 294.1826 213.1401 288.1396 v +217.9399 285.5068 216.2598 285.0195 v +211.2295 283.623 216.2432 280.8076 209.2998 282.8594 c +F +0 R +0 G +0.550001 w 10 M +209.2998 282.8594 m +205.333 294.1826 213.1401 288.1396 v +217.9399 285.5068 216.2598 285.0195 v +211.2295 283.623 216.2432 280.8076 209.2998 282.8594 c +209.2998 282.8594 l +s +0 O +0.011765 0 0.239216 0 k +1 w 4 M +214.5801 282.8594 m +210.6128 294.1826 218.4199 288.1396 v +223.1694 285.6582 221.54 285.0195 v +217.8296 283.623 221.5229 280.8076 214.5801 282.8594 c +F +0 R +0 G +0.550001 w 10 M +214.5801 282.8594 m +210.6128 294.1826 218.4199 288.1396 v +223.1694 285.6582 221.54 285.0195 v +217.8296 283.623 221.5229 280.8076 214.5801 282.8594 c +214.5801 282.8594 l +s +0 O +0.011765 0 0.239216 0 k +1 w 4 M +221.7798 282.6201 m +217.8726 293.9648 225.6201 287.8994 v +230.4365 285.4131 228.7402 284.7803 v +225.5288 283.623 228.7856 280.5869 221.7798 282.6201 c +F +0 R +0 G +0.550001 w 10 M +221.7798 282.6201 m +217.8726 293.9648 225.6201 287.8994 v +230.4365 285.4131 228.7402 284.7803 v +225.5288 283.623 228.7856 280.5869 221.7798 282.6201 c +221.7798 282.6201 l +s +0 O +0.011765 0 0.239216 0 k +1 w 4 M +228.98 282.8594 m +225.001 294.0508 232.8198 288.1396 v +236.9697 286.3086 235.9399 284.7803 v +234.8574 283.4912 235.9136 280.6758 228.98 282.8594 c +F +0 R +0 G +0.550001 w 10 M +228.98 282.8594 m +225.001 294.0508 232.8198 288.1396 v +236.9697 286.3086 235.9399 284.7803 v +234.8574 283.4912 235.9136 280.6758 228.98 282.8594 c +228.98 282.8594 l +s +0 O +0.011765 0 0.239216 0 k +1 w 4 M +236.1802 282.1396 m +230.9409 295.6807 240.98 288.6201 v +246.3418 286.4404 245.0601 284.7803 v +243.7017 282.9199 245.0215 279.3994 236.1802 282.1396 c +F +0 R +0 G +0.550001 w 10 M +236.1802 282.1396 m +230.9409 295.6807 240.98 288.6201 v +246.3418 286.4404 245.0601 284.7803 v +243.7017 282.9199 245.0215 279.3994 236.1802 282.1396 c +236.1802 282.1396 l +s +*u +0.266667 0.972549 0.580392 0.137255 K +2.2 w +204.98 300.8594 m +219.5 304.04 226.1001 300.6201 v +232.7002 299.1992 234.02 299.6602 v +235.3398 300.0801 238.8198 300.6201 y +S +1 D +242.4199 291.2598 m +255.5815 306.2402 268.8198 301.3398 v +276.4976 298.5703 275.3818 302.2803 276.2598 305.4199 c +277.1406 308.4385 277.3613 313.0586 282.98 316.46 c +S +*U +0 D +0 O +0.011765 0 0.239216 0 k +1 w 4 M +261.3799 308.7803 m +256.9014 320.7578 253.9399 306.6201 v +250.7407 292.5986 247.2197 288.6387 245.54 285.5 c +245.4609 279.8408 254.6602 280.2197 v +266.5806 280.7188 267.1401 283.8193 v +267.4614 286.8799 265.7002 299.6406 261.3799 308.7803 c +F +0 R +0 G +0.550001 w 10 M +261.3799 308.7803 m +256.9014 320.7578 253.9399 306.6201 v +250.7407 292.5986 247.2197 288.6387 245.54 285.5 c +245.4609 279.8408 254.6602 280.2197 v +266.5806 280.7188 267.1401 283.8193 v +267.4614 286.8799 265.7002 299.6406 261.3799 308.7803 c +261.3799 308.7803 l +s +*u +0.266667 0.972549 0.580392 0.137255 K +2.2 w +276.7402 300.8594 m +280.6616 303.6006 283.2197 302.2998 v +S +283.9399 319.0996 m +287.041 324.3896 292.3398 325.3398 v +S +*U +0 O +0.701961 g +1 w 4 M +196.5801 278.54 m +216.4209 275 221.2998 276.8594 v +230.9409 276.7588 221.7798 274.46 v +207.6201 274.5586 198.7402 275.8994 v +186.0605 282.0391 196.5801 278.54 v +F +0.011765 0 0.239216 0 k +211.9399 381.0195 m +231.3799 381.0391 233.54 380.0596 v +241.501 346.2803 237.6201 337.8193 v +236.2207 334.8389 233.0601 340.9395 v +212.8999 377.0791 209.2998 379.3398 v +205.8608 381.4805 210.7017 381.0391 211.9399 381.0195 c +F +0 R +0 G +0.550001 w 10 M +211.9399 381.0195 m +231.3799 381.0391 233.54 380.0596 v +241.501 346.2803 237.6201 337.8193 v +236.2207 334.8389 233.0601 340.9395 v +212.8999 377.0791 209.2998 379.3398 v +205.8608 381.4805 210.7017 381.0391 211.9399 381.0195 c +211.9399 381.0195 l +s +0 O +0.011765 0 0.239216 0 k +1 w 4 M +127.2197 383.8994 m +137 382.1406 150.98 379.3398 v +156.1401 354.6387 159.6201 349.3398 v +163.1816 344.0791 159.2217 344.0791 155.2998 347.1797 c +151.3018 350.2393 135.02 365.6406 132.7402 370.46 c +130.6206 375.3193 127.2197 383.8994 y +F +0 R +0 G +0.550001 w 10 M +127.2197 383.8994 m +137 382.1406 150.98 379.3398 v +156.1401 354.6387 159.6201 349.3398 v +163.1816 344.0791 159.2217 344.0791 155.2998 347.1797 c +151.3018 350.2393 135.02 365.6406 132.7402 370.46 c +130.6206 375.3193 127.2197 383.8994 y +127.2197 383.8994 l +s +0 O +0.011765 0 0.239216 0 k +1 w 4 M +151.2197 379.0996 m +157.6377 377.3379 158.6602 375.0195 v +159.855 372.4658 157.46 368.7803 y +156.3247 365.2041 155.0601 367.5801 v +153.6802 369.9629 150.5215 378.3867 151.2197 379.0996 c +F +0 R +0 G +0.550001 w 10 M +151.2197 379.0996 m +157.6377 377.3379 158.6602 375.0195 v +159.855 372.4658 157.46 368.7803 y +156.3247 365.2041 155.0601 367.5801 v +153.6802 369.9629 150.5215 378.3867 151.2197 379.0996 c +151.2197 379.0996 l +s +0 O +0 g +1 w 4 M +151.2197 379.3398 m +155.2617 373.5586 159.1401 373.5801 v +163.1816 373.5586 163.6016 374.0146 166.8198 373.3398 c +171.7617 372.2402 171.3198 374.4385 178.5801 373.0996 c +181.4839 372.5908 184.3018 373.5586 187.46 372.1396 c +190.46 370.9209 193.981 371.7988 195.3799 374.0596 c +196.6206 376.2002 201.8599 380.7803 y +187.8198 378.8408 184.8198 377.8994 v +160.1001 376.6396 151.2197 379.3398 v +F +0.011765 0 0.239216 0 k +200.4199 379.0996 m +193.2656 375.209 192.7402 372.6201 v +192.3848 369.9297 198.5 365.8994 y +201.625 360.7998 202.3398 363.5 v +202.9448 366.0801 201.2407 378.6201 200.4199 379.0996 c +F +0 R +0 G +0.550001 w 10 M +200.4199 379.0996 m +193.2656 375.209 192.7402 372.6201 v +192.3848 369.9297 198.5 365.8994 y +201.625 360.7998 202.3398 363.5 v +202.9448 366.0801 201.2407 378.6201 200.4199 379.0996 c +200.4199 379.0996 l +s +0 O +0.011765 0 0.239216 0 k +1 w 4 M +159.1401 373.0996 m +166.8345 360.7422 167.0601 373.0996 v +167.6865 374.458 165.8599 374.54 v +159.0679 374.5664 160.7407 379.0781 159.1401 373.0996 c +F +0 R +0 G +0.550001 w 10 M +159.1401 373.0996 m +166.8345 360.7422 167.0601 373.0996 v +167.6865 374.458 165.8599 374.54 v +159.0679 374.5664 160.7407 379.0781 159.1401 373.0996 c +159.1401 373.0996 l +s +0 O +0.011765 0 0.239216 0 k +1 w 4 M +167.0601 372.8594 m +175.7358 360.4707 174.98 372.8594 v +175.0449 373.2441 173.0601 373.3398 v +167.8926 373.8682 168.272 378.8359 167.0601 372.8594 c +F +0 R +0 G +0.550001 w 10 M +167.0601 372.8594 m +175.7358 360.4707 174.98 372.8594 v +175.0449 373.2441 173.0601 373.3398 v +167.8926 373.8682 168.272 378.8359 167.0601 372.8594 c +167.0601 372.8594 l +s +0 O +0.011765 0 0.239216 0 k +1 w 4 M +174.98 372.8594 m +183.7134 361.0762 182.8999 371.6602 v +183.1089 373.0664 181.2197 373.3398 v +177.0078 374.1729 176.7754 377.7461 174.98 372.8594 c +F +0 R +0 G +0.550001 w 10 M +174.98 372.8594 m +183.7134 361.0762 182.8999 371.6602 v +183.1089 373.0664 181.2197 373.3398 v +177.0078 374.1729 176.7754 377.7461 174.98 372.8594 c +174.98 372.8594 l +s +0 O +0.011765 0 0.239216 0 k +1 w 4 M +182.4199 372.6201 m +191.2109 359.9619 191.54 370.7002 v +193.4023 372.2354 191.54 372.3799 v +185.0815 373.2939 185.96 378.1953 182.4199 372.6201 c +F +0 R +0 G +0.550001 w 10 M +182.4199 372.6201 m +191.2109 359.9619 191.54 370.7002 v +193.4023 372.2354 191.54 372.3799 v +185.0815 373.2939 185.96 378.1953 182.4199 372.6201 c +182.4199 372.6201 l +s +0 O +0.105882 0.031373 0.356863 0 k +1 w 4 M +142.8198 368.7803 m +134.4199 370.46 l +131.4463 375.9795 129.1401 382.7002 y +136.1216 381.6465 149.7798 378.6201 v +150.8335 374.9141 152.4199 368.54 v +142.8198 368.7803 l +F +214.3398 373.8193 m +212.4702 376.6807 211.0229 378.6152 210.2598 379.0996 c +206.9937 381.1328 211.5513 380.7178 212.8999 380.7803 c +231.02 380.7178 233.0601 379.8193 v +233.6694 377.4219 234.5 373.5801 v +223.3232 375.9033 214.3398 373.8193 v +F +0.164706 0.627451 1 0.031373 k +273.3799 525.9795 m +303.7617 521.5303 331.832 560.7363 333.8594 571.3398 c +335.7051 582.0322 324.5 595.0996 y +326.0264 598.4883 320.7012 613.9756 314.9004 624.1396 c +309.085 634.3057 291.5938 633.2334 272.4199 634.2197 c +254.876 635.2734 234.5479 609.6201 233.0601 607.5801 c +231.644 605.749 238.4214 563.6406 239.7798 557.4199 c +241.3232 551.0547 238.3398 521.8994 y +276.085 532.0254 242.7754 530.2441 273.3799 525.9795 c +F +0.047059 0.517647 0.756863 0 k +233.7798 606.8594 m +232.4722 605.0713 239.125 563.7266 240.5 557.6602 c +241.9761 551.3721 239.0601 522.8594 y +275.0649 532.6279 243.4014 530.9385 273.3799 526.7002 c +303.2769 522.3848 330.8379 560.876 332.6602 571.3398 c +334.6406 581.7871 323.7793 594.6201 y +325.1357 597.9434 319.9082 613.1504 314.1797 623.1797 c +308.5039 633.1084 291.332 632.0547 272.4199 633.0195 c +255.2817 634.0586 235.3232 608.873 233.7798 606.8594 c +F +0.035294 0.372549 0.533333 0 k +234.7402 606.1396 m +233.2998 604.3926 239.8281 563.8154 241.2197 557.6602 c +242.6265 551.6885 239.7798 523.8193 y +274.3735 533.7822 244.0254 531.6338 273.3799 527.4199 c +302.792 523.2393 329.8447 561.0176 331.7002 571.3398 c +333.5762 581.54 322.8203 594.1396 y +324.248 597.3965 319.1172 612.3223 313.46 622.2197 c +307.9238 631.9111 291.0703 630.8789 272.4199 631.8193 c +255.6846 632.8447 236.0981 608.124 234.7402 606.1396 c +F +0.023529 0.239216 0.32549 0 k +235.46 605.6602 m +234.1255 603.7158 240.5313 563.9043 241.9399 557.8994 c +243.2769 552.0049 240.5 524.54 y +272.9121 534.4951 244.6494 532.3301 273.3799 528.1396 c +302.3096 524.0938 328.8516 561.1563 330.7402 571.3398 c +332.5117 581.293 322.0996 593.6602 y +323.3594 596.8516 318.3242 611.4941 312.7402 621.0195 c +307.3418 630.7129 290.8066 629.7002 272.6602 630.6201 c +256.0903 631.6299 236.8711 607.376 235.46 605.6602 c +F +0.011765 0.109804 0.137255 0 k +236.1802 604.9395 m +234.9536 603.0391 241.2368 563.9912 242.6602 558.1396 c +243.9297 552.3223 241.2197 525.5 y +271.8921 535.208 245.2759 533.0234 273.6201 529.0996 c +301.8247 524.9453 327.8555 561.2979 329.54 571.0996 c +331.4453 581.0479 321.1406 593.1797 y +322.4697 596.3066 317.5332 610.6689 312.2598 620.0596 c +306.7617 629.5186 290.5449 628.5244 272.6602 629.4199 c +256.4961 630.416 237.6465 606.6289 236.1802 604.9395 c +F +1 g +273.6201 529.8193 m +301.3398 525.7998 326.8613 561.4395 328.5801 571.0996 c +330.3828 580.8008 320.1797 592.7002 y +321.582 595.7598 316.7402 609.8408 311.54 619.0996 c +306.1807 628.3203 290.2808 627.3457 272.6602 628.2197 c +256.9014 629.2012 238.4214 605.8809 237.1401 604.2197 c +235.7817 602.3594 241.9399 564.0801 243.3799 558.3799 c +244.5801 552.6416 241.9399 526.2197 y +269.9912 535.7002 245.8999 533.7197 273.6201 529.8193 c +F +0.8 g +324.7402 567.2598 m +294.0801 558.7998 281.2998 560.54 v +263.9409 567.8213 254.1802 543.7393 v +250.3018 535.9209 248.1802 533.6602 v +245.8999 531.5215 324.7402 567.2598 y +F +0 g +328.8203 569.6602 m +296.9409 556.1602 285.8599 556.7002 v +267.9009 561.6602 258.7402 545.6602 v +249.4209 535.4814 246.02 533.6602 v +245.4609 531.9609 252.5 536.2998 v +264.02 530.54 l +280.2197 520.0801 290.8999 537.7393 v +295.1816 550.001 295.2197 552.1396 v +295.1816 554.4004 318.5 560.5615 320.1797 561.0195 c +322.0205 561.4395 329.2813 566.0596 328.8203 569.6602 c +F +0.45098 0 1 0 k +276.7402 530.0596 m +269.1416 530.0762 259.9302 534.3271 259.9399 541.0996 c +259.9302 548.0742 269.1416 554.9648 276.7402 555.0195 c +284.2617 554.9648 290.3911 549.3945 290.4199 542.54 c +290.3911 535.6465 284.2617 530.0762 276.7402 530.0596 c +F +0.658824 0.2 1 0.039216 k +272.6602 548.54 m +267.3848 547.6328 261.7881 545.9814 261.8599 546.1396 c +263.5591 551.2998 270.5576 554.9648 276.7402 555.0195 c +281.4248 554.9648 285.5938 552.79 288.02 549.5 c +282.2046 549.8408 272.6602 548.54 v +F +1 g +285.8599 548.7793 m +281.1006 552.2002 281.0601 549.7393 v +285.0605 544.9395 285.8599 548.7793 v +F +0 g +275.0601 539.6602 m +272.1919 539.7412 269.9624 541.9707 270.02 544.7002 c +269.9624 547.4697 272.1919 549.6992 275.0601 549.7393 c +277.6904 549.6992 279.9199 547.4697 279.8599 544.7002 c +279.9199 541.9707 277.6904 539.7412 275.0601 539.6602 c +F +0.164706 0.627451 1 0.031373 k +160.5801 554.2998 m +157.0205 577.7217 159.6201 582.6201 v +171.541 593.5615 171.1401 597.5 v +170.6602 617.3213 169.46 618.1396 v +168.02 619.0801 159.6606 625.6807 153.1401 618.6201 c +141.6201 598.8418 142.5801 591.7393 v +142.5801 589.5801 l +134.1416 590.04 132.5 587.8994 v +131.0601 582.1201 129.8599 581.6602 v +126.6606 579.041 128.8999 575.8994 v +126.6606 573.3193 127.2197 568.9395 v +135.3799 564.6201 l +137.6602 548.6816 149.54 543.0195 v +154.8608 540.3994 158.3408 547.8008 160.5801 554.2998 c +F +1 g +159.3799 556.46 m +156.272 577.4121 158.6602 581.6602 v +169.3398 591.668 168.98 595.3398 v +168.5479 613.0518 167.2998 613.8193 v +166.1719 614.6357 158.6479 620.5752 152.6602 614.2998 c +142.4121 596.4199 143.2998 590.0596 v +143.2998 588.1396 l +135.6802 588.5 134.1802 586.46 v +132.9082 581.3721 131.7798 580.9395 v +128.9478 578.5996 130.8198 575.8994 v +128.9478 573.4521 129.3799 569.4199 v +136.8198 565.5801 l +138.8481 551.2754 149.54 546.1396 v +154.3281 543.8232 157.46 550.4863 159.3799 556.46 c +F +0.043137 0.478431 0.701961 0 k +168.7402 617.1797 m +167.6455 618.0576 159.4063 624.4063 152.8999 617.6602 c +141.8193 598.2363 142.5801 591.2598 v +142.5801 589.3398 l +134.5254 589.6563 132.7402 587.4199 v +131.5229 581.9336 130.3398 581.4199 v +127.2319 578.9307 129.3799 575.8994 v +127.2319 573.3535 127.7002 569.1797 v +135.8599 564.8594 l +137.9575 549.3291 149.54 543.7393 v +154.7266 541.2559 158.1201 548.4697 160.3398 555.0195 c +156.8335 577.6445 159.3799 582.3799 v +170.9912 593.0889 170.6602 597.0195 v +170.1318 616.2529 168.7402 617.1797 v +F +0.027451 0.305882 0.423529 0 k +168.2598 615.9795 m +167.271 617.0332 159.1543 623.1289 152.8999 616.46 c +142.0161 597.6318 142.8198 591.0195 v +142.8198 588.8594 l +134.9097 589.2705 133.2197 587.1797 v +131.9839 581.7461 130.8198 581.4199 v +127.8032 578.8203 129.8599 575.8994 v +127.8032 573.3867 128.1802 569.1797 v +136.1001 565.0996 l +138.2554 549.9795 149.54 544.46 v +154.5942 542.1104 157.9014 549.1426 160.1001 555.5 c +156.6465 577.5674 159.1401 582.1396 v +170.4414 592.6133 169.9399 596.2998 v +169.604 615.1875 168.2598 615.9795 v +F +0.015686 0.141176 0.184314 0 k +167.7798 615.0195 m +166.8994 616.0107 158.8999 621.8525 152.8999 615.2598 c +142.2153 597.0244 143.0601 590.54 v +143.0601 588.3799 l +135.2959 588.8857 133.7002 586.9395 v +132.4473 581.5586 131.2998 581.1797 v +128.377 578.71 130.3398 575.8994 v +128.377 573.4209 128.8999 569.4199 v +136.5801 565.3398 l +138.5503 550.6279 149.54 545.4199 v +154.46 542.9668 157.6807 549.8145 159.6201 555.9795 c +156.459 577.4912 158.8999 581.8994 v +169.8896 592.1426 169.46 595.8193 v +169.0762 614.1201 167.7798 615.0195 v +F +1 g +159.3799 556.46 m +156.272 577.4121 158.6602 581.6602 v +169.3398 591.668 168.98 595.3398 v +168.5479 613.0518 167.2998 613.8193 v +166.5249 614.9883 158.6479 620.5752 152.6602 614.2998 c +142.4121 596.4199 143.2998 590.0596 v +143.2998 588.1396 l +135.6802 588.5 134.1802 586.46 v +132.9082 581.3721 131.7798 580.9395 v +128.9478 578.5996 130.8198 575.8994 v +128.9478 573.4521 129.3799 569.4199 v +136.8198 565.5801 l +138.8481 551.2754 149.54 546.1396 v +154.3281 543.8232 157.46 550.5938 159.3799 556.46 c +F +0.8 g +156.02 563.4199 m +132.2695 574.6396 131.2998 575.4199 v +141.291 566.501 142.1001 566.54 v +143.0503 566.501 156.02 563.4199 y +F +0 g +137.2998 570.1396 m +157.46 566.2803 157.46 561.5 v +157.46 558.2383 157.1934 543.4756 151.2197 545.1797 c +142.0615 547.8008 146.0215 563.6406 137.2998 570.1396 c +F +0.45098 0 1 0 k +146.4199 566.0596 m +156.3369 564.4395 157.46 561.5 v +158.1201 559.6807 158.8496 550.541 152.8999 549.2598 c +147.8335 548.3379 145.3809 559.582 146.4199 566.0596 c +F +0 g +240.98 519.2598 m +240.5098 521.1729 241.9497 521.0283 243.8599 521.6602 c +246.1206 522.2813 259.5415 526.46 260.4199 529.3398 c +261.3008 532.1816 275.7798 527.4199 y +277.8008 526.46 282.7402 523.5801 y +287.9214 522.2813 295.2197 521.8994 y +297.8218 520.7402 301.46 517.5801 y +317.6211 506.4414 331.2197 514.46 y +353.2617 521.6211 346.5801 540.6201 y +343.3613 550.4404 346.8203 554.2998 y +347.1006 558.3604 354.9805 551.4199 y +357.8818 546.7012 358.8203 541.0996 y +367.5605 528.8818 363.8594 548.54 y +364.043 549.5596 360.9609 553.5195 360.9805 554.7793 c +360.9609 556.1602 359.0605 559.8193 y +355.6807 563.6406 358.3398 571.3398 y +360.3008 586.5195 357.8594 584.54 y +356.5615 586.5195 346.3398 575.4199 y +344.0215 571.7813 337.46 570.1396 y +334.3418 568.04 330.5 569.6602 y +327.7422 570.0195 321.6201 562.2197 y +324.6602 562.541 327.3008 557.7002 330.0195 557.4199 c +332.5801 557.2617 334.5605 560.1201 336.2598 560.7793 c +338.082 561.4395 341.0605 555.0195 y +341.6025 552.2002 335.54 546.8594 y +335.002 541.8604 333.1406 543.7393 y +329.9414 544.2793 328.6211 540.1016 327.6201 535.0996 c +326.4219 529.9805 321.8594 529.5801 y +320.041 521.4004 318.7402 524.7793 y +318.5 530.8613 312.0195 524.54 y +310.5801 522.2813 305.54 524.7793 y +298.04 526.9014 300.7402 529.0996 y +302.6602 531.5215 314.9004 529.0996 y +317.4004 530.8613 308.6602 535.3398 y +307.9395 537.2402 309.1406 542.0596 y +310.3613 545.5996 317.7793 551.6602 y +328.1816 553.0801 325.2197 554.7793 y +318.2813 560.5615 312.0195 552.1396 y +309.4805 545.3818 290.4199 528.8594 y +285.0605 525.1396 287.9214 532.6201 283.46 528.8594 c +279.1206 525.1396 256.5801 535.0996 y +243.7422 536.3525 240.7373 519.0361 236.8999 522.3799 c +242.8135 513.0967 240.98 519.2598 v +F +455.2998 702.1396 m +427.1816 693.4395 424.0996 672.8594 v +421.4629 647.6816 444.0195 628.2197 v +444.3418 621.2813 446.6602 617.6602 v +444.7813 612.4805 465.3799 620.7793 v +495.3799 630.1396 l +502.4219 632.7197 508.0996 642.3799 v +513.8623 652.0801 530.5801 672.7617 526.5801 700.46 c +527.9414 712.8008 521.2998 713.1797 v +512.1006 715.001 504.2598 706.7002 v +496.7021 703.1211 494.1797 703.5801 v +455.2998 702.1396 l +F +515.54 703.3398 m +517.7334 713.1533 512.4199 707.8994 v +504.668 701.5371 496.3398 701.4199 v +480.4668 699.1162 475.6992 684.6201 v +471.2695 655.0732 480.0195 648.8594 v +485.3047 640.5537 492.9805 647.8994 v +500.7949 655.0732 517.8438 688.3252 515.54 703.3398 c +F +0.2 g +515.0605 702.8594 m +517.3105 712.5537 512.1797 707.4199 v +504.4805 701.1514 496.3398 701.1797 v +480.7207 698.7725 475.9395 684.6201 v +471.6914 655.5293 480.2598 649.3398 v +485.4727 641.2734 492.9805 648.3799 v +500.6797 655.5293 517.3877 688.2051 515.0605 702.8594 c +F +0.4 g +514.5801 702.6201 m +516.8906 711.9561 511.6992 706.9395 v +504.2959 700.7617 496.3398 700.7002 v +480.9746 698.4297 476.4199 684.3799 v +472.1143 655.9873 480.5 649.8193 v +485.6387 641.9961 493.2197 649.0996 v +500.5664 655.9873 516.9346 688.083 514.5801 702.6201 c +F +0.6 g +514.0996 702.1396 m +516.4668 711.3584 511.46 706.2197 v +504.1113 700.376 496.3398 700.46 v +481.2324 698.0859 476.6602 684.3799 v +472.5371 656.4463 480.7402 650.54 v +485.8066 642.7178 493.2197 649.5801 v +500.4512 656.4463 516.4785 687.9629 514.0996 702.1396 c +F +0.8 g +513.8594 701.6602 m +516.0469 710.7578 511.2197 705.7393 v +503.9258 699.9893 496.3398 699.9795 v +481.4863 697.7432 476.9004 684.3799 v +472.959 656.9043 480.9805 651.0195 v +485.9746 643.4385 493.2197 650.0596 v +500.3359 656.9043 516.0225 687.8428 513.8594 701.6602 c +F +1 g +513.3799 701.4199 m +515.6211 710.1602 510.7402 705.2598 v +503.7422 699.6006 496.3398 699.5 v +481.7402 697.3994 477.3799 684.1396 v +473.3809 657.3604 481.2197 651.7393 v +486.1426 644.1602 493.2197 650.7793 v +500.2207 657.3604 515.5664 687.7207 513.3799 701.4199 c +F +0.254902 0.941176 1 0.243137 k +280.5801 477.7402 m +258.2217 498.9609 249.3799 499.8193 v +211.5801 504.2402 195.3799 484.46 v +214.6616 506.8809 245.0601 500.7803 v +221.2617 505.5605 207.6201 501.9795 v +189.1401 502.04 178.5801 486.6201 v +175.46 481.3398 l +179.8999 497.6406 200.1802 504.1396 v +225.2217 509.5205 237.1401 504.1396 v +213.3418 511.7217 202.3398 509.4199 v +168.9009 512.1602 154.8198 483.0195 v +159.2217 498.9609 175.46 506.7803 v +190.46 516.5596 212.8999 513.5 v +228.7402 509.96 234.5 507.2598 v +240.1807 504.6797 238.8608 507.7617 229.7002 513.0195 c +223.46 524.041 208.1001 523.5801 v +160.981 519.6416 149.54 506.54 v +164.5015 518.7607 175.9399 521.8994 v +200.5806 530.6406 209.7798 529.8193 v +237.1016 528.6602 245.54 533.1797 v +233.1416 527.5615 236.6602 524.0596 v +240.1807 520.5195 247.6616 512.1602 247.7002 510.8594 c +247.6616 509.5205 274.2798 485.2109 278.1802 480.3799 c +280.5801 477.7402 l +F +0.8 g +432.9805 264.3799 m +415.8516 304.5918 402.0195 315.0195 v +430.7002 297.4395 434.6602 277.5801 v +434.5498 266.6406 432.9805 264.3799 v +F +484.5801 256.2197 m +455.4512 316.6904 435.1406 343.0996 v +482.9502 301.8418 488.4199 272.7803 v +488.9004 266.54 l +485.7793 269.4199 l +485.1514 259.4912 484.5801 256.2197 v +F +546.7402 309.5 m +478.002 374.9912 476.4199 377.6602 v +542.9004 305.1416 546.2598 296.7803 v +544.002 306.79 546.7402 309.5 v +F +339.3799 261.7393 m +360.8506 318.8906 381.8594 294.1396 v +398.25 283.1406 397.7002 279.7393 v +393.3008 286.9902 373.46 286.46 v +352.6016 289.7402 339.3799 261.7393 v +F +548.9004 401.8994 m +499.4502 433.292 491.2998 435.0195 v +478.2129 437.5371 545.6504 403.04 551.0605 391.5801 c +553.3496 394.2412 548.9004 401.8994 v +F +0 g +383.2998 284.7803 m +405.623 286.8799 413.0605 294.3799 v +417.8594 290.2998 l +437.2998 332.54 l +441.3799 327.0195 l +457.1025 343.2002 456.2598 351.9795 v +455.3408 360.7998 470.4199 345.5 y +469.4219 358.1602 477.3799 350.7803 v +474.7012 367.8389 483.8594 358.9395 v +472.3496 392.2139 497.0605 363.9795 v +503.3027 356.8398 498.5 364.2197 y +469.8613 417.1201 493.7002 401.1797 v +495.8213 426.3584 494.4199 431.1797 v +493.1816 436.04 490.9805 460.6807 485.7793 466.46 c +480.4209 472.1211 486.1426 473.8809 492.2598 468.1396 c +479.9814 494.5615 494.4199 481.3398 v +490.541 498.0801 485.7793 501.2598 v +479.543 520.0811 496.3398 508.2197 v +491.4219 521.8398 487.9395 525.2598 v +475.1406 555.7207 483.1406 550.46 v +487.9395 546.3799 l +480.4209 561.8818 487.46 556.9395 v +494.502 552.2002 494.4199 552.6201 y +471.1807 589.1602 493.7002 569.8994 v +484.6465 585.1113 480.9805 592.7002 v +460.1816 615.1201 475.9395 608.0596 v +481.2197 606.3799 l +471.623 617.3213 462.7402 619.0996 v +454.0205 620.8398 465.4609 627.8818 472.5801 625.5801 c +479.543 623.4795 496.8203 615.0195 y +510.7813 594.4395 515.2998 593.8994 v +493.1816 602.3594 499.7002 593.6602 v +515.6211 578.1602 507.6201 578.54 v +501.1016 570.6797 506.4199 561.0195 v +486.0752 581.2305 502.3398 553.0996 v +510.0195 535.0996 l +483.0605 562.3203 495.3799 538.2197 v +514.3018 512.1602 516.5 511.8193 v +518.7012 511.2803 523.46 501.5 y +518.6602 503.8994 l +524.4199 494.0596 l +512.1006 507.3193 518.6602 492.8594 v +524.9004 477.0195 l +502.4219 501.1611 517.46 468.6201 v +499.3418 474.3193 509.0605 455.4199 v +507.2617 437.7988 507.6201 432.1396 v +508.1406 426.3584 509.4609 395.1201 504.7402 386.2998 c +499.7813 377.5205 511.2227 356.4004 513.3799 351.9795 c +515.6211 347.5996 519.582 335.7197 510.0195 345.7393 c +500.2207 355.959 505.0615 349.8008 507.3799 340.2197 c +509.4609 330.4395 516.0605 313.2803 515.2998 307.0996 c +513.8623 305.7988 510.2598 309.7393 v +494.0625 334.8389 495.8594 319.0996 v +494.502 310.2002 491.0605 300.6201 v +487.4629 288.6387 487.46 298.2197 v +483.9414 316.8008 480.9805 308.54 v +477.7813 300.0801 473.8203 293.4795 470.6602 290.7803 c +467.6621 288.2002 461.9414 313.2803 460.5801 301.8193 c +447.4209 315.4805 442.0996 297.5 v +429.3799 279.5 l +428.9414 293.04 427.7002 286.46 v +394.6211 279.8408 383.2998 284.7803 v +F +345.3799 677.1797 m +332.5801 685.9609 328.0996 685.5801 v +323.7822 685.0801 358.541 695.2012 403.9395 664.9395 c +409.1406 661.7598 413.0605 662.2998 v +416.6211 659.5615 413.54 655.5801 v +403.8613 645.041 416.1797 632.7793 v +436.4219 625.2412 430.3398 634.9395 v +442.1406 630.5215 444.7402 626.0596 v +447.4209 621.7207 446.1797 626.0596 y +439.0615 634.04 432.5 639.7393 v +426.7422 641.96 423.6201 651.2598 v +420.582 660.4395 417.9414 671.4414 422.9004 675.0195 c +418.3809 670.1211 419.2998 674.54 v +420.1426 678.9199 424.1025 682.8799 425.7793 683.4199 c +427.6211 683.7607 445.6621 701.1416 453.1406 701.6602 c +443.0215 700.04 439.7002 701.1797 v +436.4219 702.2402 407.1602 714.7803 400.5801 716.0596 c +382.0801 723.3604 395.2998 721.0996 v +434.6621 716.9814 454.5801 702.3799 v +446.7607 711.7012 426.5 719.4199 v +402.1016 733.2607 363.3799 727.8193 v +343.8008 724.2412 335.2998 722.2998 v +332.3623 722.9209 331.7002 723.2598 v +331.043 723.7998 318.0605 733.7002 287.7798 725.8994 c +269 720.9414 259.46 715.5801 v +242.8208 714.3408 238.8198 710.7793 v +218.4009 694.7598 216.2598 693.9795 v +214.0015 693.001 201.4614 684.6416 200.6602 684.1396 c +227.6406 691.46 230.1802 694.2197 v +232.9209 696.7393 252.0605 699.6006 254.6602 698.0596 c +257.3408 696.5215 266.5806 697.1816 256.1001 696.6201 c +339.1807 680.2393 340.0996 678.1396 v +340.9424 675.8408 345.3799 677.1797 y +F +0.164706 0.627451 1 0.031373 k +423.8594 687.2598 m +412.6621 695.4199 410.4199 695.4199 v +408.2617 695.4199 394.6211 706.6396 390.0195 706.2197 c +385.3809 705.7617 371.9629 716.7607 341.7793 707.6602 c +341.1602 709.9395 345.1406 710.7793 v +352.1621 713.2393 352.5801 713.8994 v +374.8203 718.5195 382.8203 714.6201 v +392.8613 711.7012 399.6201 704.7793 v +412.002 701.3594 415.46 702.3799 v +425.2012 700.04 425.54 698.0596 v +432.0225 694.7598 430.0996 691.8193 v +430.4814 690.1396 423.8594 687.2598 v +F +410.1797 689.6602 m +411.0508 688.9063 412.1719 688.7979 412.8203 687.9795 c +413.0938 687.5625 412.7773 687.2041 412.3398 687.0195 c +411.2842 686.749 410.123 687.375 408.9805 686.7793 c +408.4238 686.501 407.7178 686.7002 407.0605 686.7793 c +405.3125 687.3506 403.3018 687.377 401.54 686.54 c +399.2578 687.8623 396.6631 687.2217 394.3398 688.2197 c +394.3086 688.3516 394.0645 687.9697 394.0996 687.9795 c +390.6318 689.2588 386.5156 688.9492 383.7793 691.5801 c +381.1709 691.9131 378.5762 692.4219 375.8594 693.2598 c +373.9063 693.7305 372.3584 694.8174 370.5801 695.6602 c +369.0605 696.5117 367.457 697.085 365.7793 697.5801 c +363.7207 697.9922 361.707 697.8701 359.54 698.54 c +359.5234 698.4678 359.3125 698.0908 359.2998 698.0596 c +358.8652 698.2393 358.5469 698.8809 358.3398 698.7793 c +356.5088 698.2471 354.8721 699.3174 353.0605 699.0195 c +351.7441 700.2871 349.8438 700.0186 348.2598 700.46 c +344.8828 701.4365 341.415 700.04 338.1797 701.1797 c +342.6055 703.167 347.7607 701.8105 352.3398 704.0596 c +354.791 705.3916 357.7188 704.1797 360.5 705.0195 c +361.0801 705.1729 361.8418 705.3965 362.1797 704.7793 c +362.4297 704.8086 362.6289 705.0723 362.6602 705.0195 c +365.3887 703.7695 367.9355 702.3682 370.5801 701.1797 c +371.0391 701.0332 371.627 701.29 372.0195 701.1797 c +373.5752 699.7305 375.7109 699.8428 377.2998 698.54 c +379.1094 699.0537 381.082 698.6338 383.0605 699.2598 c +383.0693 699.3506 383.3262 698.9766 383.2998 699.0195 c +384.6055 699.8232 385.875 699.5264 386.9004 699.2598 c +387.2285 699.0625 387.959 698.792 388.3398 698.7793 c +389.5303 698.4072 390.4736 697.8799 391.7002 697.5801 c +391.8965 697.6592 392.0986 698.0332 392.1797 698.0596 c +393.4141 697.5195 394.5586 697.5801 395.2998 696.3799 c +395.4297 696.4492 395.6113 696.7109 395.7793 696.6201 c +396.8311 696.3105 397.5469 695.4795 398.6602 695.1797 c +399.291 695.0977 399.9629 694.4092 400.5801 694.2197 c +403.2266 693.4111 405.2559 691.7285 407.7793 690.8594 c +408.5049 690.4033 409.4668 690.1465 410.1797 689.6602 c +F +325.9395 705.2598 m +323.0957 707.1514 320.4922 708.3682 317.7793 710.2998 c +317.6055 710.4795 317.2109 710.29 317.0605 710.54 c +315.8789 711.0967 314.9043 711.7354 313.9395 712.46 c +313.2295 712.9209 312.3271 712.9082 311.7793 713.1797 c +308.9697 714.6123 306.0776 715.2266 303.3799 716.54 c +304.0713 717.2432 305.3047 716.9736 306.02 717.9795 c +306.1733 717.5527 306.4351 717.2402 306.7402 717.5 c +308.6699 718.4453 310.7051 718.6133 312.5 718.46 c +314.4248 718.4121 316.3164 718.0781 318.2598 717.7393 c +318.6055 717.7275 318.8242 717.1514 319.2197 717.0195 c +321.6318 716.3145 324.2598 716.8926 326.6602 716.0596 c +328.3398 715.2793 330.0684 714.375 331.46 712.9395 c +331.707 712.6855 331.3496 712.3545 330.9805 712.2197 c +331.4697 712.2607 331.7695 712.0352 331.9395 711.7393 c +331.9834 711.4277 331.9834 711.0938 331.9395 710.7793 c +331.7676 710.4893 331.46 710.377 330.9805 710.2998 c +329.502 710.1123 331.4502 711.6289 330.7402 711.0195 c +329.2813 710.2422 330.1016 708.6963 329.2998 707.4199 c +328.9736 707.5137 328.7217 707.7529 328.8203 708.1396 c +329.0977 707.6064 328.4355 707.2881 328.3398 706.9395 c +327.8281 706.1426 326.8398 704.585 325.9395 705.2598 c +F +290.1802 697.0996 m +286.6494 698.043 283.2944 697.918 279.8599 699.2598 c +279.9033 699.3535 279.6582 698.9697 279.6201 699.0195 c +278.084 699.6533 277.0737 700.7168 275.7798 701.8994 c +274.8872 702.8428 273.063 702.418 271.7002 702.8594 c +271.3042 703.0898 271.0806 703.6514 270.7402 703.5801 c +269.4102 703.8682 268.3906 704.9121 267.1401 705.5 c +269.811 706.4141 272.4629 706.3809 275.0601 706.7002 c +275.2949 706.8242 275.4536 706.4697 275.54 706.46 c +275.751 706.4697 275.8926 706.7119 276.02 706.9395 c +276.2554 706.5537 276.5864 706.1934 276.98 706.46 c +277.4722 707.0674 278.084 706.8584 278.6602 706.7002 c +278.835 706.8027 278.9746 706.4697 279.1401 706.46 c +279.2695 706.4697 279.4136 706.8125 279.6201 706.7002 c +279.7109 706.8105 279.855 706.4697 280.1001 706.46 c +280.1504 706.4697 280.292 706.7119 280.3398 706.9395 c +281.2017 706.001 282.1733 706.6113 282.98 706.46 c +284.2207 706.165 284.5137 704.8994 285.6201 704.54 c +290.8833 703.1377 295.4336 700.7793 300.2598 698.54 c +300.5693 698.3213 300.7998 698.0479 300.7402 697.5801 c +300.9751 697.6201 301.3184 697.7168 301.46 697.5801 c +302.6914 696.7666 303.8359 696.1641 304.5801 694.9395 c +304.8418 694.585 304.479 694.1357 304.3398 694.2197 c +299.3506 695.2881 294.9438 695.9551 290.1802 697.0996 c +F +274.8198 648.6201 m +273.1206 649.8799 272.4775 652.1113 271.2197 654.1396 c +271.0015 654.4561 271.3042 654.8047 271.7002 654.8594 c +272.2686 655.0752 272.8662 654.5498 273.3799 654.3799 c +275.2354 653.3789 276.9248 652.0137 279.1401 651.9795 c +281.3096 649.4043 285.9941 648.9795 286.1001 645.2598 c +286.0039 644.3164 284.4321 645.3242 283.9399 644.2998 c +281.2642 645.4834 278.6357 645.3701 276.02 646.9395 c +275.3384 647.4033 275.7031 647.9023 274.8198 648.6201 c +F +244.5801 706.46 m +244.729 706.3711 252.4614 706.1143 252.5 705.9795 c +252.3945 705.6514 243.8911 704.4971 243.3799 704.7793 c +243.3105 704.7676 235.0474 702.0938 234.98 702.1396 c +235.1934 702.3896 244.2871 706.373 244.5801 706.46 c +F +0 g +261.6201 695.6602 m +245.2402 693.6602 240.5 692.2998 v +235.5605 691.0205 215.1006 682.6611 211.7002 680.54 c +197.0601 674.5205 178.3398 652.46 v +186.7207 656.2617 189.1401 659.4199 v +204.1016 673.2002 203.7798 670.46 v +217.3018 679.8008 216.7402 677.4199 v +243.481 689.7002 241.2197 686.2998 v +265.04 691.2412 264.02 688.9395 v +284.6216 684.2002 281.54 683.8994 v +275.1606 682.6611 282.2598 678.6201 v +278.4609 673.8604 272.4199 678.3799 v +266.5806 682.6611 269.8809 680.2393 264.5 679.0996 c +261.5215 678.2598 256.5801 682.7002 v +250.3018 687.7207 240.7402 683.6602 v +206.96 669.9004 204.7402 669.2598 v +200.8018 666.1611 198.2598 662.2998 v +191.7798 657.3604 188.4199 655.8193 v +174.4014 643.0615 173.0601 641.4199 v +169.3398 635.8018 168.5 635.4199 v +175.501 639.54 177.6201 641.6602 v +193.1001 652.7402 198.98 653.6602 v +203.8809 656.9209 204.7402 658.46 v +220.6016 668.5801 225.1401 668.54 v +235.3398 662.8613 238.1001 670.46 v +244.3613 672.54 250.5801 671.1797 v +254.041 674.0811 253.2197 676.46 v +254.9214 678.4805 256.1001 674.2998 v +259.7598 670.3398 264.98 672.6201 v +269.4414 672.7617 267.1401 670.2197 v +262.3999 665.9404 249.3799 665.6602 v +235.7817 665.0596 217.7002 656.7793 v +184.9614 645.2598 174.7402 633.7393 v +167.8018 624.1396 161.7798 622.9395 v +155.48 621.9414 148.8198 613.8193 v +159.6606 620.1797 169.46 620.2998 v +173.96 622.8193 169.7002 618.8594 v +165.8218 610.501 167.54 604.46 v +166.9209 598.8418 166.1001 597.0195 v +157.46 583.001 157.46 580.46 v +157.46 577.7217 158.7798 566.9404 159.1401 566.2998 c +159.6606 565.6201 158.1201 568.04 162.2598 565.3398 c +166.4814 562.7598 169.5605 561.001 170.4199 557.8994 c +171.3198 554.8398 168.2407 563.8613 168.02 565.8193 c +167.8018 567.8213 163.1816 575.7412 164.1802 578.2998 c +165.1616 577.2793 166.1001 575.6602 v +165.3799 576.4014 166.1001 580.46 v +166.9209 586.0801 168.5 589.5801 v +170 593.1201 172.2007 597.3008 172.5801 598.2197 c +173.0815 599.0596 173.0815 605.4414 174.7402 602.54 c +178.3398 599.6602 l +175.2798 602.5801 177.6201 604.9395 v +176.6001 611.1602 178.5801 614.0596 v +186.2817 623.2617 187.9399 624.3799 v +189.7998 625.46 188.1802 625.0996 y +194.8613 629.6406 188.4199 627.9795 v +184.0806 626.1201 180.7402 626.0596 v +172.4214 623.9209 176.8999 628.46 v +181.2197 633.1611 192.2217 639.1016 196.3398 638.7793 c +197.2998 637.0996 l +209.54 639.7393 l +208.3398 638.7793 l +208.0615 639.1016 212.6602 639.5 v +217.3018 639.9795 223.6807 638.4414 225.1401 640.46 c +226.7598 642.4014 230.5015 643.501 230.1802 641.8994 c +229.6206 640.4209 229.46 638.2998 y +234.9009 644.5996 234.2598 642.1396 v +233.5806 639.7617 224.5615 634.04 222.98 627.2598 c +234.5 636.1396 l +238.3398 639.5 l +242.3818 637.1211 242.6602 638.7793 v +242.8208 640.6396 247.8799 647.0215 249.1401 646.7002 c +250.52 646.5801 252.7207 649.6611 252.5 646.7002 c +252.2817 643.9395 260.6602 638.0596 y +264.1616 639.9795 265.7002 638.54 v +267.2407 636.9004 271.9399 660.1396 y +299.2998 671.8994 l +347.2998 675.7393 l +328.5801 683.1797 l +261.6201 695.6602 l +F +*u +1 D +0 R +0.435294 0.886275 0.8 0.670588 K +1 J 2.2 w 10 M +281.54 476.7803 m +265.04 495.2217 255.8599 498.1396 v +241.0615 505.5605 214.1001 496.9395 v +S +252.2598 499.5801 m +224.5615 508.4209 207.6201 503.8994 v +187.3809 501.6006 178.1001 486.3799 v +S +248.4199 501.0195 m +229.6206 508.8604 213.3799 511.3398 v +195.0801 514.1406 176.8999 506.2998 v +163.3999 499.6201 157.46 488.2998 v +S +249.3799 500.54 m +232.4814 512.5996 231.3799 514.2197 v +223.6807 526.2412 209.2998 526.7002 v +185.8398 525.7998 166.8198 517.0996 v +S +*U +0 D +0 O +0 g +0 J 1 w 4 M +247.9399 510.3799 m +249.6802 508.7842 279.3799 477.0195 y +318.0605 436.7002 287.2998 474.3799 y +278.8999 479.5996 268.8198 500.2998 y +267.4614 503.3594 284.1802 492.3799 y +288.5815 491.4795 303.6201 470.2998 y +296.0601 473 301.46 465.0195 y +304.4214 462.8818 326.9004 445.8193 y +330.8223 441.3193 335.2998 439.5801 y +350.6211 445.2793 343.7002 430.7002 y +346.2227 423.2793 352.3398 435.9795 y +364.7021 454.5195 346.5801 451.8193 y +313.6621 448.8008 306.2598 466.46 y +303.541 469.04 313.2197 466.46 y +322.4629 464.2012 305.2998 480.1396 y +307.9395 480.041 318.0195 472.46 y +329.502 462.4395 331.7002 464.54 y +351.502 474.3193 362.9004 465.9795 y +365.1416 464.2012 358.9805 456.7207 360.7402 451.0996 c +362.502 445.2793 367.7002 431.6602 y +365.1416 429.8789 365.54 417.9795 y +384.0605 392.4795 373.46 394.7002 y +356.3408 395.1201 372.7402 386.7793 y +376.1406 384.5596 385.9395 376.7002 y +382.7402 377.96 380.9004 372.1396 y +386.2617 367.8389 383.2998 362.54 y +376.582 361.2393 375.3799 356.7793 y +382.7402 348.0391 371.7793 347.6602 y +375.7012 342.7588 370.3398 329.6602 y +365.1416 329.5586 358.0996 323.4199 y +360.7422 318.1201 349.2197 311.8994 y +340.0615 310.2002 343.2197 302.7793 y +334.3418 296.1201 331.7002 278.54 y +330.8223 267.0801 328.1816 263.5586 333.8594 265.8193 c +339.623 267.958 338.6602 281.6602 y +333.4609 298.7598 380.6602 316.46 y +384.9414 318.1201 385.9395 323.8994 y +388.0215 323.4004 397.7002 315.0195 y +406.0615 302.7197 406.5801 312.8594 y +407.8203 316.8008 406.0996 323.4199 y +412.6621 347.1582 397.2197 354.1396 y +386.2617 391.1602 401.7793 381.9795 y +404.7422 375.7588 416.6602 369.9795 y +420.5 372.6201 l +418.8223 377.96 428.1797 384.6201 y +431.1416 377.5205 437.7793 386.2998 y +441.7012 413.1582 455.2998 397.3398 y +459.7422 396.001 461.0605 403.5801 y +465.0225 414.9199 461.0605 429.9795 y +465.0225 430.3203 475.7002 423.7393 y +478.6621 427.6807 468.541 446.1582 473.0605 443.4199 c +477.3418 440.8809 482.1797 439.0996 y +483.0605 441.3193 472.0996 454.9395 y +467.2207 458.04 461.54 480.3799 y +469.4219 476.5205 458.4199 493.3398 y +458.4219 496.7598 465.1406 509.1797 y +464.1416 516.5596 465.1406 516.1396 y +468.1016 514.8008 476.9023 513.041 469.46 519.9795 c +461.9414 527.1201 470.4199 532.46 y +475.1406 535.4814 460.0996 535.0996 y +454.4629 539.8809 454.8203 544.2197 y +463.7021 542.0811 447.8623 557.9209 445.2197 561.9795 c +442.582 565.8418 453.1406 571.5801 y +467.6621 575.5205 454.8203 579.0195 y +433.3418 578.5996 445.2197 590.54 y +451.8223 590.04 450.0195 592.7002 y +444.3418 594.001 433.7002 601.0996 y +429.3828 605 433.46 604.2197 y +451.8223 602.8018 420.2598 615.0195 y +428.9414 615.1201 409.2197 626.54 y +406.9424 628.3203 403.46 636.6201 y +396.8223 642.4014 391.46 649.8193 y +391.1025 654.7207 385.9395 659.8994 y +373.0615 674.96 366.9805 674.54 y +350.6211 678.4805 344.9004 677.6602 y +286.8198 672.8594 l +257.7798 658.6807 266.4199 635.6602 y +273.4014 626.3408 283.46 630.6201 y +288.5815 637.3398 301.46 634.9395 y +323.7822 631.3994 320.9004 635.4199 y +318.2813 640.4209 300.4614 647.2393 300.2598 647.8994 c +300.02 648.5596 290.4199 652.2197 y +287.041 653.6211 282.2598 663.7393 y +278.6816 667.4814 296.1802 661.0996 y +294.7402 660.001 302.8999 655.5801 y +322.0205 656.7002 333.6201 644.7793 y +345.5625 626.5615 345.8594 635.6602 y +348.8623 645.9199 335.7793 669.2598 y +336.3223 671.4414 345.3799 664.2197 y +346.8828 666.3799 347.7793 659.8994 y +347.9814 657.3604 352.0996 648.6201 y +355.2422 634.2607 359.2998 642.3799 y +364.3398 632.0596 l +365.8018 629.2012 359.2998 620.7793 y +358.9805 617.7607 359.8613 617.9814 353.7793 609.7393 c +347.543 601.2607 351.3799 596.54 y +349.7402 589.1602 359.54 589.5801 y +362.2813 587.1797 366.0195 587.1797 y +368.002 584.9814 370.5801 585.7393 y +372.4014 589.8193 379.2197 587.6602 y +380.7607 590.2617 389.7793 590.7793 y +390.8809 593.5615 391.3203 595.3203 395.0605 596.0596 c +398.8018 596.6406 371.7793 644.0596 y +378.7813 644.8203 369.8594 658.46 y +367.3418 665.7197 379.8828 649.6611 382.3398 648.1396 c +384.7207 646.5801 385.8223 644.1602 384.0195 644.2998 c +382.3018 644.5996 380.3223 642.1807 381.8594 641.8994 c +383.4004 641.7412 397.7021 625.2412 401.54 614.0596 c +405.1807 602.8018 411.7813 598.3994 418.5801 591.7393 c +425.4219 585.2002 424.5801 558.6201 y +424.1025 548.8994 430.8203 537.2598 y +432.9004 533.0596 428.1797 513.0195 y +426.082 510.6201 427.7002 509.6602 y +428.7227 508.4209 436.0996 493.8193 y +434.2207 494.1201 438.2598 490.2197 y +443.9023 483.5596 436.8203 486.8594 y +430.2607 488.6211 438.0195 477.7393 y +439.2822 475.8604 429.3799 480.8594 y +419.2617 481.5801 432.0195 473.6602 y +441.4805 465.7393 428.9004 470.54 y +423.8809 472.5605 427.46 465.0195 y +430.9209 463.3203 449.7793 455.6602 y +450.2813 451.4404 446.9004 445.8193 y +447.4209 441.54 444.9805 437.8994 y +443.6816 428.7793 443.0605 427.8193 y +438.4014 427.6807 430.3398 412.46 y +428.2813 409.6396 417.1406 396.3799 y +414.8623 388.7402 395.0605 396.6201 y +387.8027 392.9189 390.0195 396.6201 y +389.5615 399.0801 394.8203 405.7393 y +402.541 408.54 399.6201 420.3799 y +404.082 421.959 391.7617 425.04 391.9395 426.3799 c +392.2012 427.6807 398.6602 429.2598 y +407.3809 431.4199 402.5 434.0596 y +401.8809 438.459 405.1406 444.6201 y +417.9414 445.501 405.1406 463.3398 y +393.3008 471.6797 392.1797 477.9795 y +406.0615 487.0801 397.043 500.7197 397.2197 504.6201 c +397.4814 508.6396 398.9004 532.46 y +396.6006 539.2207 393.3799 554.2998 y +395.7227 559.9014 403.9395 573.7393 y +406.9424 578.3818 416.6211 583.6611 414.2598 586.9395 c +411.7813 590.2617 403.2197 588.3799 y +394.6211 589.8193 395.2998 584.0596 y +393.5215 583.001 392.6602 577.5801 y +391.8486 568.7744 382.0996 561.9795 y +369.7617 555.0605 379.9395 550.7002 y +386.4824 543.4014 375.6201 543.2598 y +363.6006 545.1602 372.7402 533.8994 y +384.502 519.8594 381.1406 516.8594 y +369.9824 515.6816 383.7793 505.5801 y +382.9609 507.7617 383.2998 505.8193 v +383.4004 503.8018 386.7012 499.1816 387.6201 496.9395 c +388.4629 494.7793 384.0195 494.54 y +384.7207 484.001 367.7002 488.54 y +367.7813 488.6211 366.0195 488.2998 v +364.2607 488.1797 351.9414 489.0605 345.6201 491.4199 c +339.1807 493.9014 331.7002 493.8193 y +327.3008 491.9209 318.9805 492.1396 v +310.5801 492.3604 301.7002 489.2598 y +296.9409 489.7207 306.4014 494.5615 306.7402 494.2998 c +306.8408 494.1201 313.002 500.2803 304.1001 499.5801 c +280.2246 497.8232 268.3398 509.1797 y +266.1416 510.6201 263.2998 513.7393 y +252.2817 515.8994 264.7402 500.0596 y +266.1416 498.5215 264.5 497.4199 y +263.7197 499.1816 255.1401 505.0996 y +252.0488 506.1914 250.5488 507.6582 247.9399 510.3799 c +F +0.435294 0.886275 0.8 0.670588 k +221.7798 523.0996 m +234.4614 517.001 237.3799 513.9795 v +240.1807 510.8408 255.6201 498.3799 y +249.6416 500.501 246.7402 502.46 v +243.9199 504.4609 232.1001 513.5 y +227.8613 520.0801 221.7798 523.0996 v +F +0.45098 0 1 0 k +157.9399 557.4199 m +158.2617 557.6406 157.6855 560.624 157.46 561.2598 c +156.3369 564.2188 146.4199 565.8193 y +146.2109 564.3389 146.1514 562.585 146.1802 560.7793 c +151.6206 554.71 157.9399 557.4199 v +F +0.658824 0.2 1 0.039216 k +157.9399 557.6602 m +157.395 557.5225 157.875 560.7051 157.7002 561.2598 c +156.5552 564.2188 146.4199 566.0596 y +146.2109 564.4492 146.1514 562.6924 146.1802 560.7793 c +150.9609 555.2598 157.9399 557.6602 v +F +0 g +153.1401 557.6602 m +152.3721 557.54 151.8154 558.7949 151.7002 560.2998 c +151.8154 561.8857 152.3721 563.1416 153.1401 563.1797 c +153.7471 563.1416 154.3066 561.8857 154.3398 560.2998 c +154.3066 558.7949 153.7471 557.54 153.1401 557.6602 c +F +102.98 449.6602 m +96.7402 438.6797 124.1001 445.3398 v +139.4214 446.5996 142.1001 449.1797 v +143.3818 448.3594 152.583 445.1338 155.7798 444.3799 c +163.1816 442.6396 172.3398 453.7402 y +177.481 465.1904 180.5 465.2598 v +183.6416 465.1904 180.02 463.3398 y +172.8608 452.3193 173.2998 450.6201 v +167.5806 428.5586 150.02 427.5801 v +132.2144 426.6338 133.7002 420.1396 v +143.3818 422.8398 145.9399 420.1396 v +157.9014 420.6387 149.0601 413.6602 v +141.6201 400.9395 l +141.7734 396.5313 130.5801 400.46 v +119.8398 404.1387 108.5 418.2197 y +90.9658 434.333 102.98 449.6602 v +F +0.066667 0.470588 0.290196 0 k +101.54 445.3398 m +99.3799 434.7197 139.9399 446.0596 v +144.7017 446.1582 147.3799 445.3398 v +149.9814 444.3994 163.1816 441.3193 165.3799 442.7002 c +157.46 427.6807 144.7402 429.5 v +130.1816 427.6807 130.5801 422.2998 v +135.02 414.4805 140.4199 411.7402 v +143.3818 409.2002 143.0601 405.7402 v +142.501 402.1592 139.4214 400.3994 137.2998 399.5 c +135.02 398.6406 131.5015 402.1592 129.8599 402.1396 c +127.981 402.1592 118.7407 409.2002 114.02 414.3799 c +109.0615 419.7578 99.8218 432.958 100.3398 435.9795 c +100.7002 439.1191 101.54 445.3398 y +F +0.262745 0.682353 0.52549 0.062745 k +105.1401 426.1396 m +107.96 421.7402 111.481 417.1201 114.02 414.3799 c +118.7407 409.2002 127.981 402.1592 129.8599 402.1396 c +131.5015 402.1592 135.02 398.6406 137.2998 399.5 c +139.4214 400.3994 142.501 402.1592 143.0601 405.7402 c +143.3818 409.2002 140.4199 411.7402 y +136.9277 413.5254 133.9136 417.3682 132.2598 419.8994 c +132.3799 417.1201 126.7402 417.9795 v +120.9414 418.8799 115.2197 421.959 113.54 425.4199 c +111.7017 429.001 109.0615 431.6406 110.8999 427.5801 c +112.5801 423.7207 115.2197 419.7578 116.8999 419.4199 c +118.7407 418.8799 118.3018 417.5596 115.7002 417.9795 c +113.0215 418.4404 109.9399 418.8799 105.1401 424.7002 c +F +0.254902 0.941176 1 0.243137 k +102.2598 449.1797 m +104.2207 464.2012 105.6201 468.6201 v +104.6602 476.0811 107.2998 480.6201 v +109.9399 485.3213 112.1406 492.1396 115.46 498.1396 c +118.7407 504.0195 118.9614 508.4209 123.3799 510.1396 c +127.7598 511.9395 134.3599 521.4004 137.54 522.6201 c +140.5205 523.6016 140.4199 522.6201 y +147.7808 539 162.7402 534.6201 v +144.9199 537.6797 162.2598 548.0596 v +157.0205 546.8115 160.5801 554.54 v +163.0713 559.6445 162.5215 552.2002 150.5 539.1797 c +144.9199 529.7598 139.2197 526.46 v +133.4814 523.1602 120.2817 515.4609 119.0601 511.3398 c +117.6416 507.1016 114.1206 500.7197 111.8599 498.8594 c +109.7217 497.2012 106.6401 492.5811 106.1001 488.7803 c +104.8809 484.4404 103.46 483.0195 v +101.8018 481.8008 101.5806 478.2803 101.54 476.0596 c +101.5806 473.8809 99.3799 470.8018 99.6201 468.1396 c +100.4814 447.2598 100.1001 445.0996 v +102.2598 449.1797 l +F +1 g +92.8999 444.1396 m +90.5815 445.7188 85.7002 439.0996 v +93.771 402.8193 93.8599 401.1797 v +94.981 403.5898 93.6201 411.5 v +92.1201 419.4297 91.2197 433.3398 y +92.8999 444.1396 l +F +0.254902 0.941176 1 0.243137 k +116.6602 510.8594 m +97.1816 507.3193 97.7002 475.0996 v +96.7402 447.9795 l +95.4199 476.0811 94.1001 477.7393 v +92.7798 479.5996 97.1816 491.9209 93.6201 485.4199 c +78.2598 469.9209 87.1401 446.54 v +88.7095 442.9707 85.46 447.9795 v +80.3506 461.8896 81.6201 468.8594 v +81.7808 471.3506 83.7798 474.3799 v +93.3296 487.3018 96.2598 489.7393 v +98.2808 505.6709 115.2197 511.3398 v +121.4912 513.9199 116.6602 510.8594 v +F +0 g +269.7798 583.5801 m +270.6055 584.0498 270.5957 585.1182 271.2197 585.2598 c +272.499 585.6846 272.6792 586.8584 273.1401 587.6602 c +274.208 589.1719 274.4214 590.8594 275.0601 592.46 c +275.3599 593.2686 275.3911 594.3193 275.0601 595.0996 c +273.7544 597.7734 272.9814 600.4688 271.46 603.0195 c +271.1001 603.6318 270.812 604.5049 270.5 605.1797 c +270.0825 606.6865 268.7002 607.7764 267.8599 609.2598 c +267.4375 609.7129 268.0137 610.7305 267.1401 610.9395 c +266.2402 610.9395 264.6465 611.5752 264.5 610.46 c +263.7441 607.6016 264.855 604.8271 265.9399 602.0596 c +265.0591 601.3779 265.4263 600.3682 265.7002 599.4199 c +266.377 595.5557 265.0566 591.8691 264.2598 588.1396 c +264.1953 587.9336 264.5718 587.7148 264.5 587.6602 c +263.1968 584.6934 261.5981 582.0029 259.7002 579.5 c +258.7642 578.293 257.8066 577.2842 257.2998 576.1396 c +256.8535 575.249 256.4048 574.1885 256.5801 573.0195 c +252.9033 570.0439 250.4263 565.8125 247.46 561.5 c +247.0474 560.835 247.3662 559.5049 247.9399 559.0996 c +248.8662 558.7705 249.9199 559.8965 250.3398 560.7793 c +250.8633 561.5957 251.252 562.3105 251.7798 562.9395 c +251.9385 563.2109 251.7417 563.6719 251.7798 563.8994 c +254.7871 566.3857 256.623 569.6162 259.2197 572.2998 c +261.4663 572.583 263.1558 573.6797 264.98 574.7002 c +265.417 574.9902 265.9951 574.7168 266.4199 574.9395 c +268.2417 576.2266 268.2393 578.4678 268.3398 580.46 c +268.4097 581.54 268.6255 582.9893 269.7798 583.5801 c +F +260.1802 588.6201 m +260.2905 588.6582 260.1201 589.124 260.1802 589.3398 c +260.4199 589.7168 260.8613 589.9229 261.1401 590.2998 c +261.1616 590.5186 260.9814 590.9355 261.1401 591.0195 c +263.6982 593.7842 263.979 597.1113 262.8198 600.3799 c +263.9673 601.0635 264.0342 602.4512 263.54 603.5 c +262.6279 605.252 262.417 607.3711 261.3799 609.0195 c +260.4609 610.4648 258.7256 611.833 257.2998 610.46 c +256.7554 609.958 256.3999 609.0938 256.8198 608.2998 c +256.7769 608.1318 257.0913 607.9707 257.0601 607.8193 c +256.9424 607.5244 256.3423 607.2773 256.3398 606.8594 c +256.3042 605.333 255.2529 603.6699 255.8599 602.2998 c +256.7959 600.418 257.6958 598.373 258.5 596.54 c +257.0815 594.0918 258.2192 591.3994 256.3398 589.3398 c +256.1406 589.1738 256.1504 588.749 256.3398 588.6201 c +256.6064 587.9932 257.0527 587.5469 257.54 587.1797 c +257.811 587.0908 258.1929 587.0908 258.5 587.1797 c +259.0498 587.624 259.4863 588.1592 260.1802 588.6201 c +F +329.2998 599.8994 m +330.7754 597.9434 331.0957 594.8691 328.8203 593.4199 c +329.4463 589.7002 333.1328 591.877 335.54 592.46 c +335.3223 592.8867 335.5713 593.2666 335.7793 593.1797 c +337.0449 593.2881 337.793 594.4229 338.9004 594.1396 c +339.4395 595.9326 341.2402 596.7051 342.0195 598.2197 c +343.8457 602.2881 343.1982 606.9893 340.3398 610.46 c +340.1338 610.8389 340.3711 611.4072 340.3398 611.8994 c +339.4043 614.2373 337.1289 614.583 335.0605 615.2598 c +333.707 619.6035 332.9785 624.0361 330.9805 628.2197 c +329.2666 628.376 328.498 630.2881 327.1406 631.0996 c +325.5605 631.8701 324.9365 630.1348 324.9805 628.9395 c +324.9902 628.7598 325.4863 628.5127 325.2197 628.2197 c +325.2148 627.9297 324.9297 627.8096 324.9805 627.7393 c +324.9316 627.5117 325.1738 627.3682 325.2197 627.2598 c +324.3105 626.3193 322.7461 625.793 322.3398 624.6201 c +321.373 620.4531 324.2021 617.0166 325.9395 613.5801 c +326.6865 612.248 325.877 610.8486 324.9805 609.5 c +324.5605 608.7559 324.6797 607.5146 324.9805 606.6201 c +325.8105 604.0107 327.5605 602.0957 329.2998 599.8994 c +F +288.2598 579.7393 m +286.7358 577.6543 282.9849 574.8291 286.1001 572.7793 c +286.4048 572.5664 286.8125 572.5615 287.0601 572.7793 c +289.2246 574.4307 291.4302 575.4248 294.02 576.1396 c +294.2456 576.0967 294.5479 575.583 294.98 575.6602 c +296.7271 576.5332 298.9375 576.4688 300.2598 578.0596 c +304.3833 577.6953 308.3047 578.9209 312.0195 580.46 c +313.3135 580.8535 314.7109 581.4678 316.0996 582.1396 c +317.5449 582.6533 318.8691 583.6758 320.1797 585.0195 c +320.2373 585.0801 320.6289 584.9814 320.9004 585.0195 c +320.8789 585.9297 321.9365 586.0713 322.0996 586.7002 c +322.3086 587.0098 322.1426 587.4463 322.3398 587.6602 c +324.6416 589.3496 325.6543 591.5693 324.2598 594.1396 c +324.0537 594.8213 323.7793 595.501 323.0605 596.0596 c +321.9629 597.0244 320.751 596.0859 319.7002 596.54 c +319.4258 595.7305 318.625 595.918 318.2598 595.8193 c +317.2539 595.2197 315.7881 595.8633 314.9004 595.3398 c +313.3447 594.6152 311.9785 594.4297 310.3398 593.8994 c +310.0713 593.9258 309.2168 594.0293 309.1406 593.4199 c +308.8926 593.4893 308.7295 593.7461 308.6602 593.6602 c +306.5146 593.2852 305.1294 593.0498 303.6201 591.2598 c +303.584 591.0439 303.0967 591.2402 302.8999 591.0195 c +301.8701 590.2012 301.4263 588.8457 300.2598 588.1396 c +299.9937 587.9697 299.605 588.1563 299.2998 587.8994 c +298.6807 587.54 298.2773 586.834 297.6201 586.46 c +297.2095 586.0898 296.7705 586.4473 296.8999 586.7002 c +297.0752 588.8721 297.793 590.8369 297.1401 592.9395 c +299.4463 595.6729 302.2134 597.8164 304.1001 600.8594 c +304.2178 603.2041 304.9785 605.5635 304.8198 607.8193 c +304.8418 608.0596 304.5249 608.8662 304.3398 609.2598 c +304.0449 610.1885 305.041 611.3594 304.1001 612.1396 c +302.5688 613.4814 301.1479 612.5166 300.2598 610.9395 c +298.2178 610.5098 295.9448 609.749 294.2598 611.1797 c +293.103 611.9717 292.4673 612.9697 291.6201 614.0596 c +290.5039 615.5625 290.8735 617.1416 290.8999 618.8594 c +290.9551 619.0039 290.6094 619.1523 290.6602 619.3398 c +290.6118 619.4502 290.8521 619.5938 290.8999 619.8193 c +290.2231 620.4297 289.9209 621.5938 288.7402 621.9795 c +289.1357 623.1416 288.3921 624.1133 287.54 624.3799 c +285.2383 625.208 283.395 623.1025 281.2998 622.9395 c +280.748 623.002 280.2344 624.1445 279.6201 624.6201 c +279.0464 624.7393 278.271 624.7754 277.9399 624.3799 c +277.1167 623.9287 276.4688 623.8037 275.54 623.6602 c +273.855 623.0977 272.4512 621.8936 270.7402 621.0195 c +269.1895 620.0117 268.1382 618.4297 266.8999 616.9395 c +265.9136 615.7109 265.7646 613.0566 267.3799 612.6201 c +269.355 611.792 270.7881 614.7656 272.8999 614.2998 c +273.2935 614.3506 273.5215 614.0068 273.3799 613.5801 c +273.8286 613.46 274.0688 613.7119 274.3398 614.0596 c +275.2231 612.9004 276.5049 612.5283 277.46 611.6602 c +278.605 610.5752 280.5249 611.0332 281.54 609.9795 c +283.3232 608.2852 282.7065 605.3359 284.8999 603.9795 c +284.1968 602.4561 283.5298 601.0518 283.2197 599.4199 c +282.8506 598.1553 283.9424 596.8398 285.3799 597.0195 c +286.6592 597.041 286.9473 597.877 287.54 599.1797 c +287.7754 598.7666 288.291 598.4404 288.2598 598.2197 c +287.7417 595.5771 286.6133 593.3857 286.1001 590.7793 c +286.0449 590.3623 285.709 590.1387 285.3799 590.2998 c +284.7656 585.6963 280.3086 583.0635 277.46 579.5 c +277.0664 579.0293 277.0615 577.6563 277.46 577.0996 c +279.0537 575.6865 281.2109 577.3877 282.98 578.0596 c +283.3135 579.2666 284.2593 580.3037 285.6201 580.2197 c +286.0063 580.2314 286.2656 580.8271 286.5801 580.9395 c +287.0049 581.1221 287.5566 580.875 287.7798 581.1797 c +289.772 582.4082 291.3223 583.625 293.2998 585.0195 c +293.4438 585.0752 293.8232 584.9023 294.02 585.0195 c +294.4185 585.2002 294.625 585.624 294.98 585.7393 c +295.3613 586.0469 295.6279 585.7275 295.9399 585.5 c +295.1313 585.0361 295.1265 583.9834 294.5 583.8193 c +293.6338 583.4668 293.0166 582.9033 292.3398 582.3799 c +291.9536 582.2002 291.229 582.4707 291.1401 582.3799 c +290.4561 581.1436 289.1528 580.6611 288.2598 579.7393 c +F +227.54 633.9795 m +217.2583 637.2002 204.98 609.0195 v +202.3398 603.2402 199.7002 601.0996 v +197.0601 598.8418 184.7407 594.8818 182.6602 590.54 c +171.1401 572.7793 l +187.3809 590.4795 190.8198 593.1797 v +199.7002 602.3594 196.1001 594.8594 v +180.7808 583.001 182.1802 572.7793 v +175.9399 557.04 174.98 554.7793 v +192.6606 590.04 195.3799 591.2598 v +197.9409 592.6807 199.2607 592.6807 198.02 588.6201 c +196.6206 584.7607 196.1816 566.7197 193.2197 564.6201 c +201.9009 586.9609 201.1401 590.54 v +204.541 594.4395 207.1401 588.6201 v +205.9399 571.0996 l +210.7402 557.8994 l +208.0615 570.2402 209.7798 587.4199 v +207.6201 598.8418 211.9399 592.7002 v +216.4209 586.5195 226.981 579.9199 227.0601 574.7002 c +221.2617 594.001 211.2197 599.1797 v +206.6602 592.7002 l +205.46 594.8594 l +201.4614 595.7598 206.4199 603.2598 v +211.1406 610.7217 210.7402 611.6602 y +217.7407 603.6797 219.6201 603.7393 v +234.02 612.041 235.46 585.2598 v +242.8208 601.04 232.8198 608.54 v +216.4209 610.7217 217.7002 616.46 v +225.6201 630.1396 l +229.6206 635.8018 227.7798 632.7793 y +F +205.46 615.9795 m +191.3408 616.001 187.9399 610.2197 v +180.02 599.6602 l +198.8218 610.7217 203.2998 612.1396 v +207.6201 613.3613 205.46 615.9795 y +F +161.54 609.0195 m +159.2217 607.6396 158.8999 604.46 v +158.3408 601.4814 155.7007 601.04 156.5 597.9795 c +157.46 594.8818 159.6606 592.2412 159.6201 596.54 c +159.6606 601.04 161.4199 603.2402 162.2598 604.46 c +163.1816 605.8809 164.9409 610.7217 161.54 609.0195 c +F +151.7002 541.5801 m +142.501 546.041 138.98 549.9795 v +135.4614 553.9609 135.9585 548.2783 130.5801 548.7793 c +124.189 549.166 125.2998 566.7793 y +120.98 558.3799 l +119.6216 542.5205 128.4199 545.1797 v +132.7183 546.4492 134.1416 544.7217 132.5 543.7393 c +130.6206 542.96 138.541 542.5205 135.3799 540.8594 c +132.3799 539 148.2197 544.7217 145.7002 533.1797 c +151.7002 541.5801 l +F +137.7798 525.7393 m +120.9414 520.9609 116.8999 531.5 v +111.7017 528.8818 114.02 525.5 v +116.54 522.2813 117.8599 521.8994 y +123.7998 520.5195 123.1401 519.7393 v +122.48 518.7607 119.7798 514.9395 y +131.0601 521.6211 137.7798 525.7393 v +F +1 g +389.0605 439.8193 m +388.6523 437.4316 386.8135 436.5508 384.7402 435.7402 c +382.6133 436.8721 379.7559 440.29 377.7793 437.8994 c +377.1602 438.5479 376.3037 438.6123 375.8594 439.3398 c +375.4141 440.3311 375.7129 441.4805 375.3799 442.46 c +374.7363 443.7578 373.957 445.2607 374.1797 446.7803 c +376.1484 447.6025 376.8027 449.6982 376.3398 451.5801 c +376.2051 451.9209 375.7324 452.1387 375.8594 452.54 c +376.1582 452.8779 376.5078 453.1279 376.8203 453.5 c +376.6523 453.2715 376.4941 453.0146 376.3398 453.0195 c +375.7012 453.1543 375.8359 453.8545 375.8594 454.2197 c +376.623 456.2021 378.8379 456.4922 380.4199 455.1797 c +380.6025 455.8018 381.1621 455.5879 381.6201 455.6602 c +381.5859 456.2578 382.0352 456.8379 382.3398 457.3398 c +382.8223 458.5059 384.6152 457.2891 385.46 458.0596 c +386.6738 458.8711 387.8438 459.6416 389.0605 459.0195 c +391.0215 457.8633 392.9004 456.5313 394.0996 454.7002 c +394.8516 453.6963 395.1152 452.2881 395.0605 451.3398 c +395.0098 450.5215 393.4902 450.9102 393.1406 449.8994 c +392.4033 447.9658 394.417 447.3945 395.2998 445.8193 c +395.4678 445.5391 395.1777 445.2031 394.8203 445.0996 c +394.3789 444.9561 393.5166 445.165 393.6201 444.6201 c +394.7363 441.1514 391.7051 440.4082 389.0605 439.8193 c +F +378.5 418.2197 m +378.5527 420.1299 376.791 422.0645 378.0195 423.9795 c +378.2695 423.793 378.4141 423.5498 378.5 423.5 c +378.7109 423.5498 378.8555 423.793 378.9805 423.9795 c +380.6455 421.5029 384.6631 420.4805 384.5 417.2598 c +384.4834 416.8594 383.2881 415.8486 384.2598 415.0996 c +382.2871 413.6572 382.2266 411.0508 381.1406 408.8594 c +379.8398 409.2939 378.5078 409.6924 377.2998 410.2998 c +377.6289 411.9346 377.499 413.7871 378.5 415.3398 c +378.8789 416.0068 378.5645 417.1924 378.5 418.2197 c +F +0.8 g +195.8599 428.0596 m +177.1953 416.9697 192.7402 433.8193 v +202.3398 444.3994 213.3799 450.6201 y +224.7798 455.4004 228.7402 456.6201 v +232.7002 458.041 249.4209 463.7598 252.98 464.2998 c +256.46 464.6406 267.02 469.04 274.5801 464.54 c +281.9814 460.2412 290.8999 455.4199 y +272.7417 464.6406 268.8198 461.8994 v +264.8218 459.3604 256.9014 459.7998 250.3398 456.3799 c +234.02 451.4404 230.4199 449.1797 v +226.981 447.0391 215.54 434.2803 213.8599 435.2598 c +212.0215 436.04 214.2197 436.4795 215.54 439.5801 c +216.8599 442.6396 214.6616 444.3994 205.9399 437.4199 c +197.0601 430.3203 195.8599 428.0596 y +F +0 g +203.7798 434.7803 m +205.436 449.0264 214.8198 447.2598 v +223.8105 451.7842 226.8198 453.9795 v +235.7578 455.8203 237.1401 456.3799 v +257.5254 466.0684 273.7183 461.0986 274.3398 462.3799 c +274.9185 463.5605 296.5063 455.7314 300.5 451.3398 c +300.9082 450.749 289.2222 457.3945 278.6602 459.5 c +269.4536 461.249 245.6934 459.2021 233.7798 453.0195 c +230.4248 451.4521 220.585 445.0898 217.7002 445.0996 c +215.0166 445.335 203.7798 434.7803 y +F +0.8 g +199.7002 406.46 m +182.9814 409.2002 201.3799 411.0195 v +221.2617 413.1582 225.6201 418.9395 v +240.6201 429.001 243.6201 429.5 v +246.7808 429.8789 279.7808 437.7988 280.3398 440.54 c +280.6616 443.0791 286.8198 443.0791 288.5 442.2197 c +290.3408 441.3193 289.46 440 286.3398 439.0996 c +283.3018 438.2402 248.9814 420.2002 241.9399 418.9395 c +234.9009 417.5596 222.1401 409.2002 216.98 407.8994 c +211.5801 406.5586 199.7002 406.46 y +F +0 g +221.0601 414.6201 m +211.731 415.6113 221.2998 416.54 v +230.8906 420.2764 233.0601 423.2598 v +240.8047 428.3887 242.4199 428.54 v +243.9585 428.8369 259.3135 432.8936 259.46 434.2998 c +259.7646 435.5957 297.2383 449.4365 302.1802 445.8193 c +305.3022 443.6162 294.4111 445.46 283.7002 440.54 c +282.3223 439.9277 245.084 423.8818 241.46 423.2598 c +237.8745 422.5303 231.3418 418.251 228.7402 417.5 c +225.9346 416.8975 221.0601 414.6201 y +F +212.4199 412.2197 m +218.1802 412.7188 216.98 411.0195 v +215.54 409.2002 212.8999 410.0596 y +212.4199 412.2197 l +F +204.5 410.54 m +210.2598 410.96 209.0601 409.0996 v +207.6201 407.4395 204.98 408.3799 y +204.5 410.54 l +F +193.2197 408.8594 m +198.8218 409.2002 197.54 407.4199 v +196.1816 405.6797 193.46 406.46 y +193.2197 408.8594 l +F +184.8198 407.8994 m +190.46 408.3193 189.1401 406.46 v +187.8198 404.7988 185.2998 405.7402 y +184.8198 407.8994 l +F +227.0601 451.3398 m +231.8218 451.4404 230.4199 449.6602 v +229.1816 447.9199 225.6201 448.46 y +227.0601 451.3398 l +F +216.02 445.3398 m +223.1357 447.6338 220.3398 443.8994 v +219.0605 442.2002 216.5 443.1797 y +216.02 445.3398 l +F +203.7798 440.0596 m +209.3818 440.4395 208.1001 438.6201 v +206.7417 436.9209 204.02 437.8994 y +203.7798 440.0596 l +F +195.3799 433.3398 m +201.02 433.8389 199.7002 432.1396 v +198.3799 430.3203 195.8599 431.1797 y +195.3799 433.3398 l +F +187.9399 428.0596 m +193.5415 428.5586 192.2598 426.8594 v +190.9014 425.041 188.1802 425.8994 y +187.9399 428.0596 l +F +230.8999 421.0996 m +238.4238 421.6689 236.6602 419.4199 v +234.9102 416.9834 231.3799 418.2197 y +230.8999 421.0996 l +F +242.1802 426.3799 m +249.8647 426.9482 248.1802 424.7002 v +246.3511 422.2637 242.8999 423.5 y +242.1802 426.3799 l +F +254.1802 431.1797 m +261.7446 431.7891 259.9399 429.5 v +258.231 427.1045 254.6602 428.2998 y +254.1802 431.1797 l +F +265.46 436.46 m +273.1831 437.0693 271.46 434.7803 v +269.6694 432.3848 266.1802 433.5801 y +265.46 436.46 l +F +235.2197 456.3799 m +242.8232 456.8691 240.98 454.46 v +239.3096 452.1846 234.98 452.54 y +235.2197 456.3799 l +F +246.2598 459.7402 m +253.8247 460.3877 252.02 458.0596 v +250.311 455.7031 245.54 455.8994 y +246.2598 459.7402 l +F +221.2998 415.8193 m +226.981 416.2402 225.6201 414.3799 v +224.3408 412.7188 221.7798 413.6602 y +221.2998 415.8193 l +F +0.254902 0.941176 1 0.243137 k +140.6602 525.0195 m +135.9009 515.2393 135.3799 511.8193 v +136.3398 521.4004 137.7798 523.5801 v +138.98 525.7998 140.6602 525.0195 y +F +120.5 509.4199 m +116.9814 493.6807 117.3799 490.7002 v +116.1006 503.3594 116.6602 504.6201 v +116.9814 506 120.5 509.4199 y +F +0.8 g +143.2998 591.5 m +143.0601 588.1396 l +140.6602 587.8994 l +156.3608 573.9795 156.98 565.5801 v +157.9014 574.6396 143.2998 591.5 v +F +0 g +147.8599 590.2998 m +147.2891 590.6475 147.5288 591.4658 147.1401 591.7393 c +146.1919 592.3203 148.5078 592.3828 148.3398 593.1797 c +147.8359 594.4971 148.0425 594.5215 147.8599 595.8193 c +147.8457 596.5801 148.4912 598.2744 148.8198 598.7002 c +150.5073 600.5762 149.0503 603.8018 150.7402 605.4199 c +151.189 605.8252 151.6016 606.4326 151.9399 606.8594 c +152.6406 607.9521 153.9414 608.4893 155.0601 609.5 c +155.3384 609.7041 155.1152 610.6133 155.7798 610.46 c +156.5264 610.3857 157.8921 610.5293 157.9399 609.5 c +157.7192 607.2705 156.2578 605.3789 154.8198 603.5 c +155.3457 602.7705 154.8418 602.0713 154.5801 601.3398 c +153.0605 598.5771 153.2695 595.4502 153.1401 592.2197 c +153.0703 592.2344 152.7344 592.1475 152.6602 591.9795 c +153.1304 589.5225 153.7734 587.1025 154.8198 584.54 c +155.1416 583.6279 155.6602 582.6436 155.7798 581.6602 c +155.9478 580.8682 156.0605 579.9531 155.54 579.2598 c +157.8511 575.998 156.4111 573.082 157.7002 569.1797 c +157.9233 568.5098 159.7856 566.4053 159.3799 566.54 c +156.5117 567.54 156.3896 567.9775 156.2598 568.7002 c +156.0342 569.4922 155.6694 571.0059 155.2998 571.5801 c +155.3384 571.8486 155.1514 573.9219 155.0601 573.9795 c +153.4014 576.6748 154.8945 576.4834 153.3799 579.0195 c +151.8174 579.8232 150.7544 581.0381 149.54 582.3799 c +149.3022 582.54 150.5601 583.3369 150.2598 583.5801 c +149.1582 584.9912 147.8911 585.833 148.3398 587.4199 c +148.4312 588.2334 148.5801 589.3975 147.8599 590.2998 c +F +143.7798 588.3799 m +144.2598 580.8008 146.8999 579.0195 v +149.54 577.2793 148.2197 578.1602 144.7402 579.5 c +141.1807 580.8008 142.5801 581.6602 y +139.4214 581.2393 142.1001 579.0195 v +144.7017 576.8408 148.6616 574.2002 146.8999 574.2197 c +145.1406 574.2002 136.7817 578.5996 136.8198 581.6602 c +136.7817 584.7607 135.6201 589.3398 y +136.8896 590.1514 142.1001 590.0596 v +143.7104 589.2705 143.7798 588.3799 v +F +1 g +143.0601 567.7393 m +133.5679 570.8906 113.2998 567.2598 v +123.1733 569.4463 143.7798 567.0195 v +155.1514 565.5654 143.0601 567.7393 y +F +0 R +0 G +1 J 0.11 w 10 M +143.0601 567.7393 m +133.5679 570.8906 113.2998 567.2598 v +123.1733 569.4463 143.7798 567.0195 v +155.1514 565.5654 143.0601 567.7393 y +143.0601 567.7393 l +s +0 O +1 g +0 J 1 w 4 M +145.2197 567.9795 m +136.1768 571.7695 115.7002 569.8994 v +125.6982 571.2266 145.9399 567.0195 v +157.2178 564.5957 145.2197 567.9795 y +F +0 R +0 G +1 J 0.11 w 10 M +145.2197 567.9795 m +136.1768 571.7695 115.7002 569.8994 v +125.6982 571.2266 145.9399 567.0195 v +157.2178 564.5957 145.2197 567.9795 y +145.2197 567.9795 l +s +0 O +1 g +0 J 1 w 4 M +147.1401 567.7393 m +138.457 572.3311 117.8599 571.8193 v +127.9663 572.5713 147.8599 566.7793 v +158.9048 563.6113 147.1401 567.7393 y +F +0 R +0 G +1 J 0.11 w 10 M +147.1401 567.7393 m +138.457 572.3311 117.8599 571.8193 v +127.9663 572.5713 147.8599 566.7793 v +158.9048 563.6113 147.1401 567.7393 y +147.1401 567.7393 l +s +0 O +1 g +0 J 1 w 4 M +148.5801 567.5 m +141.1064 572.2881 122.6602 573.5 v +131.7178 573.3105 149.2998 566.54 v +158.7729 562.9014 148.5801 567.5 y +F +0 R +0 G +1 J 0.11 w 10 M +148.5801 567.5 m +141.1064 572.2881 122.6602 573.5 v +131.7178 573.3105 149.2998 566.54 v +158.7729 562.9014 148.5801 567.5 y +148.5801 567.5 l +s +0 O +1 g +0 J 1 w 4 M +275.54 555.9795 m +274.3999 555.2764 274.5801 556.46 v +274.8726 557.873 305.9023 572.3594 309.8594 572.0596 c +276.6055 557.5586 275.54 555.9795 v +F +0 R +0 G +1 J 0.11 w 10 M +275.54 555.9795 m +274.3999 555.2764 274.5801 556.46 v +274.8726 557.873 305.9023 572.3594 309.8594 572.0596 c +276.6055 557.5586 275.54 555.9795 v +275.54 555.9795 l +s +0 O +1 g +0 J 1 w 4 M +271.7002 555.2598 m +270.728 554.4941 270.98 555.7393 v +270.9922 557.1201 300.7881 574.001 304.8198 573.9795 c +272.7441 556.9424 271.7002 555.2598 v +F +0 R +0 G +1 J 0.11 w 10 M +271.7002 555.2598 m +270.728 554.4941 270.98 555.7393 v +270.9922 557.1201 300.7881 574.001 304.8198 573.9795 c +272.7441 556.9424 271.7002 555.2598 v +271.7002 555.2598 l +s +0 O +1 g +0 J 1 w 4 M +268.1001 553.8193 m +267.1665 552.9199 267.1401 554.2998 v +267.2578 555.5576 289.0566 572.6045 299.7798 574.7002 c +280.0161 565.7266 268.1001 553.8193 v +F +0 R +0 G +1 J 0.11 w 10 M +268.1001 553.8193 m +267.1665 552.9199 267.1401 554.2998 v +267.2578 555.5576 289.0566 572.6045 299.7798 574.7002 c +280.0161 565.7266 268.1001 553.8193 v +268.1001 553.8193 l +s +0 O +1 g +0 J 1 w 4 M +264.98 551.6602 m +264.0918 550.9561 264.02 552.1396 v +264.1758 553.3301 283.7935 568.6709 293.54 570.6201 c +275.6602 562.4814 264.98 551.6602 v +F +0 R +0 G +1 J 0.11 w 10 M +264.98 551.6602 m +264.0918 550.9561 264.02 552.1396 v +264.1758 553.3301 283.7935 568.6709 293.54 570.6201 c +275.6602 562.4814 264.98 551.6602 v +264.98 551.6602 l +s +0 O +0.8 g +0 J 1 w 4 M +230.1802 388.9395 m +213.3418 391.5986 231.8599 393.2598 v +251.6216 395.5586 256.1001 401.1797 v +270.98 411.3994 274.1001 411.7402 v +277.1406 412.2803 295.1816 416.2402 295.7002 418.9395 c +296.0601 421.5195 302.6602 424.1602 304.3398 423.2598 c +306.1807 422.4004 306.1807 412.2803 303.1401 411.5 c +300.02 410.5205 279.3418 402.6006 272.4199 401.1797 c +265.2607 399.958 252.5 391.5986 247.2197 390.3799 c +241.9399 388.959 230.1802 388.9395 y +F +0 g +310.3398 429.9795 m +307.0615 428.3408 305.7798 425.4199 v +298.7002 413.8203 282.98 410.2998 v +257.7798 400.3994 249.1401 398.2998 v +234.4614 392.7002 226.3398 393.5 v +218.6216 393.3584 225.3799 391.5801 v +247.6616 393.7998 251.2998 395.6602 v +268.5605 401.499 271.9399 404.2998 v +275.1606 407.2207 295.1816 412.7188 297.6201 414.8594 c +300.02 417.1201 310.8008 426.3584 310.3398 429.9795 c +F +245.7798 395.4199 m +251.5229 395.6865 250.3398 393.9795 v +248.9863 392.2783 246.2598 393.2598 y +245.7798 395.4199 l +F +237.8599 393.9795 m +243.5981 394.2002 242.4199 392.54 v +241.064 390.79 238.3398 391.8193 y +237.8599 393.9795 l +F +226.3398 392.54 m +232.1289 392.8281 230.8999 391.0996 v +229.5918 389.4199 226.8198 390.3799 y +226.3398 392.54 l +F +217.9399 392.0596 m +223.731 392.2275 222.5 390.6201 v +221.1943 388.8193 218.4199 389.8994 y +217.9399 392.0596 l +F +264.02 403.5801 m +271.6133 403.9082 270.02 401.6602 v +268.2368 399.3701 264.7402 400.7002 y +264.02 403.5801 l +F +275.2998 408.3799 m +281.8569 412.0762 281.2998 406.46 v +280.9736 403.6953 276.02 405.5 y +275.2998 408.3799 l +F +285.3799 411.5 m +293.2231 415.6113 291.3799 409.5801 v +290.4609 406.9063 286.1001 408.6201 y +285.3799 411.5 l +F +295.7002 416.7803 m +300.6079 422.2373 301.7002 414.8594 v +302.228 412.1162 296.4199 413.8994 y +295.7002 416.7803 l +F +254.4199 398.54 m +260.2686 398.8945 258.98 397.0996 v +257.7319 395.4844 255.1401 396.3799 y +254.4199 398.54 l +F +1 g +293.7798 532.2197 m +292.8799 531.4473 292.8198 532.7002 v +292.8774 533.8018 312.1113 548.3906 321.8594 549.9795 c +304.1289 542.5107 293.7798 532.2197 v +F +0 R +0 G +1 J 0.11 w 10 M +293.7798 532.2197 m +292.8799 531.4473 292.8198 532.7002 v +292.8774 533.8018 312.1113 548.3906 321.8594 549.9795 c +304.1289 542.5107 293.7798 532.2197 v +293.7798 532.2197 l +s +0 O +0 g +0 J 1 w 4 M +296.8999 461.8994 m +321.1426 437.3594 331.2197 433.3398 v +341.3818 421.0811 336.9805 392.54 v +333.4609 384.1201 330.0195 406.9395 v +333.4609 434.7197 321.1406 417.0195 v +311.9004 428.0098 318.9805 427.5801 v +322.4629 425.4795 322.8203 427.3398 v +323.3408 429.001 314.54 443.96 295.7002 459.7402 c +276.7017 475.6396 296.8999 461.8994 y +F +1 g +232.8198 419.4199 m +232.4814 421.2988 234.5 420.3799 v +236.4414 419.54 340.0615 412.7188 374.9004 386.2998 c +325.1025 411.8408 232.8198 419.4199 v +F +0 R +0 G +1 J 0.11 w 10 M +232.8198 419.4199 m +232.4814 421.2988 234.5 420.3799 v +236.4414 419.54 340.0615 412.7188 374.9004 386.2998 c +325.1025 411.8408 232.8198 419.4199 v +232.8198 419.4199 l +s +0 O +1 g +0 J 1 w 4 M +244.1001 424.2197 m +243.9199 426.1396 246.02 425.1797 v +247.8799 424.3809 398.1416 425.4795 424.0996 389.8994 c +399.9004 417.5596 244.1001 424.2197 v +F +0 R +0 G +1 J 0.11 w 10 M +244.1001 424.2197 m +243.9199 426.1396 246.02 425.1797 v +247.8799 424.3809 398.1416 425.4795 424.0996 389.8994 c +399.9004 417.5596 244.1001 424.2197 v +244.1001 424.2197 l +s +0 O +1 g +0 J 1 w 4 M +256.8198 428.54 m +256.6807 430.5391 258.7402 429.7402 v +260.6406 428.7803 451.3809 443.0791 477.3799 407.4199 c +466.7813 435.6006 256.8198 428.54 v +F +0 R +0 G +1 J 0.11 w 10 M +256.8198 428.54 m +256.6807 430.5391 258.7402 429.7402 v +260.6406 428.7803 451.3809 443.0791 477.3799 407.4199 c +466.7813 435.6006 256.8198 428.54 v +256.8198 428.54 l +s +0 O +1 g +0 J 1 w 4 M +267.8599 433.8193 m +267.6802 435.8193 269.7798 435.0195 v +271.6401 434.0596 406.0615 476.5205 432.0195 440.7803 c +417.2813 467.9404 267.8599 433.8193 v +F +0 R +0 G +1 J 0.11 w 10 M +267.8599 433.8193 m +267.6802 435.8193 269.7798 435.0195 v +271.6401 434.0596 406.0615 476.5205 432.0195 440.7803 c +417.2813 467.9404 267.8599 433.8193 v +267.8599 433.8193 l +s +0 O +1 g +0 J 1 w 4 M +204.02 408.8594 m +203.8809 410.7393 205.9399 409.8193 v +207.8408 408.9795 227.4199 406.5586 229.7002 363.9795 c +221.7007 410.0791 204.02 408.8594 v +F +0 R +0 G +1 J 0.11 w 10 M +204.02 408.8594 m +203.8809 410.7393 205.9399 409.8193 v +207.8408 408.9795 227.4199 406.5586 229.7002 363.9795 c +221.7007 410.0791 204.02 408.8594 v +204.02 408.8594 l +s +0 O +1 g +0 J 1 w 4 M +194.4199 406.9395 m +194.2017 408.9795 196.1001 408.1396 v +198.1616 407.2207 213.7808 412.2803 210.7402 369.5 c +212.0215 408.3193 194.4199 406.9395 v +F +0 R +0 G +1 J 0.11 w 10 M +194.4199 406.9395 m +194.2017 408.9795 196.1001 408.1396 v +198.1616 407.2207 213.7808 412.2803 210.7402 369.5 c +212.0215 408.3193 194.4199 406.9395 v +194.4199 406.9395 l +s +0 O +1 g +0 J 1 w 4 M +185.54 406.46 m +185.4009 408.541 187.46 407.6602 v +189.3608 406.7793 206.2998 406.1191 192.7402 381.5 c +203.2207 407.8809 185.54 406.46 v +F +0 R +0 G +1 J 0.11 w 10 M +185.54 406.46 m +185.4009 408.541 187.46 407.6602 v +189.3608 406.7793 206.2998 406.1191 192.7402 381.5 c +203.2207 407.8809 185.54 406.46 v +185.54 406.46 l +s +0 O +1 g +0 J 1 w 4 M +237.6201 455.4199 m +237.1904 453.1299 238.8198 454.46 v +256.5703 468.3555 292.2559 533.1484 353.54 539.4199 c +311.3691 552.668 237.6201 455.4199 v +F +0 R +0 G +1 J 0.11 w 10 M +237.6201 455.4199 m +237.1904 453.1299 238.8198 454.46 v +256.5703 468.3555 292.2559 533.1484 353.54 539.4199 c +311.3691 552.668 237.6201 455.4199 v +237.6201 455.4199 l +s +0 O +1 g +0 J 1 w 4 M +250.1001 457.3398 m +248.499 458.6211 250.5801 459.2598 v +252.6104 459.9971 376.2949 539.749 419.54 531.0195 c +389.6914 539.2471 250.1001 457.3398 v +F +0 R +0 G +1 J 0.11 w 10 M +250.1001 457.3398 m +248.499 458.6211 250.5801 459.2598 v +252.6104 459.9971 376.2949 539.749 419.54 531.0195 c +389.6914 539.2471 250.1001 457.3398 v +250.1001 457.3398 l +s +0 O +1 g +0 J 1 w 4 M +227.0601 450.6201 m +226.5151 448.8389 228.5 449.8994 v +238.2681 455.5449 242.2446 518.4746 290.1802 519.7402 c +254.5278 536.043 227.0601 450.6201 v +F +0 R +0 G +1 J 0.11 w 10 M +227.0601 450.6201 m +226.5151 448.8389 228.5 449.8994 v +238.2681 455.5449 242.2446 518.4746 290.1802 519.7402 c +254.5278 536.043 227.0601 450.6201 v +227.0601 450.6201 l +s +0 O +1 g +0 J 1 w 4 M +205.2197 438.3799 m +203.9746 437.0547 206.1802 437.4199 v +217.3926 438.7998 240.9365 484.1953 289.9399 478.7002 c +254.6577 494.3906 205.2197 438.3799 v +F +0 R +0 G +1 J 0.11 w 10 M +205.2197 438.3799 m +203.9746 437.0547 206.1802 437.4199 v +217.3926 438.7998 240.9365 484.1953 289.9399 478.7002 c +254.6577 494.3906 205.2197 438.3799 v +205.2197 438.3799 l +s +0 O +1 g +0 J 1 w 4 M +217.46 445.0996 m +216.6294 443.5898 218.6602 444.3799 v +229.4624 447.8818 243.855 496.9521 292.8198 500.7803 c +255.3633 509.5928 217.46 445.0996 v +F +0 R +0 G +1 J 0.11 w 10 M +217.46 445.0996 m +216.6294 443.5898 218.6602 444.3799 v +229.4624 447.8818 243.855 496.9521 292.8198 500.7803 c +255.3633 509.5928 217.46 445.0996 v +217.46 445.0996 l +s +0 O +1 g +0 J 1 w 4 M +197.2998 432.8594 m +196.4551 431.6914 198.2598 431.8994 v +207.3247 433.1045 226.395 469.877 265.9399 465.2598 c +237.5098 478.1338 197.2998 432.8594 v +F +0 R +0 G +1 J 0.11 w 10 M +197.2998 432.8594 m +196.4551 431.6914 198.2598 431.8994 v +207.3247 433.1045 226.395 469.877 265.9399 465.2598 c +237.5098 478.1338 197.2998 432.8594 v +197.2998 432.8594 l +s +0 O +1 g +0 J 1 w 4 M +189.1401 426.3799 m +187.9497 425.1895 189.6201 425.4199 v +194.2856 425.6572 227.9863 462.0459 248.4199 445.0996 c +235.0854 465.5889 189.1401 426.3799 v +F +0 R +0 G +1 J 0.11 w 10 M +189.1401 426.3799 m +187.9497 425.1895 189.6201 425.4199 v +194.2856 425.6572 227.9863 462.0459 248.4199 445.0996 c +235.0854 465.5889 189.1401 426.3799 v +189.1401 426.3799 l +s +0 O +1 g +0 J 1 w 4 M +265.46 461.4199 m +264.2192 462.9434 266.4199 463.3398 v +268.4697 463.791 401.2441 527.2734 443.0605 513.0195 c +414.4668 525.082 265.46 461.4199 v +F +0 R +0 G +1 J 0.11 w 10 M +265.46 461.4199 m +264.2192 462.9434 266.4199 463.3398 v +268.4697 463.791 401.2441 527.2734 443.0605 513.0195 c +414.4668 525.082 265.46 461.4199 v +265.46 461.4199 l +s +0 O +1 g +0 J 1 w 4 M +228.7402 390.6201 m +228.5215 392.7002 230.4199 391.8193 v +232.4814 390.9395 249.4209 390.2793 235.7002 365.6602 c +246.3418 392.041 228.7402 390.6201 v +F +0 R +0 G +1 J 0.11 w 10 M +228.7402 390.6201 m +228.5215 392.7002 230.4199 391.8193 v +232.4814 390.9395 249.4209 390.2793 235.7002 365.6602 c +246.3418 392.041 228.7402 390.6201 v +228.7402 390.6201 l +s +0 O +1 g +0 J 1 w 4 M +240.2598 392.54 m +239.96 394.46 241.9399 393.5 v +243.9199 392.7002 263.5015 390.2793 265.7002 347.6602 c +257.7798 393.7998 240.2598 392.54 v +F +0 R +0 G +1 J 0.11 w 10 M +240.2598 392.54 m +239.96 394.46 241.9399 393.5 v +243.9199 392.7002 263.5015 390.2793 265.7002 347.6602 c +257.7798 393.7998 240.2598 392.54 v +240.2598 392.54 l +s +0 O +1 g +0 J 1 w 4 M +247.7002 394.2197 m +247.4409 396.2188 249.3799 395.4199 v +251.4009 394.46 278.4609 390.7207 304.3398 355.0996 c +265.2607 395.5586 247.7002 394.2197 v +F +0 R +0 G +1 J 0.11 w 10 M +247.7002 394.2197 m +247.4409 396.2188 249.3799 395.4199 v +251.4009 394.46 278.4609 390.7207 304.3398 355.0996 c +265.2607 395.5586 247.7002 394.2197 v +247.7002 394.2197 l +s +0 O +1 g +0 J 1 w 4 M +256.1001 396.3799 m +255.5674 398.4053 257.54 397.8193 v +259.7266 397.1865 282.2021 399.2764 324.0195 361.5801 c +273.3174 400.1191 256.1001 396.3799 v +F +0 R +0 G +1 J 0.11 w 10 M +256.1001 396.3799 m +255.5674 398.4053 257.54 397.8193 v +259.7266 397.1865 282.2021 399.2764 324.0195 361.5801 c +273.3174 400.1191 256.1001 396.3799 v +256.1001 396.3799 l +s +0 O +1 g +0 J 1 w 4 M +267.3799 401.4199 m +267.0078 403.2461 269.0601 402.6201 v +271.165 402.0273 309.4834 397.0762 366.2598 358.7002 c +284.7559 404.96 267.3799 401.4199 v +F +0 R +0 G +1 J 0.11 w 10 M +267.3799 401.4199 m +267.0078 403.2461 269.0601 402.6201 v +271.165 402.0273 309.4834 397.0762 366.2598 358.7002 c +284.7559 404.96 267.3799 401.4199 v +267.3799 401.4199 l +s +0 O +1 g +0 J 1 w 4 M +222.98 414.1396 m +222.7998 416.0186 224.8999 415.0996 v +226.7598 414.2598 285.5 411.3994 318.9805 381.9795 c +280.5488 409.1719 222.98 414.1396 v +F +0 R +0 G +1 J 0.11 w 10 M +222.98 414.1396 m +222.7998 416.0186 224.8999 415.0996 v +226.7598 414.2598 285.5 411.3994 318.9805 381.9795 c +280.5488 409.1719 222.98 414.1396 v +222.98 414.1396 l +s +0 O +1 g +0 J 1 w 4 M +211.9399 409.5801 m +211.8008 411.6201 213.8599 410.7803 v +215.7607 409.8584 242.8208 406.1191 268.8198 370.46 c +229.6206 410.96 211.9399 409.5801 v +F +0 R +0 G +1 J 0.11 w 10 M +211.9399 409.5801 m +211.8008 411.6201 213.8599 410.7803 v +215.7607 409.8584 242.8208 406.1191 268.8198 370.46 c +229.6206 410.96 211.9399 409.5801 v +211.9399 409.5801 l +s +0 O +1 g +0 J 1 w 4 M +279.3799 406.46 m +278.833 408.2764 281.0601 407.8994 v +283.0688 407.3672 321.6465 405.2354 381.1406 370.9395 c +295.748 408.8672 279.3799 406.46 v +F +0 R +0 G +1 J 0.11 w 10 M +279.3799 406.46 m +278.833 408.2764 281.0601 407.8994 v +283.0688 407.3672 321.6465 405.2354 381.1406 370.9395 c +295.748 408.8672 279.3799 406.46 v +279.3799 406.46 l +s +0 O +1 g +0 J 1 w 4 M +288.7402 409.0996 m +288.0728 410.917 290.1802 410.54 v +292.3086 410.0068 330.8867 407.876 390.5 373.5801 c +305.6479 411.9463 288.7402 409.0996 v +F +0 R +0 G +1 J 0.11 w 10 M +288.7402 409.0996 m +288.0728 410.917 290.1802 410.54 v +292.3086 410.0068 330.8867 407.876 390.5 373.5801 c +305.6479 411.9463 288.7402 409.0996 v +288.7402 409.0996 l +s +0 O +1 g +0 J 1 w 4 M +299.2998 414.6201 m +298.6328 416.415 300.7402 416.0596 v +302.8687 415.5049 350.2471 410.7363 449.0605 373.0996 c +316.208 417.4473 299.2998 414.6201 v +F +0 R +0 G +1 J 0.11 w 10 M +299.2998 414.6201 m +298.6328 416.415 300.7402 416.0596 v +302.8687 415.5049 350.2471 410.7363 449.0605 373.0996 c +316.208 417.4473 299.2998 414.6201 v +299.2998 414.6201 l +s +0 O +0 g +0 J 1 w 4 M +176.8999 406.9395 m +182.54 407.4395 181.2197 405.7402 v +179.8999 403.9209 177.3799 404.7803 y +176.8999 406.9395 l +F +210.7402 391.5801 m +216.4209 392.041 215.0601 390.3799 v +213.7808 388.5195 211.2197 389.4199 y +210.7402 391.5801 l +F +201.1401 392.0596 m +206.7417 392.4795 205.46 390.6201 v +204.1016 388.959 201.3799 389.8994 y +201.1401 392.0596 l +F +96.02 405.0195 m +101.665 403.585 99.8599 402.3799 v +98.0166 401.1221 95.7798 402.8594 y +96.02 405.0195 l +F +98.4199 415.5801 m +103.8633 414.1445 102.02 412.9395 v +100.2178 411.6826 97.9399 413.4199 y +98.4199 415.5801 l +F +90.5 420.3799 m +95.9434 418.9854 94.1001 417.7402 v +92.2974 416.5225 90.02 418.2197 y +90.5 420.3799 l +F +0.8 g +178.1001 337.8193 m +176.3818 337.9209 172.1001 335.6602 v +169.7817 335.7197 157.46 331.7598 151.2197 320.7803 c +164.9409 331.3203 178.1001 337.8193 v +F +274.5801 236.0596 m +274.7842 235.7266 274.8438 235.2627 275.0601 235.3398 c +275.8877 235.2002 277.2441 234.8691 277.2197 235.5801 c +276.1733 240.3057 275.2134 245.7363 270.7402 247.8193 c +269.9648 248.0313 268.3784 247.5771 268.3398 246.6201 c +268.1553 244.9277 268.0278 243.4443 268.3398 241.8193 c +268.6978 240.2695 271.0713 240.2578 272.1802 241.8193 c +273.1113 239.9404 273.5864 237.9121 274.5801 236.0596 c +F +262.3398 230.7803 m +263.2666 229.2461 263.125 227.2012 264.7402 226.7002 c +265.4961 226.2607 267.5313 227.333 267.1401 228.6201 c +266.1895 230.7803 265.7622 233.2441 264.2598 235.3398 c +264.0151 235.5244 264.2769 236.1104 264.02 236.54 c +263.4487 237.8115 262.189 238.623 260.6602 238.2197 c +259.4146 235.8369 260.6768 233.4941 262.3398 231.5 c +262.501 231.4473 262.3184 231.0342 262.3398 230.7803 c +F +218.8999 236.54 m +218.7607 236.9258 218.7197 237.4346 218.8999 237.7393 c +219.4854 238.9229 220.3569 240.1592 220.1001 241.3398 c +219.603 242.4434 218.377 242.2441 217.7002 241.5801 c +216.4136 240.5234 216.3584 238.5146 215.54 237.0195 c +215.3838 236.5947 215.4395 235.9658 215.0601 235.5801 c +214.4336 235.0732 213.9487 233.3955 214.1001 232.7002 c +214.1118 232.4238 213.9102 221.5254 214.1001 221.8994 c +214.8369 222.6201 218.1919 233.3291 218.1802 234.3799 c +218.3311 235.1143 219.1353 235.625 218.8999 236.54 c +F +190.5801 243.9795 m +193.5752 246.7305 196.6445 249.9893 196.1001 254.0596 c +196.0303 255.1445 194.0767 254.5664 193.9399 253.5801 c +192.9897 249.6465 190.748 246.7207 187.9399 243.9795 c +185.5063 241.8369 183.459 234.8594 183.1401 234.3799 c +187.2681 240.082 189.7495 243.1016 190.5801 243.9795 c +F +175.7002 250.46 m +176.3218 250.9492 175.9902 251.4893 176.1802 251.8994 c +177.2769 253.457 178.707 254.8281 178.8198 256.7002 c +178.731 257.0449 178.3159 257.3857 177.8599 257.1797 c +177.6416 256.9375 177.2646 256.793 177.1401 256.7002 c +174.915 253.957 173.3745 251.0186 171.8599 247.8193 c +171.5864 247.5322 170.3262 242.5928 170.6602 242.54 c +170.9336 242.377 172.8271 246.9746 173.0601 247.0996 c +174.4473 247.8555 174.459 249.6318 175.7002 250.46 c +F +194.1802 229.0996 m +194.6406 230 196.3735 231.3223 196.3398 232.2197 c +196.1216 233.3213 196.6353 234.9082 195.6201 234.1396 c +194.2495 233.1074 190.4551 231.625 190.1001 225.2598 c +190.1313 224.6064 193.4023 227.5713 194.1802 229.0996 c +F +210.02 247.8193 m +210.481 248.6738 211.2583 248.1533 211.7002 248.54 c +212.4775 248.8516 213.1494 249.4658 213.3799 250.2197 c +214.5366 252.543 216.4834 254.5469 216.7402 257.1797 c +215 258.7256 214.2534 256.4814 213.6201 255.5 c +212.1055 257.2305 211.0063 255.1709 209.54 254.54 c +209.499 254.5684 209.2642 254.9502 209.2998 255.0195 c +207.8862 254.4365 207.1401 253.2461 205.9399 252.3799 c +205.8535 252.2402 205.4097 252.4395 205.2197 252.3799 c +204.5288 251.626 203.4585 251.2686 203.0601 250.46 c +201.9297 247.541 198.4761 245.2354 196.3398 237.0195 c +196.8198 235.9395 201.3633 244.2461 201.8599 244.9395 c +202.8198 246.3291 202.9497 243.1875 204.2598 243.9795 c +204.4087 243.9482 204.6128 243.6865 204.7402 243.5 c +204.9727 243.8477 205.2129 244.0996 205.7002 243.9795 c +205.6401 244.4189 205.4937 245.0313 205.7002 245.1797 c +207.0752 246.2813 206.9814 247.4551 207.8599 248.7803 c +208.3447 247.9521 209.5112 248.7412 210.02 247.8193 c +F +275.7798 188.0596 m +283.9614 210.54 279.1401 222.8594 v +291.6606 199.0996 286.5801 186.8594 v +286.1602 198.2188 281.7798 203.6602 v +277.3613 189.6387 275.7798 188.0596 v +F +259.46 190.9395 m +265.4814 200.6406 256.5801 220.9395 v +255.7998 198.4395 248.4199 186.3799 v +263.9409 208.5605 259.46 190.9395 v +F +248.6602 193.0996 m +248.3218 215.1602 248.6602 218.54 v +244.5801 200.1992 233.2998 189.7393 v +249.2002 202.8389 248.6602 193.0996 v +F +238.1001 228.3799 m +244.5801 213.3994 233.54 193.0996 v +240.6201 206.5781 235.46 214.2197 v +238.2007 218.0186 238.1001 228.3799 v +F +216.98 193.5801 m +215.7607 210.7588 217.7002 213.2598 v +217.9614 220.2197 217.46 221.4199 v +221.9214 228.1396 222.2598 219.9795 v +223.6807 211.4189 226.8198 206.2998 v +230.7197 200.4199 230.4199 193.3398 v +219.5 226.5986 216.98 193.5801 v +F +212.8999 224.0596 m +205.6401 212.0791 203.7798 191.1797 v +202.1216 198.001 206.4199 213.7393 v +210.9199 230.7803 212.8999 224.0596 v +F +188.8999 202.2197 m +194.4199 208.1191 195.8599 213.5 v +199.9209 231.001 192.98 221.4199 v +193.1001 212.7393 184.1001 204.6201 v +189.3608 207.2402 188.8999 202.2197 v +F +182.6602 207.7393 m +186.2817 226.8193 187.2197 227.6602 v +189.1401 231.4395 186.02 227.8994 v +176.3818 206.7988 172.1001 199.5801 v +180.7808 209.6602 182.6602 207.7393 v +F +176.1802 225.9795 m +188.9214 250.5801 164.8999 222.1396 v +177.0415 232.9785 176.1802 225.9795 v +F +159.1401 242.0596 m +164.5015 262.6777 167.2998 262.46 v +176.3818 272.3594 169.2197 260.7803 v +162.5215 250.1406 163.2197 239.4199 v +162.5215 249.9199 159.1401 242.0596 v +F +522.5 254.54 m +509.3496 265.541 506.6602 269.4199 v +521.4512 249.041 521.54 241.3398 v +524.2012 249.5908 522.5 254.54 v +F +528.5 278.7803 m +505.501 295.2412 501.6201 303.5 v +530.8018 271.04 530.9004 266.0596 v +531.3516 275.9912 528.5 278.7803 v +F +547.2197 448.2197 m +534.1016 456.9414 532.3398 454.7002 v +544.002 447.5908 546.7402 438.1396 v +545.1006 448.1406 547.2197 448.2197 v +F +556.5801 359.6602 m +537.3799 372.8594 l +558.3008 354.0918 558.7402 349.5801 v +556.5801 359.6602 l +F +*u +0 R +0 G +1 J 1.1 w 10 M +126.7402 384.3799 m +150.98 379.0996 l +S +1 D +182.1802 206.0596 m +181.5513 209.9912 171.6201 198.3799 v +S +188.1802 200.54 m +190.3496 207.79 183.1401 202.9395 v +S +247.46 191.1797 m +249.2002 203.3906 236.6602 189.0195 v +S +*U +U +%%PageTrailer +gsave annotatepage grestore showpage +%%Trailer +Adobe_Illustrator_AI3 /terminate get exec +Adobe_pattern_AI3 /terminate get exec +Adobe_customcolor /terminate get exec +Adobe_cshow /terminate get exec +Adobe_cmykcolor /terminate get exec +Adobe_packedarray /terminate get exec +%%EOF diff --git a/htdocs/includes/phpexcel/PHPExcel/locale/pt/br/functions b/htdocs/includes/phpexcel/PHPExcel/locale/pt/br/functions index f3ba3a3523f..a062a7fad51 100644 --- a/htdocs/includes/phpexcel/PHPExcel/locale/pt/br/functions +++ b/htdocs/includes/phpexcel/PHPExcel/locale/pt/br/functions @@ -1,408 +1,408 @@ -## -## Add-in and Automation functions Funções Suplemento e Automação -## -GETPIVOTDATA = INFODADOSTABELADINÂMICA ## Retorna os dados armazenados em um relatório de tabela dinâmica - - -## -## Cube functions Funções de Cubo -## -CUBEKPIMEMBER = MEMBROKPICUBO ## Retorna o nome de um KPI (indicador de desempenho-chave), uma propriedade e uma medida e exibe o nome e a propriedade na célula. Um KPI é uma medida quantificável, como o lucro bruto mensal ou a rotatividade trimestral dos funcionários, usada para monitorar o desempenho de uma organização. -CUBEMEMBER = MEMBROCUBO ## Retorna um membro ou tupla em uma hierarquia de cubo. Use para validar se o membro ou tupla existe no cubo. -CUBEMEMBERPROPERTY = PROPRIEDADEMEMBROCUBO ## Retorna o valor da propriedade de um membro no cubo. Usada para validar a existência do nome do membro no cubo e para retornar a propriedade especificada para esse membro. -CUBERANKEDMEMBER = MEMBROCLASSIFICADOCUBO ## Retorna o enésimo membro, ou o membro ordenado, em um conjunto. Use para retornar um ou mais elementos em um conjunto, assim como o melhor vendedor ou os dez melhores alunos. -CUBESET = CONJUNTOCUBO ## Define um conjunto calculado de membros ou tuplas enviando uma expressão do conjunto para o cubo no servidor, que cria o conjunto e o retorna para o Microsoft Office Excel. -CUBESETCOUNT = CONTAGEMCONJUNTOCUBO ## Retorna o número de itens em um conjunto. -CUBEVALUE = VALORCUBO ## Retorna um valor agregado de um cubo. - - -## -## Database functions Funções de banco de dados -## -DAVERAGE = BDMÉDIA ## Retorna a média das entradas selecionadas de um banco de dados -DCOUNT = BDCONTAR ## Conta as células que contêm números em um banco de dados -DCOUNTA = BDCONTARA ## Conta células não vazias em um banco de dados -DGET = BDEXTRAIR ## Extrai de um banco de dados um único registro que corresponde a um critério específico -DMAX = BDMÁX ## Retorna o valor máximo de entradas selecionadas de um banco de dados -DMIN = BDMÍN ## Retorna o valor mínimo de entradas selecionadas de um banco de dados -DPRODUCT = BDMULTIPL ## Multiplica os valores em um campo específico de registros que correspondem ao critério em um banco de dados -DSTDEV = BDEST ## Estima o desvio padrão com base em uma amostra de entradas selecionadas de um banco de dados -DSTDEVP = BDDESVPA ## Calcula o desvio padrão com base na população inteira de entradas selecionadas de um banco de dados -DSUM = BDSOMA ## Adiciona os números à coluna de campos de registros do banco de dados que correspondem ao critério -DVAR = BDVAREST ## Estima a variância com base em uma amostra de entradas selecionadas de um banco de dados -DVARP = BDVARP ## Calcula a variância com base na população inteira de entradas selecionadas de um banco de dados - - -## -## Date and time functions Funções de data e hora -## -DATE = DATA ## Retorna o número de série de uma data específica -DATEVALUE = DATA.VALOR ## Converte uma data na forma de texto para um número de série -DAY = DIA ## Converte um número de série em um dia do mês -DAYS360 = DIAS360 ## Calcula o número de dias entre duas datas com base em um ano de 360 dias -EDATE = DATAM ## Retorna o número de série da data que é o número indicado de meses antes ou depois da data inicial -EOMONTH = FIMMÊS ## Retorna o número de série do último dia do mês antes ou depois de um número especificado de meses -HOUR = HORA ## Converte um número de série em uma hora -MINUTE = MINUTO ## Converte um número de série em um minuto -MONTH = MÊS ## Converte um número de série em um mês -NETWORKDAYS = DIATRABALHOTOTAL ## Retorna o número de dias úteis inteiros entre duas datas -NOW = AGORA ## Retorna o número de série seqüencial da data e hora atuais -SECOND = SEGUNDO ## Converte um número de série em um segundo -TIME = HORA ## Retorna o número de série de uma hora específica -TIMEVALUE = VALOR.TEMPO ## Converte um horário na forma de texto para um número de série -TODAY = HOJE ## Retorna o número de série da data de hoje -WEEKDAY = DIA.DA.SEMANA ## Converte um número de série em um dia da semana -WEEKNUM = NÚMSEMANA ## Converte um número de série em um número que representa onde a semana cai numericamente em um ano -WORKDAY = DIATRABALHO ## Retorna o número de série da data antes ou depois de um número específico de dias úteis -YEAR = ANO ## Converte um número de série em um ano -YEARFRAC = FRAÇÃOANO ## Retorna a fração do ano que representa o número de dias entre data_inicial e data_final - - -## -## Engineering functions Funções de engenharia -## -BESSELI = BESSELI ## Retorna a função de Bessel In(x) modificada -BESSELJ = BESSELJ ## Retorna a função de Bessel Jn(x) -BESSELK = BESSELK ## Retorna a função de Bessel Kn(x) modificada -BESSELY = BESSELY ## Retorna a função de Bessel Yn(x) -BIN2DEC = BIN2DEC ## Converte um número binário em decimal -BIN2HEX = BIN2HEX ## Converte um número binário em hexadecimal -BIN2OCT = BIN2OCT ## Converte um número binário em octal -COMPLEX = COMPLEX ## Converte coeficientes reais e imaginários e um número complexo -CONVERT = CONVERTER ## Converte um número de um sistema de medida para outro -DEC2BIN = DECABIN ## Converte um número decimal em binário -DEC2HEX = DECAHEX ## Converte um número decimal em hexadecimal -DEC2OCT = DECAOCT ## Converte um número decimal em octal -DELTA = DELTA ## Testa se dois valores são iguais -ERF = FUNERRO ## Retorna a função de erro -ERFC = FUNERROCOMPL ## Retorna a função de erro complementar -GESTEP = DEGRAU ## Testa se um número é maior do que um valor limite -HEX2BIN = HEXABIN ## Converte um número hexadecimal em binário -HEX2DEC = HEXADEC ## Converte um número hexadecimal em decimal -HEX2OCT = HEXAOCT ## Converte um número hexadecimal em octal -IMABS = IMABS ## Retorna o valor absoluto (módulo) de um número complexo -IMAGINARY = IMAGINÁRIO ## Retorna o coeficiente imaginário de um número complexo -IMARGUMENT = IMARG ## Retorna o argumento teta, um ângulo expresso em radianos -IMCONJUGATE = IMCONJ ## Retorna o conjugado complexo de um número complexo -IMCOS = IMCOS ## Retorna o cosseno de um número complexo -IMDIV = IMDIV ## Retorna o quociente de dois números complexos -IMEXP = IMEXP ## Retorna o exponencial de um número complexo -IMLN = IMLN ## Retorna o logaritmo natural de um número complexo -IMLOG10 = IMLOG10 ## Retorna o logaritmo de base 10 de um número complexo -IMLOG2 = IMLOG2 ## Retorna o logaritmo de base 2 de um número complexo -IMPOWER = IMPOT ## Retorna um número complexo elevado a uma potência inteira -IMPRODUCT = IMPROD ## Retorna o produto de números complexos -IMREAL = IMREAL ## Retorna o coeficiente real de um número complexo -IMSIN = IMSENO ## Retorna o seno de um número complexo -IMSQRT = IMRAIZ ## Retorna a raiz quadrada de um número complexo -IMSUB = IMSUBTR ## Retorna a diferença entre dois números complexos -IMSUM = IMSOMA ## Retorna a soma de números complexos -OCT2BIN = OCTABIN ## Converte um número octal em binário -OCT2DEC = OCTADEC ## Converte um número octal em decimal -OCT2HEX = OCTAHEX ## Converte um número octal em hexadecimal - - -## -## Financial functions Funções financeiras -## -ACCRINT = JUROSACUM ## Retorna a taxa de juros acumulados de um título que paga uma taxa periódica de juros -ACCRINTM = JUROSACUMV ## Retorna os juros acumulados de um título que paga juros no vencimento -AMORDEGRC = AMORDEGRC ## Retorna a depreciação para cada período contábil usando o coeficiente de depreciação -AMORLINC = AMORLINC ## Retorna a depreciação para cada período contábil -COUPDAYBS = CUPDIASINLIQ ## Retorna o número de dias do início do período de cupom até a data de liquidação -COUPDAYS = CUPDIAS ## Retorna o número de dias no período de cupom que contém a data de quitação -COUPDAYSNC = CUPDIASPRÓX ## Retorna o número de dias da data de liquidação até a data do próximo cupom -COUPNCD = CUPDATAPRÓX ## Retorna a próxima data de cupom após a data de quitação -COUPNUM = CUPNÚM ## Retorna o número de cupons pagáveis entre as datas de quitação e vencimento -COUPPCD = CUPDATAANT ## Retorna a data de cupom anterior à data de quitação -CUMIPMT = PGTOJURACUM ## Retorna os juros acumulados pagos entre dois períodos -CUMPRINC = PGTOCAPACUM ## Retorna o capital acumulado pago sobre um empréstimo entre dois períodos -DB = BD ## Retorna a depreciação de um ativo para um período especificado, usando o método de balanço de declínio fixo -DDB = BDD ## Retorna a depreciação de um ativo com relação a um período especificado usando o método de saldos decrescentes duplos ou qualquer outro método especificado por você -DISC = DESC ## Retorna a taxa de desconto de um título -DOLLARDE = MOEDADEC ## Converte um preço em formato de moeda, na forma fracionária, em um preço na forma decimal -DOLLARFR = MOEDAFRA ## Converte um preço, apresentado na forma decimal, em um preço apresentado na forma fracionária -DURATION = DURAÇÃO ## Retorna a duração anual de um título com pagamentos de juros periódicos -EFFECT = EFETIVA ## Retorna a taxa de juros anual efetiva -FV = VF ## Retorna o valor futuro de um investimento -FVSCHEDULE = VFPLANO ## Retorna o valor futuro de um capital inicial após a aplicação de uma série de taxas de juros compostas -INTRATE = TAXAJUROS ## Retorna a taxa de juros de um título totalmente investido -IPMT = IPGTO ## Retorna o pagamento de juros para um investimento em um determinado período -IRR = TIR ## Retorna a taxa interna de retorno de uma série de fluxos de caixa -ISPMT = ÉPGTO ## Calcula os juros pagos durante um período específico de um investimento -MDURATION = MDURAÇÃO ## Retorna a duração de Macauley modificada para um título com um valor de paridade equivalente a R$ 100 -MIRR = MTIR ## Calcula a taxa interna de retorno em que fluxos de caixa positivos e negativos são financiados com diferentes taxas -NOMINAL = NOMINAL ## Retorna a taxa de juros nominal anual -NPER = NPER ## Retorna o número de períodos de um investimento -NPV = VPL ## Retorna o valor líquido atual de um investimento com base em uma série de fluxos de caixa periódicos e em uma taxa de desconto -ODDFPRICE = PREÇOPRIMINC ## Retorna o preço por R$ 100 de valor nominal de um título com um primeiro período indefinido -ODDFYIELD = LUCROPRIMINC ## Retorna o rendimento de um título com um primeiro período indefinido -ODDLPRICE = PREÇOÚLTINC ## Retorna o preço por R$ 100 de valor nominal de um título com um último período de cupom indefinido -ODDLYIELD = LUCROÚLTINC ## Retorna o rendimento de um título com um último período indefinido -PMT = PGTO ## Retorna o pagamento periódico de uma anuidade -PPMT = PPGTO ## Retorna o pagamento de capital para determinado período de investimento -PRICE = PREÇO ## Retorna a preço por R$ 100,00 de valor nominal de um título que paga juros periódicos -PRICEDISC = PREÇODESC ## Retorna o preço por R$ 100,00 de valor nominal de um título descontado -PRICEMAT = PREÇOVENC ## Retorna o preço por R$ 100,00 de valor nominal de um título que paga juros no vencimento -PV = VP ## Retorna o valor presente de um investimento -RATE = TAXA ## Retorna a taxa de juros por período de uma anuidade -RECEIVED = RECEBER ## Retorna a quantia recebida no vencimento de um título totalmente investido -SLN = DPD ## Retorna a depreciação em linha reta de um ativo durante um período -SYD = SDA ## Retorna a depreciação dos dígitos da soma dos anos de um ativo para um período especificado -TBILLEQ = OTN ## Retorna o rendimento de um título equivalente a uma obrigação do Tesouro -TBILLPRICE = OTNVALOR ## Retorna o preço por R$ 100,00 de valor nominal de uma obrigação do Tesouro -TBILLYIELD = OTNLUCRO ## Retorna o rendimento de uma obrigação do Tesouro -VDB = BDV ## Retorna a depreciação de um ativo para um período especificado ou parcial usando um método de balanço declinante -XIRR = XTIR ## Fornece a taxa interna de retorno para um programa de fluxos de caixa que não é necessariamente periódico -XNPV = XVPL ## Retorna o valor presente líquido de um programa de fluxos de caixa que não é necessariamente periódico -YIELD = LUCRO ## Retorna o lucro de um título que paga juros periódicos -YIELDDISC = LUCRODESC ## Retorna o rendimento anual de um título descontado. Por exemplo, uma obrigação do Tesouro -YIELDMAT = LUCROVENC ## Retorna o lucro anual de um título que paga juros no vencimento - - -## -## Information functions Funções de informação -## -CELL = CÉL ## Retorna informações sobre formatação, localização ou conteúdo de uma célula -ERROR.TYPE = TIPO.ERRO ## Retorna um número correspondente a um tipo de erro -INFO = INFORMAÇÃO ## Retorna informações sobre o ambiente operacional atual -ISBLANK = ÉCÉL.VAZIA ## Retorna VERDADEIRO se o valor for vazio -ISERR = ÉERRO ## Retorna VERDADEIRO se o valor for um valor de erro diferente de #N/D -ISERROR = ÉERROS ## Retorna VERDADEIRO se o valor for um valor de erro -ISEVEN = ÉPAR ## Retorna VERDADEIRO se o número for par -ISLOGICAL = ÉLÓGICO ## Retorna VERDADEIRO se o valor for um valor lógico -ISNA = É.NÃO.DISP ## Retorna VERDADEIRO se o valor for o valor de erro #N/D -ISNONTEXT = É.NÃO.TEXTO ## Retorna VERDADEIRO se o valor for diferente de texto -ISNUMBER = ÉNÚM ## Retorna VERDADEIRO se o valor for um número -ISODD = ÉIMPAR ## Retorna VERDADEIRO se o número for ímpar -ISREF = ÉREF ## Retorna VERDADEIRO se o valor for uma referência -ISTEXT = ÉTEXTO ## Retorna VERDADEIRO se o valor for texto -N = N ## Retorna um valor convertido em um número -NA = NÃO.DISP ## Retorna o valor de erro #N/D -TYPE = TIPO ## Retorna um número indicando o tipo de dados de um valor - - -## -## Logical functions Funções lógicas -## -AND = E ## Retorna VERDADEIRO se todos os seus argumentos forem VERDADEIROS -FALSE = FALSO ## Retorna o valor lógico FALSO -IF = SE ## Especifica um teste lógico a ser executado -IFERROR = SEERRO ## Retornará um valor que você especifica se uma fórmula for avaliada para um erro; do contrário, retornará o resultado da fórmula -NOT = NÃO ## Inverte o valor lógico do argumento -OR = OU ## Retorna VERDADEIRO se um dos argumentos for VERDADEIRO -TRUE = VERDADEIRO ## Retorna o valor lógico VERDADEIRO - - -## -## Lookup and reference functions Funções de pesquisa e referência -## -ADDRESS = ENDEREÇO ## Retorna uma referência como texto para uma única célula em uma planilha -AREAS = ÁREAS ## Retorna o número de áreas em uma referência -CHOOSE = ESCOLHER ## Escolhe um valor a partir de uma lista de valores -COLUMN = COL ## Retorna o número da coluna de uma referência -COLUMNS = COLS ## Retorna o número de colunas em uma referência -HLOOKUP = PROCH ## Procura na linha superior de uma matriz e retorna o valor da célula especificada -HYPERLINK = HYPERLINK ## Cria um atalho ou salto que abre um documento armazenado em um servidor de rede, uma intranet ou na Internet -INDEX = ÍNDICE ## Usa um índice para escolher um valor de uma referência ou matriz -INDIRECT = INDIRETO ## Retorna uma referência indicada por um valor de texto -LOOKUP = PROC ## Procura valores em um vetor ou em uma matriz -MATCH = CORRESP ## Procura valores em uma referência ou em uma matriz -OFFSET = DESLOC ## Retorna um deslocamento de referência com base em uma determinada referência -ROW = LIN ## Retorna o número da linha de uma referência -ROWS = LINS ## Retorna o número de linhas em uma referência -RTD = RTD ## Recupera dados em tempo real de um programa que ofereça suporte a automação COM (automação: uma forma de trabalhar com objetos de um aplicativo a partir de outro aplicativo ou ferramenta de desenvolvimento. Chamada inicialmente de automação OLE, a automação é um padrão industrial e um recurso do modelo de objeto componente (COM).) -TRANSPOSE = TRANSPOR ## Retorna a transposição de uma matriz -VLOOKUP = PROCV ## Procura na primeira coluna de uma matriz e move ao longo da linha para retornar o valor de uma célula - - -## -## Math and trigonometry functions Funções matemáticas e trigonométricas -## -ABS = ABS ## Retorna o valor absoluto de um número -ACOS = ACOS ## Retorna o arco cosseno de um número -ACOSH = ACOSH ## Retorna o cosseno hiperbólico inverso de um número -ASIN = ASEN ## Retorna o arco seno de um número -ASINH = ASENH ## Retorna o seno hiperbólico inverso de um número -ATAN = ATAN ## Retorna o arco tangente de um número -ATAN2 = ATAN2 ## Retorna o arco tangente das coordenadas x e y especificadas -ATANH = ATANH ## Retorna a tangente hiperbólica inversa de um número -CEILING = TETO ## Arredonda um número para o inteiro mais próximo ou para o múltiplo mais próximo de significância -COMBIN = COMBIN ## Retorna o número de combinações de um determinado número de objetos -COS = COS ## Retorna o cosseno de um número -COSH = COSH ## Retorna o cosseno hiperbólico de um número -DEGREES = GRAUS ## Converte radianos em graus -EVEN = PAR ## Arredonda um número para cima até o inteiro par mais próximo -EXP = EXP ## Retorna e elevado à potência de um número especificado -FACT = FATORIAL ## Retorna o fatorial de um número -FACTDOUBLE = FATDUPLO ## Retorna o fatorial duplo de um número -FLOOR = ARREDMULTB ## Arredonda um número para baixo até zero -GCD = MDC ## Retorna o máximo divisor comum -INT = INT ## Arredonda um número para baixo até o número inteiro mais próximo -LCM = MMC ## Retorna o mínimo múltiplo comum -LN = LN ## Retorna o logaritmo natural de um número -LOG = LOG ## Retorna o logaritmo de um número de uma base especificada -LOG10 = LOG10 ## Retorna o logaritmo de base 10 de um número -MDETERM = MATRIZ.DETERM ## Retorna o determinante de uma matriz de uma variável do tipo matriz -MINVERSE = MATRIZ.INVERSO ## Retorna a matriz inversa de uma matriz -MMULT = MATRIZ.MULT ## Retorna o produto de duas matrizes -MOD = RESTO ## Retorna o resto da divisão -MROUND = MARRED ## Retorna um número arredondado ao múltiplo desejado -MULTINOMIAL = MULTINOMIAL ## Retorna o multinomial de um conjunto de números -ODD = ÍMPAR ## Arredonda um número para cima até o inteiro ímpar mais próximo -PI = PI ## Retorna o valor de Pi -POWER = POTÊNCIA ## Fornece o resultado de um número elevado a uma potência -PRODUCT = MULT ## Multiplica seus argumentos -QUOTIENT = QUOCIENTE ## Retorna a parte inteira de uma divisão -RADIANS = RADIANOS ## Converte graus em radianos -RAND = ALEATÓRIO ## Retorna um número aleatório entre 0 e 1 -RANDBETWEEN = ALEATÓRIOENTRE ## Retorna um número aleatório entre os números especificados -ROMAN = ROMANO ## Converte um algarismo arábico em romano, como texto -ROUND = ARRED ## Arredonda um número até uma quantidade especificada de dígitos -ROUNDDOWN = ARREDONDAR.PARA.BAIXO ## Arredonda um número para baixo até zero -ROUNDUP = ARREDONDAR.PARA.CIMA ## Arredonda um número para cima, afastando-o de zero -SERIESSUM = SOMASEQÜÊNCIA ## Retorna a soma de uma série polinomial baseada na fórmula -SIGN = SINAL ## Retorna o sinal de um número -SIN = SEN ## Retorna o seno de um ângulo dado -SINH = SENH ## Retorna o seno hiperbólico de um número -SQRT = RAIZ ## Retorna uma raiz quadrada positiva -SQRTPI = RAIZPI ## Retorna a raiz quadrada de (núm* pi) -SUBTOTAL = SUBTOTAL ## Retorna um subtotal em uma lista ou em um banco de dados -SUM = SOMA ## Soma seus argumentos -SUMIF = SOMASE ## Adiciona as células especificadas por um determinado critério -SUMIFS = SOMASE ## Adiciona as células em um intervalo que atende a vários critérios -SUMPRODUCT = SOMARPRODUTO ## Retorna a soma dos produtos de componentes correspondentes de matrizes -SUMSQ = SOMAQUAD ## Retorna a soma dos quadrados dos argumentos -SUMX2MY2 = SOMAX2DY2 ## Retorna a soma da diferença dos quadrados dos valores correspondentes em duas matrizes -SUMX2PY2 = SOMAX2SY2 ## Retorna a soma da soma dos quadrados dos valores correspondentes em duas matrizes -SUMXMY2 = SOMAXMY2 ## Retorna a soma dos quadrados das diferenças dos valores correspondentes em duas matrizes -TAN = TAN ## Retorna a tangente de um número -TANH = TANH ## Retorna a tangente hiperbólica de um número -TRUNC = TRUNCAR ## Trunca um número para um inteiro - - -## -## Statistical functions Funções estatísticas -## -AVEDEV = DESV.MÉDIO ## Retorna a média aritmética dos desvios médios dos pontos de dados a partir de sua média -AVERAGE = MÉDIA ## Retorna a média dos argumentos -AVERAGEA = MÉDIAA ## Retorna a média dos argumentos, inclusive números, texto e valores lógicos -AVERAGEIF = MÉDIASE ## Retorna a média (média aritmética) de todas as células em um intervalo que atendem a um determinado critério -AVERAGEIFS = MÉDIASES ## Retorna a média (média aritmética) de todas as células que atendem a múltiplos critérios. -BETADIST = DISTBETA ## Retorna a função de distribuição cumulativa beta -BETAINV = BETA.ACUM.INV ## Retorna o inverso da função de distribuição cumulativa para uma distribuição beta especificada -BINOMDIST = DISTRBINOM ## Retorna a probabilidade de distribuição binomial do termo individual -CHIDIST = DIST.QUI ## Retorna a probabilidade unicaudal da distribuição qui-quadrada -CHIINV = INV.QUI ## Retorna o inverso da probabilidade uni-caudal da distribuição qui-quadrada -CHITEST = TESTE.QUI ## Retorna o teste para independência -CONFIDENCE = INT.CONFIANÇA ## Retorna o intervalo de confiança para uma média da população -CORREL = CORREL ## Retorna o coeficiente de correlação entre dois conjuntos de dados -COUNT = CONT.NÚM ## Calcula quantos números há na lista de argumentos -COUNTA = CONT.VALORES ## Calcula quantos valores há na lista de argumentos -COUNTBLANK = CONTAR.VAZIO ## Conta o número de células vazias no intervalo especificado -COUNTIF = CONT.SE ## Calcula o número de células não vazias em um intervalo que corresponde a determinados critérios -COUNTIFS = CONT.SES ## Conta o número de células dentro de um intervalo que atende a múltiplos critérios -COVAR = COVAR ## Retorna a covariância, a média dos produtos dos desvios pares -CRITBINOM = CRIT.BINOM ## Retorna o menor valor para o qual a distribuição binomial cumulativa é menor ou igual ao valor padrão -DEVSQ = DESVQ ## Retorna a soma dos quadrados dos desvios -EXPONDIST = DISTEXPON ## Retorna a distribuição exponencial -FDIST = DISTF ## Retorna a distribuição de probabilidade F -FINV = INVF ## Retorna o inverso da distribuição de probabilidades F -FISHER = FISHER ## Retorna a transformação Fisher -FISHERINV = FISHERINV ## Retorna o inverso da transformação Fisher -FORECAST = PREVISÃO ## Retorna um valor ao longo de uma linha reta -FREQUENCY = FREQÜÊNCIA ## Retorna uma distribuição de freqüência como uma matriz vertical -FTEST = TESTEF ## Retorna o resultado de um teste F -GAMMADIST = DISTGAMA ## Retorna a distribuição gama -GAMMAINV = INVGAMA ## Retorna o inverso da distribuição cumulativa gama -GAMMALN = LNGAMA ## Retorna o logaritmo natural da função gama, G(x) -GEOMEAN = MÉDIA.GEOMÉTRICA ## Retorna a média geométrica -GROWTH = CRESCIMENTO ## Retorna valores ao longo de uma tendência exponencial -HARMEAN = MÉDIA.HARMÔNICA ## Retorna a média harmônica -HYPGEOMDIST = DIST.HIPERGEOM ## Retorna a distribuição hipergeométrica -INTERCEPT = INTERCEPÇÃO ## Retorna a intercepção da linha de regressão linear -KURT = CURT ## Retorna a curtose de um conjunto de dados -LARGE = MAIOR ## Retorna o maior valor k-ésimo de um conjunto de dados -LINEST = PROJ.LIN ## Retorna os parâmetros de uma tendência linear -LOGEST = PROJ.LOG ## Retorna os parâmetros de uma tendência exponencial -LOGINV = INVLOG ## Retorna o inverso da distribuição lognormal -LOGNORMDIST = DIST.LOGNORMAL ## Retorna a distribuição lognormal cumulativa -MAX = MÁXIMO ## Retorna o valor máximo em uma lista de argumentos -MAXA = MÁXIMOA ## Retorna o maior valor em uma lista de argumentos, inclusive números, texto e valores lógicos -MEDIAN = MED ## Retorna a mediana dos números indicados -MIN = MÍNIMO ## Retorna o valor mínimo em uma lista de argumentos -MINA = MÍNIMOA ## Retorna o menor valor em uma lista de argumentos, inclusive números, texto e valores lógicos -MODE = MODO ## Retorna o valor mais comum em um conjunto de dados -NEGBINOMDIST = DIST.BIN.NEG ## Retorna a distribuição binomial negativa -NORMDIST = DIST.NORM ## Retorna a distribuição cumulativa normal -NORMINV = INV.NORM ## Retorna o inverso da distribuição cumulativa normal -NORMSDIST = DIST.NORMP ## Retorna a distribuição cumulativa normal padrão -NORMSINV = INV.NORMP ## Retorna o inverso da distribuição cumulativa normal padrão -PEARSON = PEARSON ## Retorna o coeficiente de correlação do momento do produto Pearson -PERCENTILE = PERCENTIL ## Retorna o k-ésimo percentil de valores em um intervalo -PERCENTRANK = ORDEM.PORCENTUAL ## Retorna a ordem percentual de um valor em um conjunto de dados -PERMUT = PERMUT ## Retorna o número de permutações de um determinado número de objetos -POISSON = POISSON ## Retorna a distribuição Poisson -PROB = PROB ## Retorna a probabilidade de valores em um intervalo estarem entre dois limites -QUARTILE = QUARTIL ## Retorna o quartil do conjunto de dados -RANK = ORDEM ## Retorna a posição de um número em uma lista de números -RSQ = RQUAD ## Retorna o quadrado do coeficiente de correlação do momento do produto de Pearson -SKEW = DISTORÇÃO ## Retorna a distorção de uma distribuição -SLOPE = INCLINAÇÃO ## Retorna a inclinação da linha de regressão linear -SMALL = MENOR ## Retorna o menor valor k-ésimo do conjunto de dados -STANDARDIZE = PADRONIZAR ## Retorna um valor normalizado -STDEV = DESVPAD ## Estima o desvio padrão com base em uma amostra -STDEVA = DESVPADA ## Estima o desvio padrão com base em uma amostra, inclusive números, texto e valores lógicos -STDEVP = DESVPADP ## Calcula o desvio padrão com base na população total -STDEVPA = DESVPADPA ## Calcula o desvio padrão com base na população total, inclusive números, texto e valores lógicos -STEYX = EPADYX ## Retorna o erro padrão do valor-y previsto para cada x da regressão -TDIST = DISTT ## Retorna a distribuição t de Student -TINV = INVT ## Retorna o inverso da distribuição t de Student -TREND = TENDÊNCIA ## Retorna valores ao longo de uma tendência linear -TRIMMEAN = MÉDIA.INTERNA ## Retorna a média do interior de um conjunto de dados -TTEST = TESTET ## Retorna a probabilidade associada ao teste t de Student -VAR = VAR ## Estima a variância com base em uma amostra -VARA = VARA ## Estima a variância com base em uma amostra, inclusive números, texto e valores lógicos -VARP = VARP ## Calcula a variância com base na população inteira -VARPA = VARPA ## Calcula a variância com base na população total, inclusive números, texto e valores lógicos -WEIBULL = WEIBULL ## Retorna a distribuição Weibull -ZTEST = TESTEZ ## Retorna o valor de probabilidade uni-caudal de um teste-z - - -## -## Text functions Funções de texto -## -ASC = ASC ## Altera letras do inglês ou katakana de largura total (bytes duplos) dentro de uma seqüência de caracteres para caracteres de meia largura (byte único) -BAHTTEXT = BAHTTEXT ## Converte um número em um texto, usando o formato de moeda ß (baht) -CHAR = CARACT ## Retorna o caractere especificado pelo número de código -CLEAN = TIRAR ## Remove todos os caracteres do texto que não podem ser impressos -CODE = CÓDIGO ## Retorna um código numérico para o primeiro caractere de uma seqüência de caracteres de texto -CONCATENATE = CONCATENAR ## Agrupa vários itens de texto em um único item de texto -DOLLAR = MOEDA ## Converte um número em texto, usando o formato de moeda $ (dólar) -EXACT = EXATO ## Verifica se dois valores de texto são idênticos -FIND = PROCURAR ## Procura um valor de texto dentro de outro (diferencia maiúsculas de minúsculas) -FINDB = PROCURARB ## Procura um valor de texto dentro de outro (diferencia maiúsculas de minúsculas) -FIXED = DEF.NÚM.DEC ## Formata um número como texto com um número fixo de decimais -JIS = JIS ## Altera letras do inglês ou katakana de meia largura (byte único) dentro de uma seqüência de caracteres para caracteres de largura total (bytes duplos) -LEFT = ESQUERDA ## Retorna os caracteres mais à esquerda de um valor de texto -LEFTB = ESQUERDAB ## Retorna os caracteres mais à esquerda de um valor de texto -LEN = NÚM.CARACT ## Retorna o número de caracteres em uma seqüência de texto -LENB = NÚM.CARACTB ## Retorna o número de caracteres em uma seqüência de texto -LOWER = MINÚSCULA ## Converte texto para minúsculas -MID = EXT.TEXTO ## Retorna um número específico de caracteres de uma seqüência de texto começando na posição especificada -MIDB = EXT.TEXTOB ## Retorna um número específico de caracteres de uma seqüência de texto começando na posição especificada -PHONETIC = FONÉTICA ## Extrai os caracteres fonéticos (furigana) de uma seqüência de caracteres de texto -PROPER = PRI.MAIÚSCULA ## Coloca a primeira letra de cada palavra em maiúscula em um valor de texto -REPLACE = MUDAR ## Muda os caracteres dentro do texto -REPLACEB = MUDARB ## Muda os caracteres dentro do texto -REPT = REPT ## Repete o texto um determinado número de vezes -RIGHT = DIREITA ## Retorna os caracteres mais à direita de um valor de texto -RIGHTB = DIREITAB ## Retorna os caracteres mais à direita de um valor de texto -SEARCH = LOCALIZAR ## Localiza um valor de texto dentro de outro (não diferencia maiúsculas de minúsculas) -SEARCHB = LOCALIZARB ## Localiza um valor de texto dentro de outro (não diferencia maiúsculas de minúsculas) -SUBSTITUTE = SUBSTITUIR ## Substitui um novo texto por um texto antigo em uma seqüência de texto -T = T ## Converte os argumentos em texto -TEXT = TEXTO ## Formata um número e o converte em texto -TRIM = ARRUMAR ## Remove espaços do texto -UPPER = MAIÚSCULA ## Converte o texto em maiúsculas -VALUE = VALOR ## Converte um argumento de texto em um número +## +## Add-in and Automation functions Funções Suplemento e Automação +## +GETPIVOTDATA = INFODADOSTABELADINÂMICA ## Retorna os dados armazenados em um relatório de tabela dinâmica + + +## +## Cube functions Funções de Cubo +## +CUBEKPIMEMBER = MEMBROKPICUBO ## Retorna o nome de um KPI (indicador de desempenho-chave), uma propriedade e uma medida e exibe o nome e a propriedade na célula. Um KPI é uma medida quantificável, como o lucro bruto mensal ou a rotatividade trimestral dos funcionários, usada para monitorar o desempenho de uma organização. +CUBEMEMBER = MEMBROCUBO ## Retorna um membro ou tupla em uma hierarquia de cubo. Use para validar se o membro ou tupla existe no cubo. +CUBEMEMBERPROPERTY = PROPRIEDADEMEMBROCUBO ## Retorna o valor da propriedade de um membro no cubo. Usada para validar a existência do nome do membro no cubo e para retornar a propriedade especificada para esse membro. +CUBERANKEDMEMBER = MEMBROCLASSIFICADOCUBO ## Retorna o enésimo membro, ou o membro ordenado, em um conjunto. Use para retornar um ou mais elementos em um conjunto, assim como o melhor vendedor ou os dez melhores alunos. +CUBESET = CONJUNTOCUBO ## Define um conjunto calculado de membros ou tuplas enviando uma expressão do conjunto para o cubo no servidor, que cria o conjunto e o retorna para o Microsoft Office Excel. +CUBESETCOUNT = CONTAGEMCONJUNTOCUBO ## Retorna o número de itens em um conjunto. +CUBEVALUE = VALORCUBO ## Retorna um valor agregado de um cubo. + + +## +## Database functions Funções de banco de dados +## +DAVERAGE = BDMÉDIA ## Retorna a média das entradas selecionadas de um banco de dados +DCOUNT = BDCONTAR ## Conta as células que contêm números em um banco de dados +DCOUNTA = BDCONTARA ## Conta células não vazias em um banco de dados +DGET = BDEXTRAIR ## Extrai de um banco de dados um único registro que corresponde a um critério específico +DMAX = BDMÁX ## Retorna o valor máximo de entradas selecionadas de um banco de dados +DMIN = BDMÍN ## Retorna o valor mínimo de entradas selecionadas de um banco de dados +DPRODUCT = BDMULTIPL ## Multiplica os valores em um campo específico de registros que correspondem ao critério em um banco de dados +DSTDEV = BDEST ## Estima o desvio padrão com base em uma amostra de entradas selecionadas de um banco de dados +DSTDEVP = BDDESVPA ## Calcula o desvio padrão com base na população inteira de entradas selecionadas de um banco de dados +DSUM = BDSOMA ## Adiciona os números à coluna de campos de registros do banco de dados que correspondem ao critério +DVAR = BDVAREST ## Estima a variância com base em uma amostra de entradas selecionadas de um banco de dados +DVARP = BDVARP ## Calcula a variância com base na população inteira de entradas selecionadas de um banco de dados + + +## +## Date and time functions Funções de data e hora +## +DATE = DATA ## Retorna o número de série de uma data específica +DATEVALUE = DATA.VALOR ## Converte uma data na forma de texto para um número de série +DAY = DIA ## Converte um número de série em um dia do mês +DAYS360 = DIAS360 ## Calcula o número de dias entre duas datas com base em um ano de 360 dias +EDATE = DATAM ## Retorna o número de série da data que é o número indicado de meses antes ou depois da data inicial +EOMONTH = FIMMÊS ## Retorna o número de série do último dia do mês antes ou depois de um número especificado de meses +HOUR = HORA ## Converte um número de série em uma hora +MINUTE = MINUTO ## Converte um número de série em um minuto +MONTH = MÊS ## Converte um número de série em um mês +NETWORKDAYS = DIATRABALHOTOTAL ## Retorna o número de dias úteis inteiros entre duas datas +NOW = AGORA ## Retorna o número de série seqüencial da data e hora atuais +SECOND = SEGUNDO ## Converte um número de série em um segundo +TIME = HORA ## Retorna o número de série de uma hora específica +TIMEVALUE = VALOR.TEMPO ## Converte um horário na forma de texto para um número de série +TODAY = HOJE ## Retorna o número de série da data de hoje +WEEKDAY = DIA.DA.SEMANA ## Converte um número de série em um dia da semana +WEEKNUM = NÚMSEMANA ## Converte um número de série em um número que representa onde a semana cai numericamente em um ano +WORKDAY = DIATRABALHO ## Retorna o número de série da data antes ou depois de um número específico de dias úteis +YEAR = ANO ## Converte um número de série em um ano +YEARFRAC = FRAÇÃOANO ## Retorna a fração do ano que representa o número de dias entre data_inicial e data_final + + +## +## Engineering functions Funções de engenharia +## +BESSELI = BESSELI ## Retorna a função de Bessel In(x) modificada +BESSELJ = BESSELJ ## Retorna a função de Bessel Jn(x) +BESSELK = BESSELK ## Retorna a função de Bessel Kn(x) modificada +BESSELY = BESSELY ## Retorna a função de Bessel Yn(x) +BIN2DEC = BIN2DEC ## Converte um número binário em decimal +BIN2HEX = BIN2HEX ## Converte um número binário em hexadecimal +BIN2OCT = BIN2OCT ## Converte um número binário em octal +COMPLEX = COMPLEX ## Converte coeficientes reais e imaginários e um número complexo +CONVERT = CONVERTER ## Converte um número de um sistema de medida para outro +DEC2BIN = DECABIN ## Converte um número decimal em binário +DEC2HEX = DECAHEX ## Converte um número decimal em hexadecimal +DEC2OCT = DECAOCT ## Converte um número decimal em octal +DELTA = DELTA ## Testa se dois valores são iguais +ERF = FUNERRO ## Retorna a função de erro +ERFC = FUNERROCOMPL ## Retorna a função de erro complementar +GESTEP = DEGRAU ## Testa se um número é maior do que um valor limite +HEX2BIN = HEXABIN ## Converte um número hexadecimal em binário +HEX2DEC = HEXADEC ## Converte um número hexadecimal em decimal +HEX2OCT = HEXAOCT ## Converte um número hexadecimal em octal +IMABS = IMABS ## Retorna o valor absoluto (módulo) de um número complexo +IMAGINARY = IMAGINÁRIO ## Retorna o coeficiente imaginário de um número complexo +IMARGUMENT = IMARG ## Retorna o argumento teta, um ângulo expresso em radianos +IMCONJUGATE = IMCONJ ## Retorna o conjugado complexo de um número complexo +IMCOS = IMCOS ## Retorna o cosseno de um número complexo +IMDIV = IMDIV ## Retorna o quociente de dois números complexos +IMEXP = IMEXP ## Retorna o exponencial de um número complexo +IMLN = IMLN ## Retorna o logaritmo natural de um número complexo +IMLOG10 = IMLOG10 ## Retorna o logaritmo de base 10 de um número complexo +IMLOG2 = IMLOG2 ## Retorna o logaritmo de base 2 de um número complexo +IMPOWER = IMPOT ## Retorna um número complexo elevado a uma potência inteira +IMPRODUCT = IMPROD ## Retorna o produto de números complexos +IMREAL = IMREAL ## Retorna o coeficiente real de um número complexo +IMSIN = IMSENO ## Retorna o seno de um número complexo +IMSQRT = IMRAIZ ## Retorna a raiz quadrada de um número complexo +IMSUB = IMSUBTR ## Retorna a diferença entre dois números complexos +IMSUM = IMSOMA ## Retorna a soma de números complexos +OCT2BIN = OCTABIN ## Converte um número octal em binário +OCT2DEC = OCTADEC ## Converte um número octal em decimal +OCT2HEX = OCTAHEX ## Converte um número octal em hexadecimal + + +## +## Financial functions Funções financeiras +## +ACCRINT = JUROSACUM ## Retorna a taxa de juros acumulados de um título que paga uma taxa periódica de juros +ACCRINTM = JUROSACUMV ## Retorna os juros acumulados de um título que paga juros no vencimento +AMORDEGRC = AMORDEGRC ## Retorna a depreciação para cada período contábil usando o coeficiente de depreciação +AMORLINC = AMORLINC ## Retorna a depreciação para cada período contábil +COUPDAYBS = CUPDIASINLIQ ## Retorna o número de dias do início do período de cupom até a data de liquidação +COUPDAYS = CUPDIAS ## Retorna o número de dias no período de cupom que contém a data de quitação +COUPDAYSNC = CUPDIASPRÓX ## Retorna o número de dias da data de liquidação até a data do próximo cupom +COUPNCD = CUPDATAPRÓX ## Retorna a próxima data de cupom após a data de quitação +COUPNUM = CUPNÚM ## Retorna o número de cupons pagáveis entre as datas de quitação e vencimento +COUPPCD = CUPDATAANT ## Retorna a data de cupom anterior à data de quitação +CUMIPMT = PGTOJURACUM ## Retorna os juros acumulados pagos entre dois períodos +CUMPRINC = PGTOCAPACUM ## Retorna o capital acumulado pago sobre um empréstimo entre dois períodos +DB = BD ## Retorna a depreciação de um ativo para um período especificado, usando o método de balanço de declínio fixo +DDB = BDD ## Retorna a depreciação de um ativo com relação a um período especificado usando o método de saldos decrescentes duplos ou qualquer outro método especificado por você +DISC = DESC ## Retorna a taxa de desconto de um título +DOLLARDE = MOEDADEC ## Converte um preço em formato de moeda, na forma fracionária, em um preço na forma decimal +DOLLARFR = MOEDAFRA ## Converte um preço, apresentado na forma decimal, em um preço apresentado na forma fracionária +DURATION = DURAÇÃO ## Retorna a duração anual de um título com pagamentos de juros periódicos +EFFECT = EFETIVA ## Retorna a taxa de juros anual efetiva +FV = VF ## Retorna o valor futuro de um investimento +FVSCHEDULE = VFPLANO ## Retorna o valor futuro de um capital inicial após a aplicação de uma série de taxas de juros compostas +INTRATE = TAXAJUROS ## Retorna a taxa de juros de um título totalmente investido +IPMT = IPGTO ## Retorna o pagamento de juros para um investimento em um determinado período +IRR = TIR ## Retorna a taxa interna de retorno de uma série de fluxos de caixa +ISPMT = ÉPGTO ## Calcula os juros pagos durante um período específico de um investimento +MDURATION = MDURAÇÃO ## Retorna a duração de Macauley modificada para um título com um valor de paridade equivalente a R$ 100 +MIRR = MTIR ## Calcula a taxa interna de retorno em que fluxos de caixa positivos e negativos são financiados com diferentes taxas +NOMINAL = NOMINAL ## Retorna a taxa de juros nominal anual +NPER = NPER ## Retorna o número de períodos de um investimento +NPV = VPL ## Retorna o valor líquido atual de um investimento com base em uma série de fluxos de caixa periódicos e em uma taxa de desconto +ODDFPRICE = PREÇOPRIMINC ## Retorna o preço por R$ 100 de valor nominal de um título com um primeiro período indefinido +ODDFYIELD = LUCROPRIMINC ## Retorna o rendimento de um título com um primeiro período indefinido +ODDLPRICE = PREÇOÚLTINC ## Retorna o preço por R$ 100 de valor nominal de um título com um último período de cupom indefinido +ODDLYIELD = LUCROÚLTINC ## Retorna o rendimento de um título com um último período indefinido +PMT = PGTO ## Retorna o pagamento periódico de uma anuidade +PPMT = PPGTO ## Retorna o pagamento de capital para determinado período de investimento +PRICE = PREÇO ## Retorna a preço por R$ 100,00 de valor nominal de um título que paga juros periódicos +PRICEDISC = PREÇODESC ## Retorna o preço por R$ 100,00 de valor nominal de um título descontado +PRICEMAT = PREÇOVENC ## Retorna o preço por R$ 100,00 de valor nominal de um título que paga juros no vencimento +PV = VP ## Retorna o valor presente de um investimento +RATE = TAXA ## Retorna a taxa de juros por período de uma anuidade +RECEIVED = RECEBER ## Retorna a quantia recebida no vencimento de um título totalmente investido +SLN = DPD ## Retorna a depreciação em linha reta de um ativo durante um período +SYD = SDA ## Retorna a depreciação dos dígitos da soma dos anos de um ativo para um período especificado +TBILLEQ = OTN ## Retorna o rendimento de um título equivalente a uma obrigação do Tesouro +TBILLPRICE = OTNVALOR ## Retorna o preço por R$ 100,00 de valor nominal de uma obrigação do Tesouro +TBILLYIELD = OTNLUCRO ## Retorna o rendimento de uma obrigação do Tesouro +VDB = BDV ## Retorna a depreciação de um ativo para um período especificado ou parcial usando um método de balanço declinante +XIRR = XTIR ## Fornece a taxa interna de retorno para um programa de fluxos de caixa que não é necessariamente periódico +XNPV = XVPL ## Retorna o valor presente líquido de um programa de fluxos de caixa que não é necessariamente periódico +YIELD = LUCRO ## Retorna o lucro de um título que paga juros periódicos +YIELDDISC = LUCRODESC ## Retorna o rendimento anual de um título descontado. Por exemplo, uma obrigação do Tesouro +YIELDMAT = LUCROVENC ## Retorna o lucro anual de um título que paga juros no vencimento + + +## +## Information functions Funções de informação +## +CELL = CÉL ## Retorna informações sobre formatação, localização ou conteúdo de uma célula +ERROR.TYPE = TIPO.ERRO ## Retorna um número correspondente a um tipo de erro +INFO = INFORMAÇÃO ## Retorna informações sobre o ambiente operacional atual +ISBLANK = ÉCÉL.VAZIA ## Retorna VERDADEIRO se o valor for vazio +ISERR = ÉERRO ## Retorna VERDADEIRO se o valor for um valor de erro diferente de #N/D +ISERROR = ÉERROS ## Retorna VERDADEIRO se o valor for um valor de erro +ISEVEN = ÉPAR ## Retorna VERDADEIRO se o número for par +ISLOGICAL = ÉLÓGICO ## Retorna VERDADEIRO se o valor for um valor lógico +ISNA = É.NÃO.DISP ## Retorna VERDADEIRO se o valor for o valor de erro #N/D +ISNONTEXT = É.NÃO.TEXTO ## Retorna VERDADEIRO se o valor for diferente de texto +ISNUMBER = ÉNÚM ## Retorna VERDADEIRO se o valor for um número +ISODD = ÉIMPAR ## Retorna VERDADEIRO se o número for ímpar +ISREF = ÉREF ## Retorna VERDADEIRO se o valor for uma referência +ISTEXT = ÉTEXTO ## Retorna VERDADEIRO se o valor for texto +N = N ## Retorna um valor convertido em um número +NA = NÃO.DISP ## Retorna o valor de erro #N/D +TYPE = TIPO ## Retorna um número indicando o tipo de dados de um valor + + +## +## Logical functions Funções lógicas +## +AND = E ## Retorna VERDADEIRO se todos os seus argumentos forem VERDADEIROS +FALSE = FALSO ## Retorna o valor lógico FALSO +IF = SE ## Especifica um teste lógico a ser executado +IFERROR = SEERRO ## Retornará um valor que você especifica se uma fórmula for avaliada para um erro; do contrário, retornará o resultado da fórmula +NOT = NÃO ## Inverte o valor lógico do argumento +OR = OU ## Retorna VERDADEIRO se um dos argumentos for VERDADEIRO +TRUE = VERDADEIRO ## Retorna o valor lógico VERDADEIRO + + +## +## Lookup and reference functions Funções de pesquisa e referência +## +ADDRESS = ENDEREÇO ## Retorna uma referência como texto para uma única célula em uma planilha +AREAS = ÁREAS ## Retorna o número de áreas em uma referência +CHOOSE = ESCOLHER ## Escolhe um valor a partir de uma lista de valores +COLUMN = COL ## Retorna o número da coluna de uma referência +COLUMNS = COLS ## Retorna o número de colunas em uma referência +HLOOKUP = PROCH ## Procura na linha superior de uma matriz e retorna o valor da célula especificada +HYPERLINK = HYPERLINK ## Cria um atalho ou salto que abre um documento armazenado em um servidor de rede, uma intranet ou na Internet +INDEX = ÍNDICE ## Usa um índice para escolher um valor de uma referência ou matriz +INDIRECT = INDIRETO ## Retorna uma referência indicada por um valor de texto +LOOKUP = PROC ## Procura valores em um vetor ou em uma matriz +MATCH = CORRESP ## Procura valores em uma referência ou em uma matriz +OFFSET = DESLOC ## Retorna um deslocamento de referência com base em uma determinada referência +ROW = LIN ## Retorna o número da linha de uma referência +ROWS = LINS ## Retorna o número de linhas em uma referência +RTD = RTD ## Recupera dados em tempo real de um programa que ofereça suporte a automação COM (automação: uma forma de trabalhar com objetos de um aplicativo a partir de outro aplicativo ou ferramenta de desenvolvimento. Chamada inicialmente de automação OLE, a automação é um padrão industrial e um recurso do modelo de objeto componente (COM).) +TRANSPOSE = TRANSPOR ## Retorna a transposição de uma matriz +VLOOKUP = PROCV ## Procura na primeira coluna de uma matriz e move ao longo da linha para retornar o valor de uma célula + + +## +## Math and trigonometry functions Funções matemáticas e trigonométricas +## +ABS = ABS ## Retorna o valor absoluto de um número +ACOS = ACOS ## Retorna o arco cosseno de um número +ACOSH = ACOSH ## Retorna o cosseno hiperbólico inverso de um número +ASIN = ASEN ## Retorna o arco seno de um número +ASINH = ASENH ## Retorna o seno hiperbólico inverso de um número +ATAN = ATAN ## Retorna o arco tangente de um número +ATAN2 = ATAN2 ## Retorna o arco tangente das coordenadas x e y especificadas +ATANH = ATANH ## Retorna a tangente hiperbólica inversa de um número +CEILING = TETO ## Arredonda um número para o inteiro mais próximo ou para o múltiplo mais próximo de significância +COMBIN = COMBIN ## Retorna o número de combinações de um determinado número de objetos +COS = COS ## Retorna o cosseno de um número +COSH = COSH ## Retorna o cosseno hiperbólico de um número +DEGREES = GRAUS ## Converte radianos em graus +EVEN = PAR ## Arredonda um número para cima até o inteiro par mais próximo +EXP = EXP ## Retorna e elevado à potência de um número especificado +FACT = FATORIAL ## Retorna o fatorial de um número +FACTDOUBLE = FATDUPLO ## Retorna o fatorial duplo de um número +FLOOR = ARREDMULTB ## Arredonda um número para baixo até zero +GCD = MDC ## Retorna o máximo divisor comum +INT = INT ## Arredonda um número para baixo até o número inteiro mais próximo +LCM = MMC ## Retorna o mínimo múltiplo comum +LN = LN ## Retorna o logaritmo natural de um número +LOG = LOG ## Retorna o logaritmo de um número de uma base especificada +LOG10 = LOG10 ## Retorna o logaritmo de base 10 de um número +MDETERM = MATRIZ.DETERM ## Retorna o determinante de uma matriz de uma variável do tipo matriz +MINVERSE = MATRIZ.INVERSO ## Retorna a matriz inversa de uma matriz +MMULT = MATRIZ.MULT ## Retorna o produto de duas matrizes +MOD = RESTO ## Retorna o resto da divisão +MROUND = MARRED ## Retorna um número arredondado ao múltiplo desejado +MULTINOMIAL = MULTINOMIAL ## Retorna o multinomial de um conjunto de números +ODD = ÍMPAR ## Arredonda um número para cima até o inteiro ímpar mais próximo +PI = PI ## Retorna o valor de Pi +POWER = POTÊNCIA ## Fornece o resultado de um número elevado a uma potência +PRODUCT = MULT ## Multiplica seus argumentos +QUOTIENT = QUOCIENTE ## Retorna a parte inteira de uma divisão +RADIANS = RADIANOS ## Converte graus em radianos +RAND = ALEATÓRIO ## Retorna um número aleatório entre 0 e 1 +RANDBETWEEN = ALEATÓRIOENTRE ## Retorna um número aleatório entre os números especificados +ROMAN = ROMANO ## Converte um algarismo arábico em romano, como texto +ROUND = ARRED ## Arredonda um número até uma quantidade especificada de dígitos +ROUNDDOWN = ARREDONDAR.PARA.BAIXO ## Arredonda um número para baixo até zero +ROUNDUP = ARREDONDAR.PARA.CIMA ## Arredonda um número para cima, afastando-o de zero +SERIESSUM = SOMASEQÜÊNCIA ## Retorna a soma de uma série polinomial baseada na fórmula +SIGN = SINAL ## Retorna o sinal de um número +SIN = SEN ## Retorna o seno de um ângulo dado +SINH = SENH ## Retorna o seno hiperbólico de um número +SQRT = RAIZ ## Retorna uma raiz quadrada positiva +SQRTPI = RAIZPI ## Retorna a raiz quadrada de (núm* pi) +SUBTOTAL = SUBTOTAL ## Retorna um subtotal em uma lista ou em um banco de dados +SUM = SOMA ## Soma seus argumentos +SUMIF = SOMASE ## Adiciona as células especificadas por um determinado critério +SUMIFS = SOMASE ## Adiciona as células em um intervalo que atende a vários critérios +SUMPRODUCT = SOMARPRODUTO ## Retorna a soma dos produtos de componentes correspondentes de matrizes +SUMSQ = SOMAQUAD ## Retorna a soma dos quadrados dos argumentos +SUMX2MY2 = SOMAX2DY2 ## Retorna a soma da diferença dos quadrados dos valores correspondentes em duas matrizes +SUMX2PY2 = SOMAX2SY2 ## Retorna a soma da soma dos quadrados dos valores correspondentes em duas matrizes +SUMXMY2 = SOMAXMY2 ## Retorna a soma dos quadrados das diferenças dos valores correspondentes em duas matrizes +TAN = TAN ## Retorna a tangente de um número +TANH = TANH ## Retorna a tangente hiperbólica de um número +TRUNC = TRUNCAR ## Trunca um número para um inteiro + + +## +## Statistical functions Funções estatísticas +## +AVEDEV = DESV.MÉDIO ## Retorna a média aritmética dos desvios médios dos pontos de dados a partir de sua média +AVERAGE = MÉDIA ## Retorna a média dos argumentos +AVERAGEA = MÉDIAA ## Retorna a média dos argumentos, inclusive números, texto e valores lógicos +AVERAGEIF = MÉDIASE ## Retorna a média (média aritmética) de todas as células em um intervalo que atendem a um determinado critério +AVERAGEIFS = MÉDIASES ## Retorna a média (média aritmética) de todas as células que atendem a múltiplos critérios. +BETADIST = DISTBETA ## Retorna a função de distribuição cumulativa beta +BETAINV = BETA.ACUM.INV ## Retorna o inverso da função de distribuição cumulativa para uma distribuição beta especificada +BINOMDIST = DISTRBINOM ## Retorna a probabilidade de distribuição binomial do termo individual +CHIDIST = DIST.QUI ## Retorna a probabilidade unicaudal da distribuição qui-quadrada +CHIINV = INV.QUI ## Retorna o inverso da probabilidade uni-caudal da distribuição qui-quadrada +CHITEST = TESTE.QUI ## Retorna o teste para independência +CONFIDENCE = INT.CONFIANÇA ## Retorna o intervalo de confiança para uma média da população +CORREL = CORREL ## Retorna o coeficiente de correlação entre dois conjuntos de dados +COUNT = CONT.NÚM ## Calcula quantos números há na lista de argumentos +COUNTA = CONT.VALORES ## Calcula quantos valores há na lista de argumentos +COUNTBLANK = CONTAR.VAZIO ## Conta o número de células vazias no intervalo especificado +COUNTIF = CONT.SE ## Calcula o número de células não vazias em um intervalo que corresponde a determinados critérios +COUNTIFS = CONT.SES ## Conta o número de células dentro de um intervalo que atende a múltiplos critérios +COVAR = COVAR ## Retorna a covariância, a média dos produtos dos desvios pares +CRITBINOM = CRIT.BINOM ## Retorna o menor valor para o qual a distribuição binomial cumulativa é menor ou igual ao valor padrão +DEVSQ = DESVQ ## Retorna a soma dos quadrados dos desvios +EXPONDIST = DISTEXPON ## Retorna a distribuição exponencial +FDIST = DISTF ## Retorna a distribuição de probabilidade F +FINV = INVF ## Retorna o inverso da distribuição de probabilidades F +FISHER = FISHER ## Retorna a transformação Fisher +FISHERINV = FISHERINV ## Retorna o inverso da transformação Fisher +FORECAST = PREVISÃO ## Retorna um valor ao longo de uma linha reta +FREQUENCY = FREQÜÊNCIA ## Retorna uma distribuição de freqüência como uma matriz vertical +FTEST = TESTEF ## Retorna o resultado de um teste F +GAMMADIST = DISTGAMA ## Retorna a distribuição gama +GAMMAINV = INVGAMA ## Retorna o inverso da distribuição cumulativa gama +GAMMALN = LNGAMA ## Retorna o logaritmo natural da função gama, G(x) +GEOMEAN = MÉDIA.GEOMÉTRICA ## Retorna a média geométrica +GROWTH = CRESCIMENTO ## Retorna valores ao longo de uma tendência exponencial +HARMEAN = MÉDIA.HARMÔNICA ## Retorna a média harmônica +HYPGEOMDIST = DIST.HIPERGEOM ## Retorna a distribuição hipergeométrica +INTERCEPT = INTERCEPÇÃO ## Retorna a intercepção da linha de regressão linear +KURT = CURT ## Retorna a curtose de um conjunto de dados +LARGE = MAIOR ## Retorna o maior valor k-ésimo de um conjunto de dados +LINEST = PROJ.LIN ## Retorna os parâmetros de uma tendência linear +LOGEST = PROJ.LOG ## Retorna os parâmetros de uma tendência exponencial +LOGINV = INVLOG ## Retorna o inverso da distribuição lognormal +LOGNORMDIST = DIST.LOGNORMAL ## Retorna a distribuição lognormal cumulativa +MAX = MÁXIMO ## Retorna o valor máximo em uma lista de argumentos +MAXA = MÁXIMOA ## Retorna o maior valor em uma lista de argumentos, inclusive números, texto e valores lógicos +MEDIAN = MED ## Retorna a mediana dos números indicados +MIN = MÍNIMO ## Retorna o valor mínimo em uma lista de argumentos +MINA = MÍNIMOA ## Retorna o menor valor em uma lista de argumentos, inclusive números, texto e valores lógicos +MODE = MODO ## Retorna o valor mais comum em um conjunto de dados +NEGBINOMDIST = DIST.BIN.NEG ## Retorna a distribuição binomial negativa +NORMDIST = DIST.NORM ## Retorna a distribuição cumulativa normal +NORMINV = INV.NORM ## Retorna o inverso da distribuição cumulativa normal +NORMSDIST = DIST.NORMP ## Retorna a distribuição cumulativa normal padrão +NORMSINV = INV.NORMP ## Retorna o inverso da distribuição cumulativa normal padrão +PEARSON = PEARSON ## Retorna o coeficiente de correlação do momento do produto Pearson +PERCENTILE = PERCENTIL ## Retorna o k-ésimo percentil de valores em um intervalo +PERCENTRANK = ORDEM.PORCENTUAL ## Retorna a ordem percentual de um valor em um conjunto de dados +PERMUT = PERMUT ## Retorna o número de permutações de um determinado número de objetos +POISSON = POISSON ## Retorna a distribuição Poisson +PROB = PROB ## Retorna a probabilidade de valores em um intervalo estarem entre dois limites +QUARTILE = QUARTIL ## Retorna o quartil do conjunto de dados +RANK = ORDEM ## Retorna a posição de um número em uma lista de números +RSQ = RQUAD ## Retorna o quadrado do coeficiente de correlação do momento do produto de Pearson +SKEW = DISTORÇÃO ## Retorna a distorção de uma distribuição +SLOPE = INCLINAÇÃO ## Retorna a inclinação da linha de regressão linear +SMALL = MENOR ## Retorna o menor valor k-ésimo do conjunto de dados +STANDARDIZE = PADRONIZAR ## Retorna um valor normalizado +STDEV = DESVPAD ## Estima o desvio padrão com base em uma amostra +STDEVA = DESVPADA ## Estima o desvio padrão com base em uma amostra, inclusive números, texto e valores lógicos +STDEVP = DESVPADP ## Calcula o desvio padrão com base na população total +STDEVPA = DESVPADPA ## Calcula o desvio padrão com base na população total, inclusive números, texto e valores lógicos +STEYX = EPADYX ## Retorna o erro padrão do valor-y previsto para cada x da regressão +TDIST = DISTT ## Retorna a distribuição t de Student +TINV = INVT ## Retorna o inverso da distribuição t de Student +TREND = TENDÊNCIA ## Retorna valores ao longo de uma tendência linear +TRIMMEAN = MÉDIA.INTERNA ## Retorna a média do interior de um conjunto de dados +TTEST = TESTET ## Retorna a probabilidade associada ao teste t de Student +VAR = VAR ## Estima a variância com base em uma amostra +VARA = VARA ## Estima a variância com base em uma amostra, inclusive números, texto e valores lógicos +VARP = VARP ## Calcula a variância com base na população inteira +VARPA = VARPA ## Calcula a variância com base na população total, inclusive números, texto e valores lógicos +WEIBULL = WEIBULL ## Retorna a distribuição Weibull +ZTEST = TESTEZ ## Retorna o valor de probabilidade uni-caudal de um teste-z + + +## +## Text functions Funções de texto +## +ASC = ASC ## Altera letras do inglês ou katakana de largura total (bytes duplos) dentro de uma seqüência de caracteres para caracteres de meia largura (byte único) +BAHTTEXT = BAHTTEXT ## Converte um número em um texto, usando o formato de moeda ß (baht) +CHAR = CARACT ## Retorna o caractere especificado pelo número de código +CLEAN = TIRAR ## Remove todos os caracteres do texto que não podem ser impressos +CODE = CÓDIGO ## Retorna um código numérico para o primeiro caractere de uma seqüência de caracteres de texto +CONCATENATE = CONCATENAR ## Agrupa vários itens de texto em um único item de texto +DOLLAR = MOEDA ## Converte um número em texto, usando o formato de moeda $ (dólar) +EXACT = EXATO ## Verifica se dois valores de texto são idênticos +FIND = PROCURAR ## Procura um valor de texto dentro de outro (diferencia maiúsculas de minúsculas) +FINDB = PROCURARB ## Procura um valor de texto dentro de outro (diferencia maiúsculas de minúsculas) +FIXED = DEF.NÚM.DEC ## Formata um número como texto com um número fixo de decimais +JIS = JIS ## Altera letras do inglês ou katakana de meia largura (byte único) dentro de uma seqüência de caracteres para caracteres de largura total (bytes duplos) +LEFT = ESQUERDA ## Retorna os caracteres mais à esquerda de um valor de texto +LEFTB = ESQUERDAB ## Retorna os caracteres mais à esquerda de um valor de texto +LEN = NÚM.CARACT ## Retorna o número de caracteres em uma seqüência de texto +LENB = NÚM.CARACTB ## Retorna o número de caracteres em uma seqüência de texto +LOWER = MINÚSCULA ## Converte texto para minúsculas +MID = EXT.TEXTO ## Retorna um número específico de caracteres de uma seqüência de texto começando na posição especificada +MIDB = EXT.TEXTOB ## Retorna um número específico de caracteres de uma seqüência de texto começando na posição especificada +PHONETIC = FONÉTICA ## Extrai os caracteres fonéticos (furigana) de uma seqüência de caracteres de texto +PROPER = PRI.MAIÚSCULA ## Coloca a primeira letra de cada palavra em maiúscula em um valor de texto +REPLACE = MUDAR ## Muda os caracteres dentro do texto +REPLACEB = MUDARB ## Muda os caracteres dentro do texto +REPT = REPT ## Repete o texto um determinado número de vezes +RIGHT = DIREITA ## Retorna os caracteres mais à direita de um valor de texto +RIGHTB = DIREITAB ## Retorna os caracteres mais à direita de um valor de texto +SEARCH = LOCALIZAR ## Localiza um valor de texto dentro de outro (não diferencia maiúsculas de minúsculas) +SEARCHB = LOCALIZARB ## Localiza um valor de texto dentro de outro (não diferencia maiúsculas de minúsculas) +SUBSTITUTE = SUBSTITUIR ## Substitui um novo texto por um texto antigo em uma seqüência de texto +T = T ## Converte os argumentos em texto +TEXT = TEXTO ## Formata um número e o converte em texto +TRIM = ARRUMAR ## Remove espaços do texto +UPPER = MAIÚSCULA ## Converte o texto em maiúsculas +VALUE = VALOR ## Converte um argumento de texto em um número diff --git a/htdocs/includes/phpexcel/PHPExcel/locale/pt/functions b/htdocs/includes/phpexcel/PHPExcel/locale/pt/functions index 7fe9e3b5800..ba4eb471bad 100644 --- a/htdocs/includes/phpexcel/PHPExcel/locale/pt/functions +++ b/htdocs/includes/phpexcel/PHPExcel/locale/pt/functions @@ -1,408 +1,408 @@ -## -## Add-in and Automation functions Funções de Suplemento e Automatização -## -GETPIVOTDATA = OBTERDADOSDIN ## Devolve dados armazenados num relatório de Tabela Dinâmica - - -## -## Cube functions Funções de cubo -## -CUBEKPIMEMBER = MEMBROKPICUBO ## Devolve o nome, propriedade e medição de um KPI (key performance indicator) e apresenta o nome e a propriedade na célula. Um KPI é uma medida quantificável, como, por exemplo, o lucro mensal bruto ou a rotatividade trimestral de pessoal, utilizada para monitorizar o desempenho de uma organização. -CUBEMEMBER = MEMBROCUBO ## Devolve um membro ou cadeia de identificação numa hierarquia de cubo. Utilizada para validar a existência do membro ou cadeia de identificação no cubo. -CUBEMEMBERPROPERTY = PROPRIEDADEMEMBROCUBO ## Devolve o valor de uma propriedade de membro no cubo. Utilizada para validar a existência de um nome de membro no cubo e para devolver a propriedade especificada para esse membro. -CUBERANKEDMEMBER = MEMBROCLASSIFICADOCUBO ## Devolve o enésimo ou a classificação mais alta num conjunto. Utilizada para devolver um ou mais elementos num conjunto, tal como o melhor vendedor ou os 10 melhores alunos. -CUBESET = CONJUNTOCUBO ## Define um conjunto calculado de membros ou cadeias de identificação enviando uma expressão de conjunto para o cubo no servidor, que cria o conjunto e, em seguida, devolve o conjunto ao Microsoft Office Excel. -CUBESETCOUNT = CONTARCONJUNTOCUBO ## Devolve o número de itens num conjunto. -CUBEVALUE = VALORCUBO ## Devolve um valor agregado do cubo. - - -## -## Database functions Funções de base de dados -## -DAVERAGE = BDMÉDIA ## Devolve a média das entradas da base de dados seleccionadas -DCOUNT = BDCONTAR ## Conta as células que contêm números numa base de dados -DCOUNTA = BDCONTAR.VAL ## Conta as células que não estejam em branco numa base de dados -DGET = BDOBTER ## Extrai de uma base de dados um único registo que corresponde aos critérios especificados -DMAX = BDMÁX ## Devolve o valor máximo das entradas da base de dados seleccionadas -DMIN = BDMÍN ## Devolve o valor mínimo das entradas da base de dados seleccionadas -DPRODUCT = BDMULTIPL ## Multiplica os valores de um determinado campo de registos que correspondem aos critérios numa base de dados -DSTDEV = BDDESVPAD ## Calcula o desvio-padrão com base numa amostra de entradas da base de dados seleccionadas -DSTDEVP = BDDESVPADP ## Calcula o desvio-padrão com base na população total das entradas da base de dados seleccionadas -DSUM = BDSOMA ## Adiciona os números na coluna de campo dos registos de base de dados que correspondem aos critérios -DVAR = BDVAR ## Calcula a variância com base numa amostra das entradas de base de dados seleccionadas -DVARP = BDVARP ## Calcula a variância com base na população total das entradas de base de dados seleccionadas - - -## -## Date and time functions Funções de data e hora -## -DATE = DATA ## Devolve o número de série de uma determinada data -DATEVALUE = DATA.VALOR ## Converte uma data em forma de texto num número de série -DAY = DIA ## Converte um número de série num dia do mês -DAYS360 = DIAS360 ## Calcula o número de dias entre duas datas com base num ano com 360 dias -EDATE = DATAM ## Devolve um número de série de data que corresponde ao número de meses indicado antes ou depois da data de início -EOMONTH = FIMMÊS ## Devolve o número de série do último dia do mês antes ou depois de um número de meses especificado -HOUR = HORA ## Converte um número de série numa hora -MINUTE = MINUTO ## Converte um número de série num minuto -MONTH = MÊS ## Converte um número de série num mês -NETWORKDAYS = DIATRABALHOTOTAL ## Devolve o número total de dias úteis entre duas datas -NOW = AGORA ## Devolve o número de série da data e hora actuais -SECOND = SEGUNDO ## Converte um número de série num segundo -TIME = TEMPO ## Devolve o número de série de um determinado tempo -TIMEVALUE = VALOR.TEMPO ## Converte um tempo em forma de texto num número de série -TODAY = HOJE ## Devolve o número de série da data actual -WEEKDAY = DIA.SEMANA ## Converte um número de série num dia da semana -WEEKNUM = NÚMSEMANA ## Converte um número de série num número que representa o número da semana num determinado ano -WORKDAY = DIA.TRABALHO ## Devolve o número de série da data antes ou depois de um número de dias úteis especificado -YEAR = ANO ## Converte um número de série num ano -YEARFRAC = FRACÇÃOANO ## Devolve a fracção de ano que representa o número de dias inteiros entre a data_de_início e a data_de_fim - - -## -## Engineering functions Funções de engenharia -## -BESSELI = BESSELI ## Devolve a função de Bessel modificada In(x) -BESSELJ = BESSELJ ## Devolve a função de Bessel Jn(x) -BESSELK = BESSELK ## Devolve a função de Bessel modificada Kn(x) -BESSELY = BESSELY ## Devolve a função de Bessel Yn(x) -BIN2DEC = BINADEC ## Converte um número binário em decimal -BIN2HEX = BINAHEX ## Converte um número binário em hexadecimal -BIN2OCT = BINAOCT ## Converte um número binário em octal -COMPLEX = COMPLEXO ## Converte coeficientes reais e imaginários num número complexo -CONVERT = CONVERTER ## Converte um número de um sistema de medida noutro -DEC2BIN = DECABIN ## Converte um número decimal em binário -DEC2HEX = DECAHEX ## Converte um número decimal em hexadecimal -DEC2OCT = DECAOCT ## Converte um número decimal em octal -DELTA = DELTA ## Testa se dois valores são iguais -ERF = FUNCERRO ## Devolve a função de erro -ERFC = FUNCERROCOMPL ## Devolve a função de erro complementar -GESTEP = DEGRAU ## Testa se um número é maior do que um valor limite -HEX2BIN = HEXABIN ## Converte um número hexadecimal em binário -HEX2DEC = HEXADEC ## Converte um número hexadecimal em decimal -HEX2OCT = HEXAOCT ## Converte um número hexadecimal em octal -IMABS = IMABS ## Devolve o valor absoluto (módulo) de um número complexo -IMAGINARY = IMAGINÁRIO ## Devolve o coeficiente imaginário de um número complexo -IMARGUMENT = IMARG ## Devolve o argumento Teta, um ângulo expresso em radianos -IMCONJUGATE = IMCONJ ## Devolve o conjugado complexo de um número complexo -IMCOS = IMCOS ## Devolve o co-seno de um número complexo -IMDIV = IMDIV ## Devolve o quociente de dois números complexos -IMEXP = IMEXP ## Devolve o exponencial de um número complexo -IMLN = IMLN ## Devolve o logaritmo natural de um número complexo -IMLOG10 = IMLOG10 ## Devolve o logaritmo de base 10 de um número complexo -IMLOG2 = IMLOG2 ## Devolve o logaritmo de base 2 de um número complexo -IMPOWER = IMPOT ## Devolve um número complexo elevado a uma potência inteira -IMPRODUCT = IMPROD ## Devolve o produto de números complexos -IMREAL = IMREAL ## Devolve o coeficiente real de um número complexo -IMSIN = IMSENO ## Devolve o seno de um número complexo -IMSQRT = IMRAIZ ## Devolve a raiz quadrada de um número complexo -IMSUB = IMSUBTR ## Devolve a diferença entre dois números complexos -IMSUM = IMSOMA ## Devolve a soma de números complexos -OCT2BIN = OCTABIN ## Converte um número octal em binário -OCT2DEC = OCTADEC ## Converte um número octal em decimal -OCT2HEX = OCTAHEX ## Converte um número octal em hexadecimal - - -## -## Financial functions Funções financeiras -## -ACCRINT = JUROSACUM ## Devolve os juros acumulados de um título que paga juros periódicos -ACCRINTM = JUROSACUMV ## Devolve os juros acumulados de um título que paga juros no vencimento -AMORDEGRC = AMORDEGRC ## Devolve a depreciação correspondente a cada período contabilístico utilizando um coeficiente de depreciação -AMORLINC = AMORLINC ## Devolve a depreciação correspondente a cada período contabilístico -COUPDAYBS = CUPDIASINLIQ ## Devolve o número de dias entre o início do período do cupão e a data de regularização -COUPDAYS = CUPDIAS ## Devolve o número de dias no período do cupão que contém a data de regularização -COUPDAYSNC = CUPDIASPRÓX ## Devolve o número de dias entre a data de regularização e a data do cupão seguinte -COUPNCD = CUPDATAPRÓX ## Devolve a data do cupão seguinte após a data de regularização -COUPNUM = CUPNÚM ## Devolve o número de cupões a serem pagos entre a data de regularização e a data de vencimento -COUPPCD = CUPDATAANT ## Devolve a data do cupão anterior antes da data de regularização -CUMIPMT = PGTOJURACUM ## Devolve os juros cumulativos pagos entre dois períodos -CUMPRINC = PGTOCAPACUM ## Devolve o capital cumulativo pago a título de empréstimo entre dois períodos -DB = BD ## Devolve a depreciação de um activo relativo a um período especificado utilizando o método das quotas degressivas fixas -DDB = BDD ## Devolve a depreciação de um activo relativo a um período especificado utilizando o método das quotas degressivas duplas ou qualquer outro método especificado -DISC = DESC ## Devolve a taxa de desconto de um título -DOLLARDE = MOEDADEC ## Converte um preço em unidade monetária, expresso como uma fracção, num preço em unidade monetária, expresso como um número decimal -DOLLARFR = MOEDAFRA ## Converte um preço em unidade monetária, expresso como um número decimal, num preço em unidade monetária, expresso como uma fracção -DURATION = DURAÇÃO ## Devolve a duração anual de um título com pagamentos de juros periódicos -EFFECT = EFECTIVA ## Devolve a taxa de juros anual efectiva -FV = VF ## Devolve o valor futuro de um investimento -FVSCHEDULE = VFPLANO ## Devolve o valor futuro de um capital inicial após a aplicação de uma série de taxas de juro compostas -INTRATE = TAXAJUROS ## Devolve a taxa de juros de um título investido na totalidade -IPMT = IPGTO ## Devolve o pagamento dos juros de um investimento durante um determinado período -IRR = TIR ## Devolve a taxa de rentabilidade interna para uma série de fluxos monetários -ISPMT = É.PGTO ## Calcula os juros pagos durante um período específico de um investimento -MDURATION = MDURAÇÃO ## Devolve a duração modificada de Macauley de um título com um valor de paridade equivalente a € 100 -MIRR = MTIR ## Devolve a taxa interna de rentabilidade em que os fluxos monetários positivos e negativos são financiados com taxas diferentes -NOMINAL = NOMINAL ## Devolve a taxa de juros nominal anual -NPER = NPER ## Devolve o número de períodos de um investimento -NPV = VAL ## Devolve o valor actual líquido de um investimento com base numa série de fluxos monetários periódicos e numa taxa de desconto -ODDFPRICE = PREÇOPRIMINC ## Devolve o preço por € 100 do valor nominal de um título com um período inicial incompleto -ODDFYIELD = LUCROPRIMINC ## Devolve o lucro de um título com um período inicial incompleto -ODDLPRICE = PREÇOÚLTINC ## Devolve o preço por € 100 do valor nominal de um título com um período final incompleto -ODDLYIELD = LUCROÚLTINC ## Devolve o lucro de um título com um período final incompleto -PMT = PGTO ## Devolve o pagamento periódico de uma anuidade -PPMT = PPGTO ## Devolve o pagamento sobre o capital de um investimento num determinado período -PRICE = PREÇO ## Devolve o preço por € 100 do valor nominal de um título que paga juros periódicos -PRICEDISC = PREÇODESC ## Devolve o preço por € 100 do valor nominal de um título descontado -PRICEMAT = PREÇOVENC ## Devolve o preço por € 100 do valor nominal de um título que paga juros no vencimento -PV = VA ## Devolve o valor actual de um investimento -RATE = TAXA ## Devolve a taxa de juros por período de uma anuidade -RECEIVED = RECEBER ## Devolve o montante recebido no vencimento de um título investido na totalidade -SLN = AMORT ## Devolve uma depreciação linear de um activo durante um período -SYD = AMORTD ## Devolve a depreciação por algarismos da soma dos anos de um activo durante um período especificado -TBILLEQ = OTN ## Devolve o lucro de um título equivalente a uma Obrigação do Tesouro -TBILLPRICE = OTNVALOR ## Devolve o preço por € 100 de valor nominal de uma Obrigação do Tesouro -TBILLYIELD = OTNLUCRO ## Devolve o lucro de uma Obrigação do Tesouro -VDB = BDV ## Devolve a depreciação de um activo relativo a um período específico ou parcial utilizando um método de quotas degressivas -XIRR = XTIR ## Devolve a taxa interna de rentabilidade de um plano de fluxos monetários que não seja necessariamente periódica -XNPV = XVAL ## Devolve o valor actual líquido de um plano de fluxos monetários que não seja necessariamente periódico -YIELD = LUCRO ## Devolve o lucro de um título que paga juros periódicos -YIELDDISC = LUCRODESC ## Devolve o lucro anual de um título emitido abaixo do valor nominal, por exemplo, uma Obrigação do Tesouro -YIELDMAT = LUCROVENC ## Devolve o lucro anual de um título que paga juros na data de vencimento - - -## -## Information functions Funções de informação -## -CELL = CÉL ## Devolve informações sobre a formatação, localização ou conteúdo de uma célula -ERROR.TYPE = TIPO.ERRO ## Devolve um número correspondente a um tipo de erro -INFO = INFORMAÇÃO ## Devolve informações sobre o ambiente de funcionamento actual -ISBLANK = É.CÉL.VAZIA ## Devolve VERDADEIRO se o valor estiver em branco -ISERR = É.ERROS ## Devolve VERDADEIRO se o valor for um valor de erro diferente de #N/D -ISERROR = É.ERRO ## Devolve VERDADEIRO se o valor for um valor de erro -ISEVEN = ÉPAR ## Devolve VERDADEIRO se o número for par -ISLOGICAL = É.LÓGICO ## Devolve VERDADEIRO se o valor for lógico -ISNA = É.NÃO.DISP ## Devolve VERDADEIRO se o valor for o valor de erro #N/D -ISNONTEXT = É.NÃO.TEXTO ## Devolve VERDADEIRO se o valor não for texto -ISNUMBER = É.NÚM ## Devolve VERDADEIRO se o valor for um número -ISODD = ÉÍMPAR ## Devolve VERDADEIRO se o número for ímpar -ISREF = É.REF ## Devolve VERDADEIRO se o valor for uma referência -ISTEXT = É.TEXTO ## Devolve VERDADEIRO se o valor for texto -N = N ## Devolve um valor convertido num número -NA = NÃO.DISP ## Devolve o valor de erro #N/D -TYPE = TIPO ## Devolve um número que indica o tipo de dados de um valor - - -## -## Logical functions Funções lógicas -## -AND = E ## Devolve VERDADEIRO se todos os respectivos argumentos corresponderem a VERDADEIRO -FALSE = FALSO ## Devolve o valor lógico FALSO -IF = SE ## Especifica um teste lógico a ser executado -IFERROR = SE.ERRO ## Devolve um valor definido pelo utilizador se ocorrer um erro na fórmula, e devolve o resultado da fórmula se não ocorrer nenhum erro -NOT = NÃO ## Inverte a lógica do respectivo argumento -OR = OU ## Devolve VERDADEIRO se qualquer argumento for VERDADEIRO -TRUE = VERDADEIRO ## Devolve o valor lógico VERDADEIRO - - -## -## Lookup and reference functions Funções de pesquisa e referência -## -ADDRESS = ENDEREÇO ## Devolve uma referência a uma única célula numa folha de cálculo como texto -AREAS = ÁREAS ## Devolve o número de áreas numa referência -CHOOSE = SELECCIONAR ## Selecciona um valor a partir de uma lista de valores -COLUMN = COL ## Devolve o número da coluna de uma referência -COLUMNS = COLS ## Devolve o número de colunas numa referência -HLOOKUP = PROCH ## Procura na linha superior de uma matriz e devolve o valor da célula indicada -HYPERLINK = HIPERLIGAÇÃO ## Cria um atalho ou hiperligação que abre um documento armazenado num servidor de rede, numa intranet ou na Internet -INDEX = ÍNDICE ## Utiliza um índice para escolher um valor de uma referência ou de uma matriz -INDIRECT = INDIRECTO ## Devolve uma referência indicada por um valor de texto -LOOKUP = PROC ## Procura valores num vector ou numa matriz -MATCH = CORRESP ## Procura valores numa referência ou numa matriz -OFFSET = DESLOCAMENTO ## Devolve o deslocamento de referência de uma determinada referência -ROW = LIN ## Devolve o número da linha de uma referência -ROWS = LINS ## Devolve o número de linhas numa referência -RTD = RTD ## Obtém dados em tempo real a partir de um programa que suporte automatização COM (automatização: modo de trabalhar com objectos de uma aplicação a partir de outra aplicação ou ferramenta de desenvolvimento. Anteriormente conhecida como automatização OLE, a automatização é uma norma da indústria de software e uma funcionalidade COM (Component Object Model).) -TRANSPOSE = TRANSPOR ## Devolve a transposição de uma matriz -VLOOKUP = PROCV ## Procura na primeira coluna de uma matriz e percorre a linha para devolver o valor de uma célula - - -## -## Math and trigonometry functions Funções matemáticas e trigonométricas -## -ABS = ABS ## Devolve o valor absoluto de um número -ACOS = ACOS ## Devolve o arco de co-seno de um número -ACOSH = ACOSH ## Devolve o co-seno hiperbólico inverso de um número -ASIN = ASEN ## Devolve o arco de seno de um número -ASINH = ASENH ## Devolve o seno hiperbólico inverso de um número -ATAN = ATAN ## Devolve o arco de tangente de um número -ATAN2 = ATAN2 ## Devolve o arco de tangente das coordenadas x e y -ATANH = ATANH ## Devolve a tangente hiperbólica inversa de um número -CEILING = ARRED.EXCESSO ## Arredonda um número para o número inteiro mais próximo ou para o múltiplo de significância mais próximo -COMBIN = COMBIN ## Devolve o número de combinações de um determinado número de objectos -COS = COS ## Devolve o co-seno de um número -COSH = COSH ## Devolve o co-seno hiperbólico de um número -DEGREES = GRAUS ## Converte radianos em graus -EVEN = PAR ## Arredonda um número por excesso para o número inteiro mais próximo -EXP = EXP ## Devolve e elevado à potência de um determinado número -FACT = FACTORIAL ## Devolve o factorial de um número -FACTDOUBLE = FACTDUPLO ## Devolve o factorial duplo de um número -FLOOR = ARRED.DEFEITO ## Arredonda um número por defeito até zero -GCD = MDC ## Devolve o maior divisor comum -INT = INT ## Arredonda um número por defeito para o número inteiro mais próximo -LCM = MMC ## Devolve o mínimo múltiplo comum -LN = LN ## Devolve o logaritmo natural de um número -LOG = LOG ## Devolve o logaritmo de um número com uma base especificada -LOG10 = LOG10 ## Devolve o logaritmo de base 10 de um número -MDETERM = MATRIZ.DETERM ## Devolve o determinante matricial de uma matriz -MINVERSE = MATRIZ.INVERSA ## Devolve o inverso matricial de uma matriz -MMULT = MATRIZ.MULT ## Devolve o produto matricial de duas matrizes -MOD = RESTO ## Devolve o resto da divisão -MROUND = MARRED ## Devolve um número arredondado para o múltiplo pretendido -MULTINOMIAL = POLINOMIAL ## Devolve o polinomial de um conjunto de números -ODD = ÍMPAR ## Arredonda por excesso um número para o número inteiro ímpar mais próximo -PI = PI ## Devolve o valor de pi -POWER = POTÊNCIA ## Devolve o resultado de um número elevado a uma potência -PRODUCT = PRODUTO ## Multiplica os respectivos argumentos -QUOTIENT = QUOCIENTE ## Devolve a parte inteira de uma divisão -RADIANS = RADIANOS ## Converte graus em radianos -RAND = ALEATÓRIO ## Devolve um número aleatório entre 0 e 1 -RANDBETWEEN = ALEATÓRIOENTRE ## Devolve um número aleatório entre os números especificados -ROMAN = ROMANO ## Converte um número árabe em romano, como texto -ROUND = ARRED ## Arredonda um número para um número de dígitos especificado -ROUNDDOWN = ARRED.PARA.BAIXO ## Arredonda um número por defeito até zero -ROUNDUP = ARRED.PARA.CIMA ## Arredonda um número por excesso, afastando-o de zero -SERIESSUM = SOMASÉRIE ## Devolve a soma de uma série de potências baseada na fórmula -SIGN = SINAL ## Devolve o sinal de um número -SIN = SEN ## Devolve o seno de um determinado ângulo -SINH = SENH ## Devolve o seno hiperbólico de um número -SQRT = RAIZQ ## Devolve uma raiz quadrada positiva -SQRTPI = RAIZPI ## Devolve a raiz quadrada de (núm * pi) -SUBTOTAL = SUBTOTAL ## Devolve um subtotal numa lista ou base de dados -SUM = SOMA ## Adiciona os respectivos argumentos -SUMIF = SOMA.SE ## Adiciona as células especificadas por um determinado critério -SUMIFS = SOMA.SE.S ## Adiciona as células num intervalo que cumpre vários critérios -SUMPRODUCT = SOMARPRODUTO ## Devolve a soma dos produtos de componentes de matrizes correspondentes -SUMSQ = SOMARQUAD ## Devolve a soma dos quadrados dos argumentos -SUMX2MY2 = SOMAX2DY2 ## Devolve a soma da diferença dos quadrados dos valores correspondentes em duas matrizes -SUMX2PY2 = SOMAX2SY2 ## Devolve a soma da soma dos quadrados dos valores correspondentes em duas matrizes -SUMXMY2 = SOMAXMY2 ## Devolve a soma dos quadrados da diferença dos valores correspondentes em duas matrizes -TAN = TAN ## Devolve a tangente de um número -TANH = TANH ## Devolve a tangente hiperbólica de um número -TRUNC = TRUNCAR ## Trunca um número para um número inteiro - - -## -## Statistical functions Funções estatísticas -## -AVEDEV = DESV.MÉDIO ## Devolve a média aritmética dos desvios absolutos à média dos pontos de dados -AVERAGE = MÉDIA ## Devolve a média dos respectivos argumentos -AVERAGEA = MÉDIAA ## Devolve uma média dos respectivos argumentos, incluindo números, texto e valores lógicos -AVERAGEIF = MÉDIA.SE ## Devolve a média aritmética de todas as células num intervalo que cumprem determinado critério -AVERAGEIFS = MÉDIA.SE.S ## Devolve a média aritmética de todas as células que cumprem múltiplos critérios -BETADIST = DISTBETA ## Devolve a função de distribuição cumulativa beta -BETAINV = BETA.ACUM.INV ## Devolve o inverso da função de distribuição cumulativa relativamente a uma distribuição beta específica -BINOMDIST = DISTRBINOM ## Devolve a probabilidade de distribuição binomial de termo individual -CHIDIST = DIST.CHI ## Devolve a probabilidade unicaudal da distribuição qui-quadrada -CHIINV = INV.CHI ## Devolve o inverso da probabilidade unicaudal da distribuição qui-quadrada -CHITEST = TESTE.CHI ## Devolve o teste para independência -CONFIDENCE = INT.CONFIANÇA ## Devolve o intervalo de confiança correspondente a uma média de população -CORREL = CORREL ## Devolve o coeficiente de correlação entre dois conjuntos de dados -COUNT = CONTAR ## Conta os números que existem na lista de argumentos -COUNTA = CONTAR.VAL ## Conta os valores que existem na lista de argumentos -COUNTBLANK = CONTAR.VAZIO ## Conta o número de células em branco num intervalo -COUNTIF = CONTAR.SE ## Calcula o número de células num intervalo que corresponde aos critérios determinados -COUNTIFS = CONTAR.SE.S ## Conta o número de células num intervalo que cumprem múltiplos critérios -COVAR = COVAR ## Devolve a covariância, que é a média dos produtos de desvios de pares -CRITBINOM = CRIT.BINOM ## Devolve o menor valor em que a distribuição binomial cumulativa é inferior ou igual a um valor de critério -DEVSQ = DESVQ ## Devolve a soma dos quadrados dos desvios -EXPONDIST = DISTEXPON ## Devolve a distribuição exponencial -FDIST = DISTF ## Devolve a distribuição da probabilidade F -FINV = INVF ## Devolve o inverso da distribuição da probabilidade F -FISHER = FISHER ## Devolve a transformação Fisher -FISHERINV = FISHERINV ## Devolve o inverso da transformação Fisher -FORECAST = PREVISÃO ## Devolve um valor ao longo de uma tendência linear -FREQUENCY = FREQUÊNCIA ## Devolve uma distribuição de frequência como uma matriz vertical -FTEST = TESTEF ## Devolve o resultado de um teste F -GAMMADIST = DISTGAMA ## Devolve a distribuição gama -GAMMAINV = INVGAMA ## Devolve o inverso da distribuição gama cumulativa -GAMMALN = LNGAMA ## Devolve o logaritmo natural da função gama, Γ(x) -GEOMEAN = MÉDIA.GEOMÉTRICA ## Devolve a média geométrica -GROWTH = CRESCIMENTO ## Devolve valores ao longo de uma tendência exponencial -HARMEAN = MÉDIA.HARMÓNICA ## Devolve a média harmónica -HYPGEOMDIST = DIST.HIPERGEOM ## Devolve a distribuição hipergeométrica -INTERCEPT = INTERCEPTAR ## Devolve a intercepção da linha de regressão linear -KURT = CURT ## Devolve a curtose de um conjunto de dados -LARGE = MAIOR ## Devolve o maior valor k-ésimo de um conjunto de dados -LINEST = PROJ.LIN ## Devolve os parâmetros de uma tendência linear -LOGEST = PROJ.LOG ## Devolve os parâmetros de uma tendência exponencial -LOGINV = INVLOG ## Devolve o inverso da distribuição normal logarítmica -LOGNORMDIST = DIST.NORMALLOG ## Devolve a distribuição normal logarítmica cumulativa -MAX = MÁXIMO ## Devolve o valor máximo numa lista de argumentos -MAXA = MÁXIMOA ## Devolve o valor máximo numa lista de argumentos, incluindo números, texto e valores lógicos -MEDIAN = MED ## Devolve a mediana dos números indicados -MIN = MÍNIMO ## Devolve o valor mínimo numa lista de argumentos -MINA = MÍNIMOA ## Devolve o valor mínimo numa lista de argumentos, incluindo números, texto e valores lógicos -MODE = MODA ## Devolve o valor mais comum num conjunto de dados -NEGBINOMDIST = DIST.BIN.NEG ## Devolve a distribuição binominal negativa -NORMDIST = DIST.NORM ## Devolve a distribuição cumulativa normal -NORMINV = INV.NORM ## Devolve o inverso da distribuição cumulativa normal -NORMSDIST = DIST.NORMP ## Devolve a distribuição cumulativa normal padrão -NORMSINV = INV.NORMP ## Devolve o inverso da distribuição cumulativa normal padrão -PEARSON = PEARSON ## Devolve o coeficiente de correlação momento/produto de Pearson -PERCENTILE = PERCENTIL ## Devolve o k-ésimo percentil de valores num intervalo -PERCENTRANK = ORDEM.PERCENTUAL ## Devolve a ordem percentual de um valor num conjunto de dados -PERMUT = PERMUTAR ## Devolve o número de permutações de um determinado número de objectos -POISSON = POISSON ## Devolve a distribuição de Poisson -PROB = PROB ## Devolve a probabilidade dos valores num intervalo se encontrarem entre dois limites -QUARTILE = QUARTIL ## Devolve o quartil de um conjunto de dados -RANK = ORDEM ## Devolve a ordem de um número numa lista numérica -RSQ = RQUAD ## Devolve o quadrado do coeficiente de correlação momento/produto de Pearson -SKEW = DISTORÇÃO ## Devolve a distorção de uma distribuição -SLOPE = DECLIVE ## Devolve o declive da linha de regressão linear -SMALL = MENOR ## Devolve o menor valor de k-ésimo de um conjunto de dados -STANDARDIZE = NORMALIZAR ## Devolve um valor normalizado -STDEV = DESVPAD ## Calcula o desvio-padrão com base numa amostra -STDEVA = DESVPADA ## Calcula o desvio-padrão com base numa amostra, incluindo números, texto e valores lógicos -STDEVP = DESVPADP ## Calcula o desvio-padrão com base na população total -STDEVPA = DESVPADPA ## Calcula o desvio-padrão com base na população total, incluindo números, texto e valores lógicos -STEYX = EPADYX ## Devolve o erro-padrão do valor de y previsto para cada x na regressão -TDIST = DISTT ## Devolve a distribuição t de Student -TINV = INVT ## Devolve o inverso da distribuição t de Student -TREND = TENDÊNCIA ## Devolve valores ao longo de uma tendência linear -TRIMMEAN = MÉDIA.INTERNA ## Devolve a média do interior de um conjunto de dados -TTEST = TESTET ## Devolve a probabilidade associada ao teste t de Student -VAR = VAR ## Calcula a variância com base numa amostra -VARA = VARA ## Calcula a variância com base numa amostra, incluindo números, texto e valores lógicos -VARP = VARP ## Calcula a variância com base na população total -VARPA = VARPA ## Calcula a variância com base na população total, incluindo números, texto e valores lógicos -WEIBULL = WEIBULL ## Devolve a distribuição Weibull -ZTEST = TESTEZ ## Devolve o valor de probabilidade unicaudal de um teste-z - - -## -## Text functions Funções de texto -## -ASC = ASC ## Altera letras ou katakana de largura total (byte duplo) numa cadeia de caracteres para caracteres de largura média (byte único) -BAHTTEXT = TEXTO.BAHT ## Converte um número em texto, utilizando o formato monetário ß (baht) -CHAR = CARÁCT ## Devolve o carácter especificado pelo número de código -CLEAN = LIMPAR ## Remove do texto todos os caracteres não imprimíveis -CODE = CÓDIGO ## Devolve um código numérico correspondente ao primeiro carácter numa cadeia de texto -CONCATENATE = CONCATENAR ## Agrupa vários itens de texto num único item de texto -DOLLAR = MOEDA ## Converte um número em texto, utilizando o formato monetário € (Euro) -EXACT = EXACTO ## Verifica se dois valores de texto são idênticos -FIND = LOCALIZAR ## Localiza um valor de texto dentro de outro (sensível às maiúsculas e minúsculas) -FINDB = LOCALIZARB ## Localiza um valor de texto dentro de outro (sensível às maiúsculas e minúsculas) -FIXED = FIXA ## Formata um número como texto com um número fixo de decimais -JIS = JIS ## Altera letras ou katakana de largura média (byte único) numa cadeia de caracteres para caracteres de largura total (byte duplo) -LEFT = ESQUERDA ## Devolve os caracteres mais à esquerda de um valor de texto -LEFTB = ESQUERDAB ## Devolve os caracteres mais à esquerda de um valor de texto -LEN = NÚM.CARACT ## Devolve o número de caracteres de uma cadeia de texto -LENB = NÚM.CARACTB ## Devolve o número de caracteres de uma cadeia de texto -LOWER = MINÚSCULAS ## Converte o texto em minúsculas -MID = SEG.TEXTO ## Devolve um número específico de caracteres de uma cadeia de texto, a partir da posição especificada -MIDB = SEG.TEXTOB ## Devolve um número específico de caracteres de uma cadeia de texto, a partir da posição especificada -PHONETIC = FONÉTICA ## Retira os caracteres fonéticos (furigana) de uma cadeia de texto -PROPER = INICIAL.MAIÚSCULA ## Coloca em maiúsculas a primeira letra de cada palavra de um valor de texto -REPLACE = SUBSTITUIR ## Substitui caracteres no texto -REPLACEB = SUBSTITUIRB ## Substitui caracteres no texto -REPT = REPETIR ## Repete texto um determinado número de vezes -RIGHT = DIREITA ## Devolve os caracteres mais à direita de um valor de texto -RIGHTB = DIREITAB ## Devolve os caracteres mais à direita de um valor de texto -SEARCH = PROCURAR ## Localiza um valor de texto dentro de outro (não sensível a maiúsculas e minúsculas) -SEARCHB = PROCURARB ## Localiza um valor de texto dentro de outro (não sensível a maiúsculas e minúsculas) -SUBSTITUTE = SUBST ## Substitui texto novo por texto antigo numa cadeia de texto -T = T ## Converte os respectivos argumentos em texto -TEXT = TEXTO ## Formata um número e converte-o em texto -TRIM = COMPACTAR ## Remove espaços do texto -UPPER = MAIÚSCULAS ## Converte texto em maiúsculas -VALUE = VALOR ## Converte um argumento de texto num número +## +## Add-in and Automation functions Funções de Suplemento e Automatização +## +GETPIVOTDATA = OBTERDADOSDIN ## Devolve dados armazenados num relatório de Tabela Dinâmica + + +## +## Cube functions Funções de cubo +## +CUBEKPIMEMBER = MEMBROKPICUBO ## Devolve o nome, propriedade e medição de um KPI (key performance indicator) e apresenta o nome e a propriedade na célula. Um KPI é uma medida quantificável, como, por exemplo, o lucro mensal bruto ou a rotatividade trimestral de pessoal, utilizada para monitorizar o desempenho de uma organização. +CUBEMEMBER = MEMBROCUBO ## Devolve um membro ou cadeia de identificação numa hierarquia de cubo. Utilizada para validar a existência do membro ou cadeia de identificação no cubo. +CUBEMEMBERPROPERTY = PROPRIEDADEMEMBROCUBO ## Devolve o valor de uma propriedade de membro no cubo. Utilizada para validar a existência de um nome de membro no cubo e para devolver a propriedade especificada para esse membro. +CUBERANKEDMEMBER = MEMBROCLASSIFICADOCUBO ## Devolve o enésimo ou a classificação mais alta num conjunto. Utilizada para devolver um ou mais elementos num conjunto, tal como o melhor vendedor ou os 10 melhores alunos. +CUBESET = CONJUNTOCUBO ## Define um conjunto calculado de membros ou cadeias de identificação enviando uma expressão de conjunto para o cubo no servidor, que cria o conjunto e, em seguida, devolve o conjunto ao Microsoft Office Excel. +CUBESETCOUNT = CONTARCONJUNTOCUBO ## Devolve o número de itens num conjunto. +CUBEVALUE = VALORCUBO ## Devolve um valor agregado do cubo. + + +## +## Database functions Funções de base de dados +## +DAVERAGE = BDMÉDIA ## Devolve a média das entradas da base de dados seleccionadas +DCOUNT = BDCONTAR ## Conta as células que contêm números numa base de dados +DCOUNTA = BDCONTAR.VAL ## Conta as células que não estejam em branco numa base de dados +DGET = BDOBTER ## Extrai de uma base de dados um único registo que corresponde aos critérios especificados +DMAX = BDMÁX ## Devolve o valor máximo das entradas da base de dados seleccionadas +DMIN = BDMÍN ## Devolve o valor mínimo das entradas da base de dados seleccionadas +DPRODUCT = BDMULTIPL ## Multiplica os valores de um determinado campo de registos que correspondem aos critérios numa base de dados +DSTDEV = BDDESVPAD ## Calcula o desvio-padrão com base numa amostra de entradas da base de dados seleccionadas +DSTDEVP = BDDESVPADP ## Calcula o desvio-padrão com base na população total das entradas da base de dados seleccionadas +DSUM = BDSOMA ## Adiciona os números na coluna de campo dos registos de base de dados que correspondem aos critérios +DVAR = BDVAR ## Calcula a variância com base numa amostra das entradas de base de dados seleccionadas +DVARP = BDVARP ## Calcula a variância com base na população total das entradas de base de dados seleccionadas + + +## +## Date and time functions Funções de data e hora +## +DATE = DATA ## Devolve o número de série de uma determinada data +DATEVALUE = DATA.VALOR ## Converte uma data em forma de texto num número de série +DAY = DIA ## Converte um número de série num dia do mês +DAYS360 = DIAS360 ## Calcula o número de dias entre duas datas com base num ano com 360 dias +EDATE = DATAM ## Devolve um número de série de data que corresponde ao número de meses indicado antes ou depois da data de início +EOMONTH = FIMMÊS ## Devolve o número de série do último dia do mês antes ou depois de um número de meses especificado +HOUR = HORA ## Converte um número de série numa hora +MINUTE = MINUTO ## Converte um número de série num minuto +MONTH = MÊS ## Converte um número de série num mês +NETWORKDAYS = DIATRABALHOTOTAL ## Devolve o número total de dias úteis entre duas datas +NOW = AGORA ## Devolve o número de série da data e hora actuais +SECOND = SEGUNDO ## Converte um número de série num segundo +TIME = TEMPO ## Devolve o número de série de um determinado tempo +TIMEVALUE = VALOR.TEMPO ## Converte um tempo em forma de texto num número de série +TODAY = HOJE ## Devolve o número de série da data actual +WEEKDAY = DIA.SEMANA ## Converte um número de série num dia da semana +WEEKNUM = NÚMSEMANA ## Converte um número de série num número que representa o número da semana num determinado ano +WORKDAY = DIA.TRABALHO ## Devolve o número de série da data antes ou depois de um número de dias úteis especificado +YEAR = ANO ## Converte um número de série num ano +YEARFRAC = FRACÇÃOANO ## Devolve a fracção de ano que representa o número de dias inteiros entre a data_de_início e a data_de_fim + + +## +## Engineering functions Funções de engenharia +## +BESSELI = BESSELI ## Devolve a função de Bessel modificada In(x) +BESSELJ = BESSELJ ## Devolve a função de Bessel Jn(x) +BESSELK = BESSELK ## Devolve a função de Bessel modificada Kn(x) +BESSELY = BESSELY ## Devolve a função de Bessel Yn(x) +BIN2DEC = BINADEC ## Converte um número binário em decimal +BIN2HEX = BINAHEX ## Converte um número binário em hexadecimal +BIN2OCT = BINAOCT ## Converte um número binário em octal +COMPLEX = COMPLEXO ## Converte coeficientes reais e imaginários num número complexo +CONVERT = CONVERTER ## Converte um número de um sistema de medida noutro +DEC2BIN = DECABIN ## Converte um número decimal em binário +DEC2HEX = DECAHEX ## Converte um número decimal em hexadecimal +DEC2OCT = DECAOCT ## Converte um número decimal em octal +DELTA = DELTA ## Testa se dois valores são iguais +ERF = FUNCERRO ## Devolve a função de erro +ERFC = FUNCERROCOMPL ## Devolve a função de erro complementar +GESTEP = DEGRAU ## Testa se um número é maior do que um valor limite +HEX2BIN = HEXABIN ## Converte um número hexadecimal em binário +HEX2DEC = HEXADEC ## Converte um número hexadecimal em decimal +HEX2OCT = HEXAOCT ## Converte um número hexadecimal em octal +IMABS = IMABS ## Devolve o valor absoluto (módulo) de um número complexo +IMAGINARY = IMAGINÁRIO ## Devolve o coeficiente imaginário de um número complexo +IMARGUMENT = IMARG ## Devolve o argumento Teta, um ângulo expresso em radianos +IMCONJUGATE = IMCONJ ## Devolve o conjugado complexo de um número complexo +IMCOS = IMCOS ## Devolve o co-seno de um número complexo +IMDIV = IMDIV ## Devolve o quociente de dois números complexos +IMEXP = IMEXP ## Devolve o exponencial de um número complexo +IMLN = IMLN ## Devolve o logaritmo natural de um número complexo +IMLOG10 = IMLOG10 ## Devolve o logaritmo de base 10 de um número complexo +IMLOG2 = IMLOG2 ## Devolve o logaritmo de base 2 de um número complexo +IMPOWER = IMPOT ## Devolve um número complexo elevado a uma potência inteira +IMPRODUCT = IMPROD ## Devolve o produto de números complexos +IMREAL = IMREAL ## Devolve o coeficiente real de um número complexo +IMSIN = IMSENO ## Devolve o seno de um número complexo +IMSQRT = IMRAIZ ## Devolve a raiz quadrada de um número complexo +IMSUB = IMSUBTR ## Devolve a diferença entre dois números complexos +IMSUM = IMSOMA ## Devolve a soma de números complexos +OCT2BIN = OCTABIN ## Converte um número octal em binário +OCT2DEC = OCTADEC ## Converte um número octal em decimal +OCT2HEX = OCTAHEX ## Converte um número octal em hexadecimal + + +## +## Financial functions Funções financeiras +## +ACCRINT = JUROSACUM ## Devolve os juros acumulados de um título que paga juros periódicos +ACCRINTM = JUROSACUMV ## Devolve os juros acumulados de um título que paga juros no vencimento +AMORDEGRC = AMORDEGRC ## Devolve a depreciação correspondente a cada período contabilístico utilizando um coeficiente de depreciação +AMORLINC = AMORLINC ## Devolve a depreciação correspondente a cada período contabilístico +COUPDAYBS = CUPDIASINLIQ ## Devolve o número de dias entre o início do período do cupão e a data de regularização +COUPDAYS = CUPDIAS ## Devolve o número de dias no período do cupão que contém a data de regularização +COUPDAYSNC = CUPDIASPRÓX ## Devolve o número de dias entre a data de regularização e a data do cupão seguinte +COUPNCD = CUPDATAPRÓX ## Devolve a data do cupão seguinte após a data de regularização +COUPNUM = CUPNÚM ## Devolve o número de cupões a serem pagos entre a data de regularização e a data de vencimento +COUPPCD = CUPDATAANT ## Devolve a data do cupão anterior antes da data de regularização +CUMIPMT = PGTOJURACUM ## Devolve os juros cumulativos pagos entre dois períodos +CUMPRINC = PGTOCAPACUM ## Devolve o capital cumulativo pago a título de empréstimo entre dois períodos +DB = BD ## Devolve a depreciação de um activo relativo a um período especificado utilizando o método das quotas degressivas fixas +DDB = BDD ## Devolve a depreciação de um activo relativo a um período especificado utilizando o método das quotas degressivas duplas ou qualquer outro método especificado +DISC = DESC ## Devolve a taxa de desconto de um título +DOLLARDE = MOEDADEC ## Converte um preço em unidade monetária, expresso como uma fracção, num preço em unidade monetária, expresso como um número decimal +DOLLARFR = MOEDAFRA ## Converte um preço em unidade monetária, expresso como um número decimal, num preço em unidade monetária, expresso como uma fracção +DURATION = DURAÇÃO ## Devolve a duração anual de um título com pagamentos de juros periódicos +EFFECT = EFECTIVA ## Devolve a taxa de juros anual efectiva +FV = VF ## Devolve o valor futuro de um investimento +FVSCHEDULE = VFPLANO ## Devolve o valor futuro de um capital inicial após a aplicação de uma série de taxas de juro compostas +INTRATE = TAXAJUROS ## Devolve a taxa de juros de um título investido na totalidade +IPMT = IPGTO ## Devolve o pagamento dos juros de um investimento durante um determinado período +IRR = TIR ## Devolve a taxa de rentabilidade interna para uma série de fluxos monetários +ISPMT = É.PGTO ## Calcula os juros pagos durante um período específico de um investimento +MDURATION = MDURAÇÃO ## Devolve a duração modificada de Macauley de um título com um valor de paridade equivalente a € 100 +MIRR = MTIR ## Devolve a taxa interna de rentabilidade em que os fluxos monetários positivos e negativos são financiados com taxas diferentes +NOMINAL = NOMINAL ## Devolve a taxa de juros nominal anual +NPER = NPER ## Devolve o número de períodos de um investimento +NPV = VAL ## Devolve o valor actual líquido de um investimento com base numa série de fluxos monetários periódicos e numa taxa de desconto +ODDFPRICE = PREÇOPRIMINC ## Devolve o preço por € 100 do valor nominal de um título com um período inicial incompleto +ODDFYIELD = LUCROPRIMINC ## Devolve o lucro de um título com um período inicial incompleto +ODDLPRICE = PREÇOÚLTINC ## Devolve o preço por € 100 do valor nominal de um título com um período final incompleto +ODDLYIELD = LUCROÚLTINC ## Devolve o lucro de um título com um período final incompleto +PMT = PGTO ## Devolve o pagamento periódico de uma anuidade +PPMT = PPGTO ## Devolve o pagamento sobre o capital de um investimento num determinado período +PRICE = PREÇO ## Devolve o preço por € 100 do valor nominal de um título que paga juros periódicos +PRICEDISC = PREÇODESC ## Devolve o preço por € 100 do valor nominal de um título descontado +PRICEMAT = PREÇOVENC ## Devolve o preço por € 100 do valor nominal de um título que paga juros no vencimento +PV = VA ## Devolve o valor actual de um investimento +RATE = TAXA ## Devolve a taxa de juros por período de uma anuidade +RECEIVED = RECEBER ## Devolve o montante recebido no vencimento de um título investido na totalidade +SLN = AMORT ## Devolve uma depreciação linear de um activo durante um período +SYD = AMORTD ## Devolve a depreciação por algarismos da soma dos anos de um activo durante um período especificado +TBILLEQ = OTN ## Devolve o lucro de um título equivalente a uma Obrigação do Tesouro +TBILLPRICE = OTNVALOR ## Devolve o preço por € 100 de valor nominal de uma Obrigação do Tesouro +TBILLYIELD = OTNLUCRO ## Devolve o lucro de uma Obrigação do Tesouro +VDB = BDV ## Devolve a depreciação de um activo relativo a um período específico ou parcial utilizando um método de quotas degressivas +XIRR = XTIR ## Devolve a taxa interna de rentabilidade de um plano de fluxos monetários que não seja necessariamente periódica +XNPV = XVAL ## Devolve o valor actual líquido de um plano de fluxos monetários que não seja necessariamente periódico +YIELD = LUCRO ## Devolve o lucro de um título que paga juros periódicos +YIELDDISC = LUCRODESC ## Devolve o lucro anual de um título emitido abaixo do valor nominal, por exemplo, uma Obrigação do Tesouro +YIELDMAT = LUCROVENC ## Devolve o lucro anual de um título que paga juros na data de vencimento + + +## +## Information functions Funções de informação +## +CELL = CÉL ## Devolve informações sobre a formatação, localização ou conteúdo de uma célula +ERROR.TYPE = TIPO.ERRO ## Devolve um número correspondente a um tipo de erro +INFO = INFORMAÇÃO ## Devolve informações sobre o ambiente de funcionamento actual +ISBLANK = É.CÉL.VAZIA ## Devolve VERDADEIRO se o valor estiver em branco +ISERR = É.ERROS ## Devolve VERDADEIRO se o valor for um valor de erro diferente de #N/D +ISERROR = É.ERRO ## Devolve VERDADEIRO se o valor for um valor de erro +ISEVEN = ÉPAR ## Devolve VERDADEIRO se o número for par +ISLOGICAL = É.LÓGICO ## Devolve VERDADEIRO se o valor for lógico +ISNA = É.NÃO.DISP ## Devolve VERDADEIRO se o valor for o valor de erro #N/D +ISNONTEXT = É.NÃO.TEXTO ## Devolve VERDADEIRO se o valor não for texto +ISNUMBER = É.NÚM ## Devolve VERDADEIRO se o valor for um número +ISODD = ÉÍMPAR ## Devolve VERDADEIRO se o número for ímpar +ISREF = É.REF ## Devolve VERDADEIRO se o valor for uma referência +ISTEXT = É.TEXTO ## Devolve VERDADEIRO se o valor for texto +N = N ## Devolve um valor convertido num número +NA = NÃO.DISP ## Devolve o valor de erro #N/D +TYPE = TIPO ## Devolve um número que indica o tipo de dados de um valor + + +## +## Logical functions Funções lógicas +## +AND = E ## Devolve VERDADEIRO se todos os respectivos argumentos corresponderem a VERDADEIRO +FALSE = FALSO ## Devolve o valor lógico FALSO +IF = SE ## Especifica um teste lógico a ser executado +IFERROR = SE.ERRO ## Devolve um valor definido pelo utilizador se ocorrer um erro na fórmula, e devolve o resultado da fórmula se não ocorrer nenhum erro +NOT = NÃO ## Inverte a lógica do respectivo argumento +OR = OU ## Devolve VERDADEIRO se qualquer argumento for VERDADEIRO +TRUE = VERDADEIRO ## Devolve o valor lógico VERDADEIRO + + +## +## Lookup and reference functions Funções de pesquisa e referência +## +ADDRESS = ENDEREÇO ## Devolve uma referência a uma única célula numa folha de cálculo como texto +AREAS = ÁREAS ## Devolve o número de áreas numa referência +CHOOSE = SELECCIONAR ## Selecciona um valor a partir de uma lista de valores +COLUMN = COL ## Devolve o número da coluna de uma referência +COLUMNS = COLS ## Devolve o número de colunas numa referência +HLOOKUP = PROCH ## Procura na linha superior de uma matriz e devolve o valor da célula indicada +HYPERLINK = HIPERLIGAÇÃO ## Cria um atalho ou hiperligação que abre um documento armazenado num servidor de rede, numa intranet ou na Internet +INDEX = ÍNDICE ## Utiliza um índice para escolher um valor de uma referência ou de uma matriz +INDIRECT = INDIRECTO ## Devolve uma referência indicada por um valor de texto +LOOKUP = PROC ## Procura valores num vector ou numa matriz +MATCH = CORRESP ## Procura valores numa referência ou numa matriz +OFFSET = DESLOCAMENTO ## Devolve o deslocamento de referência de uma determinada referência +ROW = LIN ## Devolve o número da linha de uma referência +ROWS = LINS ## Devolve o número de linhas numa referência +RTD = RTD ## Obtém dados em tempo real a partir de um programa que suporte automatização COM (automatização: modo de trabalhar com objectos de uma aplicação a partir de outra aplicação ou ferramenta de desenvolvimento. Anteriormente conhecida como automatização OLE, a automatização é uma norma da indústria de software e uma funcionalidade COM (Component Object Model).) +TRANSPOSE = TRANSPOR ## Devolve a transposição de uma matriz +VLOOKUP = PROCV ## Procura na primeira coluna de uma matriz e percorre a linha para devolver o valor de uma célula + + +## +## Math and trigonometry functions Funções matemáticas e trigonométricas +## +ABS = ABS ## Devolve o valor absoluto de um número +ACOS = ACOS ## Devolve o arco de co-seno de um número +ACOSH = ACOSH ## Devolve o co-seno hiperbólico inverso de um número +ASIN = ASEN ## Devolve o arco de seno de um número +ASINH = ASENH ## Devolve o seno hiperbólico inverso de um número +ATAN = ATAN ## Devolve o arco de tangente de um número +ATAN2 = ATAN2 ## Devolve o arco de tangente das coordenadas x e y +ATANH = ATANH ## Devolve a tangente hiperbólica inversa de um número +CEILING = ARRED.EXCESSO ## Arredonda um número para o número inteiro mais próximo ou para o múltiplo de significância mais próximo +COMBIN = COMBIN ## Devolve o número de combinações de um determinado número de objectos +COS = COS ## Devolve o co-seno de um número +COSH = COSH ## Devolve o co-seno hiperbólico de um número +DEGREES = GRAUS ## Converte radianos em graus +EVEN = PAR ## Arredonda um número por excesso para o número inteiro mais próximo +EXP = EXP ## Devolve e elevado à potência de um determinado número +FACT = FACTORIAL ## Devolve o factorial de um número +FACTDOUBLE = FACTDUPLO ## Devolve o factorial duplo de um número +FLOOR = ARRED.DEFEITO ## Arredonda um número por defeito até zero +GCD = MDC ## Devolve o maior divisor comum +INT = INT ## Arredonda um número por defeito para o número inteiro mais próximo +LCM = MMC ## Devolve o mínimo múltiplo comum +LN = LN ## Devolve o logaritmo natural de um número +LOG = LOG ## Devolve o logaritmo de um número com uma base especificada +LOG10 = LOG10 ## Devolve o logaritmo de base 10 de um número +MDETERM = MATRIZ.DETERM ## Devolve o determinante matricial de uma matriz +MINVERSE = MATRIZ.INVERSA ## Devolve o inverso matricial de uma matriz +MMULT = MATRIZ.MULT ## Devolve o produto matricial de duas matrizes +MOD = RESTO ## Devolve o resto da divisão +MROUND = MARRED ## Devolve um número arredondado para o múltiplo pretendido +MULTINOMIAL = POLINOMIAL ## Devolve o polinomial de um conjunto de números +ODD = ÍMPAR ## Arredonda por excesso um número para o número inteiro ímpar mais próximo +PI = PI ## Devolve o valor de pi +POWER = POTÊNCIA ## Devolve o resultado de um número elevado a uma potência +PRODUCT = PRODUTO ## Multiplica os respectivos argumentos +QUOTIENT = QUOCIENTE ## Devolve a parte inteira de uma divisão +RADIANS = RADIANOS ## Converte graus em radianos +RAND = ALEATÓRIO ## Devolve um número aleatório entre 0 e 1 +RANDBETWEEN = ALEATÓRIOENTRE ## Devolve um número aleatório entre os números especificados +ROMAN = ROMANO ## Converte um número árabe em romano, como texto +ROUND = ARRED ## Arredonda um número para um número de dígitos especificado +ROUNDDOWN = ARRED.PARA.BAIXO ## Arredonda um número por defeito até zero +ROUNDUP = ARRED.PARA.CIMA ## Arredonda um número por excesso, afastando-o de zero +SERIESSUM = SOMASÉRIE ## Devolve a soma de uma série de potências baseada na fórmula +SIGN = SINAL ## Devolve o sinal de um número +SIN = SEN ## Devolve o seno de um determinado ângulo +SINH = SENH ## Devolve o seno hiperbólico de um número +SQRT = RAIZQ ## Devolve uma raiz quadrada positiva +SQRTPI = RAIZPI ## Devolve a raiz quadrada de (núm * pi) +SUBTOTAL = SUBTOTAL ## Devolve um subtotal numa lista ou base de dados +SUM = SOMA ## Adiciona os respectivos argumentos +SUMIF = SOMA.SE ## Adiciona as células especificadas por um determinado critério +SUMIFS = SOMA.SE.S ## Adiciona as células num intervalo que cumpre vários critérios +SUMPRODUCT = SOMARPRODUTO ## Devolve a soma dos produtos de componentes de matrizes correspondentes +SUMSQ = SOMARQUAD ## Devolve a soma dos quadrados dos argumentos +SUMX2MY2 = SOMAX2DY2 ## Devolve a soma da diferença dos quadrados dos valores correspondentes em duas matrizes +SUMX2PY2 = SOMAX2SY2 ## Devolve a soma da soma dos quadrados dos valores correspondentes em duas matrizes +SUMXMY2 = SOMAXMY2 ## Devolve a soma dos quadrados da diferença dos valores correspondentes em duas matrizes +TAN = TAN ## Devolve a tangente de um número +TANH = TANH ## Devolve a tangente hiperbólica de um número +TRUNC = TRUNCAR ## Trunca um número para um número inteiro + + +## +## Statistical functions Funções estatísticas +## +AVEDEV = DESV.MÉDIO ## Devolve a média aritmética dos desvios absolutos à média dos pontos de dados +AVERAGE = MÉDIA ## Devolve a média dos respectivos argumentos +AVERAGEA = MÉDIAA ## Devolve uma média dos respectivos argumentos, incluindo números, texto e valores lógicos +AVERAGEIF = MÉDIA.SE ## Devolve a média aritmética de todas as células num intervalo que cumprem determinado critério +AVERAGEIFS = MÉDIA.SE.S ## Devolve a média aritmética de todas as células que cumprem múltiplos critérios +BETADIST = DISTBETA ## Devolve a função de distribuição cumulativa beta +BETAINV = BETA.ACUM.INV ## Devolve o inverso da função de distribuição cumulativa relativamente a uma distribuição beta específica +BINOMDIST = DISTRBINOM ## Devolve a probabilidade de distribuição binomial de termo individual +CHIDIST = DIST.CHI ## Devolve a probabilidade unicaudal da distribuição qui-quadrada +CHIINV = INV.CHI ## Devolve o inverso da probabilidade unicaudal da distribuição qui-quadrada +CHITEST = TESTE.CHI ## Devolve o teste para independência +CONFIDENCE = INT.CONFIANÇA ## Devolve o intervalo de confiança correspondente a uma média de população +CORREL = CORREL ## Devolve o coeficiente de correlação entre dois conjuntos de dados +COUNT = CONTAR ## Conta os números que existem na lista de argumentos +COUNTA = CONTAR.VAL ## Conta os valores que existem na lista de argumentos +COUNTBLANK = CONTAR.VAZIO ## Conta o número de células em branco num intervalo +COUNTIF = CONTAR.SE ## Calcula o número de células num intervalo que corresponde aos critérios determinados +COUNTIFS = CONTAR.SE.S ## Conta o número de células num intervalo que cumprem múltiplos critérios +COVAR = COVAR ## Devolve a covariância, que é a média dos produtos de desvios de pares +CRITBINOM = CRIT.BINOM ## Devolve o menor valor em que a distribuição binomial cumulativa é inferior ou igual a um valor de critério +DEVSQ = DESVQ ## Devolve a soma dos quadrados dos desvios +EXPONDIST = DISTEXPON ## Devolve a distribuição exponencial +FDIST = DISTF ## Devolve a distribuição da probabilidade F +FINV = INVF ## Devolve o inverso da distribuição da probabilidade F +FISHER = FISHER ## Devolve a transformação Fisher +FISHERINV = FISHERINV ## Devolve o inverso da transformação Fisher +FORECAST = PREVISÃO ## Devolve um valor ao longo de uma tendência linear +FREQUENCY = FREQUÊNCIA ## Devolve uma distribuição de frequência como uma matriz vertical +FTEST = TESTEF ## Devolve o resultado de um teste F +GAMMADIST = DISTGAMA ## Devolve a distribuição gama +GAMMAINV = INVGAMA ## Devolve o inverso da distribuição gama cumulativa +GAMMALN = LNGAMA ## Devolve o logaritmo natural da função gama, Γ(x) +GEOMEAN = MÉDIA.GEOMÉTRICA ## Devolve a média geométrica +GROWTH = CRESCIMENTO ## Devolve valores ao longo de uma tendência exponencial +HARMEAN = MÉDIA.HARMÓNICA ## Devolve a média harmónica +HYPGEOMDIST = DIST.HIPERGEOM ## Devolve a distribuição hipergeométrica +INTERCEPT = INTERCEPTAR ## Devolve a intercepção da linha de regressão linear +KURT = CURT ## Devolve a curtose de um conjunto de dados +LARGE = MAIOR ## Devolve o maior valor k-ésimo de um conjunto de dados +LINEST = PROJ.LIN ## Devolve os parâmetros de uma tendência linear +LOGEST = PROJ.LOG ## Devolve os parâmetros de uma tendência exponencial +LOGINV = INVLOG ## Devolve o inverso da distribuição normal logarítmica +LOGNORMDIST = DIST.NORMALLOG ## Devolve a distribuição normal logarítmica cumulativa +MAX = MÁXIMO ## Devolve o valor máximo numa lista de argumentos +MAXA = MÁXIMOA ## Devolve o valor máximo numa lista de argumentos, incluindo números, texto e valores lógicos +MEDIAN = MED ## Devolve a mediana dos números indicados +MIN = MÍNIMO ## Devolve o valor mínimo numa lista de argumentos +MINA = MÍNIMOA ## Devolve o valor mínimo numa lista de argumentos, incluindo números, texto e valores lógicos +MODE = MODA ## Devolve o valor mais comum num conjunto de dados +NEGBINOMDIST = DIST.BIN.NEG ## Devolve a distribuição binominal negativa +NORMDIST = DIST.NORM ## Devolve a distribuição cumulativa normal +NORMINV = INV.NORM ## Devolve o inverso da distribuição cumulativa normal +NORMSDIST = DIST.NORMP ## Devolve a distribuição cumulativa normal padrão +NORMSINV = INV.NORMP ## Devolve o inverso da distribuição cumulativa normal padrão +PEARSON = PEARSON ## Devolve o coeficiente de correlação momento/produto de Pearson +PERCENTILE = PERCENTIL ## Devolve o k-ésimo percentil de valores num intervalo +PERCENTRANK = ORDEM.PERCENTUAL ## Devolve a ordem percentual de um valor num conjunto de dados +PERMUT = PERMUTAR ## Devolve o número de permutações de um determinado número de objectos +POISSON = POISSON ## Devolve a distribuição de Poisson +PROB = PROB ## Devolve a probabilidade dos valores num intervalo se encontrarem entre dois limites +QUARTILE = QUARTIL ## Devolve o quartil de um conjunto de dados +RANK = ORDEM ## Devolve a ordem de um número numa lista numérica +RSQ = RQUAD ## Devolve o quadrado do coeficiente de correlação momento/produto de Pearson +SKEW = DISTORÇÃO ## Devolve a distorção de uma distribuição +SLOPE = DECLIVE ## Devolve o declive da linha de regressão linear +SMALL = MENOR ## Devolve o menor valor de k-ésimo de um conjunto de dados +STANDARDIZE = NORMALIZAR ## Devolve um valor normalizado +STDEV = DESVPAD ## Calcula o desvio-padrão com base numa amostra +STDEVA = DESVPADA ## Calcula o desvio-padrão com base numa amostra, incluindo números, texto e valores lógicos +STDEVP = DESVPADP ## Calcula o desvio-padrão com base na população total +STDEVPA = DESVPADPA ## Calcula o desvio-padrão com base na população total, incluindo números, texto e valores lógicos +STEYX = EPADYX ## Devolve o erro-padrão do valor de y previsto para cada x na regressão +TDIST = DISTT ## Devolve a distribuição t de Student +TINV = INVT ## Devolve o inverso da distribuição t de Student +TREND = TENDÊNCIA ## Devolve valores ao longo de uma tendência linear +TRIMMEAN = MÉDIA.INTERNA ## Devolve a média do interior de um conjunto de dados +TTEST = TESTET ## Devolve a probabilidade associada ao teste t de Student +VAR = VAR ## Calcula a variância com base numa amostra +VARA = VARA ## Calcula a variância com base numa amostra, incluindo números, texto e valores lógicos +VARP = VARP ## Calcula a variância com base na população total +VARPA = VARPA ## Calcula a variância com base na população total, incluindo números, texto e valores lógicos +WEIBULL = WEIBULL ## Devolve a distribuição Weibull +ZTEST = TESTEZ ## Devolve o valor de probabilidade unicaudal de um teste-z + + +## +## Text functions Funções de texto +## +ASC = ASC ## Altera letras ou katakana de largura total (byte duplo) numa cadeia de caracteres para caracteres de largura média (byte único) +BAHTTEXT = TEXTO.BAHT ## Converte um número em texto, utilizando o formato monetário ß (baht) +CHAR = CARÁCT ## Devolve o carácter especificado pelo número de código +CLEAN = LIMPAR ## Remove do texto todos os caracteres não imprimíveis +CODE = CÓDIGO ## Devolve um código numérico correspondente ao primeiro carácter numa cadeia de texto +CONCATENATE = CONCATENAR ## Agrupa vários itens de texto num único item de texto +DOLLAR = MOEDA ## Converte um número em texto, utilizando o formato monetário € (Euro) +EXACT = EXACTO ## Verifica se dois valores de texto são idênticos +FIND = LOCALIZAR ## Localiza um valor de texto dentro de outro (sensível às maiúsculas e minúsculas) +FINDB = LOCALIZARB ## Localiza um valor de texto dentro de outro (sensível às maiúsculas e minúsculas) +FIXED = FIXA ## Formata um número como texto com um número fixo de decimais +JIS = JIS ## Altera letras ou katakana de largura média (byte único) numa cadeia de caracteres para caracteres de largura total (byte duplo) +LEFT = ESQUERDA ## Devolve os caracteres mais à esquerda de um valor de texto +LEFTB = ESQUERDAB ## Devolve os caracteres mais à esquerda de um valor de texto +LEN = NÚM.CARACT ## Devolve o número de caracteres de uma cadeia de texto +LENB = NÚM.CARACTB ## Devolve o número de caracteres de uma cadeia de texto +LOWER = MINÚSCULAS ## Converte o texto em minúsculas +MID = SEG.TEXTO ## Devolve um número específico de caracteres de uma cadeia de texto, a partir da posição especificada +MIDB = SEG.TEXTOB ## Devolve um número específico de caracteres de uma cadeia de texto, a partir da posição especificada +PHONETIC = FONÉTICA ## Retira os caracteres fonéticos (furigana) de uma cadeia de texto +PROPER = INICIAL.MAIÚSCULA ## Coloca em maiúsculas a primeira letra de cada palavra de um valor de texto +REPLACE = SUBSTITUIR ## Substitui caracteres no texto +REPLACEB = SUBSTITUIRB ## Substitui caracteres no texto +REPT = REPETIR ## Repete texto um determinado número de vezes +RIGHT = DIREITA ## Devolve os caracteres mais à direita de um valor de texto +RIGHTB = DIREITAB ## Devolve os caracteres mais à direita de um valor de texto +SEARCH = PROCURAR ## Localiza um valor de texto dentro de outro (não sensível a maiúsculas e minúsculas) +SEARCHB = PROCURARB ## Localiza um valor de texto dentro de outro (não sensível a maiúsculas e minúsculas) +SUBSTITUTE = SUBST ## Substitui texto novo por texto antigo numa cadeia de texto +T = T ## Converte os respectivos argumentos em texto +TEXT = TEXTO ## Formata um número e converte-o em texto +TRIM = COMPACTAR ## Remove espaços do texto +UPPER = MAIÚSCULAS ## Converte texto em maiúsculas +VALUE = VALOR ## Converte um argumento de texto num número diff --git a/htdocs/includes/phpexcel/PHPExcel/locale/sv/functions b/htdocs/includes/phpexcel/PHPExcel/locale/sv/functions index 9af37d8e401..73b2deb5eb2 100644 --- a/htdocs/includes/phpexcel/PHPExcel/locale/sv/functions +++ b/htdocs/includes/phpexcel/PHPExcel/locale/sv/functions @@ -1,408 +1,408 @@ -## -## Add-in and Automation functions Tilläggs- och automatiseringsfunktioner -## -GETPIVOTDATA = HÄMTA.PIVOTDATA ## Returnerar data som lagrats i en pivottabellrapport - - -## -## Cube functions Kubfunktioner -## -CUBEKPIMEMBER = KUBKPIMEDLEM ## Returnerar namn, egenskap och mått för en KPI och visar namnet och egenskapen i cellen. En KPI, eller prestandaindikator, är ett kvantifierbart mått, t.ex. månatlig bruttovinst eller personalomsättning per kvartal, som används för att analysera ett företags resultat. -CUBEMEMBER = KUBMEDLEM ## Returnerar en medlem eller ett par i en kubhierarki. Används för att verifiera att medlemmen eller paret finns i kuben. -CUBEMEMBERPROPERTY = KUBMEDLEMSEGENSKAP ## Returnerar värdet för en medlemsegenskap i kuben. Används för att verifiera att ett medlemsnamn finns i kuben, samt för att returnera den angivna egenskapen för medlemmen. -CUBERANKEDMEMBER = KUBRANGORDNADMEDLEM ## Returnerar den n:te, eller rangordnade, medlemmen i en uppsättning. Används för att returnera ett eller flera element i en uppsättning, till exempelvis den bästa försäljaren eller de tio bästa eleverna. -CUBESET = KUBINSTÄLLNING ## Definierar en beräknad uppsättning medlemmar eller par genom att skicka ett bestämt uttryck till kuben på servern, som skapar uppsättningen och sedan returnerar den till Microsoft Office Excel. -CUBESETCOUNT = KUBINSTÄLLNINGANTAL ## Returnerar antalet objekt i en uppsättning. -CUBEVALUE = KUBVÄRDE ## Returnerar ett mängdvärde från en kub. - - -## -## Database functions Databasfunktioner -## -DAVERAGE = DMEDEL ## Returnerar medelvärdet av databasposterna -DCOUNT = DANTAL ## Räknar antalet celler som innehåller tal i en databas -DCOUNTA = DANTALV ## Räknar ifyllda celler i en databas -DGET = DHÄMTA ## Hämtar en enstaka post från en databas som uppfyller de angivna villkoren -DMAX = DMAX ## Returnerar det största värdet från databasposterna -DMIN = DMIN ## Returnerar det minsta värdet från databasposterna -DPRODUCT = DPRODUKT ## Multiplicerar värdena i ett visst fält i poster som uppfyller villkoret -DSTDEV = DSTDAV ## Uppskattar standardavvikelsen baserat på ett urval av databasposterna -DSTDEVP = DSTDAVP ## Beräknar standardavvikelsen utifrån hela populationen av valda databasposter -DSUM = DSUMMA ## Summerar talen i kolumnfält i databasposter som uppfyller villkoret -DVAR = DVARIANS ## Uppskattar variansen baserat på ett urval av databasposterna -DVARP = DVARIANSP ## Beräknar variansen utifrån hela populationen av valda databasposter - - -## -## Date and time functions Tid- och datumfunktioner -## -DATE = DATUM ## Returnerar ett serienummer för ett visst datum -DATEVALUE = DATUMVÄRDE ## Konverterar ett datum i textformat till ett serienummer -DAY = DAG ## Konverterar ett serienummer till dag i månaden -DAYS360 = DAGAR360 ## Beräknar antalet dagar mellan två datum baserat på ett 360-dagarsår -EDATE = EDATUM ## Returnerar serienumret för ett datum som infaller ett visst antal månader före eller efter startdatumet -EOMONTH = SLUTMÅNAD ## Returnerar serienumret för sista dagen i månaden ett visst antal månader tidigare eller senare -HOUR = TIMME ## Konverterar ett serienummer till en timme -MINUTE = MINUT ## Konverterar ett serienummer till en minut -MONTH = MÅNAD ## Konverterar ett serienummer till en månad -NETWORKDAYS = NETTOARBETSDAGAR ## Returnerar antalet hela arbetsdagar mellan två datum -NOW = NU ## Returnerar serienumret för dagens datum och aktuell tid -SECOND = SEKUND ## Konverterar ett serienummer till en sekund -TIME = KLOCKSLAG ## Returnerar serienumret för en viss tid -TIMEVALUE = TIDVÄRDE ## Konverterar en tid i textformat till ett serienummer -TODAY = IDAG ## Returnerar serienumret för dagens datum -WEEKDAY = VECKODAG ## Konverterar ett serienummer till en dag i veckan -WEEKNUM = VECKONR ## Konverterar ett serienummer till ett veckonummer -WORKDAY = ARBETSDAGAR ## Returnerar serienumret för ett datum ett visst antal arbetsdagar tidigare eller senare -YEAR = ÅR ## Konverterar ett serienummer till ett år -YEARFRAC = ÅRDEL ## Returnerar en del av ett år som representerar antalet hela dagar mellan start- och slutdatum - - -## -## Engineering functions Tekniska funktioner -## -BESSELI = BESSELI ## Returnerar den modifierade Bessel-funktionen In(x) -BESSELJ = BESSELJ ## Returnerar Bessel-funktionen Jn(x) -BESSELK = BESSELK ## Returnerar den modifierade Bessel-funktionen Kn(x) -BESSELY = BESSELY ## Returnerar Bessel-funktionen Yn(x) -BIN2DEC = BIN.TILL.DEC ## Omvandlar ett binärt tal till decimalt -BIN2HEX = BIN.TILL.HEX ## Omvandlar ett binärt tal till hexadecimalt -BIN2OCT = BIN.TILL.OKT ## Omvandlar ett binärt tal till oktalt -COMPLEX = KOMPLEX ## Omvandlar reella och imaginära koefficienter till ett komplext tal -CONVERT = KONVERTERA ## Omvandlar ett tal från ett måttsystem till ett annat -DEC2BIN = DEC.TILL.BIN ## Omvandlar ett decimalt tal till binärt -DEC2HEX = DEC.TILL.HEX ## Omvandlar ett decimalt tal till hexadecimalt -DEC2OCT = DEC.TILL.OKT ## Omvandlar ett decimalt tal till oktalt -DELTA = DELTA ## Testar om två värden är lika -ERF = FELF ## Returnerar felfunktionen -ERFC = FELFK ## Returnerar den komplementära felfunktionen -GESTEP = SLSTEG ## Testar om ett tal är större än ett tröskelvärde -HEX2BIN = HEX.TILL.BIN ## Omvandlar ett hexadecimalt tal till binärt -HEX2DEC = HEX.TILL.DEC ## Omvandlar ett hexadecimalt tal till decimalt -HEX2OCT = HEX.TILL.OKT ## Omvandlar ett hexadecimalt tal till oktalt -IMABS = IMABS ## Returnerar absolutvärdet (modulus) för ett komplext tal -IMAGINARY = IMAGINÄR ## Returnerar den imaginära koefficienten för ett komplext tal -IMARGUMENT = IMARGUMENT ## Returnerar det komplexa talets argument, en vinkel uttryckt i radianer -IMCONJUGATE = IMKONJUGAT ## Returnerar det komplexa talets konjugat -IMCOS = IMCOS ## Returnerar cosinus för ett komplext tal -IMDIV = IMDIV ## Returnerar kvoten för två komplexa tal -IMEXP = IMEUPPHÖJT ## Returnerar exponenten för ett komplext tal -IMLN = IMLN ## Returnerar den naturliga logaritmen för ett komplext tal -IMLOG10 = IMLOG10 ## Returnerar 10-logaritmen för ett komplext tal -IMLOG2 = IMLOG2 ## Returnerar 2-logaritmen för ett komplext tal -IMPOWER = IMUPPHÖJT ## Returnerar ett komplext tal upphöjt till en exponent -IMPRODUCT = IMPRODUKT ## Returnerar produkten av komplexa tal -IMREAL = IMREAL ## Returnerar den reella koefficienten för ett komplext tal -IMSIN = IMSIN ## Returnerar sinus för ett komplext tal -IMSQRT = IMROT ## Returnerar kvadratroten av ett komplext tal -IMSUB = IMDIFF ## Returnerar differensen mellan två komplexa tal -IMSUM = IMSUM ## Returnerar summan av komplexa tal -OCT2BIN = OKT.TILL.BIN ## Omvandlar ett oktalt tal till binärt -OCT2DEC = OKT.TILL.DEC ## Omvandlar ett oktalt tal till decimalt -OCT2HEX = OKT.TILL.HEX ## Omvandlar ett oktalt tal till hexadecimalt - - -## -## Financial functions Finansiella funktioner -## -ACCRINT = UPPLRÄNTA ## Returnerar den upplupna räntan för värdepapper med periodisk ränta -ACCRINTM = UPPLOBLRÄNTA ## Returnerar den upplupna räntan för ett värdepapper som ger avkastning på förfallodagen -AMORDEGRC = AMORDEGRC ## Returnerar avskrivningen för varje redovisningsperiod med hjälp av en avskrivningskoefficient -AMORLINC = AMORLINC ## Returnerar avskrivningen för varje redovisningsperiod -COUPDAYBS = KUPDAGBB ## Returnerar antal dagar från början av kupongperioden till likviddagen -COUPDAYS = KUPDAGARS ## Returnerar antalet dagar i kupongperioden som innehåller betalningsdatumet -COUPDAYSNC = KUPDAGNK ## Returnerar antalet dagar från betalningsdatumet till nästa kupongdatum -COUPNCD = KUPNKD ## Returnerar nästa kupongdatum efter likviddagen -COUPNUM = KUPANT ## Returnerar kuponger som förfaller till betalning mellan likviddagen och förfallodagen -COUPPCD = KUPFKD ## Returnerar föregående kupongdatum före likviddagen -CUMIPMT = KUMRÄNTA ## Returnerar den ackumulerade räntan som betalats mellan två perioder -CUMPRINC = KUMPRIS ## Returnerar det ackumulerade kapitalbeloppet som betalats på ett lån mellan två perioder -DB = DB ## Returnerar avskrivningen för en tillgång under en angiven tid enligt metoden för fast degressiv avskrivning -DDB = DEGAVSKR ## Returnerar en tillgångs värdeminskning under en viss period med hjälp av dubbel degressiv avskrivning eller någon annan metod som du anger -DISC = DISK ## Returnerar diskonteringsräntan för ett värdepapper -DOLLARDE = DECTAL ## Omvandlar ett pris uttryckt som ett bråk till ett decimaltal -DOLLARFR = BRÅK ## Omvandlar ett pris i kronor uttryckt som ett decimaltal till ett bråk -DURATION = LÖPTID ## Returnerar den årliga löptiden för en säkerhet med periodiska räntebetalningar -EFFECT = EFFRÄNTA ## Returnerar den årliga effektiva räntesatsen -FV = SLUTVÄRDE ## Returnerar det framtida värdet på en investering -FVSCHEDULE = FÖRRÄNTNING ## Returnerar det framtida värdet av ett begynnelsekapital beräknat på olika räntenivåer -INTRATE = ÅRSRÄNTA ## Returnerar räntesatsen för ett betalt värdepapper -IPMT = RBETALNING ## Returnerar räntedelen av en betalning för en given period -IRR = IR ## Returnerar internräntan för en serie betalningar -ISPMT = RALÅN ## Beräknar räntan som har betalats under en specifik betalningsperiod -MDURATION = MLÖPTID ## Returnerar den modifierade Macauley-löptiden för ett värdepapper med det antagna nominella värdet 100 kr -MIRR = MODIR ## Returnerar internräntan där positiva och negativa betalningar finansieras med olika räntor -NOMINAL = NOMRÄNTA ## Returnerar den årliga nominella räntesatsen -NPER = PERIODER ## Returnerar antalet perioder för en investering -NPV = NETNUVÄRDE ## Returnerar nuvärdet av en serie periodiska betalningar vid en given diskonteringsränta -ODDFPRICE = UDDAFPRIS ## Returnerar priset per 100 kr nominellt värde för ett värdepapper med en udda första period -ODDFYIELD = UDDAFAVKASTNING ## Returnerar avkastningen för en säkerhet med en udda första period -ODDLPRICE = UDDASPRIS ## Returnerar priset per 100 kr nominellt värde för ett värdepapper med en udda sista period -ODDLYIELD = UDDASAVKASTNING ## Returnerar avkastningen för en säkerhet med en udda sista period -PMT = BETALNING ## Returnerar den periodiska betalningen för en annuitet -PPMT = AMORT ## Returnerar amorteringsdelen av en annuitetsbetalning för en given period -PRICE = PRIS ## Returnerar priset per 100 kr nominellt värde för ett värdepapper som ger periodisk ränta -PRICEDISC = PRISDISK ## Returnerar priset per 100 kr nominellt värde för ett diskonterat värdepapper -PRICEMAT = PRISFÖRF ## Returnerar priset per 100 kr nominellt värde för ett värdepapper som ger ränta på förfallodagen -PV = PV ## Returnerar nuvärdet av en serie lika stora periodiska betalningar -RATE = RÄNTA ## Returnerar räntesatsen per period i en annuitet -RECEIVED = BELOPP ## Returnerar beloppet som utdelas på förfallodagen för ett betalat värdepapper -SLN = LINAVSKR ## Returnerar den linjära avskrivningen för en tillgång under en period -SYD = ÅRSAVSKR ## Returnerar den årliga avskrivningssumman för en tillgång under en angiven period -TBILLEQ = SSVXEKV ## Returnerar avkastningen motsvarande en obligation för en statsskuldväxel -TBILLPRICE = SSVXPRIS ## Returnerar priset per 100 kr nominellt värde för en statsskuldväxel -TBILLYIELD = SSVXRÄNTA ## Returnerar avkastningen för en statsskuldväxel -VDB = VDEGRAVSKR ## Returnerar avskrivningen för en tillgång under en angiven period (med degressiv avskrivning) -XIRR = XIRR ## Returnerar internräntan för en serie betalningar som inte nödvändigtvis är periodiska -XNPV = XNUVÄRDE ## Returnerar det nuvarande nettovärdet för en serie betalningar som inte nödvändigtvis är periodiska -YIELD = NOMAVK ## Returnerar avkastningen för ett värdepapper som ger periodisk ränta -YIELDDISC = NOMAVKDISK ## Returnerar den årliga avkastningen för diskonterade värdepapper, exempelvis en statsskuldväxel -YIELDMAT = NOMAVKFÖRF ## Returnerar den årliga avkastningen för ett värdepapper som ger ränta på förfallodagen - - -## -## Information functions Informationsfunktioner -## -CELL = CELL ## Returnerar information om formatering, plats och innehåll i en cell -ERROR.TYPE = FEL.TYP ## Returnerar ett tal som motsvarar ett felvärde -INFO = INFO ## Returnerar information om operativsystemet -ISBLANK = ÄRREF ## Returnerar SANT om värdet är tomt -ISERR = Ä ## Returnerar SANT om värdet är ett felvärde annat än #SAKNAS! -ISERROR = ÄRFEL ## Returnerar SANT om värdet är ett felvärde -ISEVEN = ÄRJÄMN ## Returnerar SANT om talet är jämnt -ISLOGICAL = ÄREJTEXT ## Returnerar SANT om värdet är ett logiskt värde -ISNA = ÄRLOGISK ## Returnerar SANT om värdet är felvärdet #SAKNAS! -ISNONTEXT = ÄRSAKNAD ## Returnerar SANT om värdet inte är text -ISNUMBER = ÄRTAL ## Returnerar SANT om värdet är ett tal -ISODD = ÄRUDDA ## Returnerar SANT om talet är udda -ISREF = ÄRTOM ## Returnerar SANT om värdet är en referens -ISTEXT = ÄRTEXT ## Returnerar SANT om värdet är text -N = N ## Returnerar ett värde omvandlat till ett tal -NA = SAKNAS ## Returnerar felvärdet #SAKNAS! -TYPE = VÄRDETYP ## Returnerar ett tal som anger värdets datatyp - - -## -## Logical functions Logiska funktioner -## -AND = OCH ## Returnerar SANT om alla argument är sanna -FALSE = FALSKT ## Returnerar det logiska värdet FALSKT -IF = OM ## Anger vilket logiskt test som ska utföras -IFERROR = OMFEL ## Returnerar ett värde som du anger om en formel utvärderar till ett fel; annars returneras resultatet av formeln -NOT = ICKE ## Inverterar logiken för argumenten -OR = ELLER ## Returnerar SANT om något argument är SANT -TRUE = SANT ## Returnerar det logiska värdet SANT - - -## -## Lookup and reference functions Sök- och referensfunktioner -## -ADDRESS = ADRESS ## Returnerar en referens som text till en enstaka cell i ett kalkylblad -AREAS = OMRÅDEN ## Returnerar antalet områden i en referens -CHOOSE = VÄLJ ## Väljer ett värde i en lista över värden -COLUMN = KOLUMN ## Returnerar kolumnnumret för en referens -COLUMNS = KOLUMNER ## Returnerar antalet kolumner i en referens -HLOOKUP = LETAKOLUMN ## Söker i den översta raden i en matris och returnerar värdet för angiven cell -HYPERLINK = HYPERLÄNK ## Skapar en genväg eller ett hopp till ett dokument i nätverket, i ett intranät eller på Internet -INDEX = INDEX ## Använder ett index för ett välja ett värde i en referens eller matris -INDIRECT = INDIREKT ## Returnerar en referens som anges av ett textvärde -LOOKUP = LETAUPP ## Letar upp värden i en vektor eller matris -MATCH = PASSA ## Letar upp värden i en referens eller matris -OFFSET = FÖRSKJUTNING ## Returnerar en referens förskjuten i förhållande till en given referens -ROW = RAD ## Returnerar radnumret för en referens -ROWS = RADER ## Returnerar antalet rader i en referens -RTD = RTD ## Hämtar realtidsdata från ett program som stöder COM-automation (Automation: Ett sätt att arbeta med ett programs objekt från ett annat program eller utvecklingsverktyg. Detta kallades tidigare för OLE Automation, och är en branschstandard och ingår i Component Object Model (COM).) -TRANSPOSE = TRANSPONERA ## Transponerar en matris -VLOOKUP = LETARAD ## Letar i den första kolumnen i en matris och flyttar över raden för att returnera värdet för en cell - - -## -## Math and trigonometry functions Matematiska och trigonometriska funktioner -## -ABS = ABS ## Returnerar absolutvärdet av ett tal -ACOS = ARCCOS ## Returnerar arcus cosinus för ett tal -ACOSH = ARCCOSH ## Returnerar inverterad hyperbolisk cosinus för ett tal -ASIN = ARCSIN ## Returnerar arcus cosinus för ett tal -ASINH = ARCSINH ## Returnerar hyperbolisk arcus sinus för ett tal -ATAN = ARCTAN ## Returnerar arcus tangens för ett tal -ATAN2 = ARCTAN2 ## Returnerar arcus tangens för en x- och en y- koordinat -ATANH = ARCTANH ## Returnerar hyperbolisk arcus tangens för ett tal -CEILING = RUNDA.UPP ## Avrundar ett tal till närmaste heltal eller närmaste signifikanta multipel -COMBIN = KOMBIN ## Returnerar antalet kombinationer för ett givet antal objekt -COS = COS ## Returnerar cosinus för ett tal -COSH = COSH ## Returnerar hyperboliskt cosinus för ett tal -DEGREES = GRADER ## Omvandlar radianer till grader -EVEN = JÄMN ## Avrundar ett tal uppåt till närmaste heltal -EXP = EXP ## Returnerar e upphöjt till ett givet tal -FACT = FAKULTET ## Returnerar fakulteten för ett tal -FACTDOUBLE = DUBBELFAKULTET ## Returnerar dubbelfakulteten för ett tal -FLOOR = RUNDA.NED ## Avrundar ett tal nedåt mot noll -GCD = SGD ## Returnerar den största gemensamma nämnaren -INT = HELTAL ## Avrundar ett tal nedåt till närmaste heltal -LCM = MGM ## Returnerar den minsta gemensamma multipeln -LN = LN ## Returnerar den naturliga logaritmen för ett tal -LOG = LOG ## Returnerar logaritmen för ett tal för en given bas -LOG10 = LOG10 ## Returnerar 10-logaritmen för ett tal -MDETERM = MDETERM ## Returnerar matrisen som är avgörandet av en matris -MINVERSE = MINVERT ## Returnerar matrisinversen av en matris -MMULT = MMULT ## Returnerar matrisprodukten av två matriser -MOD = REST ## Returnerar resten vid en division -MROUND = MAVRUNDA ## Returnerar ett tal avrundat till en given multipel -MULTINOMIAL = MULTINOMIAL ## Returnerar multinomialen för en uppsättning tal -ODD = UDDA ## Avrundar ett tal uppåt till närmaste udda heltal -PI = PI ## Returnerar värdet pi -POWER = UPPHÖJT.TILL ## Returnerar resultatet av ett tal upphöjt till en exponent -PRODUCT = PRODUKT ## Multiplicerar argumenten -QUOTIENT = KVOT ## Returnerar heltalsdelen av en division -RADIANS = RADIANER ## Omvandlar grader till radianer -RAND = SLUMP ## Returnerar ett slumptal mellan 0 och 1 -RANDBETWEEN = SLUMP.MELLAN ## Returnerar ett slumptal mellan de tal som du anger -ROMAN = ROMERSK ## Omvandlar vanliga (arabiska) siffror till romerska som text -ROUND = AVRUNDA ## Avrundar ett tal till ett angivet antal siffror -ROUNDDOWN = AVRUNDA.NEDÅT ## Avrundar ett tal nedåt mot noll -ROUNDUP = AVRUNDA.UPPÅT ## Avrundar ett tal uppåt, från noll -SERIESSUM = SERIESUMMA ## Returnerar summan av en potensserie baserat på formeln -SIGN = TECKEN ## Returnerar tecknet för ett tal -SIN = SIN ## Returnerar sinus för en given vinkel -SINH = SINH ## Returnerar hyperbolisk sinus för ett tal -SQRT = ROT ## Returnerar den positiva kvadratroten -SQRTPI = ROTPI ## Returnerar kvadratroten för (tal * pi) -SUBTOTAL = DELSUMMA ## Returnerar en delsumma i en lista eller databas -SUM = SUMMA ## Summerar argumenten -SUMIF = SUMMA.OM ## Summerar celler enligt ett angivet villkor -SUMIFS = SUMMA.OMF ## Lägger till cellerna i ett område som uppfyller flera kriterier -SUMPRODUCT = PRODUKTSUMMA ## Returnerar summan av produkterna i motsvarande matriskomponenter -SUMSQ = KVADRATSUMMA ## Returnerar summan av argumentens kvadrater -SUMX2MY2 = SUMMAX2MY2 ## Returnerar summan av differensen mellan kvadraterna för motsvarande värden i två matriser -SUMX2PY2 = SUMMAX2PY2 ## Returnerar summan av summan av kvadraterna av motsvarande värden i två matriser -SUMXMY2 = SUMMAXMY2 ## Returnerar summan av kvadraten av skillnaden mellan motsvarande värden i två matriser -TAN = TAN ## Returnerar tangens för ett tal -TANH = TANH ## Returnerar hyperbolisk tangens för ett tal -TRUNC = AVKORTA ## Avkortar ett tal till ett heltal - - -## -## Statistical functions Statistiska funktioner -## -AVEDEV = MEDELAVV ## Returnerar medelvärdet för datapunkters absoluta avvikelse från deras medelvärde -AVERAGE = MEDEL ## Returnerar medelvärdet av argumenten -AVERAGEA = AVERAGEA ## Returnerar medelvärdet av argumenten, inklusive tal, text och logiska värden -AVERAGEIF = MEDELOM ## Returnerar medelvärdet (aritmetiskt medelvärde) för alla celler i ett område som uppfyller ett givet kriterium -AVERAGEIFS = MEDELOMF ## Returnerar medelvärdet (det aritmetiska medelvärdet) för alla celler som uppfyller flera villkor. -BETADIST = BETAFÖRD ## Returnerar den kumulativa betafördelningsfunktionen -BETAINV = BETAINV ## Returnerar inversen till den kumulativa fördelningsfunktionen för en viss betafördelning -BINOMDIST = BINOMFÖRD ## Returnerar den individuella binomialfördelningen -CHIDIST = CHI2FÖRD ## Returnerar den ensidiga sannolikheten av c2-fördelningen -CHIINV = CHI2INV ## Returnerar inversen av chi2-fördelningen -CHITEST = CHI2TEST ## Returnerar oberoendetesten -CONFIDENCE = KONFIDENS ## Returnerar konfidensintervallet för en populations medelvärde -CORREL = KORREL ## Returnerar korrelationskoefficienten mellan två datamängder -COUNT = ANTAL ## Räknar hur många tal som finns bland argumenten -COUNTA = ANTALV ## Räknar hur många värden som finns bland argumenten -COUNTBLANK = ANTAL.TOMMA ## Räknar antalet tomma celler i ett område -COUNTIF = ANTAL.OM ## Räknar antalet celler i ett område som uppfyller angivna villkor. -COUNTIFS = ANTAL.OMF ## Räknar antalet celler i ett område som uppfyller flera villkor. -COVAR = KOVAR ## Returnerar kovariansen, d.v.s. medelvärdet av produkterna för parade avvikelser -CRITBINOM = KRITBINOM ## Returnerar det minsta värdet för vilket den kumulativa binomialfördelningen är mindre än eller lika med ett villkorsvärde -DEVSQ = KVADAVV ## Returnerar summan av kvadrater på avvikelser -EXPONDIST = EXPONFÖRD ## Returnerar exponentialfördelningen -FDIST = FFÖRD ## Returnerar F-sannolikhetsfördelningen -FINV = FINV ## Returnerar inversen till F-sannolikhetsfördelningen -FISHER = FISHER ## Returnerar Fisher-transformationen -FISHERINV = FISHERINV ## Returnerar inversen till Fisher-transformationen -FORECAST = PREDIKTION ## Returnerar ett värde längs en linjär trendlinje -FREQUENCY = FREKVENS ## Returnerar en frekvensfördelning som en lodrät matris -FTEST = FTEST ## Returnerar resultatet av en F-test -GAMMADIST = GAMMAFÖRD ## Returnerar gammafördelningen -GAMMAINV = GAMMAINV ## Returnerar inversen till den kumulativa gammafördelningen -GAMMALN = GAMMALN ## Returnerar den naturliga logaritmen för gammafunktionen, G(x) -GEOMEAN = GEOMEDEL ## Returnerar det geometriska medelvärdet -GROWTH = EXPTREND ## Returnerar värden längs en exponentiell trend -HARMEAN = HARMMEDEL ## Returnerar det harmoniska medelvärdet -HYPGEOMDIST = HYPGEOMFÖRD ## Returnerar den hypergeometriska fördelningen -INTERCEPT = SKÄRNINGSPUNKT ## Returnerar skärningspunkten för en linjär regressionslinje -KURT = TOPPIGHET ## Returnerar toppigheten av en mängd data -LARGE = STÖRSTA ## Returnerar det n:te största värdet i en mängd data -LINEST = REGR ## Returnerar parametrar till en linjär trendlinje -LOGEST = EXPREGR ## Returnerar parametrarna i en exponentiell trend -LOGINV = LOGINV ## Returnerar inversen till den lognormala fördelningen -LOGNORMDIST = LOGNORMFÖRD ## Returnerar den kumulativa lognormala fördelningen -MAX = MAX ## Returnerar det största värdet i en lista av argument -MAXA = MAXA ## Returnerar det största värdet i en lista av argument, inklusive tal, text och logiska värden -MEDIAN = MEDIAN ## Returnerar medianen för angivna tal -MIN = MIN ## Returnerar det minsta värdet i en lista med argument -MINA = MINA ## Returnerar det minsta värdet i en lista över argument, inklusive tal, text och logiska värden -MODE = TYPVÄRDE ## Returnerar det vanligaste värdet i en datamängd -NEGBINOMDIST = NEGBINOMFÖRD ## Returnerar den negativa binomialfördelningen -NORMDIST = NORMFÖRD ## Returnerar den kumulativa normalfördelningen -NORMINV = NORMINV ## Returnerar inversen till den kumulativa normalfördelningen -NORMSDIST = NORMSFÖRD ## Returnerar den kumulativa standardnormalfördelningen -NORMSINV = NORMSINV ## Returnerar inversen till den kumulativa standardnormalfördelningen -PEARSON = PEARSON ## Returnerar korrelationskoefficienten till Pearsons momentprodukt -PERCENTILE = PERCENTIL ## Returnerar den n:te percentilen av värden i ett område -PERCENTRANK = PROCENTRANG ## Returnerar procentrangen för ett värde i en datamängd -PERMUT = PERMUT ## Returnerar antal permutationer för ett givet antal objekt -POISSON = POISSON ## Returnerar Poisson-fördelningen -PROB = SANNOLIKHET ## Returnerar sannolikheten att värden i ett område ligger mellan två gränser -QUARTILE = KVARTIL ## Returnerar kvartilen av en mängd data -RANK = RANG ## Returnerar rangordningen för ett tal i en lista med tal -RSQ = RKV ## Returnerar kvadraten av Pearsons produktmomentkorrelationskoefficient -SKEW = SNEDHET ## Returnerar snedheten för en fördelning -SLOPE = LUTNING ## Returnerar lutningen på en linjär regressionslinje -SMALL = MINSTA ## Returnerar det n:te minsta värdet i en mängd data -STANDARDIZE = STANDARDISERA ## Returnerar ett normaliserat värde -STDEV = STDAV ## Uppskattar standardavvikelsen baserat på ett urval -STDEVA = STDEVA ## Uppskattar standardavvikelsen baserat på ett urval, inklusive tal, text och logiska värden -STDEVP = STDAVP ## Beräknar standardavvikelsen baserat på hela populationen -STDEVPA = STDEVPA ## Beräknar standardavvikelsen baserat på hela populationen, inklusive tal, text och logiska värden -STEYX = STDFELYX ## Returnerar standardfelet för ett förutspått y-värde för varje x-värde i regressionen -TDIST = TFÖRD ## Returnerar Students t-fördelning -TINV = TINV ## Returnerar inversen till Students t-fördelning -TREND = TREND ## Returnerar värden längs en linjär trend -TRIMMEAN = TRIMMEDEL ## Returnerar medelvärdet av mittpunkterna i en datamängd -TTEST = TTEST ## Returnerar sannolikheten beräknad ur Students t-test -VAR = VARIANS ## Uppskattar variansen baserat på ett urval -VARA = VARA ## Uppskattar variansen baserat på ett urval, inklusive tal, text och logiska värden -VARP = VARIANSP ## Beräknar variansen baserat på hela populationen -VARPA = VARPA ## Beräknar variansen baserat på hela populationen, inklusive tal, text och logiska värden -WEIBULL = WEIBULL ## Returnerar Weibull-fördelningen -ZTEST = ZTEST ## Returnerar det ensidiga sannolikhetsvärdet av ett z-test - - -## -## Text functions Textfunktioner -## -ASC = ASC ## Ändrar helbredds (dubbel byte) engelska bokstäver eller katakana inom en teckensträng till tecken med halvt breddsteg (enkel byte) -BAHTTEXT = BAHTTEXT ## Omvandlar ett tal till text med valutaformatet ß (baht) -CHAR = TECKENKOD ## Returnerar tecknet som anges av kod -CLEAN = STÄDA ## Tar bort alla icke utskrivbara tecken i en text -CODE = KOD ## Returnerar en numerisk kod för det första tecknet i en textsträng -CONCATENATE = SAMMANFOGA ## Sammanfogar flera textdelar till en textsträng -DOLLAR = VALUTA ## Omvandlar ett tal till text med valutaformat -EXACT = EXAKT ## Kontrollerar om två textvärden är identiska -FIND = HITTA ## Hittar en text i en annan (skiljer på gemener och versaler) -FINDB = HITTAB ## Hittar en text i en annan (skiljer på gemener och versaler) -FIXED = FASTTAL ## Formaterar ett tal som text med ett fast antal decimaler -JIS = JIS ## Ändrar halvbredds (enkel byte) engelska bokstäver eller katakana inom en teckensträng till tecken med helt breddsteg (dubbel byte) -LEFT = VÄNSTER ## Returnerar tecken längst till vänster i en sträng -LEFTB = VÄNSTERB ## Returnerar tecken längst till vänster i en sträng -LEN = LÄNGD ## Returnerar antalet tecken i en textsträng -LENB = LÄNGDB ## Returnerar antalet tecken i en textsträng -LOWER = GEMENER ## Omvandlar text till gemener -MID = EXTEXT ## Returnerar angivet antal tecken från en text med början vid den position som du anger -MIDB = EXTEXTB ## Returnerar angivet antal tecken från en text med början vid den position som du anger -PHONETIC = PHONETIC ## Returnerar de fonetiska (furigana) tecknen i en textsträng -PROPER = INITIAL ## Ändrar första bokstaven i varje ord i ett textvärde till versal -REPLACE = ERSÄTT ## Ersätter tecken i text -REPLACEB = ERSÄTTB ## Ersätter tecken i text -REPT = REP ## Upprepar en text ett bestämt antal gånger -RIGHT = HÖGER ## Returnerar tecken längst till höger i en sträng -RIGHTB = HÖGERB ## Returnerar tecken längst till höger i en sträng -SEARCH = SÖK ## Hittar ett textvärde i ett annat (skiljer inte på gemener och versaler) -SEARCHB = SÖKB ## Hittar ett textvärde i ett annat (skiljer inte på gemener och versaler) -SUBSTITUTE = BYT.UT ## Ersätter gammal text med ny text i en textsträng -T = T ## Omvandlar argumenten till text -TEXT = TEXT ## Formaterar ett tal och omvandlar det till text -TRIM = RENSA ## Tar bort blanksteg från text -UPPER = VERSALER ## Omvandlar text till versaler -VALUE = TEXTNUM ## Omvandlar ett textargument till ett tal +## +## Add-in and Automation functions Tilläggs- och automatiseringsfunktioner +## +GETPIVOTDATA = HÄMTA.PIVOTDATA ## Returnerar data som lagrats i en pivottabellrapport + + +## +## Cube functions Kubfunktioner +## +CUBEKPIMEMBER = KUBKPIMEDLEM ## Returnerar namn, egenskap och mått för en KPI och visar namnet och egenskapen i cellen. En KPI, eller prestandaindikator, är ett kvantifierbart mått, t.ex. månatlig bruttovinst eller personalomsättning per kvartal, som används för att analysera ett företags resultat. +CUBEMEMBER = KUBMEDLEM ## Returnerar en medlem eller ett par i en kubhierarki. Används för att verifiera att medlemmen eller paret finns i kuben. +CUBEMEMBERPROPERTY = KUBMEDLEMSEGENSKAP ## Returnerar värdet för en medlemsegenskap i kuben. Används för att verifiera att ett medlemsnamn finns i kuben, samt för att returnera den angivna egenskapen för medlemmen. +CUBERANKEDMEMBER = KUBRANGORDNADMEDLEM ## Returnerar den n:te, eller rangordnade, medlemmen i en uppsättning. Används för att returnera ett eller flera element i en uppsättning, till exempelvis den bästa försäljaren eller de tio bästa eleverna. +CUBESET = KUBINSTÄLLNING ## Definierar en beräknad uppsättning medlemmar eller par genom att skicka ett bestämt uttryck till kuben på servern, som skapar uppsättningen och sedan returnerar den till Microsoft Office Excel. +CUBESETCOUNT = KUBINSTÄLLNINGANTAL ## Returnerar antalet objekt i en uppsättning. +CUBEVALUE = KUBVÄRDE ## Returnerar ett mängdvärde från en kub. + + +## +## Database functions Databasfunktioner +## +DAVERAGE = DMEDEL ## Returnerar medelvärdet av databasposterna +DCOUNT = DANTAL ## Räknar antalet celler som innehåller tal i en databas +DCOUNTA = DANTALV ## Räknar ifyllda celler i en databas +DGET = DHÄMTA ## Hämtar en enstaka post från en databas som uppfyller de angivna villkoren +DMAX = DMAX ## Returnerar det största värdet från databasposterna +DMIN = DMIN ## Returnerar det minsta värdet från databasposterna +DPRODUCT = DPRODUKT ## Multiplicerar värdena i ett visst fält i poster som uppfyller villkoret +DSTDEV = DSTDAV ## Uppskattar standardavvikelsen baserat på ett urval av databasposterna +DSTDEVP = DSTDAVP ## Beräknar standardavvikelsen utifrån hela populationen av valda databasposter +DSUM = DSUMMA ## Summerar talen i kolumnfält i databasposter som uppfyller villkoret +DVAR = DVARIANS ## Uppskattar variansen baserat på ett urval av databasposterna +DVARP = DVARIANSP ## Beräknar variansen utifrån hela populationen av valda databasposter + + +## +## Date and time functions Tid- och datumfunktioner +## +DATE = DATUM ## Returnerar ett serienummer för ett visst datum +DATEVALUE = DATUMVÄRDE ## Konverterar ett datum i textformat till ett serienummer +DAY = DAG ## Konverterar ett serienummer till dag i månaden +DAYS360 = DAGAR360 ## Beräknar antalet dagar mellan två datum baserat på ett 360-dagarsår +EDATE = EDATUM ## Returnerar serienumret för ett datum som infaller ett visst antal månader före eller efter startdatumet +EOMONTH = SLUTMÅNAD ## Returnerar serienumret för sista dagen i månaden ett visst antal månader tidigare eller senare +HOUR = TIMME ## Konverterar ett serienummer till en timme +MINUTE = MINUT ## Konverterar ett serienummer till en minut +MONTH = MÅNAD ## Konverterar ett serienummer till en månad +NETWORKDAYS = NETTOARBETSDAGAR ## Returnerar antalet hela arbetsdagar mellan två datum +NOW = NU ## Returnerar serienumret för dagens datum och aktuell tid +SECOND = SEKUND ## Konverterar ett serienummer till en sekund +TIME = KLOCKSLAG ## Returnerar serienumret för en viss tid +TIMEVALUE = TIDVÄRDE ## Konverterar en tid i textformat till ett serienummer +TODAY = IDAG ## Returnerar serienumret för dagens datum +WEEKDAY = VECKODAG ## Konverterar ett serienummer till en dag i veckan +WEEKNUM = VECKONR ## Konverterar ett serienummer till ett veckonummer +WORKDAY = ARBETSDAGAR ## Returnerar serienumret för ett datum ett visst antal arbetsdagar tidigare eller senare +YEAR = ÅR ## Konverterar ett serienummer till ett år +YEARFRAC = ÅRDEL ## Returnerar en del av ett år som representerar antalet hela dagar mellan start- och slutdatum + + +## +## Engineering functions Tekniska funktioner +## +BESSELI = BESSELI ## Returnerar den modifierade Bessel-funktionen In(x) +BESSELJ = BESSELJ ## Returnerar Bessel-funktionen Jn(x) +BESSELK = BESSELK ## Returnerar den modifierade Bessel-funktionen Kn(x) +BESSELY = BESSELY ## Returnerar Bessel-funktionen Yn(x) +BIN2DEC = BIN.TILL.DEC ## Omvandlar ett binärt tal till decimalt +BIN2HEX = BIN.TILL.HEX ## Omvandlar ett binärt tal till hexadecimalt +BIN2OCT = BIN.TILL.OKT ## Omvandlar ett binärt tal till oktalt +COMPLEX = KOMPLEX ## Omvandlar reella och imaginära koefficienter till ett komplext tal +CONVERT = KONVERTERA ## Omvandlar ett tal från ett måttsystem till ett annat +DEC2BIN = DEC.TILL.BIN ## Omvandlar ett decimalt tal till binärt +DEC2HEX = DEC.TILL.HEX ## Omvandlar ett decimalt tal till hexadecimalt +DEC2OCT = DEC.TILL.OKT ## Omvandlar ett decimalt tal till oktalt +DELTA = DELTA ## Testar om två värden är lika +ERF = FELF ## Returnerar felfunktionen +ERFC = FELFK ## Returnerar den komplementära felfunktionen +GESTEP = SLSTEG ## Testar om ett tal är större än ett tröskelvärde +HEX2BIN = HEX.TILL.BIN ## Omvandlar ett hexadecimalt tal till binärt +HEX2DEC = HEX.TILL.DEC ## Omvandlar ett hexadecimalt tal till decimalt +HEX2OCT = HEX.TILL.OKT ## Omvandlar ett hexadecimalt tal till oktalt +IMABS = IMABS ## Returnerar absolutvärdet (modulus) för ett komplext tal +IMAGINARY = IMAGINÄR ## Returnerar den imaginära koefficienten för ett komplext tal +IMARGUMENT = IMARGUMENT ## Returnerar det komplexa talets argument, en vinkel uttryckt i radianer +IMCONJUGATE = IMKONJUGAT ## Returnerar det komplexa talets konjugat +IMCOS = IMCOS ## Returnerar cosinus för ett komplext tal +IMDIV = IMDIV ## Returnerar kvoten för två komplexa tal +IMEXP = IMEUPPHÖJT ## Returnerar exponenten för ett komplext tal +IMLN = IMLN ## Returnerar den naturliga logaritmen för ett komplext tal +IMLOG10 = IMLOG10 ## Returnerar 10-logaritmen för ett komplext tal +IMLOG2 = IMLOG2 ## Returnerar 2-logaritmen för ett komplext tal +IMPOWER = IMUPPHÖJT ## Returnerar ett komplext tal upphöjt till en exponent +IMPRODUCT = IMPRODUKT ## Returnerar produkten av komplexa tal +IMREAL = IMREAL ## Returnerar den reella koefficienten för ett komplext tal +IMSIN = IMSIN ## Returnerar sinus för ett komplext tal +IMSQRT = IMROT ## Returnerar kvadratroten av ett komplext tal +IMSUB = IMDIFF ## Returnerar differensen mellan två komplexa tal +IMSUM = IMSUM ## Returnerar summan av komplexa tal +OCT2BIN = OKT.TILL.BIN ## Omvandlar ett oktalt tal till binärt +OCT2DEC = OKT.TILL.DEC ## Omvandlar ett oktalt tal till decimalt +OCT2HEX = OKT.TILL.HEX ## Omvandlar ett oktalt tal till hexadecimalt + + +## +## Financial functions Finansiella funktioner +## +ACCRINT = UPPLRÄNTA ## Returnerar den upplupna räntan för värdepapper med periodisk ränta +ACCRINTM = UPPLOBLRÄNTA ## Returnerar den upplupna räntan för ett värdepapper som ger avkastning på förfallodagen +AMORDEGRC = AMORDEGRC ## Returnerar avskrivningen för varje redovisningsperiod med hjälp av en avskrivningskoefficient +AMORLINC = AMORLINC ## Returnerar avskrivningen för varje redovisningsperiod +COUPDAYBS = KUPDAGBB ## Returnerar antal dagar från början av kupongperioden till likviddagen +COUPDAYS = KUPDAGARS ## Returnerar antalet dagar i kupongperioden som innehåller betalningsdatumet +COUPDAYSNC = KUPDAGNK ## Returnerar antalet dagar från betalningsdatumet till nästa kupongdatum +COUPNCD = KUPNKD ## Returnerar nästa kupongdatum efter likviddagen +COUPNUM = KUPANT ## Returnerar kuponger som förfaller till betalning mellan likviddagen och förfallodagen +COUPPCD = KUPFKD ## Returnerar föregående kupongdatum före likviddagen +CUMIPMT = KUMRÄNTA ## Returnerar den ackumulerade räntan som betalats mellan två perioder +CUMPRINC = KUMPRIS ## Returnerar det ackumulerade kapitalbeloppet som betalats på ett lån mellan två perioder +DB = DB ## Returnerar avskrivningen för en tillgång under en angiven tid enligt metoden för fast degressiv avskrivning +DDB = DEGAVSKR ## Returnerar en tillgångs värdeminskning under en viss period med hjälp av dubbel degressiv avskrivning eller någon annan metod som du anger +DISC = DISK ## Returnerar diskonteringsräntan för ett värdepapper +DOLLARDE = DECTAL ## Omvandlar ett pris uttryckt som ett bråk till ett decimaltal +DOLLARFR = BRÅK ## Omvandlar ett pris i kronor uttryckt som ett decimaltal till ett bråk +DURATION = LÖPTID ## Returnerar den årliga löptiden för en säkerhet med periodiska räntebetalningar +EFFECT = EFFRÄNTA ## Returnerar den årliga effektiva räntesatsen +FV = SLUTVÄRDE ## Returnerar det framtida värdet på en investering +FVSCHEDULE = FÖRRÄNTNING ## Returnerar det framtida värdet av ett begynnelsekapital beräknat på olika räntenivåer +INTRATE = ÅRSRÄNTA ## Returnerar räntesatsen för ett betalt värdepapper +IPMT = RBETALNING ## Returnerar räntedelen av en betalning för en given period +IRR = IR ## Returnerar internräntan för en serie betalningar +ISPMT = RALÅN ## Beräknar räntan som har betalats under en specifik betalningsperiod +MDURATION = MLÖPTID ## Returnerar den modifierade Macauley-löptiden för ett värdepapper med det antagna nominella värdet 100 kr +MIRR = MODIR ## Returnerar internräntan där positiva och negativa betalningar finansieras med olika räntor +NOMINAL = NOMRÄNTA ## Returnerar den årliga nominella räntesatsen +NPER = PERIODER ## Returnerar antalet perioder för en investering +NPV = NETNUVÄRDE ## Returnerar nuvärdet av en serie periodiska betalningar vid en given diskonteringsränta +ODDFPRICE = UDDAFPRIS ## Returnerar priset per 100 kr nominellt värde för ett värdepapper med en udda första period +ODDFYIELD = UDDAFAVKASTNING ## Returnerar avkastningen för en säkerhet med en udda första period +ODDLPRICE = UDDASPRIS ## Returnerar priset per 100 kr nominellt värde för ett värdepapper med en udda sista period +ODDLYIELD = UDDASAVKASTNING ## Returnerar avkastningen för en säkerhet med en udda sista period +PMT = BETALNING ## Returnerar den periodiska betalningen för en annuitet +PPMT = AMORT ## Returnerar amorteringsdelen av en annuitetsbetalning för en given period +PRICE = PRIS ## Returnerar priset per 100 kr nominellt värde för ett värdepapper som ger periodisk ränta +PRICEDISC = PRISDISK ## Returnerar priset per 100 kr nominellt värde för ett diskonterat värdepapper +PRICEMAT = PRISFÖRF ## Returnerar priset per 100 kr nominellt värde för ett värdepapper som ger ränta på förfallodagen +PV = PV ## Returnerar nuvärdet av en serie lika stora periodiska betalningar +RATE = RÄNTA ## Returnerar räntesatsen per period i en annuitet +RECEIVED = BELOPP ## Returnerar beloppet som utdelas på förfallodagen för ett betalat värdepapper +SLN = LINAVSKR ## Returnerar den linjära avskrivningen för en tillgång under en period +SYD = ÅRSAVSKR ## Returnerar den årliga avskrivningssumman för en tillgång under en angiven period +TBILLEQ = SSVXEKV ## Returnerar avkastningen motsvarande en obligation för en statsskuldväxel +TBILLPRICE = SSVXPRIS ## Returnerar priset per 100 kr nominellt värde för en statsskuldväxel +TBILLYIELD = SSVXRÄNTA ## Returnerar avkastningen för en statsskuldväxel +VDB = VDEGRAVSKR ## Returnerar avskrivningen för en tillgång under en angiven period (med degressiv avskrivning) +XIRR = XIRR ## Returnerar internräntan för en serie betalningar som inte nödvändigtvis är periodiska +XNPV = XNUVÄRDE ## Returnerar det nuvarande nettovärdet för en serie betalningar som inte nödvändigtvis är periodiska +YIELD = NOMAVK ## Returnerar avkastningen för ett värdepapper som ger periodisk ränta +YIELDDISC = NOMAVKDISK ## Returnerar den årliga avkastningen för diskonterade värdepapper, exempelvis en statsskuldväxel +YIELDMAT = NOMAVKFÖRF ## Returnerar den årliga avkastningen för ett värdepapper som ger ränta på förfallodagen + + +## +## Information functions Informationsfunktioner +## +CELL = CELL ## Returnerar information om formatering, plats och innehåll i en cell +ERROR.TYPE = FEL.TYP ## Returnerar ett tal som motsvarar ett felvärde +INFO = INFO ## Returnerar information om operativsystemet +ISBLANK = ÄRREF ## Returnerar SANT om värdet är tomt +ISERR = Ä ## Returnerar SANT om värdet är ett felvärde annat än #SAKNAS! +ISERROR = ÄRFEL ## Returnerar SANT om värdet är ett felvärde +ISEVEN = ÄRJÄMN ## Returnerar SANT om talet är jämnt +ISLOGICAL = ÄREJTEXT ## Returnerar SANT om värdet är ett logiskt värde +ISNA = ÄRLOGISK ## Returnerar SANT om värdet är felvärdet #SAKNAS! +ISNONTEXT = ÄRSAKNAD ## Returnerar SANT om värdet inte är text +ISNUMBER = ÄRTAL ## Returnerar SANT om värdet är ett tal +ISODD = ÄRUDDA ## Returnerar SANT om talet är udda +ISREF = ÄRTOM ## Returnerar SANT om värdet är en referens +ISTEXT = ÄRTEXT ## Returnerar SANT om värdet är text +N = N ## Returnerar ett värde omvandlat till ett tal +NA = SAKNAS ## Returnerar felvärdet #SAKNAS! +TYPE = VÄRDETYP ## Returnerar ett tal som anger värdets datatyp + + +## +## Logical functions Logiska funktioner +## +AND = OCH ## Returnerar SANT om alla argument är sanna +FALSE = FALSKT ## Returnerar det logiska värdet FALSKT +IF = OM ## Anger vilket logiskt test som ska utföras +IFERROR = OMFEL ## Returnerar ett värde som du anger om en formel utvärderar till ett fel; annars returneras resultatet av formeln +NOT = ICKE ## Inverterar logiken för argumenten +OR = ELLER ## Returnerar SANT om något argument är SANT +TRUE = SANT ## Returnerar det logiska värdet SANT + + +## +## Lookup and reference functions Sök- och referensfunktioner +## +ADDRESS = ADRESS ## Returnerar en referens som text till en enstaka cell i ett kalkylblad +AREAS = OMRÅDEN ## Returnerar antalet områden i en referens +CHOOSE = VÄLJ ## Väljer ett värde i en lista över värden +COLUMN = KOLUMN ## Returnerar kolumnnumret för en referens +COLUMNS = KOLUMNER ## Returnerar antalet kolumner i en referens +HLOOKUP = LETAKOLUMN ## Söker i den översta raden i en matris och returnerar värdet för angiven cell +HYPERLINK = HYPERLÄNK ## Skapar en genväg eller ett hopp till ett dokument i nätverket, i ett intranät eller på Internet +INDEX = INDEX ## Använder ett index för ett välja ett värde i en referens eller matris +INDIRECT = INDIREKT ## Returnerar en referens som anges av ett textvärde +LOOKUP = LETAUPP ## Letar upp värden i en vektor eller matris +MATCH = PASSA ## Letar upp värden i en referens eller matris +OFFSET = FÖRSKJUTNING ## Returnerar en referens förskjuten i förhållande till en given referens +ROW = RAD ## Returnerar radnumret för en referens +ROWS = RADER ## Returnerar antalet rader i en referens +RTD = RTD ## Hämtar realtidsdata från ett program som stöder COM-automation (Automation: Ett sätt att arbeta med ett programs objekt från ett annat program eller utvecklingsverktyg. Detta kallades tidigare för OLE Automation, och är en branschstandard och ingår i Component Object Model (COM).) +TRANSPOSE = TRANSPONERA ## Transponerar en matris +VLOOKUP = LETARAD ## Letar i den första kolumnen i en matris och flyttar över raden för att returnera värdet för en cell + + +## +## Math and trigonometry functions Matematiska och trigonometriska funktioner +## +ABS = ABS ## Returnerar absolutvärdet av ett tal +ACOS = ARCCOS ## Returnerar arcus cosinus för ett tal +ACOSH = ARCCOSH ## Returnerar inverterad hyperbolisk cosinus för ett tal +ASIN = ARCSIN ## Returnerar arcus cosinus för ett tal +ASINH = ARCSINH ## Returnerar hyperbolisk arcus sinus för ett tal +ATAN = ARCTAN ## Returnerar arcus tangens för ett tal +ATAN2 = ARCTAN2 ## Returnerar arcus tangens för en x- och en y- koordinat +ATANH = ARCTANH ## Returnerar hyperbolisk arcus tangens för ett tal +CEILING = RUNDA.UPP ## Avrundar ett tal till närmaste heltal eller närmaste signifikanta multipel +COMBIN = KOMBIN ## Returnerar antalet kombinationer för ett givet antal objekt +COS = COS ## Returnerar cosinus för ett tal +COSH = COSH ## Returnerar hyperboliskt cosinus för ett tal +DEGREES = GRADER ## Omvandlar radianer till grader +EVEN = JÄMN ## Avrundar ett tal uppåt till närmaste heltal +EXP = EXP ## Returnerar e upphöjt till ett givet tal +FACT = FAKULTET ## Returnerar fakulteten för ett tal +FACTDOUBLE = DUBBELFAKULTET ## Returnerar dubbelfakulteten för ett tal +FLOOR = RUNDA.NED ## Avrundar ett tal nedåt mot noll +GCD = SGD ## Returnerar den största gemensamma nämnaren +INT = HELTAL ## Avrundar ett tal nedåt till närmaste heltal +LCM = MGM ## Returnerar den minsta gemensamma multipeln +LN = LN ## Returnerar den naturliga logaritmen för ett tal +LOG = LOG ## Returnerar logaritmen för ett tal för en given bas +LOG10 = LOG10 ## Returnerar 10-logaritmen för ett tal +MDETERM = MDETERM ## Returnerar matrisen som är avgörandet av en matris +MINVERSE = MINVERT ## Returnerar matrisinversen av en matris +MMULT = MMULT ## Returnerar matrisprodukten av två matriser +MOD = REST ## Returnerar resten vid en division +MROUND = MAVRUNDA ## Returnerar ett tal avrundat till en given multipel +MULTINOMIAL = MULTINOMIAL ## Returnerar multinomialen för en uppsättning tal +ODD = UDDA ## Avrundar ett tal uppåt till närmaste udda heltal +PI = PI ## Returnerar värdet pi +POWER = UPPHÖJT.TILL ## Returnerar resultatet av ett tal upphöjt till en exponent +PRODUCT = PRODUKT ## Multiplicerar argumenten +QUOTIENT = KVOT ## Returnerar heltalsdelen av en division +RADIANS = RADIANER ## Omvandlar grader till radianer +RAND = SLUMP ## Returnerar ett slumptal mellan 0 och 1 +RANDBETWEEN = SLUMP.MELLAN ## Returnerar ett slumptal mellan de tal som du anger +ROMAN = ROMERSK ## Omvandlar vanliga (arabiska) siffror till romerska som text +ROUND = AVRUNDA ## Avrundar ett tal till ett angivet antal siffror +ROUNDDOWN = AVRUNDA.NEDÅT ## Avrundar ett tal nedåt mot noll +ROUNDUP = AVRUNDA.UPPÅT ## Avrundar ett tal uppåt, från noll +SERIESSUM = SERIESUMMA ## Returnerar summan av en potensserie baserat på formeln +SIGN = TECKEN ## Returnerar tecknet för ett tal +SIN = SIN ## Returnerar sinus för en given vinkel +SINH = SINH ## Returnerar hyperbolisk sinus för ett tal +SQRT = ROT ## Returnerar den positiva kvadratroten +SQRTPI = ROTPI ## Returnerar kvadratroten för (tal * pi) +SUBTOTAL = DELSUMMA ## Returnerar en delsumma i en lista eller databas +SUM = SUMMA ## Summerar argumenten +SUMIF = SUMMA.OM ## Summerar celler enligt ett angivet villkor +SUMIFS = SUMMA.OMF ## Lägger till cellerna i ett område som uppfyller flera kriterier +SUMPRODUCT = PRODUKTSUMMA ## Returnerar summan av produkterna i motsvarande matriskomponenter +SUMSQ = KVADRATSUMMA ## Returnerar summan av argumentens kvadrater +SUMX2MY2 = SUMMAX2MY2 ## Returnerar summan av differensen mellan kvadraterna för motsvarande värden i två matriser +SUMX2PY2 = SUMMAX2PY2 ## Returnerar summan av summan av kvadraterna av motsvarande värden i två matriser +SUMXMY2 = SUMMAXMY2 ## Returnerar summan av kvadraten av skillnaden mellan motsvarande värden i två matriser +TAN = TAN ## Returnerar tangens för ett tal +TANH = TANH ## Returnerar hyperbolisk tangens för ett tal +TRUNC = AVKORTA ## Avkortar ett tal till ett heltal + + +## +## Statistical functions Statistiska funktioner +## +AVEDEV = MEDELAVV ## Returnerar medelvärdet för datapunkters absoluta avvikelse från deras medelvärde +AVERAGE = MEDEL ## Returnerar medelvärdet av argumenten +AVERAGEA = AVERAGEA ## Returnerar medelvärdet av argumenten, inklusive tal, text och logiska värden +AVERAGEIF = MEDELOM ## Returnerar medelvärdet (aritmetiskt medelvärde) för alla celler i ett område som uppfyller ett givet kriterium +AVERAGEIFS = MEDELOMF ## Returnerar medelvärdet (det aritmetiska medelvärdet) för alla celler som uppfyller flera villkor. +BETADIST = BETAFÖRD ## Returnerar den kumulativa betafördelningsfunktionen +BETAINV = BETAINV ## Returnerar inversen till den kumulativa fördelningsfunktionen för en viss betafördelning +BINOMDIST = BINOMFÖRD ## Returnerar den individuella binomialfördelningen +CHIDIST = CHI2FÖRD ## Returnerar den ensidiga sannolikheten av c2-fördelningen +CHIINV = CHI2INV ## Returnerar inversen av chi2-fördelningen +CHITEST = CHI2TEST ## Returnerar oberoendetesten +CONFIDENCE = KONFIDENS ## Returnerar konfidensintervallet för en populations medelvärde +CORREL = KORREL ## Returnerar korrelationskoefficienten mellan två datamängder +COUNT = ANTAL ## Räknar hur många tal som finns bland argumenten +COUNTA = ANTALV ## Räknar hur många värden som finns bland argumenten +COUNTBLANK = ANTAL.TOMMA ## Räknar antalet tomma celler i ett område +COUNTIF = ANTAL.OM ## Räknar antalet celler i ett område som uppfyller angivna villkor. +COUNTIFS = ANTAL.OMF ## Räknar antalet celler i ett område som uppfyller flera villkor. +COVAR = KOVAR ## Returnerar kovariansen, d.v.s. medelvärdet av produkterna för parade avvikelser +CRITBINOM = KRITBINOM ## Returnerar det minsta värdet för vilket den kumulativa binomialfördelningen är mindre än eller lika med ett villkorsvärde +DEVSQ = KVADAVV ## Returnerar summan av kvadrater på avvikelser +EXPONDIST = EXPONFÖRD ## Returnerar exponentialfördelningen +FDIST = FFÖRD ## Returnerar F-sannolikhetsfördelningen +FINV = FINV ## Returnerar inversen till F-sannolikhetsfördelningen +FISHER = FISHER ## Returnerar Fisher-transformationen +FISHERINV = FISHERINV ## Returnerar inversen till Fisher-transformationen +FORECAST = PREDIKTION ## Returnerar ett värde längs en linjär trendlinje +FREQUENCY = FREKVENS ## Returnerar en frekvensfördelning som en lodrät matris +FTEST = FTEST ## Returnerar resultatet av en F-test +GAMMADIST = GAMMAFÖRD ## Returnerar gammafördelningen +GAMMAINV = GAMMAINV ## Returnerar inversen till den kumulativa gammafördelningen +GAMMALN = GAMMALN ## Returnerar den naturliga logaritmen för gammafunktionen, G(x) +GEOMEAN = GEOMEDEL ## Returnerar det geometriska medelvärdet +GROWTH = EXPTREND ## Returnerar värden längs en exponentiell trend +HARMEAN = HARMMEDEL ## Returnerar det harmoniska medelvärdet +HYPGEOMDIST = HYPGEOMFÖRD ## Returnerar den hypergeometriska fördelningen +INTERCEPT = SKÄRNINGSPUNKT ## Returnerar skärningspunkten för en linjär regressionslinje +KURT = TOPPIGHET ## Returnerar toppigheten av en mängd data +LARGE = STÖRSTA ## Returnerar det n:te största värdet i en mängd data +LINEST = REGR ## Returnerar parametrar till en linjär trendlinje +LOGEST = EXPREGR ## Returnerar parametrarna i en exponentiell trend +LOGINV = LOGINV ## Returnerar inversen till den lognormala fördelningen +LOGNORMDIST = LOGNORMFÖRD ## Returnerar den kumulativa lognormala fördelningen +MAX = MAX ## Returnerar det största värdet i en lista av argument +MAXA = MAXA ## Returnerar det största värdet i en lista av argument, inklusive tal, text och logiska värden +MEDIAN = MEDIAN ## Returnerar medianen för angivna tal +MIN = MIN ## Returnerar det minsta värdet i en lista med argument +MINA = MINA ## Returnerar det minsta värdet i en lista över argument, inklusive tal, text och logiska värden +MODE = TYPVÄRDE ## Returnerar det vanligaste värdet i en datamängd +NEGBINOMDIST = NEGBINOMFÖRD ## Returnerar den negativa binomialfördelningen +NORMDIST = NORMFÖRD ## Returnerar den kumulativa normalfördelningen +NORMINV = NORMINV ## Returnerar inversen till den kumulativa normalfördelningen +NORMSDIST = NORMSFÖRD ## Returnerar den kumulativa standardnormalfördelningen +NORMSINV = NORMSINV ## Returnerar inversen till den kumulativa standardnormalfördelningen +PEARSON = PEARSON ## Returnerar korrelationskoefficienten till Pearsons momentprodukt +PERCENTILE = PERCENTIL ## Returnerar den n:te percentilen av värden i ett område +PERCENTRANK = PROCENTRANG ## Returnerar procentrangen för ett värde i en datamängd +PERMUT = PERMUT ## Returnerar antal permutationer för ett givet antal objekt +POISSON = POISSON ## Returnerar Poisson-fördelningen +PROB = SANNOLIKHET ## Returnerar sannolikheten att värden i ett område ligger mellan två gränser +QUARTILE = KVARTIL ## Returnerar kvartilen av en mängd data +RANK = RANG ## Returnerar rangordningen för ett tal i en lista med tal +RSQ = RKV ## Returnerar kvadraten av Pearsons produktmomentkorrelationskoefficient +SKEW = SNEDHET ## Returnerar snedheten för en fördelning +SLOPE = LUTNING ## Returnerar lutningen på en linjär regressionslinje +SMALL = MINSTA ## Returnerar det n:te minsta värdet i en mängd data +STANDARDIZE = STANDARDISERA ## Returnerar ett normaliserat värde +STDEV = STDAV ## Uppskattar standardavvikelsen baserat på ett urval +STDEVA = STDEVA ## Uppskattar standardavvikelsen baserat på ett urval, inklusive tal, text och logiska värden +STDEVP = STDAVP ## Beräknar standardavvikelsen baserat på hela populationen +STDEVPA = STDEVPA ## Beräknar standardavvikelsen baserat på hela populationen, inklusive tal, text och logiska värden +STEYX = STDFELYX ## Returnerar standardfelet för ett förutspått y-värde för varje x-värde i regressionen +TDIST = TFÖRD ## Returnerar Students t-fördelning +TINV = TINV ## Returnerar inversen till Students t-fördelning +TREND = TREND ## Returnerar värden längs en linjär trend +TRIMMEAN = TRIMMEDEL ## Returnerar medelvärdet av mittpunkterna i en datamängd +TTEST = TTEST ## Returnerar sannolikheten beräknad ur Students t-test +VAR = VARIANS ## Uppskattar variansen baserat på ett urval +VARA = VARA ## Uppskattar variansen baserat på ett urval, inklusive tal, text och logiska värden +VARP = VARIANSP ## Beräknar variansen baserat på hela populationen +VARPA = VARPA ## Beräknar variansen baserat på hela populationen, inklusive tal, text och logiska värden +WEIBULL = WEIBULL ## Returnerar Weibull-fördelningen +ZTEST = ZTEST ## Returnerar det ensidiga sannolikhetsvärdet av ett z-test + + +## +## Text functions Textfunktioner +## +ASC = ASC ## Ändrar helbredds (dubbel byte) engelska bokstäver eller katakana inom en teckensträng till tecken med halvt breddsteg (enkel byte) +BAHTTEXT = BAHTTEXT ## Omvandlar ett tal till text med valutaformatet ß (baht) +CHAR = TECKENKOD ## Returnerar tecknet som anges av kod +CLEAN = STÄDA ## Tar bort alla icke utskrivbara tecken i en text +CODE = KOD ## Returnerar en numerisk kod för det första tecknet i en textsträng +CONCATENATE = SAMMANFOGA ## Sammanfogar flera textdelar till en textsträng +DOLLAR = VALUTA ## Omvandlar ett tal till text med valutaformat +EXACT = EXAKT ## Kontrollerar om två textvärden är identiska +FIND = HITTA ## Hittar en text i en annan (skiljer på gemener och versaler) +FINDB = HITTAB ## Hittar en text i en annan (skiljer på gemener och versaler) +FIXED = FASTTAL ## Formaterar ett tal som text med ett fast antal decimaler +JIS = JIS ## Ändrar halvbredds (enkel byte) engelska bokstäver eller katakana inom en teckensträng till tecken med helt breddsteg (dubbel byte) +LEFT = VÄNSTER ## Returnerar tecken längst till vänster i en sträng +LEFTB = VÄNSTERB ## Returnerar tecken längst till vänster i en sträng +LEN = LÄNGD ## Returnerar antalet tecken i en textsträng +LENB = LÄNGDB ## Returnerar antalet tecken i en textsträng +LOWER = GEMENER ## Omvandlar text till gemener +MID = EXTEXT ## Returnerar angivet antal tecken från en text med början vid den position som du anger +MIDB = EXTEXTB ## Returnerar angivet antal tecken från en text med början vid den position som du anger +PHONETIC = PHONETIC ## Returnerar de fonetiska (furigana) tecknen i en textsträng +PROPER = INITIAL ## Ändrar första bokstaven i varje ord i ett textvärde till versal +REPLACE = ERSÄTT ## Ersätter tecken i text +REPLACEB = ERSÄTTB ## Ersätter tecken i text +REPT = REP ## Upprepar en text ett bestämt antal gånger +RIGHT = HÖGER ## Returnerar tecken längst till höger i en sträng +RIGHTB = HÖGERB ## Returnerar tecken längst till höger i en sträng +SEARCH = SÖK ## Hittar ett textvärde i ett annat (skiljer inte på gemener och versaler) +SEARCHB = SÖKB ## Hittar ett textvärde i ett annat (skiljer inte på gemener och versaler) +SUBSTITUTE = BYT.UT ## Ersätter gammal text med ny text i en textsträng +T = T ## Omvandlar argumenten till text +TEXT = TEXT ## Formaterar ett tal och omvandlar det till text +TRIM = RENSA ## Tar bort blanksteg från text +UPPER = VERSALER ## Omvandlar text till versaler +VALUE = TEXTNUM ## Omvandlar ett textargument till ett tal diff --git a/htdocs/societe/checkvat/checkVatService.xml b/htdocs/societe/checkvat/checkVatService.xml index b4ceace39cd..373775c2487 100644 --- a/htdocs/societe/checkvat/checkVatService.xml +++ b/htdocs/societe/checkvat/checkVatService.xml @@ -1,173 +1,173 @@ - - - Specific disclaimer for this service ----------------------------------------- The - objective of this Internet site is to allow persons involved in the intra-Community supply of - goods or of services to obtain confirmation of the validity of the VAT identification number of - any specified person, in accordance to article 27 of Council Regulation (EC) No. 1798/2003 of 7 - October 2003. Any other use and any extraction and use of the data which is not in conformity - with the objective of this site is strictly forbidden. Any retransmission of the contents of - this site, whether for a commercial purpose or otherwise, as well as any more general use other - than as far as is necessary to support the activity of a legitimate user (for example: to draw - up their own invoices) is expressly forbidden. In addition, any copying or reproduction of the - contents of this site is strictly forbidden. The European Commission maintains this website to - enhance the access by taxable persons making intra-Community supplies to verification of their - customers VAT identification numbers. Our goal is to supply instantaneous and accurate - information. However the Commission accepts no responsibility or liability whatsoever with - regard to the information obtained using this site. This information: - is obtained from Member - States databases over which the Commission services have no control and for which the Commission - assumes no responsibility; it is the responsibility of the Member States to keep their databases - complete, accurate and up to date; - is not professional or legal advice (if you need specific - advice, you should always consult a suitably qualified professional); - does not in itself give - a right to exempt intra-Community supplies from Value Added Tax; - does not change any - obligations imposed on taxable persons in relation to intra-Community supplies. It is our goal - to minimise disruption caused by technical errors. However some data or information on our site - may have been created or structured in files or formats which are not error-free and we cannot - guarantee that our service will not be interrupted or otherwise affected by such problems. The - Commission accepts no responsibility with regard to such problems incurred as a result of using - this site or any linked external sites. This disclaimer is not intended to limit the liability - of the Commission in contravention of any requirements laid down in applicable national law nor - to exclude its liability for matters which may not be excluded under that law. Usage: The - countryCode input parameter must follow the pattern [A-Z]{2} The vatNumber input parameter must - follow the [0-9A-Za-z\+\*\.]{2,12} In case of problem, the returned FaultString can take the - following specific values: - INVALID_INPUT: The provided CountryCode is invalid or the VAT - number is empty; - SERVICE_UNAVAILABLE: The SOAP service is unavailable, try again later; - - MS_UNAVAILABLE: The Member State service is unavailable, try again later or with another Member - State; - TIMEOUT: The Member State service could not be reach in time, try again later or with - another Member State; - SERVER_BUSY: The service can't process your request. Try again latter. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - VALID - - - - - INVALID - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + Specific disclaimer for this service ----------------------------------------- The + objective of this Internet site is to allow persons involved in the intra-Community supply of + goods or of services to obtain confirmation of the validity of the VAT identification number of + any specified person, in accordance to article 27 of Council Regulation (EC) No. 1798/2003 of 7 + October 2003. Any other use and any extraction and use of the data which is not in conformity + with the objective of this site is strictly forbidden. Any retransmission of the contents of + this site, whether for a commercial purpose or otherwise, as well as any more general use other + than as far as is necessary to support the activity of a legitimate user (for example: to draw + up their own invoices) is expressly forbidden. In addition, any copying or reproduction of the + contents of this site is strictly forbidden. The European Commission maintains this website to + enhance the access by taxable persons making intra-Community supplies to verification of their + customers VAT identification numbers. Our goal is to supply instantaneous and accurate + information. However the Commission accepts no responsibility or liability whatsoever with + regard to the information obtained using this site. This information: - is obtained from Member + States databases over which the Commission services have no control and for which the Commission + assumes no responsibility; it is the responsibility of the Member States to keep their databases + complete, accurate and up to date; - is not professional or legal advice (if you need specific + advice, you should always consult a suitably qualified professional); - does not in itself give + a right to exempt intra-Community supplies from Value Added Tax; - does not change any + obligations imposed on taxable persons in relation to intra-Community supplies. It is our goal + to minimise disruption caused by technical errors. However some data or information on our site + may have been created or structured in files or formats which are not error-free and we cannot + guarantee that our service will not be interrupted or otherwise affected by such problems. The + Commission accepts no responsibility with regard to such problems incurred as a result of using + this site or any linked external sites. This disclaimer is not intended to limit the liability + of the Commission in contravention of any requirements laid down in applicable national law nor + to exclude its liability for matters which may not be excluded under that law. Usage: The + countryCode input parameter must follow the pattern [A-Z]{2} The vatNumber input parameter must + follow the [0-9A-Za-z\+\*\.]{2,12} In case of problem, the returned FaultString can take the + following specific values: - INVALID_INPUT: The provided CountryCode is invalid or the VAT + number is empty; - SERVICE_UNAVAILABLE: The SOAP service is unavailable, try again later; - + MS_UNAVAILABLE: The Member State service is unavailable, try again later or with another Member + State; - TIMEOUT: The Member State service could not be reach in time, try again later or with + another Member State; - SERVER_BUSY: The service can't process your request. Try again latter. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + VALID + + + + + INVALID + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From e0742a34395d025ca7f7decf5eed1b51baca4fe6 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 1 Jul 2013 13:02:52 +0200 Subject: [PATCH 3/8] Fix: Add missing extension (.js, .cml) into script to detect and fix DOS files. --- dev/fixdosfiles.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dev/fixdosfiles.sh b/dev/fixdosfiles.sh index 256babb60eb..721df266961 100755 --- a/dev/fixdosfiles.sh +++ b/dev/fixdosfiles.sh @@ -16,13 +16,13 @@ fi # To detec if [ "x$1" = "xlist" ] then - find . \( -iname "*.php" -o -iname "*.sh" -o -iname "*.pl" -o -iname "*.lang" -o -iname "*.txt" \) -exec file "{}" + | grep -v 'htdocs\/includes' | grep CRLF + find . \( -iname "*.php" -o -iname "*.sh" -o -iname "*.cml" -o -iname "*.css" -o -iname "*.js" -o -iname "*.lang" -o -iname "*.pl" -o -iname "*.txt" \) -exec file "{}" + | grep -v 'htdocs\/includes' | grep CRLF fi # To convert if [ "x$1" = "xfix" ] then - for fic in `find . \( -iname "*.php" -o -iname "*.sh" -o -iname "*.pl" -o -iname "*.lang" -o -iname "*.txt" \) -exec file "{}" + | grep -v 'htdocs\/includes' | grep CRLF | awk -F':' '{ print $1 }' ` + for fic in `find . \( -iname "*.php" -o -iname "*.sh" -o -iname "*.cml" -o -iname "*.css" -o -iname "*.js" -o -iname "*.lang" -o -iname "*.pl" -o -iname "*.txt" \) -exec file "{}" + | grep -v 'htdocs\/includes' | grep CRLF | awk -F':' '{ print $1 }' ` do echo "Fix file $fic" dos2unix $fic From b43ba84adbda79e415566afc5bdfc1e1c5d7bde1 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 1 Jul 2013 13:57:36 +0200 Subject: [PATCH 4/8] Update tr_Tr language files --- htdocs/langs/tr_TR/agenda.lang | 104 +++++++++---------- htdocs/langs/tr_TR/banks.lang | 36 +++---- htdocs/langs/tr_TR/bills.lang | 154 ++++++++++++++-------------- htdocs/langs/tr_TR/boxes.lang | 64 ++++++------ htdocs/langs/tr_TR/cashdesk.lang | 16 +-- htdocs/langs/tr_TR/categories.lang | 12 +-- htdocs/langs/tr_TR/commercial.lang | 17 +-- htdocs/langs/tr_TR/companies.lang | 30 +++--- htdocs/langs/tr_TR/compta.lang | 26 ++--- htdocs/langs/tr_TR/contracts.lang | 10 +- htdocs/langs/tr_TR/dict.lang | 16 +-- htdocs/langs/tr_TR/mailmanspip.lang | 4 +- htdocs/langs/tr_TR/mails.lang | 2 +- htdocs/langs/tr_TR/main.lang | 24 ++--- htdocs/langs/tr_TR/margins.lang | 2 +- htdocs/langs/tr_TR/members.lang | 20 ++-- htdocs/langs/tr_TR/orders.lang | 12 +-- htdocs/langs/tr_TR/other.lang | 10 +- htdocs/langs/tr_TR/paybox.lang | 9 +- htdocs/langs/tr_TR/paypal.lang | 13 +-- htdocs/langs/tr_TR/products.lang | 50 ++++----- htdocs/langs/tr_TR/projects.lang | 14 +-- htdocs/langs/tr_TR/propal.lang | 26 ++--- htdocs/langs/tr_TR/sendings.lang | 8 +- htdocs/langs/tr_TR/sms.lang | 5 +- htdocs/langs/tr_TR/stocks.lang | 8 +- htdocs/langs/tr_TR/suppliers.lang | 2 +- htdocs/langs/tr_TR/users.lang | 8 +- htdocs/langs/tr_TR/withdrawals.lang | 4 +- 29 files changed, 351 insertions(+), 355 deletions(-) diff --git a/htdocs/langs/tr_TR/agenda.lang b/htdocs/langs/tr_TR/agenda.lang index daeeb5d0d74..403ea66746e 100644 --- a/htdocs/langs/tr_TR/agenda.lang +++ b/htdocs/langs/tr_TR/agenda.lang @@ -1,79 +1,79 @@ -# Dolibarr language file - Source file is en_US - agenda +# Dolibarr language file - en_US - agenda CHARSET=UTF-8 -Actions=Eylemler -ActionsArea=Eylem alanı (Olaylar ve görevler) -Agenda= Gündem -Agendas= Gündemler -Calendar= Takvim -Calendars= Takvimler +Actions=Etkinlikler +ActionsArea=Etkinlik alanı (Eylemler ve görevler) +Agenda=Gündem +Agendas=Gündemler +Calendar=Takvim +Calendars=Takvimler LocalAgenda=Yerel takvim -AffectedTo= Etkilenen -DoneBy= Yapan -Events= Etkinlikler +AffectedTo=Görevlendirilen +DoneBy=Yapan +Events=Etkinlikler EventsNb=Etkinlik sayısı MyEvents=Etkinliklerim OtherEvents=Diğer etkinlikler -ListOfActions=Etkinlik listesi +ListOfActions= Etkinlik listesi Location=Konum -EventOnFullDay=Tam gün etkinliği -SearchAnAction= Bir eylem/görev ara -MenuToDoActions= Tüm sonlanmayan eylemler -MenuDoneActions= Tüm sonlanan eylemler -MenuToDoMyActions= Sonlanmayan eylemlerim -MenuDoneMyActions= Sonlanan eylemlerim -ListOfEvents= Dolibarr eylem listesi -ActionsAskedBy=Eylemi bildiren -ActionsToDoBy=Eylemden etkilenen -ActionsDoneBy=Eylemi yapan -AllMyActions= Tüm eylemlerim/görevlerim -AllActions= Tüm eylemler/görevler +EventOnFullDay=Tam gün etkinliği +SearchAnAction=Bir etkinlik/görev ara +MenuToDoActions=Tüm sonlanmamış etkinlik +MenuDoneActions=Tüm sonlanmış etkinlik +MenuToDoMyActions=Sonlanmamış etkinlikim +MenuDoneMyActions=Sonlanmış etkinlikim +ListOfEvents=Dolibarr etkinlik listesi +ActionsAskedBy=Etkinliği bildiren +ActionsToDoBy=Etkinlik için görevlendirilen +ActionsDoneBy=Etkinliği yapan +AllMyActions=Tüm etkinliklerim/görevlerim +AllActions=Tüm etkinlikler/görevler ViewList=Liste görünümü ViewCal=Ay görünümü ViewDay=Gün görünümü ViewWeek=Hafta görünümü -ViewWithPredefinedFilters= Öntanımlı süzgeçler ile görünüm -AutoActions= Gündemin otomatik doldurulması -AgendaAutoActionDesc= Burada Dolibarr'ın otomatik olarak gündemde oluşturmasını istediğiniz olayları tanımlayın. İşaretli bir şey yoksa (varsayılan olarak) sadece el ile girilen eylemler gündeme dahil edilecektir. -AgendaSetupOtherDesc= Bu sayfa Dolibarr eylemlerinin dış bir takvime aktarılması için seçenekler sağlar. (thunderbird, google calendar, ...) +ViewWithPredefinedFilters=Öntanımlı süzgeçler ile görünüm +AutoActions=Otomatik doldurma +AgendaAutoActionDesc=Burada Dolibarr'ın otomatik olarak gündemde oluşturmasını istediğiniz olayları tanımlayın. İşaretli bir şey yoksa (varsayılan olarak) sadece el ile girilen etkinlikler gündeme dahil edilecektir. +AgendaSetupOtherDesc=Bu sayfa Dolibarr etkinliklerinin dış bir takvime aktarılması için seçenekler sağlar. (thunderbird, google calendar, ...) AgendaExtSitesDesc=Bu sayfa takvimlerin dış kaynaklarında Dolibarr gündemindeki etkinliklerinin görünmesini sağlar. -ActionsEvents= Dolibarr'ın otomatik olarak gündemde bir etkinlik oluşturacağı eylemler -PropalValidatedInDolibarr= %s Teklifi doğrulandı -InvoiceValidatedInDolibarr= %s Faturası doğrulandı +ActionsEvents=Dolibarr'ın otomatik olarak gündemde bir etkinlik oluşturacağı eylemler +PropalValidatedInDolibarr=%s Teklifi doğrulandı +InvoiceValidatedInDolibarr=%s Faturası doğrulandı InvoiceBackToDraftInDolibarr=%s Faturasını taslak durumuna geri götür -# InvoiceDeleteDolibarr=Invoice %s deleted -OrderValidatedInDolibarr= %s Siparişi doğrulandı +InvoiceDeleteDolibarr=%s Faturası silindi +OrderValidatedInDolibarr=%s Siparişi doğrulandı OrderApprovedInDolibarr=%s Siparişi onayladı OrderBackToDraftInDolibarr=%s Siparişini taslak durumuna geri götür OrderCanceledInDolibarr=%s Siparişi iptal edildi InterventionValidatedInDolibarr=%s Müdahalesi doğrulandı ProposalSentByEMail=%s Ticari teklifi Eposta ile gönderildi -OrderSentByEMail=%s Müşteri siparişi Eposta ile gönderildi -InvoiceSentByEMail=%s Müşteri faturası Eposta ile gönderildi -SupplierOrderSentByEMail=%s Tedarikçi siparişi Eposta ile gönderildi -SupplierInvoiceSentByEMail=%s Tedarikçi faturası Eposta ile gönderildi -ShippingSentByEMail=%s Sevkiyatı Eposta ile gönderildi -InterventionSentByEMail=%s Müdahalesi Eposta ile gönderildi -NewCompanyToDolibarr= Üçüncü parti oluşturuldu -DateActionPlannedStart= Planlanan başlangıç tarihi -DateActionPlannedEnd= Planlanan bitiş tarihi -DateActionDoneStart= Gerçek başlama tarihi -DateActionDoneEnd= Gerçek bitiş tarihi -DateActionStart= Başlama tarihi -DateActionEnd= Bitiş tarihi +OrderSentByEMail=%s Müşteri siparişi Eposta ile gönderildi +InvoiceSentByEMail=%s Müşteri faturası Eposta ile gönderildi +SupplierOrderSentByEMail=%s Tedarikçi siparişi Eposta ile gönderildi +SupplierInvoiceSentByEMail=%s Tedarikçi faturası Eposta ile gönderildi +ShippingSentByEMail=%s Sevkiyatı Eposta ile gönderildi +InterventionSentByEMail=%s Müdahalesi Eposta ile gönderildi +NewCompanyToDolibarr=Üçüncü parti oluşturuldu +DateActionPlannedStart=Planlanan başlangıç tarihi +DateActionPlannedEnd=Planlanan bitiş tarihi +DateActionDoneStart=Gerçek başlama tarihi +DateActionDoneEnd=Gerçek bitiş tarihi +DateActionStart=Başlama tarihi +DateActionEnd=Bitiş tarihi AgendaUrlOptions1=Süzgeç çıktısına ayrıca aşağıdaki parametreleri ekleyebilirsiniz: AgendaUrlOptions2=Eylem çıktılarını eylem, oluşturan, eylemden etkilenen ya da eylemi yapan kullanıcı login=%s sınırlayacak kullanıcı %s. AgendaUrlOptions3=Çıktıyı kullanıcı %s tarafından oluşturulan etkinliklerle sınırlamak içinlogina=%s. AgendaUrlOptions4=Çıktıyı kullanıcı %s tarafından etkilenen etkinliklerle sınırlamak içinlogint=%s. -AgendaUrlOptions5=Çıktıyı kullanıcı%s tarafından yapılan etkinliklerle sınırlamak içinlogind=%s. +AgendaUrlOptions5= Çıktıyı kullanıcı%s tarafından yapılan etkinliklerle sınırlamak içinlogind=%s. AgendaShowBirthdayEvents=Kişilerin doğum günlerini göster AgendaHideBirthdayEvents=Kişilerin doğum günlerini gizle -# Busy=Busy -# External Sites ical -ExportCal=Dışaaktarım takvimi -ExtSites=Dış takvimleri içeaktar -ExtSitesEnableThisTool=Dış takvimleri gündemde göster -ExtSitesNbOfAgenda=Takvimlerin sayısı + +# Dış site ical +ExportCal=Takvim dışaaktar +ExtSites=Dış takvim içeaktar +ExtSitesEnableThisTool=Dış takvimleri gündemde göster +ExtSitesNbOfAgenda=Takvim sayısı AgendaExtNb=Takvim sayısı %s ExtSiteUrlAgenda=.ical dosyasına erişmek için URL ExtSiteNoLabel=Tanımlama yok diff --git a/htdocs/langs/tr_TR/banks.lang b/htdocs/langs/tr_TR/banks.lang index 1df82f5f375..1ad46887120 100644 --- a/htdocs/langs/tr_TR/banks.lang +++ b/htdocs/langs/tr_TR/banks.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - banks +# Dolibarr language file - tr_TR - banks CHARSET=UTF-8 Bank=Banka Banks=Bankalar @@ -20,8 +20,8 @@ SavingAccount=Tasarruf hesabı SavingAccounts=Tasarruf hesapları ErrorBankLabelAlreadyExists=Finansal hesap etiketi zaten var BankBalance=Bakiye -# BankBalanceBefore=Balance before -# BankBalanceAfter=Balance after +BankBalanceBefore=Önceki bakiye +BankBalanceAfter=Sonraki bakiye BalanceMinimalAllowed=İzin verilen enaz bakiye BalanceMinimalDesired=İstenen enaz bakiye InitialBankBalance=Açılış bakiyesi @@ -47,7 +47,7 @@ BankAccountDomiciliation=Hesap adresi BankAccountCountry=Hesap ülkesi BankAccountOwner=Hesap sahibi adı BankAccountOwnerAddress=Hesap sahibi adresi -RIBControlError=Değerlerin bütünlük denetimi başarısız. Bu demektir ki; bu hesap numarasına ait bilgiler tam değil ya da yanlıştır (ülkeyi, numaraları ve IBAN’ı kontrol edin). +RIBControlError= Değerlerin bütünlük denetimi başarısız. Bu demektir ki; bu hesap numarasına ait bilgiler tam değil ya da yanlıştır (ülkeyi, numaraları ve IBAN’ı kontrol edin). CreateAccount=Hesap oluştur NewAccount=Yeni hesap NewBankAccount=Yeni bir banka hesabı @@ -75,24 +75,24 @@ ByCategories=Kategorilere göre ByRubriques=Kategorilere göre BankTransactionByCategories=Kategorilere göre banka işlemleri BankTransactionForCategory=Kategori %s için banka işlemleri -RemoveFromRubrique=Kategori bağlantısını kaldır +RemoveFromRubrique=Kategori bağlantısını kaldır RemoveFromRubriqueConfirm=İşlem ve kategori arasındaki bağlantıyı kaldırmak istediğinizden emin misiniz? ListBankTransactions=Banka işlemleri listesi IdTransaction=İşlem Kimliği BankTransactions=Banka işlemleri SearchTransaction=İşlem ara ListTransactions=İşlemleri listele -ListTransactionsByCategory=İşlem/kategori listele -TransactionsToConciliate=Uzlaştırılacak işlemler +ListTransactionsByCategory=İşlem/kategori listele +TransactionsToConciliate= Uzlaştırılacak işlemler Conciliable=Uzlaştırılabilir Conciliate=Uzlaştır Conciliation=Uzlaşma -ConciliationForAccount=Bu hesabı uzlaştır -IncludeClosedAccount=Kapalı hesapları içer -OnlyOpenedAccount=Sadece açık hesapları +ConciliationForAccount= Bu hesabı uzlaştır +IncludeClosedAccount= Kapalı hesapları içer +OnlyOpenedAccount=Sadece açık hesapları AccountToCredit=Alacak hesabı AccountToDebit=Borç hesabı -DisableConciliation=Bu hesap için uzlaşma özelliği engelle +DisableConciliation=Bu hesap için uzlaşma özelliği engelle ConciliationDisabled=Uzlaşma özelliği engelli StatusAccountOpened=Açık StatusAccountClosed=Kapalı @@ -112,20 +112,20 @@ SocialContributionPayment=Sosyal güvenlik primi ödemesi FinancialAccountJournal=Finansal hesap günlüğü BankTransfer=Banka havalesi BankTransfers=Banka havaleleri -TransferDesc=Bir hesaptan başka bir hesaba transfer sırasında Dolibarr iki kayıt yazacaktır (aynı tutarda olmak üzere kaynak hesaba borç ve hedef hesaba alacak. Bu işlem için aynı etiket ve tarih kullanılacaktır). +TransferDesc= Bir hesaptan başka bir hesaba transfer sırasında Dolibarr iki kayıt yazacaktır (aynı tutarda olmak üzere kaynak hesaba borç ve hedef hesaba alacak. Bu işlem için aynı etiket ve tarih kullanılacaktır). TransferFrom=Kimden TransferTo=Kime -TransferFromToDone=%s den %s nin %s %s ne bir transfer kaydedildi. +TransferFromToDone=%s den %s nin %s %s ne bir transfer kaydedildi. CheckTransmitter=Veren -ValidateCheckReceipt=Bu çek makbuzunı doğruluyor musunuz? -ConfirmValidateCheckReceipt=Bu çek makbuzunu doğrulamak istediğinizden emin misiniz, bu işlem yapıldıktan sonra değiştirme olanağı yoktur? +ValidateCheckReceipt= Bu çek makbuzunı doğruluyor musunuz? +ConfirmValidateCheckReceipt= Bu çek makbuzunu doğrulamak istediğinizden emin misiniz, bu işlem yapıldıktan sonra değiştirme olanağı yoktur? DeleteCheckReceipt=Bu çek makbuzu silinsin mi? ConfirmDeleteCheckReceipt=Bu çek makbuzunu silmek istediğinizden emin misiniz? BankChecks=Banka çekleri BankChecksToReceipt=Ödeme için bekleyen çekler ShowCheckReceipt=Çek tahsilat makbuzunu göster NumberOfCheques=Çek sayısı -DeleteTransaction=İşlem sil +DeleteTransaction=İşlem sil ConfirmDeleteTransaction=Bu işlemi silmek istediğinizden emin misiniz? ThisWillAlsoDeleteBankRecord=Bu oluşturulan banka işlemlerini de silecektir. BankMovements=Hareketler @@ -145,9 +145,9 @@ AllAccounts=Tüm banka/kasa hesapları BackToAccount=Hesaba geri dön ShowAllAccounts=Tüm hesaplar için göster FutureTransaction=Gelecekteki işlem. Hiçbir şekilde uzlaştırılamaz. -SelectChequeTransactionAndGenerate=Çek tahsilat makbuzunun içereceği çekleri seç/süz ve “Oluştur” a tıkla. +SelectChequeTransactionAndGenerate= Çek tahsilat makbuzunun içereceği çekleri seç/süz ve “Oluştur” a tıkla. InputReceiptNumber=Uzlaşma ile ilgili banka hesap özetini seçin. Sıralanabilir bir sayısal değer kullanın (YYYYMM gibi) EventualyAddCategory=Sonunda, kayıtları sınıflandırmak için bir kategori belirtin ToConciliate=Uzlaştırılacak mı? ThenCheckLinesAndConciliate=Sonra, banka hesap özetindeki kalemleri işaretleyin ve tıklayın -# BankDashboard=Bank accounts summary +BankDashboard=Banka hesapları özeti diff --git a/htdocs/langs/tr_TR/bills.lang b/htdocs/langs/tr_TR/bills.lang index e954b609c63..e7ffd6f63bc 100644 --- a/htdocs/langs/tr_TR/bills.lang +++ b/htdocs/langs/tr_TR/bills.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - bills +# Dolibarr language file - tr_TR - bills CHARSET=UTF-8 Bill=Fatura Bills=Faturalar @@ -16,14 +16,14 @@ BillsStatisticsSuppliers=Tedarikçi faturaları istatistikleri DisabledBecauseNotErasable=Silinemez, çünkü engelli InvoiceStandard=Standart fatura InvoiceStandardAsk=Standart fatura -InvoiceStandardDesc=Bu tür fatura genel faturadır. +InvoiceStandardDesc= Bu tür fatura genel faturadır. InvoiceDeposit=Teminat faturası -InvoiceDepositAsk=Teminat faturası -InvoiceDepositDesc=Bu tür fatura bir teminat alındığında yapılır. -InvoiceProForma=Proforma fatura -InvoiceProFormaAsk=Proforma fatura -# InvoiceProFormaDesc=Proforma invoice is an image of a true invoice but has no accountancy value. -InvoiceReplacement=Fatura değiştirme +InvoiceDepositAsk= Teminat faturası +InvoiceDepositDesc= Bu tür fatura bir teminat alındığında yapılır. +InvoiceProFormat=Proforma fatura +InvoiceProFormatAsk=Proforma fatura +InvoiceProFormatDesc=Proforma faturagerçek faturanın bir görüntüsüdür ancak hiçbir muhasebe değeri yoktur. +InvoiceReplacement= Fatura değiştirme InvoiceReplacementAsk=Fatura için fatura değiştirme InvoiceReplacementDesc=Fatura değiştirmehenüz ödeme tahsil edilmemiş bir faturanın iptal edilip tamamen değiştirilmesi için kullanılır. .

Not: Yalnızca ödeme yapılmamış faturalar değiştirilebilir. Eğer kapalı değilse kullanılmamak üzere otomatik olarak kapatılacaktır. InvoiceAvoir=Alacak dekontu @@ -34,7 +34,7 @@ ReplacementInvoice=Fatura değiştirme ReplacedByInvoice=Değiştirilen fatura %s ReplacementByInvoice=Değiştirilen fatura CorrectInvoice=Fatura %s i düzelt -CorrectInvoice=Fatura %s i düzelt +CorrectInvoice= Fatura %s i düzelt CorrectionInvoice=Fatura düzeltme UsedByInvoice=%s Faturasını ödeme için kullan ConsumedBy=Tarafından tüketilen @@ -60,12 +60,12 @@ Payments=Ödemeler PaymentsBack=Geri ödemeler PaidBack=Geri ödenen DatePayment=Ödeme tarihi -DeletePayment=Ödeme sil +DeletePayment=Ödeme sil ConfirmDeletePayment=Bu ödemeyi silmek istediğinizden emin misiniz? -ConfirmConvertToReduc=Bu iade faturasını ya da teminatı mutlak bir indirime dönüştürmek istiyor musunuz?
Bu tutar diğer indirimlerin arasına kaydedilecek olup bu müşteri için geçerli ya da ileride kesilecek faturada indirim olarak kullanılabilecektir. +ConfirmConvertToReduc= Bu iade faturasını ya da teminatı mutlak bir indirime dönüştürmek istiyor musunuz?
Bu tutar diğer indirimlerin arasına kaydedilecek olup bu müşteri için geçerli ya da ileride kesilecek faturada indirim olarak kullanılabilecektir. SupplierPayments=Tedarikçi ödemeleri -ReceivedPayments=Alınan ödemeler -ReceivedCustomersPayments=Müşterilerden alınan ödemeler +ReceivedPayments=Alınan ödemeler +ReceivedCustomersPayments=Müşterilerden alınan ödemeler ReceivedCustomersPaymentsToValid=Müşterilerden alınan doğrulanacak ödemeler PaymentsReportsForYear=%s ilişkin ödeme raporları PaymentsReports=Ödeme raporları @@ -79,13 +79,13 @@ PaymentAmount=Ödeme tutarı ValidatePayment=Ödeme doğrula PaymentHigherThanReminderToPay=Ödeme hatırlatmasından daha yüksek ödeme HelpPaymentHigherThanReminderToPay= Dikkat, bir ya da daha çok faturanın ödeme tutarı ödenecek bakiyeden yüksektir.
Girişinizi düzeltin, aksi durumda her fazla ödenen fatura için bir iade faturası oluşturmayı onaylayın ve düşünün. -ClassifyPaid=‘Ödendi’ olarak sınıflandır +ClassifyPaid= ‘Ödendi’ olarak sınıflandır ClassifyPaidPartially=‘Kısmen ödendi’ olarak sınıflandır ClassifyCanceled=’Terkedildi’ olarak sınıflandır -ClassifyClosed=‘Kapalı’ olarak sınıflandır +ClassifyClosed= ‘Kapalı’ olarak sınıflandır CreateBill=Fatura oluştur AddBill=Fatura ya da alacak dekontu ekle -DeleteBill=Fatura sil +DeleteBill=Fatura sil SearchACustomerInvoice=Müşteri faturası ara SearchASupplierInvoice=Tedarikçi faturası ara CancelBill=Fatura iptal et @@ -93,13 +93,13 @@ SendRemindByMail=EPosta ile anımsatma gönder DoPayment=Ödeme yap DoPaymentBack=Geri ödeme yap ConvertToReduc=Gelecekteki indirime dönüştür -EnterPaymentReceivedFromCustomer=Müşteriden alınan ödeme girin -EnterPaymentDueToCustomer=Müşteri nedeniyle ödeme yap -DisabledBecauseRemainderToPayIsZero=Engelli Çünkü geri kalan ödeme sıfırdır +EnterPaymentReceivedFromCustomer= Müşteriden alınan ödeme girin +EnterPaymentDueToCustomer= Müşteri nedeniyle ödeme yap +DisabledBecauseRemainderToPayIsZero= Engelli Çünkü geri kalan ödeme sıfırdır Amount=Tutar PriceBase=Temel fiyat BillStatus=Fatura durumu -BillStatusDraft=Taslak (doğrulanma gerektirir) +BillStatusDraft=Taslak (doğrulanma gerektirir) BillStatusPaid=Ödenmiş BillStatusPaidBackOrConverted=Ödenmiş ya da indirime dönüştürülen BillStatusConverted=Ödenmiş (son fatura için hazır) @@ -108,7 +108,7 @@ BillStatusValidated=Doğrulanmış (ödenmesi gerekir) BillStatusStarted=Başlamış BillStatusNotPaid=Ödenmemiş BillStatusClosedUnpaid=Kapalı (ödenmemiş) -BillStatusClosedPaidPartially=Ödenmiş (kısmen) +BillStatusClosedPaidPartially= Ödenmiş (kısmen) BillShortStatusDraft=Taslak BillShortStatusPaid=Ödenmiş BillShortStatusPaidBackOrConverted=İşlenmiş @@ -118,23 +118,23 @@ BillShortStatusValidated=Doğrulanmış BillShortStatusStarted=Başlamış BillShortStatusNotPaid=Ödenmemiş BillShortStatusClosedUnpaid=Kapalı -BillShortStatusClosedPaidPartially=Ödenmiş (Kısmen) +BillShortStatusClosedPaidPartially=Ödenmiş (Kısmen) PaymentStatusToValidShort=Doğrulanacak -ErrorVATIntraNotConfigured=KDV numarası henüz tanımlanmamış +ErrorVATIntraNotConfigured= KDV numarası henüz tanımlanmamış ErrorNoPaiementModeConfigured=Hiç ödeme biçimi tanımlanmamış. Bunu düzeltmek için fatura modülü kurulumuna gidin. -ErrorCreateBankAccount=Bir banka hesabı oluşturun, daha sonra ödeme biçimi tanımlamak için fatura modülünün kurulum paneline gidin. +ErrorCreateBankAccount= Bir banka hesabı oluşturun, daha sonra ödeme biçimi tanımlamak için fatura modülünün kurulum paneline gidin. ErrorBillNotFound=Fatura %s mevcut değil ErrorInvoiceAlreadyReplaced=Hata, fatura %s le değiştirilecek bir faturayı doğrulamaya çalışıyorsunuz. Ama bu fatura zaten fatura %s ile değiştirilmiş. ErrorDiscountAlreadyUsed=Hata, indirim zaten kullanılmış ErrorInvoiceAvoirMustBeNegative=Hata, doğru fatura eksi bir tutarda olmalıdır ErrorInvoiceOfThisTypeMustBePositive=Hata, bu türde bir fatura artı tutarda olmalıdır ErrorCantCancelIfReplacementInvoiceNotValidated=Hata, halen taslak durumunda olan bir faturayla değiştirilmiş bir faturayı iptal edemezsiniz -BillFrom=Kimden +BillFrom=Kimden BillTo=Kime ActionsOnBill=Fatura üzerindeki eylemler NewBill=Yeni fatura Prélèvements=Ödeme talimatı -Prélèvements=Ödeme talimatı +Prélèvements=Ödeme talimatları LastBills=Son %s fatura LastCustomersBills=Son %s müşteri faturası LastSuppliersBills=Son %s tedarikçi faturası @@ -147,36 +147,36 @@ Unpaid=Ödenmemiş ConfirmDeleteBill=Bu faturayı silmek istediğinizden emin misiniz? ConfirmValidateBill=%s referanslı bu faturayı doğrulamak istediğiniz emin misiniz? ConfirmUnvalidateBill=Fatura %s taslak durumuna değiştirmek istediğinizden emin misiniz? -ConfirmClassifyPaidBill=%s Faturasının durumunu ödenmiş olarak değiştirmek istediğinizden emin misiniz? +ConfirmClassifyPaidBill= %s Faturasının durumunu ödenmiş olarak değiştirmek istediğinizden emin misiniz? ConfirmCancelBill=%s Faturasını iptal etmek istediğinizden emin misiniz? ConfirmCancelBillQuestion=Neden bu faturayı ‘terkedilmiş’ olarak sınıflandırmak istiyorsunuz? ConfirmClassifyPaidPartially=%s Faturasının durumunu ödenmiş olarak değiştirmek istediğinizden emin misiniz? ConfirmClassifyPaidPartiallyQuestion=Bu fatura tamamen ödenmemiş. Bu faturayı kapatmak için nedenler nelerdir? ConfirmClassifyPaidPartiallyReasonAvoir=Ödeme vadesinden önce yapıldığı için kalan bakiye (%s %s) indirim olarak verildi. Bir iade faturası ile KDV’yi ayarladım. -ConfirmClassifyPaidPartiallyReasonDiscountNoVat=Ödeme vadesinden önce yapıldığı için kalan bakiye (%s %s) indirim olarak verildi. Bu indirimle KDV’yi kaybetmeyi kabul ettim. -ConfirmClassifyPaidPartiallyReasonDiscountVat=Ödeme vadesinden önce yapıldığı için kalan bakiye (%s %s) indirim olarak verildi. Bu indirimdeki KDV’yi bir iade faturası olmadan kurtardım. +ConfirmClassifyPaidPartiallyReasonDiscountNoVat= Ödeme vadesinden önce yapıldığı için kalan bakiye (%s %s) indirim olarak verildi. Bu indirimle KDV’yi kaybetmeyi kabul ettim. +ConfirmClassifyPaidPartiallyReasonDiscountVat= Ödeme vadesinden önce yapıldığı için kalan bakiye (%s %s) indirim olarak verildi. Bu indirimdeki KDV’yi bir iade faturası olmadan kurtardım. ConfirmClassifyPaidPartiallyReasonBadCustomer=Kötü müşteri ConfirmClassifyPaidPartiallyReasonProductReturned=Ürünler kısmen iade edildi -ConfirmClassifyPaidPartiallyReasonOther=Diğer bir nedenle terkedilen tutar +ConfirmClassifyPaidPartiallyReasonOther=Diğer bir nedenle terkedilen tutar ConfirmClassifyPaidPartiallyReasonDiscountNoVatDesc=Eğer fatura uygun yorum ile sağlanmışsa, bu seçim mümkündür. (Örneğin; «Fiyatın karşılığı olan verginin gerçekten ödenmiş olması indirim yapılması hakkını verir») ConfirmClassifyPaidPartiallyReasonDiscountVatDesc=Bazı ülkelerde, bu seçenek yalnızca fatura doğru notu içeriyorsa mümkün olabilir. ConfirmClassifyPaidPartiallyReasonAvoirDesc=Eğer diğerlerinin hiçbiri uymuyorsa bu seçimi kullanın ConfirmClassifyPaidPartiallyReasonBadCustomerDesc=Bir Kötü müşteri borçlarını ödemeyi reddeden müşteridir. -ConfirmClassifyPaidPartiallyReasonProductReturnedDesc=Bu seçenek, bazı ürün iadelerinden dolayı ödeme tamamlanamazsa, kullanılır. -ConfirmClassifyPaidPartiallyReasonOtherDesc=Bu seçeneği, eğer diğerlerinin hiçbiri uymazsa kullanın, örneğin aşağıdaki durumda:-istenen tutar çok önemli çünkü indirim unutulmuştur
Bütün durumlarda, istenen fazla tutar muhasebe sisteminde bir iade faturası oluşturularak düzeltilir. +ConfirmClassifyPaidPartiallyReasonProductReturnedDesc= Bu seçenek, bazı ürün iadelerinden dolayı ödeme tamamlanamazsa, kullanılır. +ConfirmClassifyPaidPartiallyReasonOtherDesc= Bu seçeneği, eğer diğerlerinin hiçbiri uymazsa kullanın, örneğin aşağıdaki durumda:-istenen tutar çok önemli çünkü indirim unutulmuştur
Bütün durumlarda, istenen fazla tutar muhasebe sisteminde bir iade faturası oluşturularak düzeltilir. ConfirmClassifyAbandonReasonOther=Diğer -ConfirmClassifyAbandonReasonOtherDesc=Diğer bütün durumlarda bu seçenek kullanılacaktır. Örneğin; bir fatura değiştirmeyi tasarladığınızda. -ConfirmCustomerPayment=Bu ödeme girişini %s %s için onaylıyor musunuz? +ConfirmClassifyAbandonReasonOtherDesc= Diğer bütün durumlarda bu seçenek kullanılacaktır. Örneğin; bir fatura değiştirmeyi tasarladığınızda. +ConfirmCustomerPayment Bu ödeme girişini %s %s için onaylıyor musunuz? ConfirmValidatePayment=Bu ödemeyi doğrulamak istediğinizden emin misiniz? Bir kez ödeme doğrulandıktan hiçbir değişiklik yapılamaz. ValidateBill=Fatura doğrula UnvalidateBill=Faturadan doğrulamayı kaldır NumberOfBills=Fatura sayısı -NumberOfBillsByMonth=Aylık fatura sayısı +NumberOfBillsByMonthHT=Aya göre fatura sayısı AmountOfBills=Faturaların tutarı -AmountOfBillsByMonthHT=Aylık fatura tutarı (vergisiz net) +AmountOfBillsByMonth= Aya göre faturaların tutarı ShowSocialContribution=Sosyal katkı payını göster ShowBill=Fatura göster -ShowInvoice=Fatura göster +ShowInvoice= Fatura göster ShowInvoiceReplace=Değiştirilen faturayı göster ShowInvoiceAvoir=Alacak dekontu göster ShowInvoiceDeposit=Teminat faturası göster @@ -193,7 +193,7 @@ Rest=Bekleyen AmountExpected=İstenen tutar ExcessReceived=Fazla alınan EscompteOffered=Teklif edilen indirim (vadeden önce ödemede) -SendBillRef=%s Faturasını gönder +SendBillRef=%s Faturasını gönder SendReminderBillRef=%s Faturasını gönder (hatırlatma) StandingOrders=Ödeme talimatları StandingOrder=Ödeme talimatı @@ -203,7 +203,7 @@ RefBill=Fatura ref ToBill=Faturalanacak RemainderToBill=Faturalanacak bakiye SendBillByMail=Faturayı E-posta ile gönder -SendReminderBillByMail=Hatırlatılmayı E-posta ile gönder +SendReminderBillByMail= Hatırlatılmayı E-posta ile gönder RelatedCommercialProposals=İlgili teklifler MenuToValid=Doğrulanacak DateMaxPayment=Vadesinden önce ödeme @@ -214,12 +214,12 @@ ClassifyBill=Fatura sınıflandır NoSupplierBillsUnpaid=Ödenmemiş tedarikçi faturası yok SupplierBillsToPay=Ödeme bekleyen tedarikçi faturaları CustomerBillsUnpaid=Ödenmemiş müşteri faturaları -DispenseMontantLettres=Mekanografik olarak tasarlanan fatura harf sırasının dışında tutulur -DispenseMontantLettres=Mekanografik olarak tasarlanan fatura harf sırasının dışında tutulur +DispenseMontantLettres= Mekanografik olarak tasarlanan fatura harf sırasının dışında tutulur +DispenseMontantLettres=Mekanografik işlemlerle yazılan faturalar harf sırasına göre dağıtılır NonPercuRecuperable=Kurtarılamaz SetConditions=Ödeme koşullarını ayarla SetMode=Ödeme biçimini ayarla -SetDate= Tarih ayarla +SetDate=Tarih ayarla SelectDate=Bir tarih seç Billed=Faturalandı RepeatableInvoice=Ön tanımlı fatura @@ -228,11 +228,11 @@ Repeatable=Ön tanımlı Repeatables=Ön tanımlılar ChangeIntoRepeatableInvoice=Ön tanımlıya dönüştür CreateRepeatableInvoice=Ön tanımlı fatura oluştur -CreateFromRepeatableInvoice=Ön tanımlı faturadan oluştur +CreateFromRepeatableInvoice= Ön tanımlı faturadan oluştur CustomersInvoicesAndInvoiceLines=Müşteri faturaları ve fatura satırları CustomersInvoicesAndPayments=Müşteri faturaları ve ödemeleri -ExportDataset_invoice_1=Müşteri faturaları listesi ve fatura satırları -ExportDataset_invoice_2=Müşteri faturaları ve ödemeleri +ExportDataset_invoice_1= Müşteri faturaları listesi ve fatura satırları +ExportDataset_invoice_2= Müşteri faturaları ve ödemeleri ProformaBill=Proforma Fatura: Reduction=Kesinti ReductionShort=Kes. @@ -278,8 +278,8 @@ InvoiceStatus=Fatura durumu InvoiceNote=Fatura notu InvoicePaid=Ödenen fatura PaymentNumber=Ödeme numarası -RemoveDiscount=İndirimi kaldır -WatermarkOnDraftBill=Taslak faturaların üzerinde filigran (eğer boşsa hiçbirşey yok) +RemoveDiscount=İndirimi kaldır +WatermarkOnDraftBill=Taslak faturaların üzerinde filigran (eğer boşsa hiçbirşey yok) InvoiceNotChecked=Seçilen yok fatura CloneInvoice=Fatura kopyala ConfirmCloneInvoice=Bu %s faturayı kopyalamak istediğinizden emin misiniz? @@ -294,31 +294,31 @@ ConfirmRemoveDiscount=Bu indirimi kaldırmak istediğinizden emin misiniz? RelatedBill=İlgili fatura RelatedBills=İlgili faturalar -# PaymentConditions +# Ödeme koşulları PaymentConditionShortRECEP=Derhal PaymentConditionRECEP=Derhal PaymentConditionShort30D=30 gün PaymentCondition30D=30 gün -PaymentConditionShort30DENDMONTH=Ay sonunda 30 gün -PaymentCondition30DENDMONTH=Ay sonunda 30 gün +PaymentConditionShort30DENDMONTH=Ay sonunda 30 gün +PaymentCondition30DENDMONTH=Ay sonunda 30 gün PaymentConditionShort60D=60 gün PaymentCondition60D=60 gün -PaymentConditionShort60DENDMONTH=Ay sonunda 60 gün -PaymentCondition60DENDMONTH=Ay sonunda 60 gün +PaymentConditionShort60DENDMONTH=Ay sonunda 60 gün +PaymentCondition60DENDMONTH=Ay sonunda 60 gün PaymentConditionShortPT_DELIVERY=Teslimat PaymentConditionPT_DELIVERY=Teslimatta PaymentConditionShortPT_ORDER=Siparişte -PaymentConditionPT_ORDER=Siparişle +PaymentConditionPT_ORDER=Siparişte PaymentConditionShortPT_5050=50-50 PaymentConditionPT_5050=50%% peşin, 50%% teslimatta -# FixAmount=Fix amount -# VarAmount=Variable amount (%% tot.) -# PaymentType + + +# Ödeme türü PaymentTypeVIR=Banka hesabına PaymentTypeShortVIR=Banka hesabı PaymentTypePRE=Banka ödeme emri -PaymentTypeShortPRE=Banka ödeme emri +PaymentTypeShortPRE= Banka ödeme emri PaymentTypeLIQ=Nakit PaymentTypeShortLIQ=Nakit PaymentTypeCB=Kredi kartı @@ -328,7 +328,7 @@ PaymentTypeShortCHQ=Çek PaymentTypeTIP=TIP PaymentTypeShortTIP=TIP PaymentTypeVAD=İnternetten ödeme -PaymentTypeShortVAD=İnternetten ödeme +PaymentTypeShortVAD=İnternetten ödeme PaymentTypeTRA=Fatura ödemesi PaymentTypeShortTRA=Fatura BankDetails=Banka ayrıntıları @@ -336,7 +336,7 @@ BankCode=Banka kodu DeskCode=Sıra kodu BankAccountNumber=Hesap numarası BankAccountNumberKey=Anahtar -Residence=Yerleştirme +Residence=Yerleştirme IBANNumber=IBAN numarası IBAN=IBAN BIC=BIC/SWIFT @@ -346,15 +346,15 @@ RegulatedOn=Buna göre düzenlenmiş ChequeNumber=Çek No ChequeOrTransferNumber=Çek/Havale No ChequeMaker=Çeki veren -ChequeBank=Çekin Bankası +ChequeBank=Çekin Bankası NetToBePaid=Net ödenecek PhoneNumber=Tel FullPhoneNumber=Telefon TeleFax=Faks -PrettyLittleSentence=Maliye İdaresi tarafından onaylı bir muhasebe kurumu üyesi olarak adıma verilen çeklerdeki ödeme tutarını kabul ediniz. +PrettyLittleSentence= Maliye İdaresi tarafından onaylı bir muhasebe kurumu üyesi olarak adıma verilen çeklerdeki ödeme tutarını kabul ediniz. IntracommunityVATNumber=Topluluk içi KDV numarası -PaymentByChequeOrderedTo=%s e yazılı çek ödemesi (vergi dahil) şuna gönderildi -PaymentByChequeOrderedToShort=Çek ödemesi (vergi dahil) şuna ödenir +PaymentByChequeOrderedTo=%s e yazılı çek ödemesi (vergi dahil) şuna gönderildi +PaymentByChequeOrderedToShort=Çek ödemesi (vergi dahil) şuna ödenir SendTo=kime PaymentByTransferOnThisBankAccount=Aşağıdaki banka hesabına havale ile ödeme VATIsNotUsedForInvoice=* KDV uygulanmaz madde-293B CGI @@ -375,11 +375,11 @@ ChequesReceipts=Çek makbuzları ChequesArea=Çek hesabı alanı ChequeDeposits=Çek hesapları Cheques=Çekler -CreditNoteConvertedIntoDiscount=Bu alacak dekontu veya teminat faturası %s haline dönüştürüldü -UsBillingContactAsIncoiveRecipientIfExist=Fatura alıcısı olarak üçüncü parti adresi yerine müşteri faturası kişi adresini kullan +CreditNoteConvertedIntoDiscount=Bu alacak dekontu veya teminat faturası %s haline dönüştürüldü +UsBillingContactAsIncoiveRecipientIfExist=Fatura alıcısı olarak üçüncü parti adresi yerine müşteri faturası kişi adresini kullan ShowUnpaidAll=Tüm ödenmemiş faturaları göster ShowUnpaidLateOnly=Ödenmemiş bütün faturaları göster -PaymentInvoiceRef=Fatura %s ödemesi +PaymentInvoiceRef=Fatura %s ödemesi ValidateInvoice=Fatura doğrula Cash=Nakit Reported=Gecikmiş @@ -392,22 +392,22 @@ ClosePaidCreditNotesAutomatically=Tamamı ödenmiş alacak dekontlarını "Öden AllCompletelyPayedInvoiceWillBeClosed=Bakiyesi kalmayan bütün faturalar otomatikmen kapatılarak "Ödendi" durumuna getirilecektir. ToMakePayment=Öde ToMakePaymentBack=Geri öde -# ListOfYourUnpaidInvoices=List of unpaid invoices -# NoteListOfYourUnpaidInvoices=Note: This list contains only invoices for third parties you are linked to as a sale representative. -# RevenueStamp=Revenue stamp -##### Types de contacts ##### -TypeContact_facture_internal_SALESREPFOLL=Müşteri fatura izleme temsilci -TypeContact_facture_external_BILLING=Müşteri faturası ilgilisi +ListOfYourUnpaidInvoices=Ödenmemiş fatura listesi +NoteListOfYourUnpaidInvoices=Not: Bu liste yalnızca satış temsilcisi olarak bağlantılandığınız üçüncü partilerin faturalarını kapsar. +RevenueStamp=Damga vergisi +##### Kişi türleri ##### +TypeContact_facture_internal_SALESREPFOLL= Müşteri fatura izleme temsilci +TypeContact_facture_external_BILLING=Müşteri faturası ilgilisi TypeContact_facture_external_SHIPPING=Müşteri sevkiyat ilgilisi TypeContact_facture_external_SERVICE=Müşteri hizmeti ilgilisi -TypeContact_invoice_supplier_internal_SALESREPFOLL=Tedarikçi fatura izleme temsilcisi +TypeContact_invoice_supplier_internal_SALESREPFOLL= Tedarikçi fatura izleme temsilcisi TypeContact_invoice_supplier_external_BILLING=Tedarikçi fatura ilgilisi TypeContact_invoice_supplier_external_SHIPPING=Tedarikçi sevkiyat ilgilisi TypeContact_invoice_supplier_external_SERVICE=Tedarikçi hizmet ilgilisi -# crabe PDF Model -PDFCrabeDescription=Fatura PDF şablonu Crabe. Tam fatura şablonu (Önerilen şablon) +# crabe PDF Modeli +PDFCrabeDescription= Fatura PDF Crabe şablonu. Tam bir fatura şablonu (Önerilen şablon) # oursin PDF Model -PDFOursinDescription=Fatura şablonu oursin +PDFOursinDescription=Fatura PDF Oursin şablonu. Tam bir fatura şablonu (Seçenek şablon) # NumRef Modules -TerreNumRefModelDesc1=Standart faturalar için numarayı %syymm-nnnn biçiminde ve iade faturaları için %syymm-nnnn biçiminde göster, yy yıl, mm ay ve nnnn boşluksuz ve sıfıra dönüşmeyen bir dizidir. +TerreNumRefModelDesc1= Standart faturalar için numarayı %syymm-nnnn biçiminde ve iade faturaları için %syymm-nnnn biçiminde göster, yy yıl, mm ay ve nnnn boşluksuz ve sıfıra dönüşmeyen bir dizidir. TerreNumRefModelError=$syymm ile başlayan bir fatura hali hazırda vardır ve bu sıra dizisi için uygun değildir. Bu modülü etkinleştirmek için onu kaldırın ya da adını değiştirin. diff --git a/htdocs/langs/tr_TR/boxes.lang b/htdocs/langs/tr_TR/boxes.lang index 16bcb59aefd..4712cc36f1a 100644 --- a/htdocs/langs/tr_TR/boxes.lang +++ b/htdocs/langs/tr_TR/boxes.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - boxes +# Dolibarr language file - tr_TR - boxes CHARSET=UTF-8 BoxLastRssInfos=Rss bilgileri BoxLastProducts=Son %s ürün/hizmet @@ -6,9 +6,9 @@ BoxProductsAlertStock=Stoktaki ürün uyarısı BoxLastProductsInContract=Son %s sözleşmeli ürün/hizmet BoxLastSupplierBills=Son tedarikçi faturaları BoxLastCustomerBills=Son müşteri faturaları -BoxOldestUnpaidCustomerBills=En eski ödenmemiş müşteri faturaları -BoxOldestUnpaidSupplierBills=En eski ödenmemiş tedarikçi faturaları -BoxLastProposals=Son ticari teklifler +BoxOldestUnpaidCustomerBills=Ödenmemiş en eski müşteri faturaları +BoxOldestUnpaidSupplierBills=Ödenmemiş en eski tedarikçi faturaları +BoxLastProposals=Son teklifler BoxLastProspects=Son adaylar BoxLastCustomers=Son müşteriler BoxLastSuppliers=Son değiştirilen tedarikçiler @@ -18,44 +18,44 @@ BoxLastActions=Son eylemler BoxLastContracts=Son sözleşmeler BoxLastContacts=Son kişiler/adresler BoxLastMembers=Son üyeler -# BoxFicheInter=Last interventions +BoxFicheInter=Son müdahaleler BoxCurrentAccounts=Cari hesap bakiyesi BoxSalesTurnover=Satış cirosu -BoxTotalUnpaidCustomerBills=Toplam ödenmemiş müşteri faturaları -BoxTotalUnpaidSuppliersBills=Toplam ödenmemiş tedarikçi faturaları -BoxTitleLastBooks=Son yapılan %s kayıt +BoxTotalUnpaidCustomerBills=Ödenmemiş toplam müşteri faturaları +BoxTotalUnpaidSuppliersBills=Ödenmemiş toplam tedarikçi faturaları +BoxTitleLastBooks=Yapılan son %s kayıt BoxTitleNbOfCustomers=Müşteri sayısı BoxTitleLastRssInfos=%s ten en son %s haber -BoxTitleLastProducts=Son değiştirilen % s ürün/hizmet +BoxTitleLastProducts=Değiştirilen son % s ürün/hizmet BoxTitleProductsAlertStock=Stoktaki ürün uyarısı -BoxTitleLastCustomerOrders=Son değiştirilen %s müşteri siparişi -BoxTitleLastSuppliers=Son kaydedilen %s tedarikçi -BoxTitleLastCustomers=Son kaydedilen %s müşteri -BoxTitleLastModifiedSuppliers=Son değiştirilen %s tedarikçi -BoxTitleLastModifiedCustomers=Son değiştirilen %s müşteri -BoxTitleLastCustomersOrProspects=Son değiştirilen %s müşteri veya aday -BoxTitleLastPropals=Son kaydedilen %s teklif +BoxTitleLastCustomerOrders=Değiştirilen son %s müşteri siparişi +BoxTitleLastSuppliers=Kaydedilen son %s tedarikçi +BoxTitleLastCustomers=Kaydedilen son %s müşteri +BoxTitleLastModifiedSuppliers=Değiştirilen son %s tedarikçi +BoxTitleLastModifiedCustomers=Değiştirilen son %s müşteri +BoxTitleLastCustomersOrProspects=Değiştirilen son %s müşteri veya aday +BoxTitleLastPropals=Kaydedilen son %s teklif BoxTitleLastCustomerBills=Son %s müşteri faturası -BoxTitleLastSupplierBills=Son kaydedilen %s tedarikçi faturası -BoxTitleLastProspects=Son kaydedilen %s aday -BoxTitleLastModifiedProspects=Son değiştirilen %s aday -BoxTitleLastProductsInContract=Bir sözleşmedeki son %s ürün/hizmet -BoxTitleLastModifiedMembers=Son değiştirilen %s üye -# BoxTitleLastFicheInter=Last %s modified intervention -BoxTitleOldestUnpaidCustomerBills=En eski ödenmemiş %s müşteri faturası -BoxTitleOldestUnpaidSupplierBills=En eski ödenmemiş %s tedarikçi faturası +BoxTitleLastSupplierBills=Kaydedilen son %s tedarikçi faturası +BoxTitleLastProspects=Kaydedilen son %s aday +BoxTitleLastModifiedProspects=Değiştirilen son %s aday +BoxTitleLastProductsInContract=Bir sözleşmedeki son %s ürün/hizmet +BoxTitleLastModifiedMembers=Değiştirilen son %s üye +BoxTitleLastFicheInter=Değiştirilen son %s müdahale +BoxTitleOldestUnpaidCustomerBills=Ödenmemiş en eski %s müşteri faturası +BoxTitleOldestUnpaidSupplierBills=Ödenmemiş en eski %s tedarikçi faturası BoxTitleCurrentAccounts=Cari hesap bakiyeleri BoxTitleSalesTurnover=Satış cirosu BoxTitleTotalUnpaidCustomerBills=Ödenmemiş müşteri faturaları BoxTitleTotalUnpaidSuppliersBills=Ödenmemiş tedarikçi faturaları -BoxTitleLastModifiedContacts=Son değiştirilen %s kişi/adres +BoxTitleLastModifiedContacts=Değiştirilmiş son %s kişi/adres BoxMyLastBookmarks=En son %s yerimim BoxOldestExpiredServices=Süresi dolmuş en eski etkin hizmetler -BoxLastExpiredServices=Etkinlik hizmet süresi dolmuş enson %s eski kişi +BoxLastExpiredServices=Etkinlik hizmet süresi dolmuş en son %s eski kişi BoxTitleLastActionsToDo=Son yapılan %s eylem BoxTitleLastContracts=Son %s sözleşme -BoxTitleLastModifiedDonations=Son değiştirilen %s bağış -BoxTitleLastModifiedExpenses=Son değiştirilen %s gider +BoxTitleLastModifiedDonations=Değiştirilmiş son %s bağış +BoxTitleLastModifiedExpenses=Değiştirilmiş son %s gider BoxGlobalActivity=Genel etkinlik (faturalar, teklifler, siparişler) FailedToRefreshDataInfoNotUpToDate=RSS akışı yenilemesi yapılamadı. Son başarılı yenileme tarihi: %s LastRefreshDate=Son yenileme tarihi @@ -78,7 +78,7 @@ NoRecordedContracts=Kayıtlı sözleşme yok BoxLatestSupplierOrders=Son tedarikçi siparişleri BoxTitleLatestSupplierOrders=Son %s tedarikçi siparişi NoSupplierOrder=Kayıtlı tedarikçi siparişi yok -# BoxInvoicesPerMonth=Invoices per month -# BoxOrdersPerMonth=Orders per month -# BoxProposalsPerMonth=Proposals per month -# NoTooLowStockProducts=No product under the low stock limit +BoxInvoicesPerMonth=Aylık faturalar +BoxOrdersPerMonth=Aylık siparişler +BoxProposalsPerMonth=Aylık teklifler +NoTooLowStockProducts=Enaz stok seviyesinin altında ürün yok diff --git a/htdocs/langs/tr_TR/cashdesk.lang b/htdocs/langs/tr_TR/cashdesk.lang index 62aeff82bed..5c93e73667d 100644 --- a/htdocs/langs/tr_TR/cashdesk.lang +++ b/htdocs/langs/tr_TR/cashdesk.lang @@ -1,4 +1,4 @@ -# Language file - Source file is en_US - cashdesk +# Dolibarr language file - tr_TR - cashdesk CHARSET=UTF-8 CashDeskMenu=Satış Noktası CashDesk=Satış Noktası @@ -13,20 +13,20 @@ CashDeskProducts=Ürünler CashDeskStock=Stok CashDeskOn=açık CashDeskThirdParty=Üçüncü parti -# CashdeskDashboard=Point of sale access +CashdeskDashboard=Satış erişimi noktası ShoppingCart=Alışveriş sepeti NewSell=Yeni satış BackOffice=Arka ofis -AddThisArticle=Bu maddeyi ekle +AddThisArticle=Bu malı ekle RestartSelling=Satışa geri dön SellFinished=Satış bitti PrintTicket=Fiş yazdır -NoProductFound=Hiç madde bulunamadı +NoProductFound=Hiç mal bulunamadı ProductFound=ürün bulundu ProductsFound=ürünler bulundu -NoArticle=Madde yok +NoArticle=Mal yok Identification=Kimlik saptama -Article=Madde +Article=Mal Difference=Fark TotalTicket=Toplam fiş NoVAT=Bu satış için KDV yok @@ -36,5 +36,5 @@ CashDeskSetupStock=Fatura oluştururken stok eksiltmeniz isteniyor, ancak bunun BankToPay=Açık hesap ShowCompany=Firma göster ShowStock=Depo göster -DeleteArticle=Bu maddeyi kaldırmak için tıkla -# FilterRefOrLabelOrBC=Search (Ref/Label) +DeleteArticle=Bu malı kaldırmak için tıkla +FilterRefOrLabelOrBC=Ara (Ref/Etiket) diff --git a/htdocs/langs/tr_TR/categories.lang b/htdocs/langs/tr_TR/categories.lang index 3751555a10d..1c07fa0e147 100644 --- a/htdocs/langs/tr_TR/categories.lang +++ b/htdocs/langs/tr_TR/categories.lang @@ -33,18 +33,18 @@ ValidateFields=Doğrulama alanları NoSubCat=Alt kategori yok. SubCatOf=Alt kategori FoundCats=Kategoriler bulundu -FoundCatsForName=Bu ad için kategoriler bulundu: +FoundCatsForName=Bu ad için kategori bulundu: FoundSubCatsIn=Kategori içinde alt kategoriler bulundu ErrSameCatSelected=Birkaç kez aynı kategoriyi seçtiniz ErrForgotCat=Kategori seçmeyi unuttunuz ErrForgotField=Alanlara bilgi girmeyi unuttunuz ErrCatAlreadyExists=Bu ad zaten kullanılıyor -AddProductToCat=Bu ürünü bir kategoriye mi ekleyeceksiniz? +AddProductToCat=Bu ürünü bir kategoriye ekle? ImpossibleAddCat=Kategori eklemek olanaksız -ImpossibleAssociateCategory=Kategoriyle ilişkilendirmek olanaksız +ImpossibleAssociateCategory=Bu kategoriye ilişkilendirmek olanaksız WasAddedSuccessfully=%s başarıyla eklendi. ObjectAlreadyLinkedToCategory=Öğe zaten bu kategoriye bağlıdır. -CategorySuccessfullyCreated=Bu kategoriye %s başarı ile eklendi. +CategorySuccessfullyCreated=Bu %s kategorisi başarı ile eklendi. ProductIsInCategories=Ürün/hizmet aşağıdaki kategorilere aittir SupplierIsInCategories=Üçüncü parti aşağıdaki tedarikçi kategorilerine aittir CompanyIsInCustomersCategories=Bu üçüncü parti aşağıdaki müşteri/aday kategorilerine aittir @@ -57,7 +57,7 @@ MemberHasNoCategory=Bu üye herhangi bir kategoride yoktur ClassifyInCategory=Kategoride Sınıflandır NoneCategory=Hiçbiri NotCategorized=Kategorisiz -CategoryExistsAtSameLevel=Bu kategori zaten bu ilgi ile var +CategoryExistsAtSameLevel=Bu kategori zaten bu ref ile var ReturnInProduct=Ürün/hizmet kartına geri dön ReturnInSupplier=Tedarikçi kartına geri dön ReturnInCompany=Müşteri/aday kartına geri dön @@ -99,4 +99,4 @@ CatMemberLinks=Üyeler ve kategoriler arasındaki bağlantılar CatProdLinks=Ürünler/hizmetler ve kategoriler arasındaki bağlantılar CatCusLinks=Müşterler/adaylar ve kategoriler arasındaki bağlantılar CatSupLinks=Tedarikçiler ve kategoriler arasındaki bağlantılar -# DeleteFromCat=Remove from category +DeleteFromCat=Kategoriden kaldır diff --git a/htdocs/langs/tr_TR/commercial.lang b/htdocs/langs/tr_TR/commercial.lang index b722a413285..318c0ceb9d6 100644 --- a/htdocs/langs/tr_TR/commercial.lang +++ b/htdocs/langs/tr_TR/commercial.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - commercial +# Dolibarr language file - tr_TR - commercial CHARSET=UTF-8 Commercial=Ticari CommercialArea=Ticari alan @@ -31,7 +31,7 @@ SalesRepresentativeFollowUp=Satış temsilcisi (takipçi) SalesRepresentativeSignature=Satış temsilcisi (imza yetkilisi) CommercialInterlocutor=Ticari muhatap ErrorWrongCode=Yanlış kod -NoSalesRepresentativeAffected=Etkilenen özel bir satış temsilcisi yok +NoSalesRepresentativeAffected=Görevlendirilen özel bir satış temsilcisi yok ShowCustomer=Müşteri göster ShowProspect=Aday göster ListOfProspects=Aday listesi @@ -60,10 +60,10 @@ LastProspectNeverContacted=Hiç görüşülmedi LastProspectToContact=Görüşülecek LastProspectContactInProcess=Kişi işlemde LastProspectContactDone=Görüşme yapıldı -DateActionPlanned=Planlanan eylem tarihi +DateActionPlanned=Planlanan etkinlik tarihi DateActionDone=Etkinliğin yapıldığı tarih -ActionAskedBy=Etkinliği sunan -ActionAffectedTo=Etkinlikten etkilenen +ActionAskedBy=Etkinliği raporlayan +ActionAffectedTo=Etkinliğe görevlendirilen ActionDoneBy=Etkinliği yapan ActionUserAsk=Raporlayan ErrorStatusCantBeZeroIfStarted=Eğer Yapıldığı tarih alanı doluysa, etkinlik başlamıştır (veya bitmiştir), bu durumda 'Durum' alanı 0%% olamaz. @@ -81,9 +81,9 @@ ActionAC_SHIP=Sevkiyatı postayla gönder ActionAC_SUP_ORD=Tedarikçi siparişini postayla gönder ActionAC_SUP_INV=Tedarikçi faturasını postayla gönder ActionAC_OTH=Diğer -ActionAC_OTH_AUTO=Diğer otomatikman eklenen etkinlikler) +ActionAC_OTH_AUTO=Diğer (otomatikman eklenen etkinlikler) ActionAC_MANUAL=Elle eklenen etkinlikler -ActionAC_AUTO=Otomatikman eklenen etkinlikler +ActionAC_AUTO=Otomatikman araya eklenen etkinlikler Stats=Satış istatistikleri CAOrder=Satış hacmi (doğrulanmış siparişler) FromTo=İlk: %s Son: %s @@ -93,4 +93,5 @@ NoData=Veri yok StatusProsp=Aday durumu DraftPropals=Taslak teklifler SearchPropal=Bir teklif ara -# CommercialDashboard=Commercial summary +CommercialDashboard=Ticari özet + diff --git a/htdocs/langs/tr_TR/companies.lang b/htdocs/langs/tr_TR/companies.lang index 31826b4ca15..84437d41624 100644 --- a/htdocs/langs/tr_TR/companies.lang +++ b/htdocs/langs/tr_TR/companies.lang @@ -1,8 +1,8 @@ -# Dolibarr language file - Source file is en_US - companies +# Dolibarr language file - tr_TR - companies CHARSET=UTF-8 -ErrorCompanyNameAlreadyExists=Firma adı zaten %s var. Başka bir tane seçin. -ErrorPrefixAlreadyExists=Önek %s zaten var. Başka bir tane seçin. -ErrorSetACountryFirst=İlk olarak ülkeyi ayarlamalısınız. +ErrorCompanyNameAlreadyExists=%s firma adı zaten var. Başka bir tane seçin. +ErrorPrefixAlreadyExists= %s öneki zaten var. Başka bir tane seçin. +ErrorSetACountryFirst=İlk olarak ülkeyi ayarlayın. SelectThirdParty=Bir üçüncü parti seç DeleteThirdParty=Bir üçüncü parti sil ConfirmDeleteCompany=Bu firmayı ve ona bağlı tüm bilgileri silmek istediğinizden emin misiniz? @@ -31,16 +31,16 @@ StatusContactValidated=Kişi/adres durumu Company=Firma CompanyName=Firma adı Companies=Firmalar -CountryIsInEEC=Ülke, Avrupa Ekonomik Topluluğu içindedir +CountryIsInEEC=Ülke Avrupa Ekonomik Topluluğu içindedir ThirdPartyName=Üçüncü parti adı ThirdParty=Üçüncü parti ThirdParties=Üçüncü partiler ThirdPartyAll=Üçüncü partiler (hepsi) ThirdPartyProspects=Adaylar -# ThirdPartyProspectsStats=Prospects +ThirdPartyProspectsStats=Adaylar ThirdPartyCustomers=Müşteriler -# ThirdPartyCustomersStats=Customers -ThirdPartyCustomersWithIdProf12=Müşteriler %s veya %s ile +ThirdPartyCustomersStats=Müşteriler +ThirdPartyCustomersWithIdProf12=%s veya %s li müşteriler ThirdPartySuppliers=Tedarikçiler ThirdPartyType=Üçüncü parti türü Company/Fundation=Firma/Kuruluş @@ -68,7 +68,7 @@ CountryCode=Ülke kodu CountryId=Ülke kimliği Phone=Telefonu PhonePro=İş Telefonu -PhonePerso=Kişi. telefonu +PhonePerso=Kişi telefonu PhoneMobile=Mobil No_Email=Toplu e-posta gönderme Fax=Faks @@ -331,15 +331,15 @@ TE_UNKNOWN=- TE_STARTUP=Yeni başlamış TE_GROUP=Büyük firma TE_MEDIUM=Orta firma -TE_ADMIN=Resmi kurum +TE_ADMIN=Kamu kurumu TE_SMALL=Küçük firma TE_RETAIL=Perakendeci TE_WHOLE=Toptancı TE_PRIVATE=Özel şahıs TE_OTHER=Diğer -StatusProspect-1=Görüşülecek +StatusProspect-1=Görüşülmeyecek StatusProspect0=Hiç görüşülmedi -StatusProspect1=Görüşülmeyecek +StatusProspect1=Görüşülecek StatusProspect2=Görüşme sürecinde StatusProspect3=Görüşme yapıldı ChangeDoNotContact=Durumu 'Görüşülmeyecek' olarak değiştir @@ -378,8 +378,8 @@ JuridicalStatus200=Bağımsız DeleteFile=Dosya sil ConfirmDeleteFile=Bu dosyayı silmek istediğinizden emin misiniz? AllocateCommercial=Bir ticari tahsis et -SelectCountry=Bir ülke seçin -SelectCompany=Bir üçüncü parti seçin +SelectCountry=Bir ülke seç +SelectCompany=Bir üçüncü parti seç Organization=Kuruluş AutomaticallyGenerated=Otomatikman oluşturulur FiscalYearInformation=Mali yıla ait bilgi @@ -394,7 +394,7 @@ UniqueThirdParties=Toplam eşsiz üçüncü parti InActivity=Açık ActivityCeased=Kapalı ActivityStateFilter=Etkinlik durumu -# ProductsIntoElements=List of products into +ProductsIntoElements=Katılacak ürün listesi # Monkey MonkeyNumRefModelDesc=Sayı biçimini müşteri için %syymm-nnn, tedarikçi için %syymm-nnn gösterir, yy yıl, mm ay ve nnnn ise 0 olmayan bir dizidir diff --git a/htdocs/langs/tr_TR/compta.lang b/htdocs/langs/tr_TR/compta.lang index 3877e07114d..0fec2d62565 100644 --- a/htdocs/langs/tr_TR/compta.lang +++ b/htdocs/langs/tr_TR/compta.lang @@ -1,8 +1,8 @@ -# Dolibarr language file - Source file is en_US - compta +# Dolibarr language file - tr_TR - compta CHARSET=UTF-8 Accountancy=Muhasebe AccountancyCard=Muhasebe kartı -Treasury=Maliye +Treasury=Varlık MenuFinancial=Finansal TaxModuleSetupToModifyRules=Hesaplama kurallarını değiştirmek için modül kurulumu na git OptionMode=Muhasebe seçeneği @@ -23,7 +23,7 @@ Accountsparent=Ana hesaplar BillsForSuppliers=Tedarikçi faturaları Income=Gelir Outcome=Gider -ReportInOut=Gelir/Gider +ReportInOut=Gelir / Gider ReportTurnover=Ciro PaymentsNotLinkedToInvoice=Herhangi bir faturaya bağlı olmayan ödemeler, herhangi bir üçüncü partiye de bağlı değildir PaymentsNotLinkedToUser=Herhangi bir kullanıcıya bağlı olmayan ödemeler @@ -37,13 +37,13 @@ AmountHTVATRealReceived=Net alınan AmountHTVATRealPaid=Net ödenen VATToPay=KDV satışlar VATReceived=KDV alınan -VATToCollect=KDV satınalımlar +VATToCollect=KDV alışlar VATSummary=KDV bakiyesi LT2SummaryES=IRPF bakiyesi -VATPaid=KDV ödenmiş -LT2PaidES=IRPF ödenmiş +VATPaid=KDV ödenen +LT2PaidES=IRPF ödenen LT2CustomerES=IRPF satışlar -LT2SupplierES=IRPF satınalımlar +LT2SupplierES=IRPF alışlar VATCollected=KDV alınan ToPay=Ödenecek ToGet=Geri alınacak @@ -55,7 +55,7 @@ MenuSocialContributions=Sosyal katkı payı MenuNewSocialContribution=Yeni katkı payı NewSocialContribution=Yeni sosyal katkı payı ContributionsToPay=Ödenecek katkı payları -AccountancyTreasuryArea=Muhasebe/Maliye alanı +AccountancyTreasuryArea=Muhasebeci/Veznedar alanı AccountancySetup=Muhasebe ayarları NewPayment=Yeni ödeme Payments=Ödemeler @@ -144,13 +144,13 @@ DescPurchasesJournal=Satınalma Günlüğü InvoiceRef=Fatura ref. CodeNotDef=Tanımlanmamış AddRemind=Sevkedilebilir miktar -RemainToDivide= Dapıtılmak üzere kalır: +RemainToDivide= Dağıtılmak üzere kalan: WarningDepositsNotIncluded=Teminat faturaları bu muhasebe modülü ile bu sürümde içerilmez. DatePaymentTermCantBeLowerThanObjectDate=Ödeme koşulu tarihi nesnenin tarihinden düşük olamaz. Pcg_version=Pcg sürümü Pcg_type=Pcg türü Pcg_subtype=Pcg alt türü -# InvoiceLinesToDispatch=Invoice lines to dispatch -# InvoiceDispatched=Dispatched invoices -# AccountancyDashboard=Accountancy summary -# ByProductsAndServices=By products and services +InvoiceLinesToDispatch=Dağıtılacal fatura kalemleri +InvoiceDispatched=Dağıtılan faturalar +AccountancyDashboard=Muhasebe özeti +ByProductsAndServices=Ürün ve hizmetlere göre diff --git a/htdocs/langs/tr_TR/contracts.lang b/htdocs/langs/tr_TR/contracts.lang index d212a292d83..86b88fcbb36 100644 --- a/htdocs/langs/tr_TR/contracts.lang +++ b/htdocs/langs/tr_TR/contracts.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - contracts +# Dolibarr language file - tr_TR - contracts CHARSET=UTF-8 ContractsArea=Sözleşmeler alanı ListOfContracts=Sözleşme Listesi @@ -70,7 +70,7 @@ DateEndReal=Gerçek bitiş tarihi DateEndRealShort=Gerçek bitiş tarihi NbOfServices=Hizmet sayısı CloseService=Hizmet kapat -ServicesNomberShort=%s hizmet +ServicesNomberShort=%s hizmeti RunningServices=Yürürlükteki hizmetler BoardRunningServices=Süresi dolmuş yürürlükteki hizmetler ServiceStatus=Hizmet Durumu @@ -86,9 +86,9 @@ PaymentRenewContractId=Sözleşme satırını yenile (sayı %s) ExpiredSince=Süre bitiş tarihi RelatedContracts=İlgili sözleşmeler NoExpiredServices=Süresi dolmamış etkin hizmetler -# ListOfServicesToExpireWithDuration=List of Services to expire in %s days -# ListOfServicesToExpire=List of Services to expire -# Service=Service +ListOfServicesToExpireWithDuration=%s Günde sona erecek hizmetler listesi +ListOfServicesToExpire=Sona erecek hizmetler listesi +Service=Hizmet ##### Types de contacts ##### TypeContact_contrat_internal_SALESREPSIGN=Sözleşme imzalalayacak satış temsilcisi diff --git a/htdocs/langs/tr_TR/dict.lang b/htdocs/langs/tr_TR/dict.lang index 789e50ebc18..6dd401ad56a 100644 --- a/htdocs/langs/tr_TR/dict.lang +++ b/htdocs/langs/tr_TR/dict.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - dict +# Dolibarr language file - tr_TR - dict CHARSET=UTF-8 CountryFR=Fransa CountryBE=Belçika @@ -202,7 +202,7 @@ CountrySC=Seyşeller CountrySL=Sierra Leone CountrySK=Slovakya CountrySI=Slovenya -CountrySB=Solomon Adaları +CountrySB=Salomon Adaları CountrySO=Somali CountryZA=Güney Afrika CountryGS=Güney Georgia ve Güney Sandwich Adaları @@ -222,7 +222,7 @@ CountryTO=Tonga CountryTT=Trinidad ve Tobago CountryTR=Türkiye CountryTM=Türkmenistan -CountryTC=Türkler ve Cailos Adaları +CountryTC=Türk ve Caicos Adaları CountryTV=Tuvalu CountryUG=Uganda CountryUA=Ukrayna @@ -278,8 +278,12 @@ CurrencyMUR=Mauritius rupisi CurrencySingMUR=Mauritius Rupisi CurrencyNOK=Norveç Kronu CurrencySingNOK=Norveç Kronu +CurrencySUR=Ruble +CurrencySingSUR=Ruble CurrencyTND=Tunus dinarı CurrencySingTND=Tunus dinarı +CurrencyTRL=Türk Lirası +CurrencySingTRL=Türk Lirası CurrencyUSD=ABD Doları CurrencySingUSD=ABD Doları CurrencyUAH=Hryvnia @@ -294,10 +298,10 @@ CurrencySingXPF=CFP Frangı CurrencyCentSingEUR=cent CurrencyThousandthSingTND=thousandth -#### Input reasons ##### +#### Giriş nedenleri ##### DemandReasonTypeSRC_INTE=Internet DemandReasonTypeSRC_CAMP_MAIL=Posta kampanyası -DemandReasonTypeSRC_CAMP_EMAIL=E-posta kampanyası +DemandReasonTypeSRC_CAMP_EMAIL=Eposta kampanyası DemandReasonTypeSRC_CAMP_PHO=Telefon kampanyası DemandReasonTypeSRC_CAMP_FAX=Faks kampanyası DemandReasonTypeSRC_COMM=Ticari görüşme @@ -307,7 +311,7 @@ DemandReasonTypeSRC_PARTNER=İş Ortağı DemandReasonTypeSRC_EMPLOYEE=Çalışan DemandReasonTypeSRC_SPONSORING=Destekçi -#### Paper formats #### +#### Kağıt biçimleri #### PaperFormatEU4A0=Biçim 4A0 PaperFormatEU2A0=Biçim 2A0 PaperFormatEUA0=Biçim A0 diff --git a/htdocs/langs/tr_TR/mailmanspip.lang b/htdocs/langs/tr_TR/mailmanspip.lang index 5a8413c11d6..f8832d23b16 100644 --- a/htdocs/langs/tr_TR/mailmanspip.lang +++ b/htdocs/langs/tr_TR/mailmanspip.lang @@ -23,4 +23,6 @@ AddIntoSpipError=Kullanıcı SPIP e eklenemedi DeleteIntoSpip=SPIP ten kaldır DeleteIntoSpipConfirmation=Bu üyeyi SPIP ten kaldırmak istediğinizden emin misiniz? DeleteIntoSpipError=Kullanıcı SPIP ten menedilemedi -SPIPConnectionFailed=SPIP e bağlanılamadı \ No newline at end of file +SPIPConnectionFailed=SPIP e bağlanılamadı +SuccessToAddToMailmanList=Add of %s to mailman list %s or SPIP database done +SuccessToRemoveToMailmanList=Removal of %s from mailman list %s or SPIP database done diff --git a/htdocs/langs/tr_TR/mails.lang b/htdocs/langs/tr_TR/mails.lang index 4244a93da6a..65a88a7f1e4 100644 --- a/htdocs/langs/tr_TR/mails.lang +++ b/htdocs/langs/tr_TR/mails.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - mails +# Dolibarr language file - tr_TR - mails CHARSET=UTF-8 Mailing=Eposta EMailing=Eposta diff --git a/htdocs/langs/tr_TR/main.lang b/htdocs/langs/tr_TR/main.lang index 6aa72b9efd3..de2e6d3c1b0 100644 --- a/htdocs/langs/tr_TR/main.lang +++ b/htdocs/langs/tr_TR/main.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - main +# Dolibarr language file - tr_TR - main CHARSET=UTF-8 DIRECTION=ltr # Note for chinese: @@ -20,7 +20,7 @@ FormatHourShortDuration=%H:%M FormatDateTextShort=%d %b %Y FormatDateText=%d %B %Y FormatDateHourShort=%d/%m/%Y %H:%M -# FormatDateHourSecShort=%m/%d/%Y %I:%M:%S %p +FormatDateHourSecShort=%d/%m/%Y %H:%M:%S %p FormatDateHourTextShort=%d %b %Y %H:%M FormatDateHourText=%d %B %Y %H:%M DatabaseConnection=Veritabanı bağlantısı @@ -146,7 +146,7 @@ ConfirmClone=Klonlamak istediğiniz verileri seçin: NoCloneOptionsSpecified=Klonlanacak hiçbir veri tanımlanmamış. Of=ile ilgili Go=Git -# Run=Run +Run=Çalıştır CopyOf=Kopyası Show=Göster ShowCardHere=Kart göster @@ -333,7 +333,7 @@ FullList=Tüm liste Statistics=İstatistikler OtherStatistics=Diğer istatistikler Status=Durum -# ShortInfo=Info. +ShortInfo=Bilgi. Ref=Ref. RefSupplier=Ref. tedarikçi RefPayment=Ref. ödeme @@ -483,8 +483,8 @@ Report=Rapor Keyword=Anahtar kelime Legend=Gösterge FillTownFromZip=İli Posta Kodundan (zip) al -# Fill=Fill -# Reset=Reset +Fill=Doldur +Reset=Sıfırla ShowLog=Günlüğü göster File=Dosya Files=Dosyalar @@ -584,7 +584,7 @@ ThisLimitIsDefinedInSetup=Dolibarr sınırı (Giriş->Kurulum->Güvenlik menüs NoFileFound=Hiçbir belge bu dizine kaydedilmedi CurrentUserLanguage=Geçerli dil CurrentTheme=Geçerli tema -# CurrentMenuManager=Current menu manager +CurrentMenuManager=Geçerli menü yöneticisi DisabledModules=Engelli modüller For=İçin ForCustomer=Müşteriler için @@ -650,11 +650,11 @@ DeleteAFile=Bir dosya sil ConfirmDeleteAFile=Dosya silmek istediğinizden emin misiniz NoResults=Sonuç yok ModulesSystemTools=Modul araçları -# Test=Test -# Element=Element -# NoPhotoYet=No pictures available yet -# HomeDashboard=Home summary -# Deductible=Deductible +Test=Test +Element=Öğe +NoPhotoYet=Henüz hiç resim yok +HomeDashboard=Giriş özeti +Deductible=Düşülebilir # from=from # toward=toward diff --git a/htdocs/langs/tr_TR/margins.lang b/htdocs/langs/tr_TR/margins.lang index b202115c19c..4cb4d9975d1 100644 --- a/htdocs/langs/tr_TR/margins.lang +++ b/htdocs/langs/tr_TR/margins.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - marges +# Dolibarr language file - tr_TR - margings CHARSET=UTF-8 Margin=Oran diff --git a/htdocs/langs/tr_TR/members.lang b/htdocs/langs/tr_TR/members.lang index 3cff30b8bba..89f26750546 100644 --- a/htdocs/langs/tr_TR/members.lang +++ b/htdocs/langs/tr_TR/members.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - members +# Dolibarr language file - tr_TR - members CHARSET=UTF-8 MembersArea=Üye alanı PublicMembersArea=Genel üye alanı @@ -111,12 +111,12 @@ FollowingLinksArePublic=Aşağıdaki bağlantılar açık sayfalar olup herhangi PublicMemberList=Genel üye listesi BlankSubscriptionForm=Genel oto-abonelik formu # BlankSubscriptionFormDesc=Dolibarr can provide you a public URL to allow external visitors to ask to subscribe to the foundation. If an online payment module is enabled, a payment form will also be automatically provided. -# EnablePublicSubscriptionForm=Enable the public auto-subscription form +EnablePublicSubscriptionForm=Genel oto abonelik formunu etkinleştir MemberPublicLinks=Genel bağlantılar/sayfalar ExportDataset_member_1=Üyeler ve abonelikleri -# ImportDataset_member_1=Members +ImportDataset_member_1=Üyeler LastMembers=Son % s üye -# LastMembersModified=Last %s modified members +LastMembersModified=Değiştirilen son %s üye LastSubscriptionsModified=Sondeğiştirilen %s abonelik AttributeName=Öznitelik adı FieldEdition=%s Alanının düzenlenmesi @@ -157,7 +157,7 @@ NoThirdPartyAssociatedToMember=Bu üye ile ilintili üçüncü parti yok ThirdPartyDolibarr=Dolibarr üçüncü partisi MembersAndSubscriptions= Üyeler ve abonelikler MoreActions=Kayıt üzerinde tamamlayıcı işlem -# MoreActionsOnSubscription=Complementary action, suggested by default when recording a subscription +MoreActionsOnSubscription=Tamamlayıcı eylem, bir abonelik kaydı yaparken varsayılan olarak önerilir MoreActionBankDirect=Hesap üzerinde doğrudan bir işlem kaydı oluşturun MoreActionBankViaInvoice=Hesaba bir fatura ve ödeme oluştur MoreActionInvoiceOnly=Ödeme yapılmamış bir fatura oluştur @@ -169,7 +169,7 @@ DocForLabels=Adres çizelgeleri oluştur (Çıkış formatı için gerçek ayar SubscriptionPayment=Abonelik ödemesi LastSubscriptionDate=Son abonelik tarihi LastSubscriptionAmount=Son abonelik tutarı -# MembersStatisticsByCountries=Members statistics by country +MembersStatisticsByCountries=Ülkeye göre üye istatistikleri MembersStatisticsByState=Eyalete/ile göre üyelik istatistikleri MembersStatisticsByTown=İlçelere göre üyelik istatistikleri NbOfMembers=Üye sayısı @@ -196,10 +196,10 @@ Associations=Dernekler Collectivités=Kurumlar Particuliers=Kişisel Entreprises=Firmalar -# DOLIBARRFOUNDATION_PAYMENT_FORM=To make your subscription payment using a bank transfer, see page http://wiki.dolibarr.org/index.php/Subscribe.
To pay using a Credit Card or Paypal, click on button at bottom of this page.
+DOLIBARRFOUNDATION_PAYMENT_FORM=Banka havalesi ile abonelik ödemesi yapmak için bu sayfaya bakın http://wiki.dolibarr.org/index.php/Subscribe.
Kredi Kartı ya da PayPal ile ödemek için bu sayfanın altındaki düğmeye tıklayın.
ByProperties=Özelliklere göre MembersStatisticsByProperties=Özelliklere göre üye istatistikleri MembersByNature=Doğal üyeler -# VATToUseForSubscriptions=VAT rate to use for subscriptions -# NoVatOnSubscription=No TVA for subscriptions -# MEMBER_PAYONLINE_SENDEMAIL=Email to warn when Dolibarr receive a confirmation of a validated payment for subscription +VATToUseForSubscriptions=Abonelikler için KDV oranı +NoVatOnSubscription=KDV olmayan abonelikler +MEMBER_PAYONLINE_SENDEMAIL=Dolibarr abonelik için doğrulanmış bir ödeme onayı aldığındaki eposta uyarısı diff --git a/htdocs/langs/tr_TR/orders.lang b/htdocs/langs/tr_TR/orders.lang index 60087614dea..130d10679c3 100644 --- a/htdocs/langs/tr_TR/orders.lang +++ b/htdocs/langs/tr_TR/orders.lang @@ -1,9 +1,9 @@ -# Dolibarr language file - Source file is en_US - orders +# Dolibarr language file - tr_TR - orders CHARSET=UTF-8 OrdersArea=Müşteri siparişleri alanı SuppliersOrdersArea=Tedarikçi siparişleri alanı OrderCard=Sipariş kartı -# OrderId=Order Id +OrderId=Sipariş No Order=Sipariş Orders=Siparişler OrderLine=Sipariş kalemi @@ -115,7 +115,7 @@ PaymentOrderRef=Sipariş %s ödemesi CloneOrder=Siparişi klonla ConfirmCloneOrder=Bu %s siparişi klonlamak istediğinizden emin misiniz? DispatchSupplierOrder=%s tedarikçi siparişini al -##### Types de contacts ##### +##### Kişi türleri ##### TypeContact_commande_internal_SALESREPFOLL=Müşteri siparişi izleme temsilcisi TypeContact_commande_internal_SHIPPING=Sevkiyat izleme temsilcisi TypeContact_commande_external_BILLING=Müşteri fatura yetkilisi @@ -134,7 +134,7 @@ Error_FailedToLoad_COMMANDE_ADDON_File=Modül dosyası %s yüklenemedi Error_OrderNotChecked=Faturalanacak seçilmiş sipariş yok -# Sources +# Kaynaklar OrderSource0=Teklif OrderSource1=Internet OrderSource2=Posta kampanyası @@ -145,10 +145,10 @@ OrderSource6=Mağaza QtyOrdered=Sipariş miktarı AddDeliveryCostLine=Siparişin ağırlığını belirten bir teslimat satırı ekleyin -# Documents models +# Belge modelleri PDFEinsteinDescription=Bir tam sipariş modeli (logo. ..) PDFEdisonDescription=Basit bir sipariş modeli -# Orders modes +# Sipariş verme şekli OrderByMail=Posta OrderByFax=Faks OrderByEMail=Eposta diff --git a/htdocs/langs/tr_TR/other.lang b/htdocs/langs/tr_TR/other.lang index 3b4c4d718ba..8176f604197 100644 --- a/htdocs/langs/tr_TR/other.lang +++ b/htdocs/langs/tr_TR/other.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - other +# Dolibarr language file - tr_TR - other CHARSET=UTF-8 SecurityCode=Güvenlik kodu Calendar=Takvim @@ -11,9 +11,9 @@ DateToBirth=Doğum Tarihi BirthdayAlertOn= doğum günü uyarısı etkin BirthdayAlertOff= doğumgünü uyarısı etkin değil Notify_FICHINTER_VALIDATE=Müdahale doğrulandı -# Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail +Notify_FICHINTER_SENTBYMAIL=Müdahale posta ile gönderildi Notify_BILL_VALIDATE=Müşteri faturası onaylandı -# Notify_BILL_UNVALIDATE=Customer invoice unvalidated +Notify_BILL_UNVALIDATE=Müşteri faturasından doğrulama kaldırıldı Notify_ORDER_SUPPLIER_APPROVE=Tedarikçi siparişi onaylandı Notify_ORDER_SUPPLIER_REFUSE=Tedarikçi siparişi reddedildi Notify_ORDER_VALIDATE=Müşteri siparişi onaylandı @@ -50,8 +50,8 @@ Miscellaneous=Çeşitli NbOfActiveNotifications=Number of notifications PredefinedMailTest=Bu bir deneme postasıdır.\nİki satır enter tuşu ile ayrılmıştır. PredefinedMailTestHtml=Bu bir deneme postası (deneme sözcüğü koyu olmalı).
İki satır enter tuşu ile ayrılmıştır. -PredefinedMailContentSendInvoice=Burada faturayı bulacaksınız __FACREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Fatura __FACREF__ nın ödenmemiş göründüğünün size uyarısını yapmak isteriz. Dolayısı ile fatura yeniden anımsatmak üzere eklenmiştir.\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=Faturayı burada bulacaksınız __FACREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n __FACREF__ Faturasının ödenmemiş göründüğünün size uyarısını yapmak isteriz. Dolayısı ile fatura yeniden anımsatmak üzere eklenmiştir.\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ PredefinedMailContentSendProposal=Teklifi burada bulacaksınız __PROPREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ PredefinedMailContentSendOrder=Burada siparişi bulacaksınız __ORDERREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ PredefinedMailContentSendSupplierOrder=Burada siparişimizi bulacaksınız __ORDERREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ diff --git a/htdocs/langs/tr_TR/paybox.lang b/htdocs/langs/tr_TR/paybox.lang index d0605f43747..66d789d297f 100644 --- a/htdocs/langs/tr_TR/paybox.lang +++ b/htdocs/langs/tr_TR/paybox.lang @@ -1,11 +1,4 @@ -/* - * Language code: tr_TR - * Manually generated - * Generation date 2012-07-23 23:43:26 - */ - -// START - Lines generated manually (2012-07-23 23:43:26). -// Reference language: en_US->tr_TR - paybox +# Dolibarr language file - tr_TR - paybox CHARSET=UTF-8 PayBoxSetup=PayBox modülü kurulumu PayBoxDesc=Bu modül Paybox üzerinden müşteriler tarafından ödeme yapılmasını sağlar. Bu bir ücretsiz ödeme veya belirli bir Dolibarr nesnesine (fatura, siparş,…) bir ödeme yapmak için kullanılabilir diff --git a/htdocs/langs/tr_TR/paypal.lang b/htdocs/langs/tr_TR/paypal.lang index cf451f2110d..76c43dcf95f 100644 --- a/htdocs/langs/tr_TR/paypal.lang +++ b/htdocs/langs/tr_TR/paypal.lang @@ -1,11 +1,4 @@ -/* - * Language code: tr_TR - * Manually generated - * Generation date 2012-07-23 23:40:49 - */ - -// START - Lines generated manually (2012-07-23 23:40:49). -// Reference language: en_US -> tr_TR - paypal +# Dolibarr language file - tr_TR - paypal CHARSET=UTF-8 PaypalSetup=PayPal modülü kurulumu PaypalDesc=Bu modül PayPal üzerinden müşteriler tarafından ödeme yapılmasını sağlar. Bu bir ücretsiz ödeme veya belirli bir Dolibarr nesnesine (fatura, siparş,…) bir ödeme yapmak için kullanılabilir @@ -19,7 +12,9 @@ PAYPAL_API_SIGNATURE=API imzası PAYPAL_API_INTEGRAL_OR_PAYPALONLY="Dahili" (kredi kartı+paypal) ya da sadece "Paypal" ödemesi sunar PAYPAL_CSS_URL=Ödeme sayfasında CSS stili çizelgesinin isteğe bağlı URL si URL ThisIsTransactionId=Bu işlem kimliğidir: %s +PAYPAL_CSS_URL=Ödeme sayfasında CSS sayfa stili URL seçeneği +ThisIsTransactionId=Bu işlem kimliğidir: %s PAYPAL_ADD_PAYMENT_URL=Posta yoluyla bir belge gönderdiğinizde, Paypal ödeme url'sini ekleyin PAYPAL_IPN_MAIL_ADDRESS=Anında ödeme bildirimi için e-posta adresi (NPI) PredefinedMailContentLink=Ödemenizi via PayPal\n\n%s\n\n ile yapmak için aşağıdaki güvenli bağlantıya tıklayabilirsiniz -YouAreCurrentlyInSandboxMode="Sandbox" geçerli biçimindesiniz +YouAreCurrentlyInSandboxMode=Şu anda "Sandbox" modundasınız diff --git a/htdocs/langs/tr_TR/products.lang b/htdocs/langs/tr_TR/products.lang index 5ef11f989b1..7587acc6d68 100644 --- a/htdocs/langs/tr_TR/products.lang +++ b/htdocs/langs/tr_TR/products.lang @@ -1,13 +1,13 @@ -# Dolibarr language file - Source file is en_US - products +# Dolibarr language file - tr_TR - products CHARSET=UTF-8 ProductRef=Ürün ref. ProductLabel=Ürün etiketi -ProductServiceCard=Ürünler/Hizmetler kartı +ProductServiceCard=Ürün/Hizmet kartı Products=Ürünler Services=Hizmetler Product=Ürün Service=Hizmet -ProductId=Ürün/Hizmet no +ProductId=Ürün/hizmet no Create=Oluştur Reference=Referans NewProduct=Yeni ürün @@ -45,8 +45,8 @@ Stock=Stok Stocks=Stoklar Movement=Hareket Movements=Hareketler -Sell=Satış -Buy=Alış +Sell=Satışlar +Buy=Alışlar OnSell=Satılır OnBuy=Alınır NotOnSell=Satılmaz @@ -78,6 +78,7 @@ ContractNotRunning=Bu sözleşme çalışmıyor ErrorProductAlreadyExists=%s Referanslı bir ürün zaten var var. ErrorProductBadRefOrLabel=Referans veya etiket için yanlış değer. Suppliers=Tedarikçiler +Suppliers=Tedarikçiler SupplierRef=Tedarikçi ürün ref. ShowProduct=Ürün Göster ShowService=Hizmet göster @@ -112,9 +113,9 @@ AssociatedProductsAbility=Yan ürünleri etkinleştir AssociatedProducts=Yan ürünler AssociatedProductsNumber=Bu ürünü oluşturan ürün sayısı ParentProductsNumber=Ana ürün numarası -# IfZeroItIsNotAVirtualProduct=If 0, this product is not a virtual product -# IfZeroItIsNotUsedByVirtualProduct=If 0, this product is not used by any virtual product -EditAssociate=Ilişkilendir +IfZeroItIsNotAVirtualProduct=Eğer 0 sa, bu ürün sanal bir ürün değildir +IfZeroItIsNotUsedByVirtualProduct=Eğer 0 sa, bu ürün hiçbir sanal ürün tarafından kullanılmamıştır +EditAssociate=İlişkilendir Translation=Çeviri KeywordFilter=Anahtar kelime süzgeçi CategoryFilter=Kategori süzgeçi @@ -134,7 +135,7 @@ ExportDataset_produit_1=Ürünler ExportDataset_service_1=Hizmetler ImportDataset_produit_1=Ürünler ImportDataset_service_1=Hizmetler -DeleteProductLine=Ürün hattı Sil +DeleteProductLine=Ürün kalemi Sil ConfirmDeleteProductLine=Bu ürün hatını silmek istediğinizden emin misiniz? NoProductMatching=Kriterinize uyan erhangi bir ürün/hizmet yok MatchingProducts=Eşleşen ürünler/hizmetler @@ -155,8 +156,8 @@ RecordedProductsAndServices=Ürünler/hizmetler kaydedildi GenerateThumb=Kararlama (thumb) oluştur ProductCanvasAbility=Özel “kanvas” eklentileri kullan ServiceNb=Hizmet sayısı #%s -ListProductServiceByPopularity=Popülerliğe göre ürün / hizmet listesi -ListProductByPopularity=Tutularlığına göre ürünler/hizmetler Listesi +ListProductServiceByPopularity=Tutulurluğuna göre ürün / hizmet listesi +ListProductByPopularity=Tutulurluğuna göre ürünler istesi ListServiceByPopularity=Tutulan hizmetler listesi Finished=Üretilen ürünler RowMaterial=İlk malzeme @@ -164,6 +165,7 @@ CloneProduct=Ürün veya hizmet klonla ConfirmCloneProduct=Ürün veya hizmet klonlamak istediğinizden emin misiniz %s ? CloneContentProduct=Ürünün/hizmet bütün temel bilgilerini klonla ClonePricesProduct=Ana bilgileri ve fiyatları klonla +CloneCompositionProduct=Ürün/hizmet bileşimini klonla ProductIsUsed=Bu ürün kullanılır. NewRefForClone=Yeni ürün/hizmet ref. CustomerPrices=Müşteri Fiyatları @@ -183,16 +185,16 @@ AlwaysUseNewPrice=Ürün/hizmet için her zaman geçerli fiyatı kullan AlwaysUseFixedPrice=Sabit fiyatı kullan PriceByQuantity=Miktara göre fiyat PriceByQuantityRange=Miktar aralığı -# ProductsDashboard=Products/Services summary -# UpdateOriginalProductLabel=Modify original label -# HelpUpdateOriginalProductLabel=Allows to edit the name of the product -### composition fabrication -# Building=Production and items dispatchment -# Build=Produce -# BuildIt=Produce & Dispatch -# BuildindListInfo=Available quantity for production per warehouse (set it to 0 for no further action) -# QtyNeed=Qty -# UnitPmp=Net unit VWAP -# CostPmpHT=Net total VWAP -# ProductUsedForBuild=Auto consumed by production -# ProductBuilded=Production completed +ProductsDashboard=Ürün/Hizmet özeti +UpdateOriginalProductLabel=Orijinal etiketi değiştir +HelpUpdateOriginalProductLabel=Ürünün adını değiştirmeyi sağlar +### bileşim üretimi +Building=Üretim ve mal dağıtımı +Build=Üret +BuildIt=Üret & Dağıt +BuildindListInfo=Depo başına üretim için mevcut miktar (başka işlem olmaması için 0 a ayarlayın) +QtyNeed=Mik +UnitPmp=VWAP net birimi +CostPmpHT=VWAP net toplamı +ProductUsedForBuild=Üretimde otomatik tüketilen +ProductBuilded=Tamamlanan üretim diff --git a/htdocs/langs/tr_TR/projects.lang b/htdocs/langs/tr_TR/projects.lang index 2ee1c9689c4..8353c7f370b 100644 --- a/htdocs/langs/tr_TR/projects.lang +++ b/htdocs/langs/tr_TR/projects.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - projects +# Dolibarr language file - tr_TR - projects CHARSET=UTF-8 Project=Proje Projects=Projeler @@ -11,7 +11,7 @@ MyTasksDesc=Bu görünüm ilgilisi olduğunuz projelerle ya da görevlerle sın TasksPublicDesc=Bu görünüm okuma izininiz olan tüm projeleri ve görevleri içerir. TasksDesc=Bu görünüm tüm projeleri ve görevleri içerir (size verilen kullanıcı izinleri her şeyi görmenizi sağlar). Myprojects=Projelerim -ProjectsArea=Projeler alanı +ProjectsArea=Proje alanı NewProject=Yeni proje AddProject=Proje ekle DeleteAProject=Bir proje sil @@ -33,7 +33,7 @@ RefTask=Görev ref. LabelTask=Görev etiketi NewTimeSpent=Yeni harcanan süre MyTimeSpent=Harcadığım sürelerim -MyTasks=Grevlerim +MyTasks=Görevlerim Tasks=Görevler Task=Görev NewTask=Yeni görev @@ -94,7 +94,7 @@ ConfirmCloneProject=Bu projeyi klonlamak istediğinizden emin misiniz? ProjectReportDate=Görevi proje başlama tarihine göre değiştir ErrorShiftTaskDate=Görev tarihini yeni proje başlama tarihine göre kaydırmak olası değil ProjectsAndTasksLines=Projeler ve görevler -##### Types de contacts ##### +##### Tkişi türleri ##### TypeContact_project_internal_PROJECTLEADER=Proje önderi TypeContact_project_external_PROJECTLEADER=Proje önderi TypeContact_project_internal_CONTRIBUTOR=Katılımcı @@ -103,7 +103,7 @@ TypeContact_project_task_internal_TASKEXECUTIVE=Görev yöneticisi TypeContact_project_task_external_TASKEXECUTIVE=Görev yöneticisi TypeContact_project_task_internal_CONTRIBUTOR=Katılımcı TypeContact_project_task_external_CONTRIBUTOR=Katılımcı -# Documents models +# Belge modelleri DocumentModelBaleine=Eksiksiz bir proje rapor modeli (logo. ..) -# PlannedWorkload = Planned workload -# WorkloadOccupation= Workload affectation +PlannedWorkload =Planlanan işyükü +WorkloadOccupation=İşyükü etkilemesi diff --git a/htdocs/langs/tr_TR/propal.lang b/htdocs/langs/tr_TR/propal.lang index bb7decb85a5..876bf580b79 100644 --- a/htdocs/langs/tr_TR/propal.lang +++ b/htdocs/langs/tr_TR/propal.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - propal +# Dolibarr language file - tr_TR - propal CHARSET=UTF-8 Proposals=Teklifler Proposal=Teklif @@ -15,8 +15,8 @@ NewProposal=Yeni teklif NewPropal=Yeni teklif Prospect=Aday ProspectList=Aday listesi -DeleteProp=Ticari teklif sil -ValidateProp=Ticari teklif doğrula +DeleteProp=Teklif sil +ValidateProp=Teklif doğrula AddProp=Teklif ekle ConfirmDeleteProp=Bu teklifi silmek istediğinizden emin misiniz? ConfirmValidateProp=Bu teklifi doğrulamak istediğinizden emin misiniz? @@ -38,7 +38,7 @@ PropalStatusDraft=Taslak (doğrulama gerektiriyor) PropalStatusValidated=Onaylı (teklif açık) PropalStatusOpened=Onaylı (teklif açık) PropalStatusClosed=Kapalı -PropalStatusSigned=İmzalanmış(faturalanması gerekiyor) +PropalStatusSigned=İmzalanmış (faturalanması gerekiyor) PropalStatusNotSigned=İmzalanmamış (kapalı) PropalStatusBilled=Faturalanmış PropalStatusDraftShort=Taslak @@ -49,8 +49,8 @@ PropalStatusSignedShort=İmzalı PropalStatusNotSignedShort=İmzalanmamış PropalStatusBilledShort=Faturalanmış PropalsToClose=Kapatılacak teklifler -PropalsToBill=Faturalandırılacak imzalı teklifler -ListOfProposals=Ticari teklif listesi +PropalsToBill=Faturalanalacak imzalı teklifler +ListOfProposals=Teklif listesi ActionsOnPropal=Tekliler için yapılan eylemler NoOpenedPropals=Açık teklif yok NoOtherOpenedPropals=Başka hiçbir açık teklif yok @@ -75,7 +75,7 @@ CopyPropalFrom=Varolan teklifi kopyalayarak teklif oluştur CreateEmptyPropal=Boş teklif oluştur veya ürünler/hizmetler listesinden oluştur DefaultProposalDurationValidity=Varsayılan teklif geçerlilik süresi (gün olarak) UseCustomerContactAsPropalRecipientIfExist=Teklif alıcısı olarak üçüncü parti yerine, eğer tanımlanmışsa, kişi adresini kullan -ClonePropal=Teklif kopyala +ClonePropal=Teklif klonla ConfirmClonePropal=Bu teklifi %s klonlamak istediğinizden emin misiniz? ConfirmReOpenProp=Bu teklifi %s yeniden açmak istediğinizden emin misiniz? ProposalsAndProposalsLines=Teklif ve satırları @@ -83,19 +83,19 @@ ProposalLine=Teklif satırı AvailabilityPeriod=Kabul edilebilir süre SetAvailability=Kabul edilebilir süreyi ayarla AfterOrder=siparişten sonra -##### Availability ##### +##### Uygunluk ##### AvailabilityTypeAV_NOW=İvedi AvailabilityTypeAV_1W=1 hafta AvailabilityTypeAV_2W=2 hafta AvailabilityTypeAV_3W=3 hafta AvailabilityTypeAV_1M=1 ay -##### Types de contacts ##### +##### Kişi türleri ##### TypeContact_propal_internal_SALESREPFOLL=Teklif izleme temsilcisi TypeContact_propal_external_BILLING=Müşteri faturası ilgilisi TypeContact_propal_external_CUSTOMER=Müşteri teklif izleme ilgilisi -# Document models +# Belge modelleri DocModelAzurDescription=Eksiksiz bir teklif modeli (logo. ..) DocModelJauneDescription=Jaune teklif modeli -# DefaultModelPropalCreate=Default model creation -# DefaultModelPropalToBill=Default template when closing a business proposal (to be invoiced) -# DefaultModelPropalClosed=Default template when closing a business proposal (unbilled) +DefaultModelPropalCreate=Varsayılan model oluşturma +DefaultModelPropalToBill=Bir teklif kapatılırkenki varsayılan şablon (faturalanmak üzere) +DefaultModelPropalClosed=Bir teklif kapatılırkenki varsayılan şablon (faturalanmamış) diff --git a/htdocs/langs/tr_TR/sendings.lang b/htdocs/langs/tr_TR/sendings.lang index ce718b1a29f..654db8beae4 100644 --- a/htdocs/langs/tr_TR/sendings.lang +++ b/htdocs/langs/tr_TR/sendings.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - sendings +# Dolibarr language file - tr_TR - sendings CHARSET=UTF-8 RefSending=Sevkiyat ref. Sending=Sevkiyat @@ -59,14 +59,14 @@ LinkToTrackYourPackage=Paketinizi izleyeceğiniz bağlantı ShipmentCreationIsDoneFromOrder=Şu an için, yeni bir sevkiyat yaratılması amacıyla kart oluşturulur. RelatedShippings=İlgili sevkiyatlar ShipmentLine=Sevkiyat kalemi -# CarrierList=List of transporters +CarrierList=Taşımacı listesi -# Sending methods +# Gönderme yöntemleri SendingMethodCATCH=Müşteri tarafından SendingMethodTRANS=Nakliyeci tarafından SendingMethodCOLSUI=Colissimo -# ModelDocument +# Belge modeli DocumentModelSirocco=Teslimat makbuzları için basit belge modeli DocumentModelTyphon=Teslimat makbuzları için daha fazla eksiksiz doküman modeli (logo. ..) diff --git a/htdocs/langs/tr_TR/sms.lang b/htdocs/langs/tr_TR/sms.lang index 8086ca6a098..d79797a352c 100644 --- a/htdocs/langs/tr_TR/sms.lang +++ b/htdocs/langs/tr_TR/sms.lang @@ -1,7 +1,7 @@ -# Dolibarr language file - Source file is en_US - sms +# Dolibarr language file - tr_TR - sms CHARSET=UTF-8 Sms=Sms -SmsSetup=Sms kurulums +SmsSetup=Sms ayarları SmsDesc=Bu sayfa, SMS özelliklerinin genel seçeneklerini tanımlamanıza olanak tanır SmsCard=SMS Kartı AllSms=Tüm SMS kampanyaları @@ -51,4 +51,3 @@ SmsInfoCharRemain=Kalan karakter sayısı SmsInfoNumero= (Uluslar arası biçim örneği: +33899701761) DelayBeforeSending=Gönderimden önceki süre (Dakika) SmsNoPossibleRecipientFound=Hedef yok. SMS sağlayıcı kurulumu kontrol edin. - diff --git a/htdocs/langs/tr_TR/stocks.lang b/htdocs/langs/tr_TR/stocks.lang index 6df4cd15e98..72e21859349 100644 --- a/htdocs/langs/tr_TR/stocks.lang +++ b/htdocs/langs/tr_TR/stocks.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - stocks +Dolibarr language file - tr_TR - stocks CHARSET=UTF-8 WarehouseCard=Depo kartı Warehouse=Depo @@ -9,7 +9,7 @@ MenuNewWarehouse=Yeni depo WarehouseOpened=Depo açık WarehouseClosed=Depo kapalı WarehouseSource=Kaynak depo -# WarehouseSourceNotDefined=No warehouse defined, +WarehouseSourceNotDefined=Tanımlı depo yok AddOne=Bir tane ekle WarehouseTarget=Hedef depo ValidateSending=Gönderim sil @@ -55,7 +55,7 @@ DeStockOnShipment=Sevkiyat doğrulaması üzerine gerçek stokları azalt ReStockOnBill=Müşteri faturalarının/alacak dekontlarının doğrulanması üzerine gerçek stokları arttır ReStockOnValidateOrder=Tedarikçi siparişlerinin onanması üzerine gerçek stokları arttır ReStockOnDispatchOrder=Tedarikçi siparişi aldıktan sonra, elle yapılan sevk üzerine gerçek stokları artırın -# ReStockOnDeleteInvoice=Increase real stocks on invoice deletion +ReStockOnDeleteInvoice=Fatura silindiğinde gerçek stokları arttır OrderStatusNotReadyToDispatch=Sipariş henüz yoksa veya stok deposundan gönderime izin veren bir durum varsa. StockDiffPhysicTeoric=Fiziksel ve teorik stok arasındaki stok farkı NoPredefinedProductToDispatch=Bu nesne için önceden tanımlanmış ürünlenyok. Yani stoktan sevk gerekli değildir. @@ -87,5 +87,5 @@ PersonalStock=Kişisel stok %s ThisWarehouseIsPersonalStock=Bu depo %s %s kişisel stoğu temsil eder SelectWarehouseForStockDecrease=Stok azaltılması için kullanmak üzere depo seçin SelectWarehouseForStockIncrease=Stok artışı için kullanılacak depo seçin -# NoStockAction=No stock action +NoStockAction=Stok işlemi yok LastWaitingSupplierOrders=Kabul için bekleyen siparişler diff --git a/htdocs/langs/tr_TR/suppliers.lang b/htdocs/langs/tr_TR/suppliers.lang index 729d0c1d728..9321cb363d2 100644 --- a/htdocs/langs/tr_TR/suppliers.lang +++ b/htdocs/langs/tr_TR/suppliers.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - suppliers +# Dolibarr language file - tr_TR - suppliers CHARSET=UTF-8 Suppliers=Tedarikçiler Supplier=Tedarikçi diff --git a/htdocs/langs/tr_TR/users.lang b/htdocs/langs/tr_TR/users.lang index 2a60978df85..307b891d7fc 100644 --- a/htdocs/langs/tr_TR/users.lang +++ b/htdocs/langs/tr_TR/users.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - users +## Dolibarr language file - tr_TR - users CHARSET=UTF-8 UserCard=Kullanıcı kartı ContactCard=Kişi kartı @@ -114,6 +114,6 @@ YourRole=Sizin rolünüz YourQuotaOfUsersIsReached=Aktif kullanıcı kotanıza ulaşıldı! NbOfUsers=Kullanıcı sayısı DontDowngradeSuperAdmin=Yalnızca bir SuperAdmin, bir SuperAdmin’inin derecesini düşürebilir -# HierarchicalResponsible=Hierarchical responsible -# HierarchicView=Hierarchical view -# UseTypeFieldToChange=Use field Type to change +HierarchicalResponsible=Sıradüzeni sorumlusu +HierarchicView=Sıradüzeni görünümü +UseTypeFieldToChange=Değiştirmek için Tür alanı seç diff --git a/htdocs/langs/tr_TR/withdrawals.lang b/htdocs/langs/tr_TR/withdrawals.lang index 7134562bd56..551601a6651 100644 --- a/htdocs/langs/tr_TR/withdrawals.lang +++ b/htdocs/langs/tr_TR/withdrawals.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - withdrawals +# Dolibarr language file - tr_TR - withdrawals CHARSET=UTF-8 StandingOrdersArea=Ödeme talimatları alanı CustomersStandingOrdersArea=Müşteri ödeme talimatları alanı @@ -85,7 +85,7 @@ WithdrawalFile=Para çekme dosyası SetToStatusSent="Dosya Gönderildi" durumuna ayarla ThisWillAlsoAddPaymentOnInvoice=Bu aynı zamanda faturalara ödeme oluşturur ve onları ödendi olarak sınıflandırı -### Notifications +### Bildirimler InfoCreditSubject=Banka tarafından ödenen %s ödeme talimatı InfoCreditMessage=%s Ödeme talimatı banka tarafından ödenmiştir
Ödeme tarihi: %s InfoTransSubject=%s Ödeme talimatının bankaya iletilmesi From 65c14e9fd9dc4aea91a1cb127a53dd42c31e98e7 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 1 Jul 2013 14:48:30 +0200 Subject: [PATCH 5/8] Add missing turkish file --- htdocs/langs/tr_TR/printipp.lang | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 htdocs/langs/tr_TR/printipp.lang diff --git a/htdocs/langs/tr_TR/printipp.lang b/htdocs/langs/tr_TR/printipp.lang new file mode 100644 index 00000000000..71811e51822 --- /dev/null +++ b/htdocs/langs/tr_TR/printipp.lang @@ -0,0 +1,10 @@ +# Dolibarr language file - tr_TR - printipp +CHARSET=UTF-8 +PrintIPPSetup=Doğrudan Yazdırma modülü kurulumu +PrintIPPDesc=Bu modül, yazıcıya doğrudan belge yazdırma düğmesi ekler. Bu bir Cups içeren bir Linux sistemi gerektirir. +PRINTIPP_ENABLED=Belge listesinde "Doğrudan yazdır" resim ikonunu göster +PRINTIPP_HOST=Yazdırma sunucusu +PRINTIPP_PORT=Port +PRINTIPP_USER=Giriş +PRINTIPP_PASSWORD=Parola +NoPrinterFound=Yazıcı bulnamadı (Cups ayarını denetleyin) From aa4f2ba8fb845d140b58b5da0ac9fb7381e8bac2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Salvador?= Date: Wed, 19 Jun 2013 18:50:52 +0200 Subject: [PATCH 6/8] made it possible to call a function from a library Conflicts: htdocs/install/mysql/tables/llx_cronjob.sql scripts/cron/cron_run_jobs.php --- htdocs/cron/class/cronjob.class.php | 73 +++++++++++++++++++-- htdocs/install/mysql/tables/llx_cronjob.sql | 6 +- scripts/cron/cron_run_jobs.php | 3 +- 3 files changed, 71 insertions(+), 11 deletions(-) diff --git a/htdocs/cron/class/cronjob.class.php b/htdocs/cron/class/cronjob.class.php index 454eb457517..1dd6b32a8c2 100644 --- a/htdocs/cron/class/cronjob.class.php +++ b/htdocs/cron/class/cronjob.class.php @@ -65,7 +65,7 @@ class Cronjob extends CommonObject var $fk_user_mod; var $note; var $nbrun; - + var $libname; var $lines; @@ -114,6 +114,7 @@ class Cronjob extends CommonObject if (isset($this->status)) $this->status=trim($this->status); if (isset($this->note)) $this->note=trim($this->note); if (isset($this->nbrun)) $this->nbrun=trim($this->nbrun); + if (isset($this->libname)) $this->libname = trim($this->libname); // Check parameters // Put here code to add a control on parameters values @@ -141,7 +142,7 @@ class Cronjob extends CommonObject $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronClass')); $error++; } - if (($this->jobtype=='method') && (empty($this->methodename))) { + if (($this->jobtype=='method' || $this->jobtype == 'function') && (empty($this->methodename))) { $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronMethod')); $error++; } @@ -149,6 +150,11 @@ class Cronjob extends CommonObject $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronObject')); $error++; } + + if (($this->jobtype=='function') && (empty($this->libname))) { + $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronLib')); + $error++; + } // Insert request $sql = "INSERT INTO ".MAIN_DB_PREFIX."cronjob("; @@ -178,6 +184,7 @@ class Cronjob extends CommonObject $sql.= "fk_user_mod,"; $sql.= "note,"; $sql.= "nbrun"; + $sql .= ",libname"; $sql.= ") VALUES ("; @@ -206,7 +213,8 @@ class Cronjob extends CommonObject $sql.= " ".$user->id.","; $sql.= " ".$user->id.","; $sql.= " ".(! isset($this->note)?'NULL':"'".$this->db->escape($this->note)."'").","; - $sql.= " ".(! isset($this->nbrun)?'0':"'".$this->db->escape($this->nbrun)."'").""; + $sql.= " ".(! isset($this->nbrun)?'0':"'".$this->db->escape($this->nbrun)."'").","; + $sql.= " ".(! isset($this->libname)?'NULL':"'".$this->db->escape($this->libname)."'").""; $sql.= ")"; @@ -293,6 +301,7 @@ class Cronjob extends CommonObject $sql.= " t.fk_user_mod,"; $sql.= " t.note,"; $sql.= " t.nbrun"; + $sql .= ", t.libname"; $sql.= " FROM ".MAIN_DB_PREFIX."cronjob as t"; @@ -335,7 +344,7 @@ class Cronjob extends CommonObject $this->fk_user_mod = $obj->fk_user_mod; $this->note = $obj->note; $this->nbrun = $obj->nbrun; - + $this->libname = $obj->libname; } $this->db->free($resql); @@ -392,6 +401,7 @@ class Cronjob extends CommonObject $sql.= " t.fk_user_mod,"; $sql.= " t.note,"; $sql.= " t.nbrun"; + $sql .= ", t.libname"; $sql.= " FROM ".MAIN_DB_PREFIX."cronjob as t"; $sql.= " WHERE 1 = 1"; @@ -464,7 +474,7 @@ class Cronjob extends CommonObject $line->fk_user_mod = $obj->fk_user_mod; $line->note = $obj->note; $line->nbrun = $obj->nbrun; - + $line->libname = $obj->libname; $this->lines[]=$line; $i++; @@ -518,6 +528,7 @@ class Cronjob extends CommonObject if (isset($this->status)) $this->status=trim($this->status); if (isset($this->note)) $this->note=trim($this->note); if (isset($this->nbrun)) $this->nbrun=trim($this->nbrun); + if (isset($this->libname)) $this->libname = trim($this->libname); // Check parameters // Put here code to add a control on parameters values @@ -548,7 +559,7 @@ class Cronjob extends CommonObject $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronClass')); $error++; } - if (($this->jobtype=='method') && (empty($this->methodename))) { + if (($this->jobtype=='method' || $this->jobtype == 'function') && (empty($this->methodename))) { $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronMethod')); $error++; } @@ -557,6 +568,11 @@ class Cronjob extends CommonObject $error++; } + if (($this->jobtype=='function') && (empty($this->libname))) { + $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronLib')); + $error++; + } + // Update request $sql = "UPDATE ".MAIN_DB_PREFIX."cronjob SET"; @@ -584,6 +600,7 @@ class Cronjob extends CommonObject $sql.= " fk_user_mod=".$user->id.","; $sql.= " note=".(isset($this->note)?"'".$this->db->escape($this->note)."'":"null").","; $sql.= " nbrun=".(isset($this->nbrun)?$this->nbrun:"null"); + $sql.= ", libname=".(isset($this->libname)?"'".$this->db->escape($this->libname)."'":"null"); $sql.= " WHERE rowid=".$this->id; @@ -780,6 +797,7 @@ class Cronjob extends CommonObject $this->fk_user_mod=''; $this->note=''; $this->nbrun=''; + $this->libname = ''; } /** @@ -941,6 +959,48 @@ class Cronjob extends CommonObject } + if($this->jobtype == 'function') + { + //load lib + $libpath = '/' . strtolower($this->module_name) . '/lib/' . $this->libname; + $ret = dol_include_once($libpath); + if ($ret === false) + { + $this->error = $langs->trans('CronCannotLoadLib') . ': ' . $libpath; + dol_syslog(get_class($this) . "::run_jobs " . $this->error, LOG_ERR); + return -1; + } + // Load langs + $result=$langs->load($this->module_name . '@' . $this->module_name); + if ($result<0) + { + dol_syslog(get_class($this) . "::run_jobs Cannot load module langs" . $langs->error, LOG_ERR); + return -1; + } + dol_syslog(get_class($this) . "::run_jobs " . $this->libname . "::" . $this->methodename."(" . $this->params . ");", LOG_DEBUG); + $params_arr = array(); + $params_arr = explode(", ", $this->params); + if (!is_array($params_arr)) + { + $result = call_user_func($this->methodename, $this->params); + } + else + { + $result = call_user_func_array($this->methodename, $params_arr); + } + + if ($result === false) + { + dol_syslog(get_class($this) . "::run_jobs " . $object->error, LOG_ERR); + return -1; + } + else + { + $this->lastoutput=var_export($result,true); + $this->lastresult=var_export($result,true); + } + } + // Run a command line if ($this->jobtype=='command') { @@ -1090,6 +1150,7 @@ class Cronjobline var $fk_user_mod; var $note; var $nbrun; + var $libname; /** * Constructor diff --git a/htdocs/install/mysql/tables/llx_cronjob.sql b/htdocs/install/mysql/tables/llx_cronjob.sql index 6c83994a936..01c8d5eef5c 100644 --- a/htdocs/install/mysql/tables/llx_cronjob.sql +++ b/htdocs/install/mysql/tables/llx_cronjob.sql @@ -46,6 +46,6 @@ CREATE TABLE llx_cronjob status integer NOT NULL DEFAULT 1, fk_user_author integer DEFAULT NULL, fk_user_mod integer DEFAULT NULL, - note text - -)ENGINE=innodb; \ No newline at end of file + note text, + libname varchar(255) +)ENGINE=innodb; diff --git a/scripts/cron/cron_run_jobs.php b/scripts/cron/cron_run_jobs.php index 3cdf7493663..79783b53d31 100755 --- a/scripts/cron/cron_run_jobs.php +++ b/scripts/cron/cron_run_jobs.php @@ -58,7 +58,6 @@ if (! isset($argv[2]) || ! $argv[2]) { require_once ($path."../../htdocs/master.inc.php"); require_once (DOL_DOCUMENT_ROOT."/cron/class/cronjob.class.php"); require_once (DOL_DOCUMENT_ROOT.'/user/class/user.class.php'); -require_once (DOL_DOCUMENT_ROOT."/cron/class/cronjob.class.php"); // Global variables $version=DOL_VERSION; @@ -161,4 +160,4 @@ if(is_array($object->lines) && (count($object->lines)>0)) $db->close(); exit(0); -?> \ No newline at end of file +?> From 96cea7b79aecf15bcf70e6a210486a1ffa2d0024 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Salvador?= Date: Mon, 1 Jul 2013 10:50:55 +0200 Subject: [PATCH 7/8] add the libname field in the migration script Conflicts: htdocs/install/mysql/migration/3.4.0-3.5.0.sql --- htdocs/install/mysql/migration/3.4.0-3.5.0.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/install/mysql/migration/3.4.0-3.5.0.sql b/htdocs/install/mysql/migration/3.4.0-3.5.0.sql index 868886b2665..858fb2a51e9 100755 --- a/htdocs/install/mysql/migration/3.4.0-3.5.0.sql +++ b/htdocs/install/mysql/migration/3.4.0-3.5.0.sql @@ -71,4 +71,4 @@ ALTER TABLE llx_user ADD accountancy_code VARCHAR( 24 ) NULL; DELETE FROM llx_boxes where box_id IN (SELECT rowid FROM llx_boxes_def where file='box_activity.php' AND note IS NULL); DELETE FROM llx_boxes_def where file='box_activity.php' AND note IS NULL; - +ALTER TABLE llx_cronjob ADD libname VARCHAR(255); From edc5de4f242131ba1c06e7ab9bc43896f027de7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Salvador?= Date: Mon, 1 Jul 2013 15:35:55 +0200 Subject: [PATCH 8/8] indentation --- htdocs/cron/class/cronjob.class.php | 116 ++++++++++---------- htdocs/install/mysql/tables/llx_cronjob.sql | 2 +- scripts/cron/cron_run_jobs.php | 6 +- 3 files changed, 62 insertions(+), 62 deletions(-) diff --git a/htdocs/cron/class/cronjob.class.php b/htdocs/cron/class/cronjob.class.php index 1dd6b32a8c2..83d01def7ac 100644 --- a/htdocs/cron/class/cronjob.class.php +++ b/htdocs/cron/class/cronjob.class.php @@ -65,7 +65,7 @@ class Cronjob extends CommonObject var $fk_user_mod; var $note; var $nbrun; - var $libname; + var $libname; var $lines; @@ -114,7 +114,7 @@ class Cronjob extends CommonObject if (isset($this->status)) $this->status=trim($this->status); if (isset($this->note)) $this->note=trim($this->note); if (isset($this->nbrun)) $this->nbrun=trim($this->nbrun); - if (isset($this->libname)) $this->libname = trim($this->libname); + if (isset($this->libname)) $this->libname = trim($this->libname); // Check parameters // Put here code to add a control on parameters values @@ -150,11 +150,11 @@ class Cronjob extends CommonObject $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronObject')); $error++; } - - if (($this->jobtype=='function') && (empty($this->libname))) { - $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronLib')); - $error++; - } + + if (($this->jobtype=='function') && (empty($this->libname))) { + $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronLib')); + $error++; + } // Insert request $sql = "INSERT INTO ".MAIN_DB_PREFIX."cronjob("; @@ -184,10 +184,10 @@ class Cronjob extends CommonObject $sql.= "fk_user_mod,"; $sql.= "note,"; $sql.= "nbrun"; - $sql .= ",libname"; + $sql .= ",libname"; - $sql.= ") VALUES ("; + $sql.= ") VALUES ("; $sql.= " ".$this->db->idate(dol_now()).","; $sql.= " ".(! isset($this->jobtype)?'NULL':"'".$this->db->escape($this->jobtype)."'").","; @@ -214,7 +214,7 @@ class Cronjob extends CommonObject $sql.= " ".$user->id.","; $sql.= " ".(! isset($this->note)?'NULL':"'".$this->db->escape($this->note)."'").","; $sql.= " ".(! isset($this->nbrun)?'0':"'".$this->db->escape($this->nbrun)."'").","; - $sql.= " ".(! isset($this->libname)?'NULL':"'".$this->db->escape($this->libname)."'").""; + $sql.= " ".(! isset($this->libname)?'NULL':"'".$this->db->escape($this->libname)."'").""; $sql.= ")"; @@ -301,7 +301,7 @@ class Cronjob extends CommonObject $sql.= " t.fk_user_mod,"; $sql.= " t.note,"; $sql.= " t.nbrun"; - $sql .= ", t.libname"; + $sql .= ", t.libname"; $sql.= " FROM ".MAIN_DB_PREFIX."cronjob as t"; @@ -344,7 +344,7 @@ class Cronjob extends CommonObject $this->fk_user_mod = $obj->fk_user_mod; $this->note = $obj->note; $this->nbrun = $obj->nbrun; - $this->libname = $obj->libname; + $this->libname = $obj->libname; } $this->db->free($resql); @@ -401,7 +401,7 @@ class Cronjob extends CommonObject $sql.= " t.fk_user_mod,"; $sql.= " t.note,"; $sql.= " t.nbrun"; - $sql .= ", t.libname"; + $sql .= ", t.libname"; $sql.= " FROM ".MAIN_DB_PREFIX."cronjob as t"; $sql.= " WHERE 1 = 1"; @@ -474,7 +474,7 @@ class Cronjob extends CommonObject $line->fk_user_mod = $obj->fk_user_mod; $line->note = $obj->note; $line->nbrun = $obj->nbrun; - $line->libname = $obj->libname; + $line->libname = $obj->libname; $this->lines[]=$line; $i++; @@ -568,10 +568,10 @@ class Cronjob extends CommonObject $error++; } - if (($this->jobtype=='function') && (empty($this->libname))) { - $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronLib')); - $error++; - } + if (($this->jobtype=='function') && (empty($this->libname))) { + $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronLib')); + $error++; + } // Update request @@ -600,7 +600,7 @@ class Cronjob extends CommonObject $sql.= " fk_user_mod=".$user->id.","; $sql.= " note=".(isset($this->note)?"'".$this->db->escape($this->note)."'":"null").","; $sql.= " nbrun=".(isset($this->nbrun)?$this->nbrun:"null"); - $sql.= ", libname=".(isset($this->libname)?"'".$this->db->escape($this->libname)."'":"null"); + $sql.= ", libname=".(isset($this->libname)?"'".$this->db->escape($this->libname)."'":"null"); $sql.= " WHERE rowid=".$this->id; @@ -959,47 +959,47 @@ class Cronjob extends CommonObject } - if($this->jobtype == 'function') - { - //load lib - $libpath = '/' . strtolower($this->module_name) . '/lib/' . $this->libname; - $ret = dol_include_once($libpath); - if ($ret === false) - { - $this->error = $langs->trans('CronCannotLoadLib') . ': ' . $libpath; - dol_syslog(get_class($this) . "::run_jobs " . $this->error, LOG_ERR); - return -1; - } - // Load langs - $result=$langs->load($this->module_name . '@' . $this->module_name); - if ($result<0) - { - dol_syslog(get_class($this) . "::run_jobs Cannot load module langs" . $langs->error, LOG_ERR); - return -1; - } - dol_syslog(get_class($this) . "::run_jobs " . $this->libname . "::" . $this->methodename."(" . $this->params . ");", LOG_DEBUG); - $params_arr = array(); - $params_arr = explode(", ", $this->params); - if (!is_array($params_arr)) - { - $result = call_user_func($this->methodename, $this->params); - } - else - { - $result = call_user_func_array($this->methodename, $params_arr); - } + if($this->jobtype == 'function') + { + //load lib + $libpath = '/' . strtolower($this->module_name) . '/lib/' . $this->libname; + $ret = dol_include_once($libpath); + if ($ret === false) + { + $this->error = $langs->trans('CronCannotLoadLib') . ': ' . $libpath; + dol_syslog(get_class($this) . "::run_jobs " . $this->error, LOG_ERR); + return -1; + } + // Load langs + $result=$langs->load($this->module_name . '@' . $this->module_name); + if ($result<0) + { + dol_syslog(get_class($this) . "::run_jobs Cannot load module langs" . $langs->error, LOG_ERR); + return -1; + } + dol_syslog(get_class($this) . "::run_jobs " . $this->libname . "::" . $this->methodename."(" . $this->params . ");", LOG_DEBUG); + $params_arr = array(); + $params_arr = explode(", ", $this->params); + if (!is_array($params_arr)) + { + $result = call_user_func($this->methodename, $this->params); + } + else + { + $result = call_user_func_array($this->methodename, $params_arr); + } - if ($result === false) - { - dol_syslog(get_class($this) . "::run_jobs " . $object->error, LOG_ERR); - return -1; - } - else - { + if ($result === false) + { + dol_syslog(get_class($this) . "::run_jobs " . $object->error, LOG_ERR); + return -1; + } + else + { $this->lastoutput=var_export($result,true); $this->lastresult=var_export($result,true); - } - } + } + } // Run a command line if ($this->jobtype=='command') @@ -1150,7 +1150,7 @@ class Cronjobline var $fk_user_mod; var $note; var $nbrun; - var $libname; + var $libname; /** * Constructor diff --git a/htdocs/install/mysql/tables/llx_cronjob.sql b/htdocs/install/mysql/tables/llx_cronjob.sql index 01c8d5eef5c..61036c3bd4b 100644 --- a/htdocs/install/mysql/tables/llx_cronjob.sql +++ b/htdocs/install/mysql/tables/llx_cronjob.sql @@ -47,5 +47,5 @@ CREATE TABLE llx_cronjob fk_user_author integer DEFAULT NULL, fk_user_mod integer DEFAULT NULL, note text, - libname varchar(255) + libname varchar(255) )ENGINE=innodb; diff --git a/scripts/cron/cron_run_jobs.php b/scripts/cron/cron_run_jobs.php index 79783b53d31..3ae5c353f42 100755 --- a/scripts/cron/cron_run_jobs.php +++ b/scripts/cron/cron_run_jobs.php @@ -1,8 +1,8 @@ #!/usr/bin/php +/* Copyright (C) 2012 Nicolas Villa aka Boyquotes http://informetic.fr + * Copyright (C) 2013 Florian Henry * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by