diff --git a/composer.json b/composer.json
index 3f28d0b2f42dfa672b9f167da7a70115de44dd00..a41f73b8a817bee56206e835730f6f6967b2c7e6 100644
--- a/composer.json
+++ b/composer.json
@@ -55,7 +55,7 @@
         }
     ],
     "require": {
-        "aferrandini/phpqrcode": "dev-master",
+        "aferrandini/phpqrcode": "1.0.1",
         "johnwohlers/sip2": "dev-master",
         "mobileesp/mdetect": "dev-master",
         "pear-pear.php.net/file_marc": "*",
diff --git a/composer.lock b/composer.lock
index b329fa626c5feac2204917dd9ca47f49e2654587..138d23ae4105ff980eddb6e0d1159683173a03ab 100644
--- a/composer.lock
+++ b/composer.lock
@@ -3,11 +3,11 @@
         "This file locks the dependencies of your project to a known state",
         "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file"
     ],
-    "hash": "6587f02e6b4f7504432193a81ba61931",
+    "hash": "030554dc6af0899fae74f8d7d3232f7d",
     "packages": [
         {
             "name": "aferrandini/phpqrcode",
-            "version": "dev-master",
+            "version": "1.0.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/aferrandini/PHPQRCode.git",
@@ -55,12 +55,12 @@
             "source": {
                 "type": "git",
                 "url": "https://github.com/Jasig/phpCAS.git",
-                "reference": "673feb404d3c07869ed7e186128d70a8c85473d6"
+                "reference": "27a971e0beee74b7b62c5d669be0823e585dfe82"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/Jasig/phpCAS/zipball/673feb404d3c07869ed7e186128d70a8c85473d6",
-                "reference": "673feb404d3c07869ed7e186128d70a8c85473d6",
+                "url": "https://api.github.com/repos/Jasig/phpCAS/zipball/27a971e0beee74b7b62c5d669be0823e585dfe82",
+                "reference": "27a971e0beee74b7b62c5d669be0823e585dfe82",
                 "shasum": ""
             },
             "require": {
@@ -98,7 +98,7 @@
                 "source": "https://github.com/Jasig/phpCAS/tree/master",
                 "issues": "https://github.com/Jasig/phpCAS/issues"
             },
-            "time": "2013-10-01 20:06:01"
+            "time": "2013-12-08 09:32:42"
         },
         {
             "name": "johnwohlers/sip2",
@@ -186,10 +186,10 @@
         },
         {
             "name": "pear-pear.php.net/File_MARC",
-            "version": "1.0.1",
+            "version": "1.1.1",
             "dist": {
                 "type": "file",
-                "url": "http://pear.php.net/get/File_MARC-1.0.1.tgz",
+                "url": "http://pear.php.net/get/File_MARC-1.1.1.tgz",
                 "reference": null,
                 "shasum": null
             },
@@ -197,7 +197,7 @@
                 "php": ">=5.3.0.0"
             },
             "replace": {
-                "pear-pear/file_marc": "== 1.0.1.0"
+                "pear-pear/file_marc": "== 1.1.1.0"
             },
             "type": "pear-library",
             "autoload": {
@@ -390,17 +390,17 @@
         },
         {
             "name": "symfony/yaml",
-            "version": "v2.3.6",
+            "version": "v2.4.2",
             "target-dir": "Symfony/Component/Yaml",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Yaml.git",
-                "reference": "6bb881b948368482e1abf1a75c08bcf88a1c5fc3"
+                "reference": "bb6ddaf8956139d1b8c360b4b713ed0138e876b3"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Yaml/zipball/6bb881b948368482e1abf1a75c08bcf88a1c5fc3",
-                "reference": "6bb881b948368482e1abf1a75c08bcf88a1c5fc3",
+                "url": "https://api.github.com/repos/symfony/Yaml/zipball/bb6ddaf8956139d1b8c360b4b713ed0138e876b3",
+                "reference": "bb6ddaf8956139d1b8c360b4b713ed0138e876b3",
                 "shasum": ""
             },
             "require": {
@@ -409,7 +409,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "2.3-dev"
+                    "dev-master": "2.4-dev"
                 }
             },
             "autoload": {
@@ -424,7 +424,9 @@
             "authors": [
                 {
                     "name": "Fabien Potencier",
-                    "email": "fabien@symfony.com"
+                    "email": "fabien@symfony.com",
+                    "homepage": "http://fabien.potencier.org",
+                    "role": "Lead Developer"
                 },
                 {
                     "name": "Symfony Community",
@@ -433,7 +435,7 @@
             ],
             "description": "Symfony Yaml Component",
             "homepage": "http://symfony.com",
-            "time": "2013-09-22 18:04:39"
+            "time": "2014-01-07 13:28:54"
         },
         {
             "name": "zendframework/zendframework",
@@ -555,29 +557,25 @@
         },
         {
             "name": "zendframework/zendrest",
-            "version": "2.0.1",
+            "version": "2.0.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/zendframework/ZendRest.git",
-                "reference": "release-2.0.1"
+                "reference": "7427d242b4546e5aef1206d2c97e402109d8843e"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://packages.zendframework.com/composer/zendframework-zendrest-2.0.1-release-2.0.1-97c8b5.zip",
-                "reference": "2.0.1",
-                "shasum": "e5c2ae15280bfbfb090601752dcb1f193d8617f8"
+                "url": "https://packages.zendframework.com/composer/zendframework-zendrest-7427d242b4546e5aef1206d2c97e402109d8843e-zip-da96cc.zip",
+                "reference": "2.0.2",
+                "shasum": "cd304d9e2fccccbd98348bfbead7d42b102e565a"
             },
             "require": {
                 "php": ">=5.3.3",
-                "zendframework/zend-http": ">=2.0.0",
-                "zendframework/zend-uri": ">=2.0.0"
+                "zendframework/zend-http": "~2.0",
+                "zendframework/zend-uri": "~2.0",
+                "zendframework/zendxml": "~1.0-dev"
             },
             "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "2.0.x-dev"
-                }
-            },
             "autoload": {
                 "psr-0": {
                     "ZendRest": "library/"
@@ -593,10 +591,10 @@
                 "zf2"
             ],
             "support": {
-                "source": "https://github.com/zendframework/ZendRest/tree/release-2.0.1",
+                "source": "https://github.com/zendframework/ZendRest/tree/release-2.0.2",
                 "issues": "https://github.com/zendframework/ZendRest/issues"
             },
-            "time": "2012-09-24 15:17:53"
+            "time": "2014-03-05 22:32:09"
         },
         {
             "name": "zendframework/zendservice-amazon",
@@ -654,6 +652,54 @@
                 "issues": "https://github.com/zendframework/ZendService_Amazon/issues"
             },
             "time": "2012-10-17 19:02:58"
+        },
+        {
+            "name": "zendframework/zendxml",
+            "version": "1.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/zendframework/ZendXml.git",
+                "reference": "559b34f426d33a11c3db118e00ce14bb8dc64e5f"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://packages.zendframework.com/composer/zendframework-zendxml-559b34f426d33a11c3db118e00ce14bb8dc64e5f-zip-6cf7a2.zip",
+                "reference": "1.0.0",
+                "shasum": "39abc614b5c26bcbf8102e203c52dee73c4460a8"
+            },
+            "require": {
+                "php": ">=5.3.3"
+            },
+            "require-dev": {
+                "fabpot/php-cs-fixer": "*@dev",
+                "phpunit/phpunit": "~3.7"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.0-dev"
+                }
+            },
+            "autoload": {
+                "psr-0": {
+                    "ZendXml": "library/"
+                }
+            },
+            "license": [
+                "BSD-3-Clause"
+            ],
+            "description": "Utility library for XML usage, best practices, and security in PHP",
+            "homepage": "http://packages.zendframework.com/",
+            "keywords": [
+                "security",
+                "xml",
+                "zf2"
+            ],
+            "support": {
+                "source": "https://github.com/zendframework/ZendXml/tree/master",
+                "issues": "https://github.com/zendframework/ZendXml/issues"
+            },
+            "time": "2014-03-05 22:25:44"
         }
     ],
     "packages-dev": [
@@ -664,7 +710,6 @@
     ],
     "minimum-stability": "stable",
     "stability-flags": {
-        "aferrandini/phpqrcode": 20,
         "johnwohlers/sip2": 20,
         "mobileesp/mdetect": 20,
         "serialssolutions/summon": 20,
diff --git a/vendor/autoload.php b/vendor/autoload.php
index de27f2f27a2a6b128c3e1a8f98a70e6d6fe2d903..1f796fcbf7c91425ff157ea1577e41b8643d781a 100644
--- a/vendor/autoload.php
+++ b/vendor/autoload.php
@@ -4,4 +4,4 @@
 
 require_once __DIR__ . '/composer' . '/autoload_real.php';
 
-return ComposerAutoloaderInit1374cb774f67d4088a0cd7dca4331c3f::getLoader();
+return ComposerAutoloaderInit9ee7ba4e6cff0856449c435048dbd9d7::getLoader();
diff --git a/vendor/composer/ClassLoader.php b/vendor/composer/ClassLoader.php
index 1db8d9a0b2e2207309eb93e83ab8ab4736fd4ab2..47ae2ee9252a066b42b9e53778243d80466a3cbf 100644
--- a/vendor/composer/ClassLoader.php
+++ b/vendor/composer/ClassLoader.php
@@ -42,19 +42,36 @@ namespace Composer\Autoload;
  */
 class ClassLoader
 {
-    private $prefixes = array();
-    private $fallbackDirs = array();
+    // PSR-4
+    private $prefixLengthsPsr4 = array();
+    private $prefixDirsPsr4 = array();
+    private $fallbackDirsPsr4 = array();
+
+    // PSR-0
+    private $prefixesPsr0 = array();
+    private $fallbackDirsPsr0 = array();
+
     private $useIncludePath = false;
     private $classMap = array();
 
     public function getPrefixes()
     {
-        return call_user_func_array('array_merge', $this->prefixes);
+        return call_user_func_array('array_merge', $this->prefixesPsr0);
+    }
+
+    public function getPrefixesPsr4()
+    {
+        return $this->prefixDirsPsr4;
     }
 
     public function getFallbackDirs()
     {
-        return $this->fallbackDirs;
+        return $this->fallbackDirsPsr0;
+    }
+
+    public function getFallbackDirsPsr4()
+    {
+        return $this->fallbackDirsPsr4;
     }
 
     public function getClassMap()
@@ -75,23 +92,24 @@ class ClassLoader
     }
 
     /**
-     * Registers a set of classes, merging with any others previously set.
+     * Registers a set of PSR-0 directories for a given prefix, either
+     * appending or prepending to the ones previously set for this prefix.
      *
-     * @param string       $prefix  The classes prefix
-     * @param array|string $paths   The location(s) of the classes
-     * @param bool         $prepend Prepend the location(s)
+     * @param string       $prefix  The prefix
+     * @param array|string $paths   The PSR-0 root directories
+     * @param bool         $prepend Whether to prepend the directories
      */
     public function add($prefix, $paths, $prepend = false)
     {
         if (!$prefix) {
             if ($prepend) {
-                $this->fallbackDirs = array_merge(
+                $this->fallbackDirsPsr0 = array_merge(
                     (array) $paths,
-                    $this->fallbackDirs
+                    $this->fallbackDirsPsr0
                 );
             } else {
-                $this->fallbackDirs = array_merge(
-                    $this->fallbackDirs,
+                $this->fallbackDirsPsr0 = array_merge(
+                    $this->fallbackDirsPsr0,
                     (array) $paths
                 );
             }
@@ -100,38 +118,104 @@ class ClassLoader
         }
 
         $first = $prefix[0];
-        if (!isset($this->prefixes[$first][$prefix])) {
-            $this->prefixes[$first][$prefix] = (array) $paths;
+        if (!isset($this->prefixesPsr0[$first][$prefix])) {
+            $this->prefixesPsr0[$first][$prefix] = (array) $paths;
 
             return;
         }
         if ($prepend) {
-            $this->prefixes[$first][$prefix] = array_merge(
+            $this->prefixesPsr0[$first][$prefix] = array_merge(
+                (array) $paths,
+                $this->prefixesPsr0[$first][$prefix]
+            );
+        } else {
+            $this->prefixesPsr0[$first][$prefix] = array_merge(
+                $this->prefixesPsr0[$first][$prefix],
+                (array) $paths
+            );
+        }
+    }
+
+    /**
+     * Registers a set of PSR-4 directories for a given namespace, either
+     * appending or prepending to the ones previously set for this namespace.
+     *
+     * @param string       $prefix  The prefix/namespace, with trailing '\\'
+     * @param array|string $paths   The PSR-0 base directories
+     * @param bool         $prepend Whether to prepend the directories
+     */
+    public function addPsr4($prefix, $paths, $prepend = false)
+    {
+        if (!$prefix) {
+            // Register directories for the root namespace.
+            if ($prepend) {
+                $this->fallbackDirsPsr4 = array_merge(
+                    (array) $paths,
+                    $this->fallbackDirsPsr4
+                );
+            } else {
+                $this->fallbackDirsPsr4 = array_merge(
+                    $this->fallbackDirsPsr4,
+                    (array) $paths
+                );
+            }
+        } elseif (!isset($this->prefixDirsPsr4[$prefix])) {
+            // Register directories for a new namespace.
+            $length = strlen($prefix);
+            if ('\\' !== $prefix[$length - 1]) {
+                throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
+            }
+            $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
+            $this->prefixDirsPsr4[$prefix] = (array) $paths;
+        } elseif ($prepend) {
+            // Prepend directories for an already registered namespace.
+            $this->prefixDirsPsr4[$prefix] = array_merge(
                 (array) $paths,
-                $this->prefixes[$first][$prefix]
+                $this->prefixDirsPsr4[$prefix]
             );
         } else {
-            $this->prefixes[$first][$prefix] = array_merge(
-                $this->prefixes[$first][$prefix],
+            // Append directories for an already registered namespace.
+            $this->prefixDirsPsr4[$prefix] = array_merge(
+                $this->prefixDirsPsr4[$prefix],
                 (array) $paths
             );
         }
     }
 
     /**
-     * Registers a set of classes, replacing any others previously set.
+     * Registers a set of PSR-0 directories for a given prefix,
+     * replacing any others previously set for this prefix.
      *
-     * @param string       $prefix The classes prefix
-     * @param array|string $paths  The location(s) of the classes
+     * @param string       $prefix The prefix
+     * @param array|string $paths  The PSR-0 base directories
      */
     public function set($prefix, $paths)
     {
         if (!$prefix) {
-            $this->fallbackDirs = (array) $paths;
+            $this->fallbackDirsPsr0 = (array) $paths;
+        } else {
+            $this->prefixesPsr0[$prefix[0]][$prefix] = (array) $paths;
+        }
+    }
 
-            return;
+    /**
+     * Registers a set of PSR-4 directories for a given namespace,
+     * replacing any others previously set for this namespace.
+     *
+     * @param string       $prefix  The prefix/namespace, with trailing '\\'
+     * @param array|string $paths   The PSR-4 base directories
+     */
+    public function setPsr4($prefix, $paths) {
+        if (!$prefix) {
+            $this->fallbackDirsPsr4 = (array) $paths;
+        } else {
+            $length = strlen($prefix);
+            if ('\\' !== $prefix[$length - 1]) {
+                throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
+            }
+            $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
+            $this->prefixDirsPsr4[$prefix] = (array) $paths;
         }
-        $this->prefixes[substr($prefix, 0, 1)][$prefix] = (array) $paths;
     }
 
     /**
@@ -182,7 +266,7 @@ class ClassLoader
     public function loadClass($class)
     {
         if ($file = $this->findFile($class)) {
-            include $file;
+            includeFile($file);
 
             return true;
         }
@@ -202,45 +286,79 @@ class ClassLoader
             $class = substr($class, 1);
         }
 
+        // class map lookup
         if (isset($this->classMap[$class])) {
             return $this->classMap[$class];
         }
 
+        // PSR-4 lookup
+        $logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . '.php';
+
+        $first = $class[0];
+        if (isset($this->prefixLengthsPsr4[$first])) {
+            foreach ($this->prefixLengthsPsr4[$first] as $prefix => $length) {
+                if (0 === strpos($class, $prefix)) {
+                    foreach ($this->prefixDirsPsr4[$prefix] as $dir) {
+                        if (file_exists($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) {
+                            return $file;
+                        }
+                    }
+                }
+            }
+        }
+
+        // PSR-4 fallback dirs
+        foreach ($this->fallbackDirsPsr4 as $dir) {
+            if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) {
+                return $file;
+            }
+        }
+
+        // PSR-0 lookup
         if (false !== $pos = strrpos($class, '\\')) {
             // namespaced class name
-            $classPath = strtr(substr($class, 0, $pos), '\\', DIRECTORY_SEPARATOR) . DIRECTORY_SEPARATOR;
-            $className = substr($class, $pos + 1);
+            $logicalPathPsr0 = substr($logicalPathPsr4, 0, $pos + 1)
+                . strtr(substr($logicalPathPsr4, $pos + 1), '_', DIRECTORY_SEPARATOR);
         } else {
             // PEAR-like class name
-            $classPath = null;
-            $className = $class;
+            $logicalPathPsr0 = strtr($class, '_', DIRECTORY_SEPARATOR) . '.php';
         }
 
-        $classPath .= strtr($className, '_', DIRECTORY_SEPARATOR) . '.php';
-
-        $first = $class[0];
-        if (isset($this->prefixes[$first])) {
-            foreach ($this->prefixes[$first] as $prefix => $dirs) {
+        if (isset($this->prefixesPsr0[$first])) {
+            foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) {
                 if (0 === strpos($class, $prefix)) {
                     foreach ($dirs as $dir) {
-                        if (file_exists($dir . DIRECTORY_SEPARATOR . $classPath)) {
-                            return $dir . DIRECTORY_SEPARATOR . $classPath;
+                        if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
+                            return $file;
                         }
                     }
                 }
             }
         }
 
-        foreach ($this->fallbackDirs as $dir) {
-            if (file_exists($dir . DIRECTORY_SEPARATOR . $classPath)) {
-                return $dir . DIRECTORY_SEPARATOR . $classPath;
+        // PSR-0 fallback dirs
+        foreach ($this->fallbackDirsPsr0 as $dir) {
+            if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) {
+                return $file;
             }
         }
 
-        if ($this->useIncludePath && $file = stream_resolve_include_path($classPath)) {
+        // PSR-0 include paths.
+        if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) {
             return $file;
         }
 
+        // Remember that this class does not exist.
         return $this->classMap[$class] = false;
     }
 }
+
+/**
+ * Scope isolated include.
+ *
+ * Prevents access to $this/self from included files.
+ */
+function includeFile($file)
+{
+    include $file;
+}
diff --git a/vendor/composer/autoload_namespaces.php b/vendor/composer/autoload_namespaces.php
index 395ec7bd8b3c53a8f95bceb967648589f5b81c2a..7d58ddc12e2204f40c0d2b7ccc68d903c94e91e7 100644
--- a/vendor/composer/autoload_namespaces.php
+++ b/vendor/composer/autoload_namespaces.php
@@ -7,6 +7,7 @@ $baseDir = dirname($vendorDir);
 
 return array(
     'Zend\\' => array($vendorDir . '/zendframework/zendframework/library'),
+    'ZendXml' => array($vendorDir . '/zendframework/zendxml/library'),
     'ZendService' => array($vendorDir . '/zendframework/zendservice-amazon/library'),
     'ZendRest' => array($vendorDir . '/zendframework/zendrest/library'),
     'Symfony\\Component\\Yaml\\' => array($vendorDir . '/symfony/yaml'),
diff --git a/vendor/composer/autoload_psr4.php b/vendor/composer/autoload_psr4.php
new file mode 100644
index 0000000000000000000000000000000000000000..b265c64a22f6691ca4a508347bd3dee43b9b19e7
--- /dev/null
+++ b/vendor/composer/autoload_psr4.php
@@ -0,0 +1,9 @@
+<?php
+
+// autoload_psr4.php @generated by Composer
+
+$vendorDir = dirname(dirname(__FILE__));
+$baseDir = dirname($vendorDir);
+
+return array(
+);
diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php
index 56a11d0c7c0afa6f6923917aa2671d33d416dc02..e62efa95ede2f3f959bd2c50251af1dc5e48ea62 100644
--- a/vendor/composer/autoload_real.php
+++ b/vendor/composer/autoload_real.php
@@ -2,7 +2,7 @@
 
 // autoload_real.php @generated by Composer
 
-class ComposerAutoloaderInit1374cb774f67d4088a0cd7dca4331c3f
+class ComposerAutoloaderInit9ee7ba4e6cff0856449c435048dbd9d7
 {
     private static $loader;
 
@@ -19,9 +19,9 @@ class ComposerAutoloaderInit1374cb774f67d4088a0cd7dca4331c3f
             return self::$loader;
         }
 
-        spl_autoload_register(array('ComposerAutoloaderInit1374cb774f67d4088a0cd7dca4331c3f', 'loadClassLoader'), true, true);
+        spl_autoload_register(array('ComposerAutoloaderInit9ee7ba4e6cff0856449c435048dbd9d7', 'loadClassLoader'), true, true);
         self::$loader = $loader = new \Composer\Autoload\ClassLoader();
-        spl_autoload_unregister(array('ComposerAutoloaderInit1374cb774f67d4088a0cd7dca4331c3f', 'loadClassLoader'));
+        spl_autoload_unregister(array('ComposerAutoloaderInit9ee7ba4e6cff0856449c435048dbd9d7', 'loadClassLoader'));
 
         $vendorDir = dirname(__DIR__);
         $baseDir = dirname($vendorDir);
@@ -35,6 +35,11 @@ class ComposerAutoloaderInit1374cb774f67d4088a0cd7dca4331c3f
             $loader->set($namespace, $path);
         }
 
+        $map = require __DIR__ . '/autoload_psr4.php';
+        foreach ($map as $namespace => $path) {
+            $loader->setPsr4($namespace, $path);
+        }
+
         $classMap = require __DIR__ . '/autoload_classmap.php';
         if ($classMap) {
             $loader->addClassMap($classMap);
@@ -45,3 +50,8 @@ class ComposerAutoloaderInit1374cb774f67d4088a0cd7dca4331c3f
         return $loader;
     }
 }
+
+function composerRequire9ee7ba4e6cff0856449c435048dbd9d7($file)
+{
+    require $file;
+}
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index 2ec265d76f0cffd5f5552aa1cd64a17a3a692439..da2af1bcd347c4b219830695e63dc1c8f3ea0e75 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -243,53 +243,6 @@
         ],
         "description": "Package containes ISPN (International Standard Product Numbers) validations such as:\n * ISSN\n * ISBN\n * ISMN\n * ISRC (International Standard Recording Code)\n * EAN8\n * EAN13\n * EAN14\n * UCC12\n * SSCC"
     },
-    {
-        "name": "zendframework/zendrest",
-        "version": "2.0.1",
-        "version_normalized": "2.0.1.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/zendframework/ZendRest.git",
-            "reference": "release-2.0.1"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://packages.zendframework.com/composer/zendframework-zendrest-2.0.1-release-2.0.1-97c8b5.zip",
-            "reference": "2.0.1",
-            "shasum": "e5c2ae15280bfbfb090601752dcb1f193d8617f8"
-        },
-        "require": {
-            "php": ">=5.3.3",
-            "zendframework/zend-http": ">=2.0.0",
-            "zendframework/zend-uri": ">=2.0.0"
-        },
-        "time": "2012-09-24 15:17:53",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.0.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-0": {
-                "ZendRest": "library/"
-            }
-        },
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "description": " ",
-        "homepage": "http://packages.zendframework.com/",
-        "keywords": [
-            "rest",
-            "zf2"
-        ],
-        "support": {
-            "source": "https://github.com/zendframework/ZendRest/tree/release-2.0.1",
-            "issues": "https://github.com/zendframework/ZendRest/issues"
-        }
-    },
     {
         "name": "zendframework/zendservice-amazon",
         "version": "2.0.2",
@@ -349,182 +302,6 @@
             "issues": "https://github.com/zendframework/ZendService_Amazon/issues"
         }
     },
-    {
-        "name": "aferrandini/phpqrcode",
-        "version": "dev-master",
-        "version_normalized": "9999999-dev",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/aferrandini/PHPQRCode.git",
-            "reference": "3c1c0454d43710ab5bbe19a51ad4cb41c22e3d46"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/aferrandini/PHPQRCode/zipball/3c1c0454d43710ab5bbe19a51ad4cb41c22e3d46",
-            "reference": "3c1c0454d43710ab5bbe19a51ad4cb41c22e3d46",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.0"
-        },
-        "time": "2013-07-08 09:39:08",
-        "type": "library",
-        "installation-source": "source",
-        "autoload": {
-            "psr-0": {
-                "PHPQRCode": "lib/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Ariel Ferrandini",
-                "email": "arielferrandini@gmail.com",
-                "homepage": "http://www.ferrandini.com/",
-                "role": "Developer"
-            }
-        ],
-        "description": "PHPQRCode porting and changed for PHP 5.3 compatibility",
-        "homepage": "https://github.com/aferrandini/PHPQRCode",
-        "keywords": [
-            "barcode",
-            "php",
-            "qrcode"
-        ]
-    },
-    {
-        "name": "jasig/phpcas",
-        "version": "dev-master",
-        "version_normalized": "9999999-dev",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/Jasig/phpCAS.git",
-            "reference": "673feb404d3c07869ed7e186128d70a8c85473d6"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/Jasig/phpCAS/zipball/673feb404d3c07869ed7e186128d70a8c85473d6",
-            "reference": "673feb404d3c07869ed7e186128d70a8c85473d6",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.0.0"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "~3.7.10"
-        },
-        "time": "2013-10-01 20:06:01",
-        "type": "library",
-        "installation-source": "source",
-        "autoload": {
-            "classmap": [
-                "source/"
-            ]
-        },
-        "license": [
-            "Apache-2.0"
-        ],
-        "authors": [
-            {
-                "name": "Joachim Fritschi",
-                "homepage": "https://wiki.jasig.org/display/~fritschi"
-            },
-            {
-                "name": "Adam Franco",
-                "homepage": "https://wiki.jasig.org/display/~adamfranco"
-            }
-        ],
-        "description": "Provides a simple API for authenticating users against a CAS server",
-        "homepage": "https://wiki.jasig.org/display/CASC/phpCAS",
-        "keywords": [
-            "cas",
-            "jasig"
-        ],
-        "support": {
-            "source": "https://github.com/Jasig/phpCAS/tree/master",
-            "issues": "https://github.com/Jasig/phpCAS/issues"
-        }
-    },
-    {
-        "name": "symfony/yaml",
-        "version": "v2.3.6",
-        "version_normalized": "2.3.6.0",
-        "target-dir": "Symfony/Component/Yaml",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/symfony/Yaml.git",
-            "reference": "6bb881b948368482e1abf1a75c08bcf88a1c5fc3"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Yaml/zipball/6bb881b948368482e1abf1a75c08bcf88a1c5fc3",
-            "reference": "6bb881b948368482e1abf1a75c08bcf88a1c5fc3",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.3"
-        },
-        "time": "2013-09-22 18:04:39",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.3-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\Yaml\\": ""
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            }
-        ],
-        "description": "Symfony Yaml Component",
-        "homepage": "http://symfony.com"
-    },
-    {
-        "name": "pear-pear.php.net/File_MARC",
-        "version": "1.0.1",
-        "version_normalized": "1.0.1.0",
-        "dist": {
-            "type": "file",
-            "url": "http://pear.php.net/get/File_MARC-1.0.1.tgz",
-            "reference": null,
-            "shasum": null
-        },
-        "require": {
-            "php": ">=5.3.0.0"
-        },
-        "replace": {
-            "pear-pear/file_marc": "== 1.0.1.0"
-        },
-        "type": "pear-library",
-        "installation-source": "dist",
-        "autoload": {
-            "classmap": [
-                ""
-            ]
-        },
-        "include-path": [
-            "/"
-        ],
-        "description": "The standard for machine-readable cataloging (MARC) records is documented at http://loc.gov/marc/. This package enables you to read existing MARC records from a file, string, or (using the YAZ extension), from a Z39.50 source. You can also use this package to create new MARC records.\n\nThis package is based on the PHP MARC package, originally called \"php-marc\", that is part of the Emilda Project (http://www.emilda.org).  Christoffer Landtman generously agreed to make the \"php-marc\" code available under the GNU LGPL so it could be used as the basis of this PEAR package."
-    },
     {
         "name": "zendframework/zendframework",
         "version": "2.2.5",
@@ -682,5 +459,276 @@
             "source": "https://github.com/summon/Summon.php/tree/master",
             "issues": "https://github.com/summon/Summon.php/issues"
         }
+    },
+    {
+        "name": "pear-pear.php.net/File_MARC",
+        "version": "1.1.1",
+        "version_normalized": "1.1.1.0",
+        "dist": {
+            "type": "file",
+            "url": "http://pear.php.net/get/File_MARC-1.1.1.tgz",
+            "reference": null,
+            "shasum": null
+        },
+        "require": {
+            "php": ">=5.3.0.0"
+        },
+        "replace": {
+            "pear-pear/file_marc": "== 1.1.1.0"
+        },
+        "type": "pear-library",
+        "installation-source": "dist",
+        "autoload": {
+            "classmap": [
+                ""
+            ]
+        },
+        "include-path": [
+            "/"
+        ],
+        "description": "The standard for machine-readable cataloging (MARC) records is documented at http://loc.gov/marc/. This package enables you to read existing MARC records from a file, string, or (using the YAZ extension), from a Z39.50 source. You can also use this package to create new MARC records.\n\nThis package is based on the PHP MARC package, originally called \"php-marc\", that is part of the Emilda Project (http://www.emilda.org).  Christoffer Landtman generously agreed to make the \"php-marc\" code available under the GNU LGPL so it could be used as the basis of this PEAR package."
+    },
+    {
+        "name": "symfony/yaml",
+        "version": "v2.4.2",
+        "version_normalized": "2.4.2.0",
+        "target-dir": "Symfony/Component/Yaml",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/symfony/Yaml.git",
+            "reference": "bb6ddaf8956139d1b8c360b4b713ed0138e876b3"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/symfony/Yaml/zipball/bb6ddaf8956139d1b8c360b4b713ed0138e876b3",
+            "reference": "bb6ddaf8956139d1b8c360b4b713ed0138e876b3",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.3"
+        },
+        "time": "2014-01-07 13:28:54",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.4-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "Symfony\\Component\\Yaml\\": ""
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com",
+                "homepage": "http://fabien.potencier.org",
+                "role": "Lead Developer"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
+            }
+        ],
+        "description": "Symfony Yaml Component",
+        "homepage": "http://symfony.com"
+    },
+    {
+        "name": "zendframework/zendxml",
+        "version": "1.0.0",
+        "version_normalized": "1.0.0.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/zendframework/ZendXml.git",
+            "reference": "559b34f426d33a11c3db118e00ce14bb8dc64e5f"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://packages.zendframework.com/composer/zendframework-zendxml-559b34f426d33a11c3db118e00ce14bb8dc64e5f-zip-6cf7a2.zip",
+            "reference": "1.0.0",
+            "shasum": "39abc614b5c26bcbf8102e203c52dee73c4460a8"
+        },
+        "require": {
+            "php": ">=5.3.3"
+        },
+        "require-dev": {
+            "fabpot/php-cs-fixer": "*@dev",
+            "phpunit/phpunit": "~3.7"
+        },
+        "time": "2014-03-05 22:25:44",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.0-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "ZendXml": "library/"
+            }
+        },
+        "license": [
+            "BSD-3-Clause"
+        ],
+        "description": "Utility library for XML usage, best practices, and security in PHP",
+        "homepage": "http://packages.zendframework.com/",
+        "keywords": [
+            "security",
+            "xml",
+            "zf2"
+        ],
+        "support": {
+            "source": "https://github.com/zendframework/ZendXml/tree/master",
+            "issues": "https://github.com/zendframework/ZendXml/issues"
+        }
+    },
+    {
+        "name": "zendframework/zendrest",
+        "version": "2.0.2",
+        "version_normalized": "2.0.2.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/zendframework/ZendRest.git",
+            "reference": "7427d242b4546e5aef1206d2c97e402109d8843e"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://packages.zendframework.com/composer/zendframework-zendrest-7427d242b4546e5aef1206d2c97e402109d8843e-zip-da96cc.zip",
+            "reference": "2.0.2",
+            "shasum": "cd304d9e2fccccbd98348bfbead7d42b102e565a"
+        },
+        "require": {
+            "php": ">=5.3.3",
+            "zendframework/zend-http": "~2.0",
+            "zendframework/zend-uri": "~2.0",
+            "zendframework/zendxml": "~1.0-dev"
+        },
+        "time": "2014-03-05 22:32:09",
+        "type": "library",
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "ZendRest": "library/"
+            }
+        },
+        "license": [
+            "BSD-3-Clause"
+        ],
+        "description": " ",
+        "homepage": "http://packages.zendframework.com/",
+        "keywords": [
+            "rest",
+            "zf2"
+        ],
+        "support": {
+            "source": "https://github.com/zendframework/ZendRest/tree/release-2.0.2",
+            "issues": "https://github.com/zendframework/ZendRest/issues"
+        }
+    },
+    {
+        "name": "jasig/phpcas",
+        "version": "dev-master",
+        "version_normalized": "9999999-dev",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/Jasig/phpCAS.git",
+            "reference": "27a971e0beee74b7b62c5d669be0823e585dfe82"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/Jasig/phpCAS/zipball/27a971e0beee74b7b62c5d669be0823e585dfe82",
+            "reference": "27a971e0beee74b7b62c5d669be0823e585dfe82",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.0.0"
+        },
+        "require-dev": {
+            "phpunit/phpunit": "~3.7.10"
+        },
+        "time": "2013-12-08 09:32:42",
+        "type": "library",
+        "installation-source": "source",
+        "autoload": {
+            "classmap": [
+                "source/"
+            ]
+        },
+        "license": [
+            "Apache-2.0"
+        ],
+        "authors": [
+            {
+                "name": "Joachim Fritschi",
+                "homepage": "https://wiki.jasig.org/display/~fritschi"
+            },
+            {
+                "name": "Adam Franco",
+                "homepage": "https://wiki.jasig.org/display/~adamfranco"
+            }
+        ],
+        "description": "Provides a simple API for authenticating users against a CAS server",
+        "homepage": "https://wiki.jasig.org/display/CASC/phpCAS",
+        "keywords": [
+            "cas",
+            "jasig"
+        ],
+        "support": {
+            "source": "https://github.com/Jasig/phpCAS/tree/master",
+            "issues": "https://github.com/Jasig/phpCAS/issues"
+        }
+    },
+    {
+        "name": "aferrandini/phpqrcode",
+        "version": "1.0.1",
+        "version_normalized": "1.0.1.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/aferrandini/PHPQRCode.git",
+            "reference": "3c1c0454d43710ab5bbe19a51ad4cb41c22e3d46"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/aferrandini/PHPQRCode/zipball/3c1c0454d43710ab5bbe19a51ad4cb41c22e3d46",
+            "reference": "3c1c0454d43710ab5bbe19a51ad4cb41c22e3d46",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.0"
+        },
+        "time": "2013-07-08 09:39:08",
+        "type": "library",
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "PHPQRCode": "lib/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Ariel Ferrandini",
+                "email": "arielferrandini@gmail.com",
+                "homepage": "http://www.ferrandini.com/",
+                "role": "Developer"
+            }
+        ],
+        "description": "PHPQRCode porting and changed for PHP 5.3 compatibility",
+        "homepage": "https://github.com/aferrandini/PHPQRCode",
+        "keywords": [
+            "barcode",
+            "php",
+            "qrcode"
+        ]
     }
 ]
diff --git a/vendor/jasig/phpcas/source/CAS/Client.php b/vendor/jasig/phpcas/source/CAS/Client.php
index b0efc1b48e05836bf84814730b467a8721b8597c..c66352ca6ba2df7eaed05dea37f38113dbfc243d 100755
--- a/vendor/jasig/phpcas/source/CAS/Client.php
+++ b/vendor/jasig/phpcas/source/CAS/Client.php
@@ -3487,7 +3487,8 @@ class CAS_Client
             if (empty($_SERVER['HTTP_X_FORWARDED_PORT'])) {
                 $server_port = $_SERVER['SERVER_PORT'];
             } else {
-                $server_port = $_SERVER['HTTP_X_FORWARDED_PORT'];
+                $ports = explode(',', $_SERVER['HTTP_X_FORWARDED_PORT']);
+                $server_port = $ports[0];
             }
 
             if ( ($this->_isHttps() && $server_port!=443)
diff --git a/vendor/jasig/phpcas/source/CAS/ProxiedService/Imap.php b/vendor/jasig/phpcas/source/CAS/ProxiedService/Imap.php
index 7461a585a2003834a8f5261ad3c2e84fbc7839e6..847da28c106d149911376399a9a8a233f8a8649b 100755
--- a/vendor/jasig/phpcas/source/CAS/ProxiedService/Imap.php
+++ b/vendor/jasig/phpcas/source/CAS/ProxiedService/Imap.php
@@ -215,7 +215,7 @@ extends CAS_ProxiedService_Abstract
         } else {
             phpCAS::trace('could not open mailbox');
             // @todo add localization integration.
-            $message = 'IMAP Error: '.$url.' '. var_export(imap_errors(), true);
+            $message = 'IMAP Error: '.$this->_url.' '. var_export(imap_errors(), true);
             phpCAS::trace($message);
             throw new CAS_ProxiedService_Exception($message);
         }
diff --git a/vendor/pear-pear.php.net/File_MARC/File/MARC/Lint.php b/vendor/pear-pear.php.net/File_MARC/File/MARC/Lint.php
index 67705570b41ee9f14bce63ef1c559b2e59a4a96a..bf330dc2cc3abd77f378701f478e0dc09e7b6ba5 100644
--- a/vendor/pear-pear.php.net/File_MARC/File/MARC/Lint.php
+++ b/vendor/pear-pear.php.net/File_MARC/File/MARC/Lint.php
@@ -8,7 +8,7 @@
  * This module is adapted from the MARC::Lint CPAN module for Perl, maintained by
  * Bryan Baldus <eijabb@cpan.org> and available at http://search.cpan.org/~eijabb/
  *
- * Current MARC::Lint version used as basis for this module: 1.44
+ * Current MARC::Lint version used as basis for this module: 1.47
  *
  * PHP version 5
  *
@@ -30,7 +30,7 @@
  * @package   File_MARC
  * @author    Demian Katz <demian.katz@villanova.edu>
  * @author    Dan Scott <dscott@laurentian.ca>
- * @copyright 2003-2008 Oy Realnode Ab, Dan Scott
+ * @copyright 2003-2013 Oy Realnode Ab, Dan Scott
  * @license   http://www.gnu.org/copyleft/lesser.html  LGPL License 2.1
  * @version   CVS: $Id: Record.php 308146 2011-02-08 20:36:20Z dbs $
  * @link      http://pear.php.net/package/File_MARC
@@ -498,7 +498,7 @@ class File_MARC_Lint
         } else if ($lastChar != '.') {
             $this->warn(
                 "245: MARC21 allows ? or ! as final punctuation but LCRI 1.0C, Nov."
-                . " 2003, requires period."
+                . " 2003 (LCPS 1.7.1 for RDA records), requires period."
             );
         }
 
@@ -706,6 +706,7 @@ class File_MARC_Lint
         // may want to make keys lowercase
         static $exceptions = array(
             'A & E',
+            'A & ',
             'A-',
             'A+',
             'A is ',
@@ -717,6 +718,7 @@ class File_MARC_Lint
             'A to ',
             'El Nino',
             'El Salvador',
+            'L is ',
             'L-',
             'La Salle',
             'Las Vegas',
@@ -1101,6 +1103,7 @@ ind1    012345  Type of publisher number
 ind2    0123    Note/added entry controller
 a       NR      Publisher number
 b       NR      Source
+q       R       Qualifying information
 6       NR      Linkage
 8       R       Field link and sequence number
 
@@ -1150,6 +1153,9 @@ ind2    b012    Type of event
 a       R       Formatted date/time
 b       R       Geographic classification area code
 c       R       Geographic classification subarea code
+p       R       Place of event
+0       R       Record control number
+2       R       Source of term
 3       NR      Materials specified
 6       NR      Linkage
 8       R       Field link and sequence number
@@ -1176,7 +1182,9 @@ t       R       G-ring longitude
 x       NR      Beginning date
 y       NR      Ending date
 z       NR      Name of extraterrestrial body
+0       R       Authority record control number or standard number
 2       NR      Source
+3       NR      Materials specified
 6       NR      Linkage
 8       R       Field link and sequence number
 
@@ -1222,7 +1230,7 @@ a       NR      Original cataloging agency
 b       NR      Language of cataloging
 c       NR      Transcribing agency
 d       R       Modifying agency
-e       NR      Description conventions
+e       R       Description conventions
 6       NR      Linkage
 8       R       Field link and sequence number
 
@@ -1235,8 +1243,11 @@ d       R       Language code of sung or spoken text
 e       R       Language code of librettos
 f       R       Language code of table of contents
 g       R       Language code of accompanying material other than librettos
-h       R       Language code of original and/or intermediate translations of text
+h       R       Language code of original
 j       R       Language code of subtitles or captions
+k       R       Language code of intermediate translations
+m       R       Language code of original accompanying materials other than librettos
+n       R       Language code of original libretto
 2       NR      Source of code
 6       NR      Linkage
 8       R       Field link and sequence number
@@ -1252,6 +1263,7 @@ ind2    blank   Undefined
 a       R       Geographic area code
 b       R       Local GAC code
 c       R       ISO code
+0       R       Authority record control number or standard number
 2       R       Source of local code
 6       NR      Linkage
 8       R       Field link and sequence number
@@ -1288,6 +1300,8 @@ k       NR      Beginning or single date created
 l       NR      Ending date created
 m       NR      Beginning of date valid
 n       NR      End of date valid
+o       NR      Single or starting date for aggregated content
+p       NR      Ending date for aggregated content
 2       NR      Source of date
 6       NR      Linkage
 8       R       Field link and sequence number
@@ -1396,7 +1410,7 @@ z       R       Canceled/invalid GPO item number
 8       R       Field link and sequence number
 
 080     R       UNIVERSAL DECIMAL CLASSIFICATION NUMBER
-ind1    blank   Undefined
+ind1    01      Type of edition
 ind2    blank   Undefined
 a       NR      Universal Decimal Classification number
 b       NR      Item number
@@ -1406,7 +1420,7 @@ x       R       Common auxiliary subdivision
 8       R       Field link and sequence number
 
 082     R       DEWEY DECIMAL CLASSIFICATION NUMBER
-ind1    01      Type of edition
+ind1    017     Type of edition
 ind2    b04     Source of classification number
 a       R       Classification number
 b       NR      Item number
@@ -1417,7 +1431,7 @@ q       NR      Assigning agency
 8       R       Field link and sequence number
 
 083     R       ADDITIONAL DEWEY DECIMAL CLASSIFICATION NUMBER
-ind1    01      Type of edition
+ind1    017     Type of edition
 ind2    blank   Undefined
 a       R       Classification number
 c       R       Classification number--Ending number of span
@@ -1434,6 +1448,7 @@ ind1    blank   Undefined
 ind2    blank   Undefined
 a       R       Classification number
 b       NR      Item number
+q       NR      Assigning agency
 2       NR      Source of number
 6       NR      Linkage
 8       R       Field link and sequence number
@@ -1674,11 +1689,12 @@ x       NR      International Standard Serial Number
 6       NR      Linkage
 8       R       Field link and sequence number
 
-250     NR      EDITION STATEMENT
+250     R       EDITION STATEMENT
 ind1    blank   Undefined
 ind2    blank   Undefined
 a       NR      Edition statement
 b       NR      Remainder of edition statement
+3       NR      Materials specified
 6       NR      Linkage
 8       R       Field link and sequence number
 
@@ -1709,10 +1725,11 @@ a       NR      Computer file characteristics
 6       NR      Linkage
 8       R       Field link and sequence number
 
-257     NR      COUNTRY OF PRODUCING ENTITY FOR ARCHIVAL FILMS
+257     R       COUNTRY OF PRODUCING ENTITY
 ind1    blank   Undefined
 ind2    blank   Undefined
-a       NR      Country of producing entity
+a       R       Country of producing entity
+2       NR      Source
 6       NR      Linkage
 8       R       Field link and sequence number
 
@@ -1767,6 +1784,16 @@ a       NR      Projected publication date
 6       NR      Linkage
 8       R       Field link and sequence number
 
+264     R       PRODUCTION, PUBLICATION, DISTRIBUTION, MANUFACTURE, AND COPYRIGHT NOTICE
+ind1    b23     Sequence of statements
+ind2    01234   Function of entity
+a       R       Place of production, publication, distribution, manufacture
+b       R       Name of producer, publisher, distributor, manufacturer
+c       R       Date of production, publication, distribution, manufacture, or copyright notice
+3       NR      Materials specified
+6       NR      Linkage
+8       R       Field link and sequence number (R)
+
 270     R       ADDRESS
 ind1    b12     Level
 ind2    b07     Type of address
@@ -1836,6 +1863,36 @@ b       NR      Dates of former publication frequency
 6       NR      Linkage
 8       R       Field link and sequence number
 
+336     R       CONTENT TYPE
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       R       Content type term
+b       R       Content type code
+2       NR      Source
+3       NR      Materials specified
+6       NR      Linkage
+8       R       Field link and sequence number
+
+337     R       MEDIA TYPE
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       R       Media type term
+b       R       Media type code
+2       NR      Source
+3       NR      Materials specified
+6       NR      Linkage
+8       R       Field link and sequence number
+
+338     R       CARRIER TYPE
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       R       Carrier type term
+b       R       Carrier type code
+2       NR      Source
+3       NR      Materials specified
+6       NR      Linkage
+8       R       Field link and sequence number
+
 340     R       PHYSICAL MEDIUM
 ind1    blank   Undefined
 ind2    blank   Undefined
@@ -1847,6 +1904,13 @@ e       R       Support
 f       R       Production rate/ratio
 h       R       Location within medium
 i       R       Technical specifications of medium
+j       R       Generation
+k       R       Layout
+m       R       Book format
+n       R       Font size
+o       R       Polarity
+0       R       Authority record control number or standard number
+2       NR      Source
 3       NR      Materials specified
 6       NR      Linkage
 8       R       Field link and sequence number
@@ -1895,6 +1959,60 @@ i       NR      Bearing reference meridian
 6       NR      Linkage
 8       R       Field link and sequence number
 
+344     R       SOUND CHARACTERISTICS
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       R       Type of recording
+b       R       Recording medium
+c       R       Playing speed
+d       R       Groove characteristic
+e       R       Track configuration
+f       R       Tape configuration
+g       R       Configuration of playback channels
+h       R       Special playback characteristics
+0       R       Authority record control number or standard number
+2       NR      Source
+3       NR      Materials specified
+6       NR      Linkage
+8       R       Field link and sequence number
+
+345     R       PROJECTION CHARACTERISTICS OF MOVING IMAGE
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       R       Presentation format
+b       R       Projection speed
+0       R       Authority record control number or standard number
+2       NR      Source
+3       NR      Materials specified
+6       NR      Linkage
+8       R       Field link and sequence number
+
+346     R       VIDEO CHARACTERISTICS
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       R       Video format
+b       R       Broadcast standard
+0       R       Authority record control number or standard number
+2       NR      Source
+3       NR      Materials specified
+6       NR      Linkage
+8       R       Field link and sequence number
+
+347     R       DIGITAL FILE CHARACTERISTICS
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       R       File type
+b       R       Encoding format
+c       R       File size
+d       R       Resolution
+e       R       Regional encoding
+f       R       Transmission speed
+0       R       Authority record control number or standard number
+2       NR      Source
+3       NR      Materials specified
+6       NR      Linkage
+8       R       Field link and sequence number
+
 351     R       ORGANIZATION AND ARRANGEMENT OF MATERIALS
 ind1    blank   Undefined
 ind2    blank   Undefined
@@ -2012,6 +2130,95 @@ m       NR      Identification of agency
 6       NR      Linkage
 8       R       Field link and sequence number
 
+377     R       ASSOCIATED LANGUAGE
+ind1    blank   Undefined
+ind2    b7      Undefined
+a       R       Language code
+l       R       Language term
+2       NR      Source
+6       NR      Linkage
+8       R       Field link and sequence number
+
+380     R       FORM OF WORK
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       R       Form of work
+0       R       Record control number
+2       NR      Source of term
+6       NR      Linkage
+8       R       Field link and sequence number
+
+381     R       OTHER DISTINGUISHING CHARACTERISTICS OF WORK OR EXPRESSION
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       R       Other distinguishing characteristic
+u       R       Uniform Resource Identifier
+v       R       Source of information
+0       R       Record control number
+2       NR      Source of term
+6       NR      Linkage
+8       R       Field link and sequence number
+
+382     R       MEDIUM OF PERFORMANCE
+ind1    b01     Undefined
+ind2    b01     Undefined
+a       R       Medium of performance
+b       R       Soloist
+d       R       Doubling instrument
+n       R       Number of performers of the same medium
+p       R       Alternative medium of performance
+s       R       Total number of performers
+v       R       Note
+0       R       Record control number
+2       NR      Source of term
+6       NR      Linkage
+8       R       Field link and sequence number
+
+383     R       NUMERIC DESIGNATION OF MUSICAL WORK
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       R       Serial number
+b       R       Opus number
+c       R       Thematic index number
+d       NR      Thematic index code
+e       NR      Publisher associated with opus number
+2       NR      Source
+6       NR      Linkage
+8       R       Field link and sequence number
+
+384     NR      KEY
+ind1    b01     Key type
+ind2    blank   Undefined
+a       NR      Key
+6       NR      Linkage
+8       R       Field link and sequence number
+
+385     R       AUDIENCE CHARACTERISTICS
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       R       Audience term
+b       R       Audience code
+m       NR      Demographic group term
+n       NR      Demographic group code
+0       R       Authority record control number or standard number
+2       NR      Source
+3       NR      Materials specified
+6       NR      Linkage
+8       R       Field link and sequence number
+
+386 - CREATOR/CONTRIBUTOR CHARACTERISTICS (R)
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       R       Creator/contributor term
+b       R       Creator/contributor code
+m       NR      Demographic group term
+n       NR      Demographic group code
+0       R       Authority record control number or standard number
+2       NR      Source
+3       NR      Materials specified
+6       NR      Linkage
+8       R       Field link and sequence number
+
 400     R       SERIES STATEMENT/ADDED ENTRY--PERSONAL NAME
 ind1    013     Type of personal name entry element
 ind2    01      Pronoun represents main entry
@@ -2097,7 +2304,7 @@ ind2    blank   Undefined
 a       R       Series statement
 l       NR      Library of Congress call number
 v       R       Volume number/sequential designation
-x       NR      International Standard Serial Number
+x       R       International Standard Serial Number
 3       NR      Materials specified
 6       NR      Linkage
 8       R       Field link and sequence number
@@ -2187,6 +2394,7 @@ ind2    blank   Undefined
 a       NR      Name of source
 b       NR      Coverage of source
 c       NR      Location within source
+u       R       Uniform Resource Identifier
 x       NR      International Standard Serial Number
 3       NR      Materials specified
 6       NR      Linkage
@@ -2245,6 +2453,11 @@ a       NR      Type of computer file or data note
 ind1    blank   Undefined
 ind2    blank   Undefined
 a       NR      Date/time and place of an event note
+d       R       Date of event
+o       R       Other event information
+p       R       Place of event
+0       R       Record control number
+2       R       Source of term
 3       NR      Materials specified
 6       NR      Linkage
 8       R       Field link and sequence number
@@ -2353,6 +2566,7 @@ p       NR      Introductory phrase
 t       NR      Title statement of original
 x       R       International Standard Serial Number
 z       R       International Standard Book Number
+3       NR      Materials specified
 6       NR      Linkage
 8       R       Field link and sequence number
 
@@ -2542,6 +2756,7 @@ z       R       International Standard Book Number
 ind1    b01     Undefined
 ind2    blank   Undefined
 a       NR      History
+u       R       Uniform Resource Identifier
 3       NR      Materials specified
 5       NR      Institution to which field applies
 6       NR      Linkage
@@ -2657,6 +2872,14 @@ a       NR      Awards note
 6       NR      Linkage
 8       R       Field link and sequence number
 
+588     R       SOURCE OF DESCRIPTION NOTE
+ind1    blank   Undefined
+ind2    blank   Undefined
+a       NR      Source of description note
+5       NR      Institution to which field applies
+6       NR      Linkage
+8       R       Field link and sequence number
+
 600     R       SUBJECT ADDED ENTRY--PERSONAL NAME
 ind1    013     Type of personal name entry element
 ind2    01234567    Thesaurus
@@ -2783,7 +3006,7 @@ z       R       Geographic subdivision
 8       R       Field link and sequence number
 
 648     R       SUBJECT ADDED ENTRY--CHRONOLOGICAL TERM
-ind1    blank   Undefined
+ind1    b01     Type of date or time period
 ind2    01234567    Thesaurus
 a       NR      Chronological term
 v       R       Form subdivision
@@ -2940,6 +3163,7 @@ e       R       Relator term
 f       NR      Date of a work
 g       NR      Miscellaneous information
 h       NR      Medium
+i       R       Relationship information
 j       R       Attribution qualifier
 k       R       Form subheading
 l       NR      Language of a work
@@ -2971,6 +3195,7 @@ e       R       Relator term
 f       NR      Date of a work
 g       NR      Miscellaneous information
 h       NR      Medium
+i       R       Relationship information
 k       R       Form subheading
 l       NR      Language of a work
 m       R       Medium of performance for music
@@ -2999,6 +3224,7 @@ e       R       Subordinate unit
 f       NR      Date of a work
 g       NR      Miscellaneous information
 h       NR      Medium
+i       R       Relationship information
 j       R       Relator term
 k       R       Form subheading
 l       NR      Language of a work
@@ -3033,6 +3259,7 @@ d       R       Date of treaty signing
 f       NR      Date of a work
 g       NR      Miscellaneous information
 h       NR      Medium
+i       R       Relationship information
 k       R       Form subheading
 l       NR      Language of a work
 m       R       Medium of performance for music
@@ -3116,9 +3343,9 @@ a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 m       NR      Material-specific details
 n       R       Note
 o       R       Other item identifier
@@ -3127,6 +3354,7 @@ t       NR      Title
 w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3138,9 +3366,9 @@ a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 m       NR      Material-specific details
 n       R       Note
 o       R       Other item identifier
@@ -3149,6 +3377,7 @@ t       NR      Title
 w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3160,9 +3389,9 @@ a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 k       R       Series data for related item
 m       NR      Material-specific details
 n       R       Note
@@ -3175,6 +3404,7 @@ w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
 z       R       International Standard Book Number
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3186,9 +3416,9 @@ a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 k       R       Series data for related item
 m       NR      Material-specific details
 n       R       Note
@@ -3201,6 +3431,7 @@ w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
 z       R       International Standard Book Number
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3212,9 +3443,9 @@ a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 k       R       Series data for related item
 m       NR      Material-specific details
 n       R       Note
@@ -3227,6 +3458,7 @@ w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
 z       R       International Standard Book Number
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3238,9 +3470,9 @@ a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 k       R       Series data for related item
 m       NR      Material-specific details
 n       R       Note
@@ -3253,6 +3485,7 @@ w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
 z       R       International Stan dard Book Number
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3263,9 +3496,9 @@ ind2    b8      Display constant controller
 a       NR      Main entry heading
 b       NR      Edition
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 k       R       Series data for related item
 m       NR      Material-specific details
 n       R       Note
@@ -3281,6 +3514,7 @@ x       NR      International Standard Serial Number
 y       NR      CODEN designation
 z       R       International Standard Book Number
 3       NR      Materials specified
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3292,9 +3526,9 @@ a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 k       R       Series data for related item
 m       NR      Material-specific details
 n       R       Note
@@ -3307,6 +3541,7 @@ w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
 z       R       International Standard Book Number
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3320,9 +3555,9 @@ c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
 e       NR      Language code
 f       NR      Country code
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 k       R       Series data for related item
 m       NR      Material-specific details
 n       R       Note
@@ -3335,6 +3570,7 @@ w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
 z       R       International Standard Book Number
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3346,9 +3582,9 @@ a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 k       R       Series data for related item
 m       NR      Material-specific details
 n       R       Note
@@ -3361,6 +3597,7 @@ w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
 z       R       International Standard Book Number
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3372,9 +3609,9 @@ a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 k       R       Series data for related item
 m       NR      Material-specific details
 n       R       Note
@@ -3384,6 +3621,7 @@ t       NR      Title
 w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3395,9 +3633,9 @@ a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 k       R       Series data for related item
 m       NR      Material-specific details
 n       R       Note
@@ -3410,6 +3648,7 @@ w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
 z       R       International Standard Book Number
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3421,9 +3660,9 @@ a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 k       R       Series data for related item
 m       NR      Material-specific details
 n       R       Note
@@ -3436,6 +3675,7 @@ w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
 z       R       International Standard Book Number
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3447,9 +3687,9 @@ a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 j       NR      Period of content
 k       R       Series data for related item
 m       NR      Material-specific details
@@ -3465,20 +3705,21 @@ w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
 z       R       International Standard Book Number
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
 
-787     R       NONSPECIFIC RELATIONSHIP ENTRY
+787     R       OTHER RELATIONSHIP ENTRY
 ind1    01      Note controller
 ind2    b8      Display constant controller
 a       NR      Main entry heading
 b       NR      Edition
 c       NR      Qualifying information
 d       NR      Place, publisher, and date of publication
-g       R       Relationship information
+g       R       Related parts
 h       NR      Physical description
-i       NR      Display text
+i       R       Relationship information
 k       R       Series data for related item
 m       NR      Material-specific details
 n       R       Note
@@ -3491,6 +3732,7 @@ w       R       Record control number
 x       NR      International Standard Serial Number
 y       NR      CODEN designation
 z       R       International Standard Book Number
+4       R       Relationship code
 6       NR      Linkage
 7       NR      Control subfield
 8       R       Field link and sequence number
@@ -3524,6 +3766,7 @@ x       NR      International Standard Serial Number
 0       R       Authority record control number
 3       NR      Materials specified
 4       R       Relator code
+5       R       Institution to which field applies
 6       NR      Linkage
 8       R       Field link and sequence number
 
@@ -3554,6 +3797,7 @@ x       NR      International Standard Serial Number
 0       R       Authority record control number
 3       NR      Materials specified
 4       R       Relator code
+5       R       Institution to which field applies
 6       NR      Linkage
 8       R       Field link and sequence number
 
@@ -3582,6 +3826,7 @@ x       NR      International Standard Serial Number
 0       R       Authority record control number
 3       NR      Materials specified
 4       R       Relator code
+5       R       Institution to which field applies
 6       NR      Linkage
 8       R       Field link and sequence number
 
@@ -3607,6 +3852,7 @@ w       R       Bibliographic record control number
 x       NR      International Standard Serial Number
 0       R       Authority record control number
 3       NR      Materials specified
+5       R       Institution to which field applies
 6       NR      Linkage
 8       R       Field link and sequence number
 
@@ -3725,6 +3971,19 @@ w       R       Replacement bibliographic record control number
 6       NR      Linkage
 8       R       Field link and sequence number
 
+883     R       MACHINE-GENERATED METADATA PROVENANCE
+ind1    b01     Type of field
+ind2    blank   Undefined
+a       NR      Generation process
+c       NR      Confidence value
+d       NR      Generation date
+q       NR      Generation agency
+x       NR      Validity end date
+u       NR      Uniform Resource Identifier
+w       R       Bibliographic record control number
+0       R       Authority record control number or standard number
+8       R       Field link and sequence number
+
 886     R       FOREIGN MARC INFORMATION FIELD
 ind1    012     Type of field
 ind2    blank   Undefined
diff --git a/vendor/pear-pear.php.net/File_MARC/File/MARC/Lint/CodeData.php b/vendor/pear-pear.php.net/File_MARC/File/MARC/Lint/CodeData.php
index cae0c129e9944e2b03edb18d4782c6d9e92098ed..59317a93aee38246b59d342ed65df7f54350c541 100644
--- a/vendor/pear-pear.php.net/File_MARC/File/MARC/Lint/CodeData.php
+++ b/vendor/pear-pear.php.net/File_MARC/File/MARC/Lint/CodeData.php
@@ -9,7 +9,7 @@
  * maintained by Bryan Baldus <eijabb@cpan.org> and available for download at
  * http://search.cpan.org/~eijabb/
  *
- * Current MARC::Lint::CodeData version used as basis for this module: 1.28
+ * Current MARC::Lint::CodeData version used as basis for this module: 1.33
  *
  * PHP version 5
  *
@@ -31,7 +31,7 @@
  * @package   File_MARC
  * @author    Demian Katz <demian.katz@villanova.edu>
  * @author    Dan Scott <dscott@laurentian.ca>
- * @copyright 2003-2008 Oy Realnode Ab, Dan Scott
+ * @copyright 2003-2013 Oy Realnode Ab, Dan Scott
  * @license   http://www.gnu.org/copyleft/lesser.html  LGPL License 2.1
  * @version   CVS: $Id: Record.php 308146 2011-02-08 20:36:20Z dbs $
  * @link      http://pear.php.net/package/File_MARC
@@ -135,7 +135,7 @@ class File_MARC_Lint_CodeData
     {
         // @codingStandardsIgnoreStart
         // fill the valid Geographic Area Codes array
-        $this->geogAreaCodes = explode("\t", "a-af---	f------	fc-----	fe-----	fq-----	ff-----	fh-----	fs-----	fb-----	fw-----	n-us-al	n-us-ak	e-aa---	n-cn-ab	f-ae---	ea-----	sa-----	poas---	aa-----	sn-----	e-an---	f-ao---	nwxa---	a-cc-an	t------	nwaq---	nwla---	n-usa--	ma-----	ar-----	au-----	r------	s-ag---	n-us-az	n-us-ar	a-ai---	nwaw---	lsai---	u-ac---	a------	ac-----	as-----	l------	fa-----	u------	u-at---	u-at-ac	e-au---	a-aj---	lnaz---	nwbf---	a-ba---	ed-----	eb-----	a-bg---	nwbb---	a-cc-pe	e-bw---	e-be---	ncbh---	el-----	ab-----	f-dm---	lnbm---	a-bt---	mb-----	a-ccp--	s-bo---	nwbn---	a-bn---	e-bn---	f-bs---	lsbv---	s-bl---	n-cn-bc	i-bi---	nwvb---	a-bx---	e-bu---	f-uv---	a-br---	f-bd---	n-us-ca	a-cb---	f-cm---	n-cn---	nccz---	lnca---	lncv---	cc-----	poci---	ak-----	e-urk--	e-urr--	nwcj---	f-cx---	nc-----	e-urc--	f-cd---	s-cl---	a-cc---	a-cc-cq	i-xa---	i-xb---	q------	s-ck---	n-us-co	b------	i-cq---	f-cf---	f-cg---	fg-----	n-us-ct	pocw---	u-cs---	nccr---	e-ci---	nwcu---	nwco---	a-cy---	e-xr---	e-cs---	f-iv---	eo-----	zd-----	n-us-de	e-dk---	dd-----	d------	f-ft---	nwdq---	nwdr---	x------	n-usr--	ae-----	an-----	a-em---	poea---	xa-----	s-ec---	f-ua---	nces---	e-uk-en	f-eg---	f-ea---	e-er---	f-et---	me-----	e------	ec-----	ee-----	en-----	es-----	ew-----	lsfk---	lnfa---	pofj---	e-fi---	n-us-fl	e-fr---	h------	s-fg---	pofp---	a-cc-fu	f-go---	pogg---	f-gm---	a-cc-ka	awgz---	n-us-ga	a-gs---	e-gx---	e-ge---	e-gw---	f-gh---	e-gi---	e-uk---	e-uk-ui	nl-----	np-----	fr-----	e-gr---	n-gl---	nwgd---	nwgp---	pogu---	a-cc-kn	a-cc-kc	ncgt---	f-gv---	f-pg---	a-cc-kw	s-gy---	a-cc-ha	nwht---	n-us-hi	i-hm---	a-cc-hp	a-cc-he	a-cc-ho	ah-----	nwhi---	ncho---	a-cc-hk	a-cc-hh	n-cnh--	a-cc-hu	e-hu---	e-ic---	n-us-id	n-us-il	a-ii---	i------	n-us-in	ai-----	a-io---	a-cc-im	m------	c------	n-us-ia	a-ir---	a-iq---	e-ie---	a-is---	e-it---	nwjm---	lnjn---	a-ja---	a-cc-ku	a-cc-ki	a-cc-kr	poji---	a-jo---	zju----	n-us-ks	a-kz---	n-us-ky	f-ke---	poki---	pokb---	a-kr---	a-kn---	a-ko---	a-cck--	a-ku---	a-kg---	a-ls---	cl-----	e-lv---	a-le---	nwli---	f-lo---	a-cc-lp	f-lb---	f-ly---	e-lh---	poln---	e-li---	n-us-la	e-lu---	a-cc-mh	e-xn---	f-mg---	lnma---	n-us-me	f-mw---	am-----	a-my---	i-xc---	f-ml---	e-mm---	n-cn-mb	poxd---	n-cnm--	zma----	poxe---	nwmq---	n-us-md	n-us-ma	f-mu---	i-mf---	i-my---	mm-----	ag-----	pome---	zme----	n-mx---	nm-----	n-us-mi	pott---	pomi---	n-usl--	aw-----	n-usc--	poxf---	n-us-mn	n-us-ms	n-usm--	n-us-mo	n-uss--	e-mv---	e-mc---	a-mp---	n-us-mt	nwmj---	zmo----	f-mr---	f-mz---	f-sx---	ponu---	n-us-nb	a-np---	zne----	e-ne---	nwna---	n-us-nv	n-cn-nk	ponl---	n-usn--	a-nw---	n-us-nh	n-us-nj	n-us-nm	u-at-ne	n-us-ny	u-nz---	n-cn-nf	ncnq---	f-ng---	fi-----	f-nr---	fl-----	a-cc-nn	poxh---	n------	ln-----	n-us-nc	n-us-nd	pn-----	n-use--	xb-----	e-uk-ni	u-at-no	n-cn-nt	e-no---	n-cn-ns	n-cn-nu	po-----	n-us-oh	n-uso--	n-us-ok	a-mk---	n-cn-on	n-us-or	zo-----	p------	a-pk---	popl---	ncpn---	a-pp---	aopf---	s-py---	n-us-pa	ap-----	s-pe---	a-ph---	popc---	zpl----	e-pl---	pops---	e-po---	n-cnp--	n-cn-pi	nwpr---	ep-----	a-qa---	a-cc-ts	u-at-qn	n-cn-qu	mr-----	er-----	n-us-ri	sp-----	nr-----	e-rm---	e-ru---	e-ur---	e-urf--	f-rw---	i-re---	nwsd---	fd-----	nweu---	lsxj---	nwxi---	nwxk---	nwst---	n-xl---	nwxm---	pows---	posh---	e-sm---	f-sf---	n-cn-sn	zsa----	a-su---	ev-----	e-uk-st	f-sg---	i-se---	a-cc-ss	a-cc-sp	a-cc-sm	a-cc-sh	e-urs--	e-ure--	e-urw--	a-cc-sz	f-sl---	a-si---	e-xo---	e-xv---	i-xo---	zs-----	pobp---	f-so---	f-sa---	s------	az-----	ls-----	u-at-sa	n-us-sc	ao-----	n-us-sd	lsxs---	ps-----	xc-----	n-usu--	n-ust--	e-urn--	e-sp---	f-sh---	aoxp---	a-ce---	f-sj---	fn-----	fu-----	zsu----	s-sr---	lnsb---	nwsv---	f-sq---	e-sw---	e-sz---	a-sy---	a-ch---	a-ta---	f-tz---	u-at-tm	n-us-tn	i-fs---	n-us-tx	a-th---	af-----	a-cc-tn	a-cc-ti	at-----	f-tg---	potl---	poto---	nwtr---	lstd---	w------	f-ti---	a-tu---	a-tk---	nwtc---	potv---	f-ug---	e-un---	a-ts---	n-us---	nwuc---	poup---	e-uru--	zur----	s-uy---	n-us-ut	a-uz---	ponn---	e-vc---	s-ve---	zve----	n-us-vt	u-at-vi	a-vt---	nwvi---	n-us-va	e-urp--	fv-----	powk---	e-uk-wl	powf---	n-us-dc	n-us-wa	n-usp--	awba---	nw-----	n-us-wv	u-at-we	xd-----	f-ss---	nwwi---	n-us-wi	n-us-wy	a-ccs--	a-cc-su	a-ccg--	a-ccy--	ay-----	a-ye---	e-yu---	n-cn-yk	a-cc-yu	fz-----	f-za---	a-cc-ch	f-rh---	u-atc--	u-ate--	u-atn--	e-rb---	e-mo---	e-kv---");
+        $this->geogAreaCodes = explode("\t", "a------	a-af---	a-ai---	a-aj---	a-ba---	a-bg---	a-bn---	a-br---	a-bt---	a-bx---	a-cb---	a-cc---	a-cc-an	a-cc-ch	a-cc-cq	a-cc-fu	a-cc-ha	a-cc-he	a-cc-hh	a-cc-hk	a-cc-ho	a-cc-hp	a-cc-hu	a-cc-im	a-cc-ka	a-cc-kc	a-cc-ki	a-cc-kn	a-cc-kr	a-cc-ku	a-cc-kw	a-cc-lp	a-cc-mh	a-cc-nn	a-cc-pe	a-cc-sh	a-cc-sm	a-cc-sp	a-cc-ss	a-cc-su	a-cc-sz	a-cc-ti	a-cc-tn	a-cc-ts	a-cc-yu	a-ccg--	a-cck--	a-ccp--	a-ccs--	a-ccy--	a-ce---	a-ch---	a-cy---	a-em---	a-gs---	a-ii---	a-io---	a-iq---	a-ir---	a-is---	a-ja---	a-jo---	a-kg---	a-kn---	a-ko---	a-kr---	a-ku---	a-kz---	a-le---	a-ls---	a-mk---	a-mp---	a-my---	a-np---	a-nw---	a-ph---	a-pk---	a-pp---	a-qa---	a-si---	a-su---	a-sy---	a-ta---	a-th---	a-tk---	a-ts---	a-tu---	a-uz---	a-vt---	a-ye---	aa-----	ab-----	ac-----	ae-----	af-----	ag-----	ah-----	ai-----	ak-----	am-----	an-----	ao-----	aopf---	aoxp---	ap-----	ar-----	as-----	at-----	au-----	aw-----	awba---	awgz---	ay-----	az-----	b------	c------	cc-----	cl-----	d------	dd-----	e------	e-aa---	e-an---	e-au---	e-be---	e-bn---	e-bu---	e-bw---	e-ci---	e-cs---	e-dk---	e-er---	e-fi---	e-fr---	e-ge---	e-gi---	e-gr---	e-gw---	e-gx---	e-hu---	e-ic---	e-ie---	e-it---	e-kv---	e-lh---	e-li---	e-lu---	e-lv---	e-mc---	e-mm---	e-mo---	e-mv---	e-ne---	e-no---	e-pl---	e-po---	e-rb---	e-rm---	e-ru---	e-sm---	e-sp---	e-sw---	e-sz---	e-uk---	e-uk-en	e-uk-ni	e-uk-st	e-uk-ui	e-uk-wl	e-un---	e-ur---	e-urc--	e-ure--	e-urf--	e-urk--	e-urn--	e-urp--	e-urr--	e-urs--	e-uru--	e-urw--	e-vc---	e-xn---	e-xo---	e-xr---	e-xv---	e-yu---	ea-----	eb-----	ec-----	ed-----	ee-----	el-----	en-----	eo-----	ep-----	er-----	es-----	ev-----	ew-----	f------	f-ae---	f-ao---	f-bd---	f-bs---	f-cd---	f-cf---	f-cg---	f-cm---	f-cx---	f-dm---	f-ea---	f-eg---	f-et---	f-ft---	f-gh---	f-gm---	f-go---	f-gv---	f-iv---	f-ke---	f-lb---	f-lo---	f-ly---	f-mg---	f-ml---	f-mr---	f-mu---	f-mw---	f-mz---	f-ng---	f-nr---	f-pg---	f-rh---	f-rw---	f-sa---	f-sd---	f-sf---	f-sg---	f-sh---	f-sj---	f-sl---	f-so---	f-sq---	f-ss---	f-sx---	f-tg---	f-ti---	f-tz---	f-ua---	f-ug---	f-uv---	f-za---	fa-----	fb-----	fc-----	fd-----	fe-----	ff-----	fg-----	fh-----	fi-----	fl-----	fn-----	fq-----	fr-----	fs-----	fu-----	fv-----	fw-----	fz-----	h------	i------	i-bi---	i-cq---	i-fs---	i-hm---	i-mf---	i-my---	i-re---	i-se---	i-xa---	i-xb---	i-xc---	i-xo---	l------	ln-----	lnaz---	lnbm---	lnca---	lncv---	lnfa---	lnjn---	lnma---	lnsb---	ls-----	lsai---	lsbv---	lsfk---	lstd---	lsxj---	lsxs---	m------	ma-----	mb-----	me-----	mm-----	mr-----	n------	n-cn---	n-cn-ab	n-cn-bc	n-cn-mb	n-cn-nf	n-cn-nk	n-cn-ns	n-cn-nt	n-cn-nu	n-cn-on	n-cn-pi	n-cn-qu	n-cn-sn	n-cn-yk	n-cnh--	n-cnm--	n-cnp--	n-gl---	n-mx---	n-us---	n-us-ak	n-us-al	n-us-ar	n-us-az	n-us-ca	n-us-co	n-us-ct	n-us-dc	n-us-de	n-us-fl	n-us-ga	n-us-hi	n-us-ia	n-us-id	n-us-il	n-us-in	n-us-ks	n-us-ky	n-us-la	n-us-ma	n-us-md	n-us-me	n-us-mi	n-us-mn	n-us-mo	n-us-ms	n-us-mt	n-us-nb	n-us-nc	n-us-nd	n-us-nh	n-us-nj	n-us-nm	n-us-nv	n-us-ny	n-us-oh	n-us-ok	n-us-or	n-us-pa	n-us-ri	n-us-sc	n-us-sd	n-us-tn	n-us-tx	n-us-ut	n-us-va	n-us-vt	n-us-wa	n-us-wi	n-us-wv	n-us-wy	n-usa--	n-usc--	n-use--	n-usl--	n-usm--	n-usn--	n-uso--	n-usp--	n-usr--	n-uss--	n-ust--	n-usu--	n-xl---	nc-----	ncbh---	nccr---	nccz---	nces---	ncgt---	ncho---	ncnq---	ncpn---	nl-----	nm-----	np-----	nr-----	nw-----	nwaq---	nwaw---	nwbb---	nwbf---	nwbn---	nwcj---	nwco---	nwcu---	nwdq---	nwdr---	nweu---	nwgd---	nwgp---	nwhi---	nwht---	nwjm---	nwla---	nwli---	nwmj---	nwmq---	nwna---	nwpr---	nwsc---	nwsd---	nwsn---	nwst---	nwsv---	nwtc---	nwtr---	nwuc---	nwvb---	nwvi---	nwwi---	nwxa---	nwxi---	nwxk---	nwxm---	p------	pn-----	po-----	poas---	pobp---	poci---	pocw---	poea---	pofj---	pofp---	pogg---	pogu---	poji---	pokb---	poki---	poln---	pome---	pomi---	ponl---	ponn---	ponu---	popc---	popl---	pops---	posh---	potl---	poto---	pott---	potv---	poup---	powf---	powk---	pows---	poxd---	poxe---	poxf---	poxh---	ps-----	q------	r------	s------	s-ag---	s-bl---	s-bo---	s-ck---	s-cl---	s-ec---	s-fg---	s-gy---	s-pe---	s-py---	s-sr---	s-uy---	s-ve---	sa-----	sn-----	sp-----	t------	u------	u-ac---	u-at---	u-at-ac	u-at-ne	u-at-no	u-at-qn	u-at-sa	u-at-tm	u-at-vi	u-at-we	u-atc--	u-ate--	u-atn--	u-cs---	u-nz---	w------	x------	xa-----	xb-----	xc-----	xd-----	zd-----	zju----	zma----	zme----	zmo----	zne----	zo-----	zpl----	zs-----	zsa----	zsu----	zur----	zve----");
         
         // fill the obsolete Geographic Area Codes array
         $this->obsoleteGeogAreaCodes = explode("\t", "t-ay---	e-ur-ai	e-ur-aj	nwbc---	e-ur-bw	f-by---	pocp---	e-url--	cr-----	v------	e-ur-er	et-----	e-ur-gs	pogn---	nwga---	nwgs---	a-hk---	ei-----	f-if---	awiy---	awiw---	awiu---	e-ur-kz	e-ur-kg	e-ur-lv	e-ur-li	a-mh---	cm-----	e-ur-mv	n-usw--	a-ok---	a-pt---	e-ur-ru	pory---	nwsb---	posc---	a-sk---	posn---	e-uro--	e-ur-ta	e-ur-tk	e-ur-un	e-ur-uz	a-vn---	a-vs---	nwvr---	e-urv--	a-ys---");
@@ -147,7 +147,7 @@ class File_MARC_Lint_CodeData
         $this->obsoleteLanguageCodes = explode("\t", "ajm	esk	esp	eth	far	fri	gag	gua	int	iri	cam	kus	mla	max	mol	lan	gal	lap	sao	gae	scc	scr	sho	snh	sso	swz	tag	taj	tar	tru	tsw");
         
         // fill the valid Country Codes array
-        $this->countryCodes = explode("\t", "aca	af 	alu	aku	aa 	abc	ae 	as 	an 	ao 	am 	ay 	aq 	ag 	azu	aru	ai 	aw 	at 	au 	aj 	bf 	ba 	bg 	bb 	bw 	be 	bh 	dm 	bm 	bt 	bo 	bn 	bs 	bv 	bl 	bcc	bi 	vb 	bx 	bu 	uv 	br 	bd 	cau	cb 	cm 	xxc	cv 	cj 	cx 	cd 	cl 	cc 	ch 	xa 	xb 	ck 	cou	cq 	cf 	cg 	ctu	cw 	cr 	ci 	cu 	cy 	xr 	iv 	deu	dk 	dcu	ft 	dq 	dr 	em 	ec 	ua 	es 	enk	eg 	ea 	er 	et 	fk 	fa 	fj 	fi 	flu	fr 	fg 	fp 	go 	gm 	gz 	gau	gs 	gw 	gh 	gi 	gr 	gl 	gd 	gp 	gu 	gt 	gv 	pg 	gy 	ht 	hiu	hm 	ho 	hu 	ic 	idu	ilu	ii 	inu	io 	iau	ir 	iq 	iy 	ie 	is 	it 	jm 	ja 	ji 	jo 	ksu	kv 	kz 	kyu	ke 	gb 	kn 	ko 	ku 	kg 	ls 	lv 	le 	lo 	lb 	ly 	lh 	li 	lau	lu 	xn 	mg 	meu	mw 	my 	xc 	ml 	mm 	mbc	xe 	mq 	mdu	mau	mu 	mf 	ot 	mx 	miu	fm 	xf 	mnu	msu	mou	mv 	mc 	mp 	mtu	mj 	mr 	mz 	sx 	nu 	nbu	np 	ne 	na 	nvu	nkc	nl 	nhu	nju	nmu	nyu	nz 	nfc	nq 	ng 	nr 	xh 	xx 	nx 	ncu	ndu	nik	nw 	ntc	no 	nsc	nuc	ohu	oku	mk 	onc	oru	pk 	pw 	pn 	pp 	pf 	py 	pau	pe 	ph 	pc 	pl 	po 	pic	pr 	qa 	qea	quc	riu	rm 	ru 	rw 	re 	xj 	xd 	xk 	xl 	xm 	ws 	sm 	sf 	snc	su 	stk	sg 	rb 	mo 	se 	sl 	si 	xo 	xv 	bp 	so 	sa 	scu	sdu	xs 	sp 	sh 	xp 	ce 	sj 	sr 	sq 	sw 	sz 	sy 	ta 	tz 	tnu	fs 	txu	th 	tg 	tl 	tma	to 	tr 	ti 	tu 	tk 	tc 	tv 	ug 	un 	ts 	xxk	uik	xxu	uc 	up 	uy 	utu	uz 	nn 	vp 	vc 	ve 	vtu	vm 	vi 	vau	vra	wea	wk 	wlk	wf 	wau	wj 	wvu	ss 	wiu	wyu	xga	xna	xoa	xra	ye 	ykc	za 	rh ");
+        $this->countryCodes = explode("\t", "aa 	abc	aca	ae 	af 	ag 	ai 	aj 	aku	alu	am 	an 	ao 	aq 	aru	as 	at 	au 	aw 	ay 	azu	ba 	bb 	bcc	bd 	be 	bf 	bg 	bh 	bi 	bl 	bm 	bn 	bo 	bp 	br 	bs 	bt 	bu 	bv 	bw 	bx 	ca 	cau	cb 	cc 	cd 	ce 	cf 	cg 	ch 	ci 	cj 	ck 	cl 	cm 	co 	cou	cq 	cr 	ctu	cu 	cv 	cw 	cx 	cy 	dcu	deu	dk 	dm 	dq 	dr 	ea 	ec 	eg 	em 	enk	er 	es 	et 	fa 	fg 	fi 	fj 	fk 	flu	fm 	fp 	fr 	fs 	ft 	gau	gb 	gd 	gh 	gi 	gl 	gm 	go 	gp 	gr 	gs 	gt 	gu 	gv 	gw 	gy 	gz 	hiu	hm 	ho 	ht 	hu 	iau	ic 	idu	ie 	ii 	ilu	inu	io 	iq 	ir 	is 	it 	iv 	iy 	ja 	ji 	jm 	jo 	ke 	kg 	kn 	ko 	ksu	ku 	kv 	kyu	kz 	lau	lb 	le 	lh 	li 	lo 	ls 	lu 	lv 	ly 	mau	mbc	mc 	mdu	meu	mf 	mg 	miu	mj 	mk 	ml 	mm 	mnu	mo 	mou	mp 	mq 	mr 	msu	mtu	mu 	mv 	mw 	mx 	my 	mz 	na 	nbu	ncu	ndu	ne 	nfc	ng 	nhu	nik	nju	nkc	nl 	nmu	nn 	no 	np 	nq 	nr 	nsc	ntc	nu 	nuc	nvu	nw 	nx 	nyu	nz 	ohu	oku	onc	oru	ot 	pau	pc 	pe 	pf 	pg 	ph 	pic	pk 	pl 	pn 	po 	pp 	pr 	pw 	py 	qa 	qea	quc	rb 	re 	rh 	riu	rm 	ru 	rw 	sa 	sc 	scu	sd 	sdu	se 	sf 	sg 	sh 	si 	sj 	sl 	sm 	sn 	snc	so 	sp 	sq 	sr 	ss 	st 	stk	su 	sw 	sx 	sy 	sz 	ta 	tc 	tg 	th 	ti 	tk 	tl 	tma	tnu	to 	tr 	ts 	tu 	tv 	txu	tz 	ua 	uc 	ug 	uik	un 	up 	utu	uv 	uy 	uz 	vau	vb 	vc 	ve 	vi 	vm 	vp 	vra	vtu	wau	wea	wf 	wiu	wj 	wk 	wlk	ws 	wvu	wyu	xa 	xb 	xc 	xd 	xe 	xf 	xga	xh 	xj 	xk 	xl 	xm 	xn 	xna	xo 	xoa	xp 	xr 	xra	xs 	xv 	xx 	xxc	xxk	xxu	ye 	ykc	za ");
         
         // fill the obsolete Country Codes array
         $this->obsoleteCountryCodes = explode("\t", "ai 	air	ac 	ajr	bwr	cn 	cz 	cp 	ln 	cs 	err	gsr	ge 	gn 	hk 	iw 	iu 	jn 	kzr	kgr	lvr	lir	mh 	mvr	nm 	pt 	rur	ry 	xi 	sk 	xxr	sb 	sv 	tar	tt 	tkr	unr	uk 	ui 	us 	uzr	vn 	vs 	wb 	ys 	yu ");
@@ -155,10 +155,10 @@ class File_MARC_Lint_CodeData
         // the codes cash, lcsh, lcshac, mesh, nal, and rvm are covered by 2nd
         // indicators in 600-655
         // they are only used when indicators are not available
-        $this->sources600_651 = explode("\t", "aass	aat	abne	afset	agrifors	agrovoc	agrovocf	agrovocs	aiatsisl	aiatsisp	aiatsiss	aktp	albt	allars	amg	apaist	asft	asrcrfcd	asrcseo	asrctoa	asth	atla	aucsh	barn	bella	bet	bgtchm	bhammf	bhashe	bibalex	biccbmc	bicssc	bidex	bisacsh	bisacmt	bisacrt	blmlsh	bt	cabt	cash	cct	ccte	cctf	ceeus	chirosh	cht	ciesiniv	cilla	conorsi	csahssa	csalsct	csapa	csh	csht	cstud	czenas	dacs	dcs	ddcrit	dissao	dit	drama	dtict	ebfem	eclas	eet	eflch	eks	embne	ept	ericd	est	eurovocen	eurovocsl	fast	fgtpcm	finmesh	fire	fmesh	fnhl	francis	galestne	gem	georeft	gst	gtt	hapi	hkcan	helecon	henn	hlasstg	hoidokki	huc	iaat	ica	icpsr	idas	iescs	iest	ilot	ilpt	inist	inspect	ipat	ipsp	isis	itglit	itoamc	itrt	jhpb	jhpk	jlabsh	kaa	kao	kaunokki	kdm	kitu	kkts	kssbar	kta	ktpt	ktta	kula	kupu	lacnaf	larpcal	lcsh	lcshac	lcstt	lctgm	lemac	lemb	liv	lnmmbr	local	ltcsh	lua	maaq	mar	masa	mech	mesh	mipfesd	mmm	mpirdes	msh	mtirdes	musa	muzeukc	muzeukn	muzeukv	muzvukci	nal	nalnaf	nasat	ncjt	ndllsh	nicem	nimacsc	nlgaf	nlgkk	nlgsh	nlmnaf	nsbncf	ntcpsc	ntcsd	ntissc	nzggn	nznb	ogst	onet	opms	pascal	peri	pha	pkk	pmbok	pmcsg	pmt	poliscit	popinte	precis	prvt	psychit	quiding	qlsp	qrma	qrmak	qtglit	raam	ram	rasuqam	renib	reo	rero	rerovoc	reveal	rma	rpe	rswk	rswkaf	rugeo	rurkp	rvm	sao	sbiao	scbi	scgdst	scisshl	scot	sears	sfit	sgc	sgce	shbe	she	sigle	sipri	sk	skon	slem	smda	snt	socio	sosa	spines	ssg	swd	swemesh	taika	taxhs	tbit	tesa	test	tgn	tho	thub	tlka	tlsh	toit	trt	trtsa	tsht	ttka	tucua	ulan	umitrist	unbisn	unbist	unescot	usaidt	vmj	waqaf	watrest	wgst	wot	wpicsh	ysa");
-        $this->obsoleteSources600_651 = explode("\t", "cash	lcsh	lcshac	mesh	nal	reroa	rvm");
-        $this->sources655 = explode("\t", "aat	afset	aiatsisl	aiatsisp	aiatsiss	aktp	amg	asrcrfcd	asrcseo	asrctoa	asth	aucsh	barn	bibalex	biccbmc	bgtchm	bisacsh	bisacmt	bisacrt	bt	cash	chirosh	cct	conorsi	csht	czenas	dacs	dcs	dct	eet	eflch	embne	ept	ericd	estc	eurovocen	eurovocsl	fast	fbg	finmesh	fire	galestne	gem	gmgpc	gsafd	gst	gtlm	hapi	hkcan	hoidokki	ica	ilot	itglit	itrt	jhpb	jhpk	kkts	lacnaf	lcsh	lcshac	lcstt	lctgm	lemac	local	maaq	mar	marcgt	mech	mesh	migfg	mim	msh	muzeukc	muzeukn	muzeukv	muzvukci	nal	nalnaf	ngl	nimafc	nlgaf	nlgkk	nlgsh	nlmnaf	nmc	nsbncf	nzggn	nznb	onet	opms	pkk	pmcsg	pmt	quiding	qlsp	qrmak	qtglit	raam	radfg	rbbin	rbgenr	rbpap	rbpri	rbprov	rbpub	rbtyp	reo	rerovoc	reveal	rma	rswk	rswkaf	rugeo	rvm	sao	scbi	sears	sgc	sgce	sgp	sipri	skon	snt	socio	spines	ssg	swd	swemesh	tbit	tesa	tho	thub	toit	tsht	tucua	ulan	vmj	waqaf");
-        $this->obsoleteSources655 = explode("\t", "cash	ftamc	lcsh	lcshac	mesh	nal	reroa	rvm");
+        $this->sources600_651 = explode("\t", "aass	aat	abne	afset	agrifors	agrovoc	agrovocf	agrovocs	aiatsisl	aiatsisp	aiatsiss	aktp	albt	allars	amg	apaist	asft	asrcrfcd	asrcseo	asrctoa	asth	atg	atla	aucsh	barn	bella	bet	bgtchm	bhammf	bhashe	bib1814	bibalex	biccbmc	bicssc	bidex	bisacsh	bisacmt	bisacrt	bjornson	blmlsh	bt	cabt	cash	ccsa	cct	ccte	cctf	cdcng	ceeus	chirosh	cht	ciesiniv	cilla	collett	conorsi	csahssa	csalsct	csapa	csh	csht	cstud	czenas	dacs	dcs	ddcrit	ddcut	dissao	dit	dltlt	dltt	drama	dtict	ebfem	eclas	eet	eflch	eks	embne	emnmus	ept	erfemn	ericd	est	eum	eurovocen	eurovocsl	fast	fgtpcm	finmesh	fire	fmesh	fnhl	francis	fssh	galestne	gem	georeft	gst	gtt	hamsun	hapi	hkcan	helecon	henn	hlasstg	hoidokki	hrvmesh	huc	humord	iaat	ica	icpsr	idas	idsbb	idszbz	idszbzes	idszbzna	idszbzzg	idszbzzh	idszbzzk	iescs	iest	ilot	ilpt	inist	inspect	ipat	ipsp	isis	itglit	itoamc	itrt	jhpb	jhpk	jlabsh	jurivoc	kaa	kao	kaunokki	kdm	khib	kitu	kkts	kssbar	kta	ktpt	ktta	kula	kupu	lacnaf	larpcal	lcdgt	lcmpt	lcsh	lcshac	lcstt	lctgm	lemac	lemb	liv	lnmmbr	local	ltcsh	lua	maaq	mar	masa	mech	mesh	mipfesd	mmm	mpirdes	msh	mtirdes	musa	muzeukc	muzeukn	muzeukv	muzvukci	nal	nalnaf	nasat	nbiemnfag	ncjt	netc	ndllsh	nicem	nimacsc	nlgaf	nlgkk	nlgsh	nlmnaf	no-ubo-mr	noraf	noram	norbok	noubomn	noubojur	nsbncf	nskps	ntcpsc	ntcsd	ntids	ntissc	nzggn	nznb	odlt	ogst	onet	opms	ordnok	pascal	pepp	peri	pha	pkk	pmbok	pmcsg	pmont	pmt	poliscit	popinte	precis	prvt	psychit	quiding	qlsp	qrma	qrmak	qtglit	raam	ram	rasuqam	renib	reo	rero	rerovoc	reveal	rma	rpe	rswk	rswkaf	rugeo	rurkp	rvm	samisk	sao	sbiao	sbt	scbi	scgdst	scisshl	scot	sears	sfit	sgc	sgce	shbe	she	shsples	sigle	sipri	sk	skon	slem	smda	snt	socio	solstad	sosa	spines	ssg	stw	swd	swemesh	taika	taxhs	tbit	tekord	tesa	test	tgn	thesoz	tho	thub	tlka	tlsh	toit	trt	trtsa	tsht	ttka	tucua	ukslc	ulan	umitrist	unbisn	unbist	unescot	usaidt	vmj	waqaf	watrest	wgst	wot	wpicsh	ysa");
+        $this->obsoleteSources600_651 = explode("\t", "cash	lcsh	lcshac	mesh	nal	nobomn	noubojor	reroa	rvm");
+        $this->sources655 = explode("\t", "aat	afset	aiatsisl	aiatsisp	aiatsiss	aktp	amg	asrcrfcd	asrcseo	asrctoa	asth	aucsh	barn	barngf	bib1814	bibalex	biccbmc	bgtchm	bisacsh	bisacmt	bisacrt	bjornson	bt	cash	chirosh	cct	cdcng	cjh	collett	conorsi	csht	czenas	dacs	dcs	dct	ddcut	eet	eflch	embne	emnmus	ept	erfemn	ericd	estc	eurovocen	eurovocsl	fast	fbg	finmesh	fire	galestne	gatbeg	gem	gmgpc	gsafd	gst	gtlm	hamsun	hapi	hkcan	hoidokki	ica	ilot	isbdcontent	isbdmedia	itglit	itrt	jhpb	jhpk	kkts	lacnaf	lcgft	lcmpt	lcsh	lcshac	lcstt	lctgm	lemac	local	maaq	mar	marcgt	mech	mesh	migfg	mim	msh	muzeukc	muzeukn	muzeukv	muzvukci	nal	nalnaf	nbiemnfag	ndlsh	netc	ngl	nimafc	nlgaf	nlgkk	nlgsh	nlmnaf	nmc	no-ubo-mr	noraf	noram	nsbncf	ntids	nzggn	nznb	onet	opms	ordnok	pkk	pmcsg	pmt	quiding	qlsp	qrmak	qtglit	raam	radfg	rasuqam	rbbin	rbgenr	rbpap	rbpri	rbprov	rbpub	rbtyp	rdacarrier	rdacontent	rdamedia	reo	rerovoc	reveal	rma	rswk	rswkaf	rugeo	rvm	sao	saogf	scbi	sears	sgc	sgce	sgp	sipri	skon	snt	socio	spines	ssg	stw	swd	swemesh	tbit	tesa	thesoz	tho	thub	toit	tsht	tucua	ukslc	ulan	vmj	waqaf");
+        $this->obsoleteSources655 = explode("\t", "cash	ftamc	lcsh	lcshac	marccarrier	marccontent	marcmedia	mesh	nal	reroa	rvm");
         // @codingStandardsIgnoreEnd
     }
     // }}}
diff --git a/vendor/pear-pear.php.net/File_MARC/File/MARC/Record.php b/vendor/pear-pear.php.net/File_MARC/File/MARC/Record.php
index 8c091982fdb8eecee95f5d6110d72c056416d452..d99016832774e045f92c2bd5f21e17b57a6be913 100644
--- a/vendor/pear-pear.php.net/File_MARC/File/MARC/Record.php
+++ b/vendor/pear-pear.php.net/File_MARC/File/MARC/Record.php
@@ -550,7 +550,9 @@ class File_MARC_Record
         /* End fields and record */
 
         $json->fields = $fields;
-        return json_encode($json);
+        $json_rec = json_encode($json);
+        // Required because json_encode() does not let us stringify integer keys
+        return preg_replace('/("subfields":)(.*?)\["([^\"]+?)"\]/', '\1\2{"0":"\3"}', $json_rec);
     }
 
     // }}}
diff --git a/vendor/pear-pear.php.net/File_MARC/File/MARCXML.php b/vendor/pear-pear.php.net/File_MARC/File/MARCXML.php
index b24a28d9ee6ac0962ac7418da264748886a32e37..6e644d4bfc97f59d7f4675ed921df0feb352d648 100644
--- a/vendor/pear-pear.php.net/File_MARC/File/MARCXML.php
+++ b/vendor/pear-pear.php.net/File_MARC/File/MARCXML.php
@@ -120,13 +120,21 @@ class File_MARCXML extends File_MARCBASE
      *
      * // Retrieve MARC records from a string (e.g. Z39 query results)
      * $monographs = new File_MARC($raw_marc, SOURCE_STRING);
+     *
+     * // Retrieve MARCXML records from a string with a namespace URL
+     * $records = new File_MARCXML($xml_data, File_MARC::SOURCE_STRING,"http://www.loc.gov/MARC21/slim");
+     *
+     * // Retrieve MARCXML records from a file with a namespace prefix
+     * $records = new File_MARCXML($xml_data, File_MARC::SOURCE_FILE,"marc",true);
      * ?>
      * </code>
      *
-     * @param string $source Name of the file, or a raw MARC string
-     * @param int    $type   Source of the input, either SOURCE_FILE or SOURCE_STRING
+     * @param string $source    Name of the file, or a raw MARC string
+     * @param int    $type      Source of the input, either SOURCE_FILE or SOURCE_STRING
+     * @param string $ns        URI or prefix of the namespace
+     * @param bool   $is_prefix TRUE if $ns is a prefix, FALSE if it's a URI; defaults to FALSE
      */
-    function __construct($source, $type = self::SOURCE_FILE)
+    function __construct($source, $type = self::SOURCE_FILE, $ns = "", $is_prefix = false)
     {
         parent::__construct($source, $type);
 
@@ -136,16 +144,16 @@ class File_MARCXML extends File_MARCBASE
 
         case self::SOURCE_FILE:
             $this->type = self::SOURCE_FILE;
-            $this->source = simplexml_load_file($source);
+            $this->source = simplexml_load_file($source, "SimpleXMLElement", 0, $ns, $is_prefix);
             break;
 
         case self::SOURCE_STRING:
             $this->type = self::SOURCE_STRING;
-            $this->source = simplexml_load_string($source);
+            $this->source = simplexml_load_string($source, "SimpleXMLElement", 0, $ns, $is_prefix);
             break;
 
         default:
-             throw new File_MARC_Exception(File_MARC_Exception::$messages[File_MARC_Exception::ERROR_INVALID_SOURCE], File_MARC_Exception::ERROR_INVALID_SOURCE);
+            throw new File_MARC_Exception(File_MARC_Exception::$messages[File_MARC_Exception::ERROR_INVALID_SOURCE], File_MARC_Exception::ERROR_INVALID_SOURCE);
         }
 
         if (!$this->source) {
@@ -188,7 +196,7 @@ class File_MARCXML extends File_MARCBASE
         } else {
             return false;
         }
-        
+
         if ($record) {
             return $this->_decode($record);
         } else {
@@ -214,19 +222,22 @@ class File_MARCXML extends File_MARCBASE
 
         // go through all the control fields
         foreach ($text->controlfield as $controlfield) {
-            $marc->appendField(new File_MARC_Control_Field((string)$controlfield['tag'], $controlfield));
+            $controlfieldattributes = $controlfield->attributes();
+            $marc->appendField(new File_MARC_Control_Field((string)$controlfieldattributes['tag'], $controlfield));
         }
 
         // go through all the data fields
         foreach ($text->datafield as $datafield) {
+            $datafieldattributes = $datafield->attributes();
             $subfield_data = array();
             foreach ($datafield->subfield as $subfield) {
-                $subfield_data[] = new File_MARC_Subfield((string)$subfield['code'], $subfield);
+                $subfieldattributes = $subfield->attributes();
+                $subfield_data[] = new File_MARC_Subfield((string)$subfieldattributes['code'], $subfield);
             }
             
             // If the data is invalid, let's just ignore the one field
             try {
-                $new_field = new File_MARC_Data_Field((string)$datafield['tag'], $subfield_data, $datafield['ind1'], $datafield['ind2']);
+                $new_field = new File_MARC_Data_Field((string)$datafieldattributes['tag'], $subfield_data, $datafieldattributes['ind1'], $datafieldattributes['ind2']);
                 $marc->appendField($new_field);
             } catch (Exception $e) {
                 $marc->addWarning($e->getMessage());
diff --git a/vendor/symfony/yaml/Symfony/Component/Yaml/Escaper.php b/vendor/symfony/yaml/Symfony/Component/Yaml/Escaper.php
index f77545db9563264c9c3a9d01336ef991eb7ab9d3..3576e9ae6faa4be62804c174c6b695dda80bd37f 100644
--- a/vendor/symfony/yaml/Symfony/Component/Yaml/Escaper.php
+++ b/vendor/symfony/yaml/Symfony/Component/Yaml/Escaper.php
@@ -2,6 +2,7 @@
 
 /*
  * This file is part of the Symfony package.
+ *
  * (c) Fabien Potencier <fabien@symfony.com>
  *
  * For the full copyright and license information, please view the LICENSE
@@ -71,7 +72,7 @@ class Escaper
      */
     public static function requiresSingleQuoting($value)
     {
-        return preg_match('/[ \s \' " \: \{ \} \[ \] , & \* \# \?] | \A[ - ? | < > = ! % @ ` ]/x', $value);
+        return preg_match('/[ \s \' " \: \{ \} \[ \] , & \* \# \?] | \A[ \- ? | < > = ! % @ ` ]/x', $value);
     }
 
     /**
diff --git a/vendor/symfony/yaml/Symfony/Component/Yaml/Inline.php b/vendor/symfony/yaml/Symfony/Component/Yaml/Inline.php
index 45978a12554a7663fe3b7669a778e41e00dc401d..45efced3c89acc62abe281b76711e68fb3125166 100644
--- a/vendor/symfony/yaml/Symfony/Component/Yaml/Inline.php
+++ b/vendor/symfony/yaml/Symfony/Component/Yaml/Inline.php
@@ -2,6 +2,7 @@
 
 /*
  * This file is part of the Symfony package.
+ *
  * (c) Fabien Potencier <fabien@symfony.com>
  *
  * For the full copyright and license information, please view the LICENSE
diff --git a/vendor/symfony/yaml/Symfony/Component/Yaml/LICENSE b/vendor/symfony/yaml/Symfony/Component/Yaml/LICENSE
index 88a57f8d8da49126c6f7d225d567ad216ace4d83..0b3292cf9023507c2f1f93ddfee7dd8e15838048 100644
--- a/vendor/symfony/yaml/Symfony/Component/Yaml/LICENSE
+++ b/vendor/symfony/yaml/Symfony/Component/Yaml/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2004-2013 Fabien Potencier
+Copyright (c) 2004-2014 Fabien Potencier
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and associated documentation files (the "Software"), to deal
diff --git a/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php b/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php
index d852cbf9bcf1f260bd89036904ad68ea76b108b6..e8fe91848ebbdc8229e39842723b85840bbd983d 100644
--- a/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php
+++ b/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php
@@ -2,6 +2,7 @@
 
 /*
  * This file is part of the Symfony package.
+ *
  * (c) Fabien Potencier <fabien@symfony.com>
  *
  * For the full copyright and license information, please view the LICENSE
diff --git a/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsBasicTests.yml b/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsBasicTests.yml
index 5542b0dc6326caf9855a3f2e86243780bd735adb..ac0efa88d1a1bb7d510c54338a37e4905df68c4a 100644
--- a/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsBasicTests.yml
+++ b/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsBasicTests.yml
@@ -56,7 +56,7 @@ test: Simple Mapping
 brief: |
     You can add a keyed list (also known as a dictionary or
     hash) to your document by placing each member of the
-    list on a new line, with a colon seperating the key
+    list on a new line, with a colon separating the key
     from its value.  In YAML, this type of list is called
     a mapping.
 yaml: |
diff --git a/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsSpecificationExamples.yml b/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsSpecificationExamples.yml
index 6f99f7545306020ae07ee6a610c5509a39079930..1e59f3bf9888429752819aff27ebd52735cb714d 100644
--- a/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsSpecificationExamples.yml
+++ b/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsSpecificationExamples.yml
@@ -222,7 +222,7 @@ yaml: |
       # Following node labeled SS
       - &SS Sammy Sosa
    rbi:
-      - *SS # Subsequent occurance
+      - *SS # Subsequent occurrence
       - Ken Griffey
 php: |
    array(
diff --git a/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsTypeTransfers.yml b/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsTypeTransfers.yml
index 9972c1f0d9d528f090ddee99dc206d35c1826a22..aac4e68077f679eacbd08e862777c22fa3127350 100644
--- a/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsTypeTransfers.yml
+++ b/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsTypeTransfers.yml
@@ -226,11 +226,11 @@ brief: >
     time zone.
 yaml: |
     iso8601: 2001-12-14t21:59:43.10-05:00
-    space seperated: 2001-12-14 21:59:43.10 -05:00
+    space separated: 2001-12-14 21:59:43.10 -05:00
 php: |
     array(
       'iso8601' => mktime( 2001, 12, 14, 21, 59, 43, 0.10, "-05:00" ),
-      'space seperated' => mktime( 2001, 12, 14, 21, 59, 43, 0.10, "-05:00" )
+      'space separated' => mktime( 2001, 12, 14, 21, 59, 43, 0.10, "-05:00" )
     )
 ---
 test: Date
diff --git a/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/InlineTest.php b/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/InlineTest.php
index a93b91612dcae9c85b7354bbdb6753e010ab8218..dc497ca21c7c81b83ef4c45938633797f0268b6d 100644
--- a/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/InlineTest.php
+++ b/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/InlineTest.php
@@ -11,7 +11,6 @@
 
 namespace Symfony\Component\Yaml\Tests;
 
-use Symfony\Component\Yaml\Yaml;
 use Symfony\Component\Yaml\Inline;
 
 class InlineTest extends \PHPUnit_Framework_TestCase
@@ -31,11 +30,11 @@ class InlineTest extends \PHPUnit_Framework_TestCase
             $this->assertEquals($yaml, Inline::dump($value), sprintf('::dump() converts a PHP structure to an inline YAML (%s)', $yaml));
         }
 
-        foreach ($this->getTestsForParse() as $yaml => $value) {
+        foreach ($this->getTestsForParse() as $value) {
             $this->assertEquals($value, Inline::parse(Inline::dump($value)), 'check consistency');
         }
 
-        foreach ($testsForDump as $yaml => $value) {
+        foreach ($testsForDump as $value) {
             $this->assertEquals($value, Inline::parse(Inline::dump($value)), 'check consistency');
         }
     }
@@ -197,7 +196,6 @@ class InlineTest extends \PHPUnit_Framework_TestCase
             '.Inf' => -log(0),
             '-.Inf' => log(0),
             "'686e444'" => '686e444',
-            '.Inf' => 646e444,
             '"foo\r\nbar"' => "foo\r\nbar",
             "'foo#bar'" => 'foo#bar',
             "'foo # bar'" => 'foo # bar',
@@ -205,6 +203,9 @@ class InlineTest extends \PHPUnit_Framework_TestCase
 
             "'a \"string\" with ''quoted strings inside'''" => 'a "string" with \'quoted strings inside\'',
 
+            "'-dash'" => '-dash',
+            "'-'" => '-',
+
             // sequences
             '[foo, bar, false, null, 12]' => array('foo', 'bar', false, null, 12),
             '[\'foo,bar\', \'foo bar\']' => array('foo,bar', 'foo bar'),
diff --git a/vendor/symfony/yaml/Symfony/Component/Yaml/Unescaper.php b/vendor/symfony/yaml/Symfony/Component/Yaml/Unescaper.php
index ac3a576b677bcb53a7afd187fa4c3760c4d68619..1b8eeed57a94a6aefb037d68a43c7a71c89864f3 100644
--- a/vendor/symfony/yaml/Symfony/Component/Yaml/Unescaper.php
+++ b/vendor/symfony/yaml/Symfony/Component/Yaml/Unescaper.php
@@ -2,6 +2,7 @@
 
 /*
  * This file is part of the Symfony package.
+ *
  * (c) Fabien Potencier <fabien@symfony.com>
  *
  * For the full copyright and license information, please view the LICENSE
@@ -48,7 +49,7 @@ class Unescaper
     public function unescapeDoubleQuotedString($value)
     {
         $self = $this;
-        $callback = function($match) use ($self) {
+        $callback = function ($match) use ($self) {
             return $self->unescapeCharacter($match[0]);
         };
 
diff --git a/vendor/symfony/yaml/Symfony/Component/Yaml/composer.json b/vendor/symfony/yaml/Symfony/Component/Yaml/composer.json
index 1a009c16d6a27bbca9c1dfdb21969a4897a431a0..33c298535449cd0591202247a97348b06889c2e5 100644
--- a/vendor/symfony/yaml/Symfony/Component/Yaml/composer.json
+++ b/vendor/symfony/yaml/Symfony/Component/Yaml/composer.json
@@ -25,7 +25,7 @@
     "minimum-stability": "dev",
     "extra": {
         "branch-alias": {
-            "dev-master": "2.3-dev"
+            "dev-master": "2.4-dev"
         }
     }
 }
diff --git a/vendor/zendframework/zendrest/.gitignore b/vendor/zendframework/zendrest/.gitignore
index a725465aee245635a2bd129af54858ed32c84cb8..a280b3e3bea2dfb94f47455be060e84257f56756 100644
--- a/vendor/zendframework/zendrest/.gitignore
+++ b/vendor/zendframework/zendrest/.gitignore
@@ -1 +1,6 @@
-vendor/
\ No newline at end of file
+composer.lock
+composer.phar
+vendor
+.buildpath
+.project
+.settings/
\ No newline at end of file
diff --git a/vendor/zendframework/zendrest/composer.json b/vendor/zendframework/zendrest/composer.json
index 3a7ea7c9c4e3f5aa37ab4763481cd4d652efc216..1efb4ff77f7e26876a09e4c3753ee9b5d75dd1f6 100644
--- a/vendor/zendframework/zendrest/composer.json
+++ b/vendor/zendframework/zendrest/composer.json
@@ -21,12 +21,8 @@
     ],
     "require": {
         "php": ">=5.3.3",
-        "zendframework/zend-http": ">=2.0.0",
-        "zendframework/zend-uri": ">=2.0.0"
-    },
-    "extra": {
-        "branch-alias": {
-            "dev-master": "2.0.x-dev"
-        }
+        "zendframework/zend-http": "~2.0",
+        "zendframework/zend-uri": "~2.0",
+        "zendframework/zendxml": "~1.0-dev"
     }
 }
diff --git a/vendor/zendframework/zendrest/library/ZendRest/Client/RestClient.php b/vendor/zendframework/zendrest/library/ZendRest/Client/RestClient.php
index c009de19d5fc6d7b0dc96862da4444e62c0efce1..6f44738e373f26ddca4d93ec86765fb986e02499 100644
--- a/vendor/zendframework/zendrest/library/ZendRest/Client/RestClient.php
+++ b/vendor/zendframework/zendrest/library/ZendRest/Client/RestClient.php
@@ -74,6 +74,7 @@ class RestClient
         if (null === $this->httpClient) {
             $this->setHttpClient(new HttpClient());
         }
+
         return $this->httpClient;
     }
 
@@ -250,25 +251,26 @@ class RestClient
             $response           = $this->{'rest' . $method}($args[0], $data);
             $this->data         = array(); //Initializes for next Rest method.
             return new Result($response->getBody());
-        } else {
-            // More than one arg means it's definitely a Zend_Rest_Server
-            if (count($args) == 1) {
-                // Uses first called function name as method name
-                if (!isset($this->data['method'])) {
-                    $this->data['method'] = $method;
-                    $this->data['arg1']   = $args[0];
-                }
-                $this->data[$method]  = $args[0];
-            } else {
-                $this->data['method'] = $method;
-                if (count($args) > 0) {
-                    foreach ($args as $key => $arg) {
-                        $key = 'arg' . $key;
-                        $this->data[$key] = $arg;
-                    }
-                }
-            }
-            return $this;
         }
+
+			// More than one arg means it's definitely a Zend_Rest_Server
+			if (count($args) == 1) {
+				 // Uses first called function name as method name
+				 if (!isset($this->data['method'])) {
+					  $this->data['method'] = $method;
+					  $this->data['arg1']   = $args[0];
+				 }
+				 $this->data[$method]  = $args[0];
+			} else {
+				 $this->data['method'] = $method;
+				 if (count($args) > 0) {
+					  foreach ($args as $key => $arg) {
+							$key = 'arg' . $key;
+							$this->data[$key] = $arg;
+					  }
+				 }
+			}
+
+			return $this;
     }
 }
diff --git a/vendor/zendframework/zendrest/library/ZendRest/Client/Result.php b/vendor/zendframework/zendrest/library/ZendRest/Client/Result.php
index 33868b9d12bc29e678cc116818a004a02c4c5251..b1946dc48fea802d47cfb1464254437f93f9f924 100644
--- a/vendor/zendframework/zendrest/library/ZendRest/Client/Result.php
+++ b/vendor/zendframework/zendrest/library/ZendRest/Client/Result.php
@@ -11,6 +11,7 @@
 namespace ZendRest\Client;
 
 use IteratorAggregate;
+use ZendXml\Security as XmlSecurity;
 
 /**
  * @category   Zend
@@ -40,7 +41,7 @@ class Result implements IteratorAggregate
     public function __construct($data)
     {
         set_error_handler(array($this, 'handleXmlErrors'));
-        $this->_sxml = simplexml_load_string($data);
+        $this->_sxml = XmlSecurity::scan($data);
         restore_error_handler();
         if($this->_sxml === false) {
             if ($this->_errstr === null) {
@@ -100,9 +101,9 @@ class Result implements IteratorAggregate
             return null;
         } elseif ($count == 1) {
             return $result[0];
-        } else {
-            return $result;
         }
+
+        return $result;
     }
 
     /**
@@ -119,13 +120,12 @@ class Result implements IteratorAggregate
         if (null !== ($value = $this->__get($method))) {
             if (!is_array($value)) {
                 return $this->toValue($value);
-            } else {
-                $return = array();
-                foreach ($value as $element) {
-                    $return[] = $this->toValue($element);
-                }
-                return $return;
             }
+            $return = array();
+            foreach ($value as $element) {
+                $return[] = $this->toValue($element);
+            }
+            return $return;
         }
 
         return null;
@@ -178,9 +178,9 @@ class Result implements IteratorAggregate
             return true;
         } elseif (ctype_alpha($status) && $status != 'success') {
             return false;
-        } else {
-            return (bool) $status;
         }
+
+        return (bool) $status;
     }
 
     public function isError()
@@ -188,9 +188,9 @@ class Result implements IteratorAggregate
         $status = $this->getStatus();
         if ($status) {
             return false;
-        } else {
-            return true;
         }
+
+        return true;
     }
 
     public function isSuccess()
@@ -198,9 +198,9 @@ class Result implements IteratorAggregate
         $status = $this->getStatus();
         if ($status) {
             return true;
-        } else {
-            return false;
         }
+
+        return false;
     }
 
     /**
@@ -215,13 +215,14 @@ class Result implements IteratorAggregate
         if (!$this->getStatus()) {
             $message = $this->_sxml->xpath('//message');
             return (string) $message[0];
+        }
+
+        $result = $this->_sxml->xpath('//response');
+
+        if (count($result) > 1) {
+            return (string) "An error occured.";
         } else {
-            $result = $this->_sxml->xpath('//response');
-            if (count($result) > 1) {
-                return (string) "An error occured.";
-            } else {
-                return (string) $result[0];
-            }
+            return (string) $result[0];
         }
     }
 }
diff --git a/vendor/zendframework/zendrest/tests/ZendRest/ClientTest.php b/vendor/zendframework/zendrest/tests/ZendRest/ClientTest.php
index d1828b72e312849f3ef719773d9dbbfb02cc09fb..3a28507930ae721d2257e232310d7d7f189047f3 100644
--- a/vendor/zendframework/zendrest/tests/ZendRest/ClientTest.php
+++ b/vendor/zendframework/zendrest/tests/ZendRest/ClientTest.php
@@ -273,7 +273,7 @@ class ClientTest extends \PHPUnit_Framework_TestCase
      */
     public function testInvalidXmlInClientResultLeadsToException()
     {
-        $this->setExpectedException('ZendRest\Client\Exception\ResultException', 'REST Response Error');
+        $this->setExpectedException('ZendRest\Client\Exception\ResultException');
         $result = new Client\Result("invalidxml");
     }
 }
diff --git a/vendor/zendframework/zendxml/.gitignore b/vendor/zendframework/zendxml/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..0a4f6e27f51cfbb9496f5c261d9c1583a8cf1d75
--- /dev/null
+++ b/vendor/zendframework/zendxml/.gitignore
@@ -0,0 +1,5 @@
+composer.lock
+vendor
+.buildpath
+.project
+.settings
diff --git a/vendor/zendframework/zendxml/.travis.yml b/vendor/zendframework/zendxml/.travis.yml
new file mode 100644
index 0000000000000000000000000000000000000000..0b2847df4f53b91d9fdad66a1043087e8db23309
--- /dev/null
+++ b/vendor/zendframework/zendxml/.travis.yml
@@ -0,0 +1,17 @@
+language: php
+php:
+  - 5.3
+  - 5.4
+  - 5.5
+
+before_script:
+  - composer self-update
+  - composer install --dev
+
+script:
+  - ./vendor/bin/phpunit -c ./tests
+  - ./bin/check-cs.sh
+  
+notifications:
+  irc: "irc.freenode.org#zftalk.dev"
+  email: false
diff --git a/vendor/zendframework/zendxml/README.md b/vendor/zendframework/zendxml/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..2c67008da9d0abc452f54f651d4182746b2a53c9
--- /dev/null
+++ b/vendor/zendframework/zendxml/README.md
@@ -0,0 +1,50 @@
+ZendXml
+=======
+
+An utility component for XML usage and best practices in PHP
+
+Installation
+------------
+
+You can install using:
+
+```
+curl -s https://getcomposer.org/installer | php
+php composer.phar install
+```
+
+Notice that this library doesn't have any external dependencies, the usage of composer is for autoloading and standard purpose. 
+
+
+ZendXml\Security
+----------------
+
+This is a security component to prevent [XML eXternal Entity](https://www.owasp.org/index.php/XML_External_Entity_%28XXE%29_Processing) (XXE) and [XML Entity Expansion](http://projects.webappsec.org/w/page/13247002/XML%20Entity%20Expansion) (XEE) attacks on XML documents.
+
+The XXE attack is prevented disabling the load of external entities in the libxml library used by PHP, using the function [libxml_disable_entity_loader](http://www.php.net/manual/en/function.libxml-disable-entity-loader.php).
+
+The XEE attack is prevented looking inside the XML document for ENTITY usage. If the XML document uses ENTITY the library throw an Exception.
+
+We have two static methods to scan and load XML document from a string (scan) and from a file (scanFile). You can decide to get a SimpleXMLElement or DOMDocument as result, using the following use cases:
+
+```php
+use ZendXml\Security as XmlSecurity;
+
+$xml = <<<XML
+<?xml version="1.0"?>
+<results>
+    <result>test</result>
+</results>
+XML;
+
+// SimpleXML use case
+$simplexml = XmlSecurity::scan($xml);
+printf ("SimpleXMLElement: %s\n", ($simplexml instanceof \SimpleXMLElement) ? 'yes' : 'no');
+
+// DOMDocument use case
+$dom = new \DOMDocument('1.0');
+$dom = XmlSecurity::scan($xml, $dom);
+printf ("DOMDocument: %s\n", ($dom instanceof \DOMDocument) ? 'yes' : 'no');
+```
+
+
diff --git a/vendor/zendframework/zendxml/bin/check-cs.sh b/vendor/zendframework/zendxml/bin/check-cs.sh
new file mode 100644
index 0000000000000000000000000000000000000000..018adb5577a901cb6875b21d1808b452ad7b2491
--- /dev/null
+++ b/vendor/zendframework/zendxml/bin/check-cs.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+FIXER_CONFIG="`dirname $0`/../.php_cs"
+FIXER_PATH="`dirname $0`/../vendor/fabpot/php-cs-fixer/php-cs-fixer"
+CS=""
+
+(
+    cd "`dirname $0`/../" ;
+    CS=$(php vendor/fabpot/php-cs-fixer/php-cs-fixer fix -v --dry-run .)
+)
+
+if [[ "$CS" ]];
+then
+    echo -en '\E[31m'"$CS\033[1m\033[0m";
+    printf "\n";
+    echo -en '\E[31;47m'"\033[1mCoding standards check failed!\033[0m"
+    printf "\n";
+    exit 2;
+fi
+
+echo -en '\E[32m'"\033[1mCoding standards check passed!\033[0m"
+printf "\n";
+
+echo $CS
diff --git a/vendor/zendframework/zendxml/composer.json b/vendor/zendframework/zendxml/composer.json
new file mode 100644
index 0000000000000000000000000000000000000000..3b4ca91debbb5bf04a01b3d7ed0eb04aab55cffc
--- /dev/null
+++ b/vendor/zendframework/zendxml/composer.json
@@ -0,0 +1,35 @@
+{
+    "name": "zendframework/zendxml",
+    "description": "Utility library for XML usage, best practices, and security in PHP",
+    "type": "library",
+    "license": "BSD-3-Clause",
+    "keywords": [
+        "zf2",
+        "xml",
+        "security"
+    ],
+    "homepage": "http://packages.zendframework.com/",
+    "autoload": {
+        "psr-0": {
+            "ZendXml": "library/"
+        }
+    },
+    "repositories": [
+        {
+            "type": "composer",
+            "url": "http://packages.zendframework.com/"
+        }
+    ],
+    "require": {
+        "php": ">=5.3.3"
+    },
+    "extra": {
+        "branch-alias": {
+            "dev-master": "1.0-dev"
+        }
+    },
+    "require-dev": {
+        "fabpot/php-cs-fixer": "*@dev",
+        "phpunit/phpunit": "~3.7"
+    }
+}
diff --git a/vendor/zendframework/zendxml/library/ZendXml/Exception/ExceptionInterface.php b/vendor/zendframework/zendxml/library/ZendXml/Exception/ExceptionInterface.php
new file mode 100644
index 0000000000000000000000000000000000000000..c55eb9034cef7a1b9dde2fd50b298c8492bb2817
--- /dev/null
+++ b/vendor/zendframework/zendxml/library/ZendXml/Exception/ExceptionInterface.php
@@ -0,0 +1,14 @@
+<?php
+/**
+ * Zend Framework (http://framework.zend.com/)
+ *
+ * @link      http://github.com/zendframework/zf2 for the canonical source repository
+ * @copyright Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license   http://framework.zend.com/license/new-bsd New BSD License
+ */
+
+namespace ZendXml\Exception;
+
+interface ExceptionInterface
+{
+}
diff --git a/vendor/zendframework/zendxml/library/ZendXml/Exception/InvalidArgumentException.php b/vendor/zendframework/zendxml/library/ZendXml/Exception/InvalidArgumentException.php
new file mode 100644
index 0000000000000000000000000000000000000000..819fb9f6e633b41063efebd1777c7ba970f9fa35
--- /dev/null
+++ b/vendor/zendframework/zendxml/library/ZendXml/Exception/InvalidArgumentException.php
@@ -0,0 +1,19 @@
+<?php
+/**
+ * Zend Framework (http://framework.zend.com/)
+ *
+ * @link      http://github.com/zendframework/zf2 for the canonical source repository
+ * @copyright Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license   http://framework.zend.com/license/new-bsd New BSD License
+ */
+
+namespace ZendXml\Exception;
+
+/**
+ * Invalid argument exception
+ */
+class InvalidArgumentException
+    extends \InvalidArgumentException
+    implements ExceptionInterface
+{
+}
diff --git a/vendor/zendframework/zendxml/library/ZendXml/Exception/RuntimeException.php b/vendor/zendframework/zendxml/library/ZendXml/Exception/RuntimeException.php
new file mode 100644
index 0000000000000000000000000000000000000000..1d5f50625e9c79d74fc14b4118a0ec7c506d0975
--- /dev/null
+++ b/vendor/zendframework/zendxml/library/ZendXml/Exception/RuntimeException.php
@@ -0,0 +1,19 @@
+<?php
+/**
+ * Zend Framework (http://framework.zend.com/)
+ *
+ * @link      http://github.com/zendframework/zf2 for the canonical source repository
+ * @copyright Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license   http://framework.zend.com/license/new-bsd New BSD License
+ */
+
+namespace ZendXml\Exception;
+
+/**
+ * Runtime exception
+ */
+class RuntimeException
+    extends \RuntimeException
+    implements ExceptionInterface
+{
+}
diff --git a/vendor/zendframework/zendxml/library/ZendXml/Security.php b/vendor/zendframework/zendxml/library/ZendXml/Security.php
new file mode 100644
index 0000000000000000000000000000000000000000..a0dc8a101afa155e2181710bf3411c22ff95e79e
--- /dev/null
+++ b/vendor/zendframework/zendxml/library/ZendXml/Security.php
@@ -0,0 +1,135 @@
+<?php
+/**
+ * Zend Framework (http://framework.zend.com/)
+ *
+ * @link      http://github.com/zendframework/zf2 for the canonical source repository
+ * @copyright Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license   http://framework.zend.com/license/new-bsd New BSD License
+ */
+namespace ZendXml;
+
+use DOMDocument;
+use SimpleXMLElement;
+
+class Security
+{
+    const ENTITY_DETECT = 'Detected use of ENTITY in XML, disabled to prevent XXE/XEE attacks';
+
+    /**
+     * Heuristic scan to detect entity in XML
+     *
+     * @param  string $xml
+     * @throws Exception\RuntimeException
+     */
+    protected static function heuristicScan($xml)
+    {
+        if (strpos($xml, '<!ENTITY') !== false) {
+            throw new Exception\RuntimeException(self::ENTITY_DETECT);
+        }
+    }
+
+    /**
+     * Scan XML string for potential XXE and XEE attacks
+     *
+     * @param   string $xml
+     * @param   DomDocument $dom
+     * @throws  Exception\RuntimeException
+     * @return  SimpleXMLElement|DomDocument|boolean
+     */
+    public static function scan($xml, DOMDocument $dom = null)
+    {
+        // If running with PHP-FPM we perform an heuristic scan
+        // We cannot use libxml_disable_entity_loader because of this bug
+        // @see https://bugs.php.net/bug.php?id=64938
+        if (self::isPhpFpm()) {
+            self::heuristicScan($xml);
+        }
+
+        if (null === $dom) {
+            $simpleXml = true;
+            $dom = new DOMDocument();
+        }
+
+        if (!self::isPhpFpm()) {
+            $loadEntities = libxml_disable_entity_loader(true);
+            $useInternalXmlErrors = libxml_use_internal_errors(true);
+        }
+
+        // Load XML with network access disabled (LIBXML_NONET)
+        // error disabled with @ for PHP-FPM scenario
+        set_error_handler(function ($errno, $errstr) {
+            if (substr_count($errstr, 'DOMDocument::loadXML()') > 0) {
+                return true;
+            }
+            return false;
+        }, E_WARNING);
+        $result = $dom->loadXml($xml, LIBXML_NONET);
+        restore_error_handler();
+
+        if (!$result) {
+            // Entity load to previous setting
+            if (!self::isPhpFpm()) {
+                libxml_disable_entity_loader($loadEntities);
+                libxml_use_internal_errors($useInternalXmlErrors);
+            }
+            return false;
+        }
+
+        // Scan for potential XEE attacks using ENTITY, if not PHP-FPM
+        if (!self::isPhpFpm()) {
+            foreach ($dom->childNodes as $child) {
+                if ($child->nodeType === XML_DOCUMENT_TYPE_NODE) {
+                    if ($child->entities->length > 0) {
+                        throw new Exception\RuntimeException(self::ENTITY_DETECT);
+                    }
+                }
+            }
+        }
+
+        // Entity load to previous setting
+        if (!self::isPhpFpm()) {
+            libxml_disable_entity_loader($loadEntities);
+            libxml_use_internal_errors($useInternalXmlErrors);
+        }
+
+        if (isset($simpleXml)) {
+            $result = simplexml_import_dom($dom);
+            if (!$result instanceof SimpleXMLElement) {
+                return false;
+            }
+            return $result;
+        }
+        return $dom;
+    }
+
+    /**
+     * Scan XML file for potential XXE/XEE attacks
+     *
+     * @param  string $file
+     * @param  DOMDocument $dom
+     * @throws Exception\InvalidArgumentException
+     * @return SimpleXMLElement|DomDocument
+     */
+    public static function scanFile($file, DOMDocument $dom = null)
+    {
+        if (!file_exists($file)) {
+            throw new Exception\InvalidArgumentException(
+                "The file $file specified doesn't exist"
+            );
+        }
+        return self::scan(file_get_contents($file), $dom);
+    }
+
+    /**
+     * Return true if PHP is running with PHP-FPM
+     *
+     * @return boolean
+     */
+    public static function isPhpFpm()
+    {
+        if (substr(php_sapi_name(), 0, 3) === 'fpm') {
+            return true;
+        }
+        return false;
+    }
+}
diff --git a/vendor/zendframework/zendxml/tests/Bootstrap.php b/vendor/zendframework/zendxml/tests/Bootstrap.php
new file mode 100644
index 0000000000000000000000000000000000000000..a9d0e6a5511f5637e60c2b98bc2a9dc45aa5448e
--- /dev/null
+++ b/vendor/zendframework/zendxml/tests/Bootstrap.php
@@ -0,0 +1,92 @@
+<?php
+/**
+ * Zend Framework (http://framework.zend.com/)
+ *
+ * @link      http://github.com/zendframework/zf2 for the canonical source repository
+ * @copyright Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license   http://framework.zend.com/license/new-bsd New BSD License
+ * @package   Zend
+ */
+
+/**
+ * Set error reporting to the level to which Zend Framework code must comply.
+ */
+error_reporting( E_ALL | E_STRICT );
+
+if (class_exists('PHPUnit_Runner_Version', true)) {
+    $phpUnitVersion = PHPUnit_Runner_Version::id();
+    if ('@package_version@' !== $phpUnitVersion && version_compare($phpUnitVersion, '3.7.0', '<')) {
+        echo 'This version of PHPUnit (' .
+            PHPUnit_Runner_Version::id() .
+            ') is not supported for ZendXml unit tests - use v 3.7.0 or higher.'
+            . PHP_EOL
+        ;
+        exit(1);
+    }
+    unset($phpUnitVersion);
+}
+
+/**
+ * Setup autoloading
+ */
+// Try to use Composer autoloader
+if (file_exists(__DIR__ . '/../vendor/autoload.php')) {
+    include_once __DIR__ . '/../vendor/autoload.php';
+}
+// ... or use a simple SPL autoloader
+else{
+
+    // update include path
+    set_include_path(implode(PATH_SEPARATOR, array(
+        __DIR__.'/../src',
+        __DIR__,
+        get_include_path()
+    )));
+
+    /**
+     * @link https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md#example-implementation
+     */
+    spl_autoload_register(function ($className) {
+        $className = ltrim($className, '\\');
+        $fileName  = '';
+        $namespace = '';
+        if ($lastNsPos = strrpos($className, '\\')) {
+            $namespace = substr($className, 0, $lastNsPos);
+            $className = substr($className, $lastNsPos + 1);
+            $fileName  = str_replace('\\', DIRECTORY_SEPARATOR, $namespace) . DIRECTORY_SEPARATOR;
+        }
+        $fileName .= str_replace('_', DIRECTORY_SEPARATOR, $className) . '.php';
+        require $fileName;
+    });
+
+}
+
+/**
+ * Code coverage option
+ */
+if (defined('TESTS_GENERATE_REPORT') && TESTS_GENERATE_REPORT === true) {
+    $codeCoverageFilter = new PHP_CodeCoverage_Filter();
+
+    $lastArg = end($_SERVER['argv']);
+    if (is_dir($zfCoreTests . '/' . $lastArg)) {
+        $codeCoverageFilter->addDirectoryToWhitelist($zfCoreLibrary . '/' . $lastArg);
+    } elseif (is_file($zfCoreTests . '/' . $lastArg)) {
+        $codeCoverageFilter->addDirectoryToWhitelist(dirname($zfCoreLibrary . '/' . $lastArg));
+    } else {
+        $codeCoverageFilter->addDirectoryToWhitelist($zfCoreLibrary);
+    }
+
+    /*
+     * Omit from code coverage reports the contents of the tests directory
+     */
+    $codeCoverageFilter->addDirectoryToBlacklist($zfCoreTests, '');
+    $codeCoverageFilter->addDirectoryToBlacklist(PEAR_INSTALL_DIR, '');
+    $codeCoverageFilter->addDirectoryToBlacklist(PHP_LIBDIR, '');
+
+    unset($codeCoverageFilter);
+}
+
+/*
+ * Unset global variables that are no longer needed.
+ */
+unset($phpUnitVersion);
diff --git a/vendor/zendframework/zendxml/tests/ZendXmlTest/SecurityTest.php b/vendor/zendframework/zendxml/tests/ZendXmlTest/SecurityTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..4132505e5e18751fbe6a3c43134aee33d1ded719
--- /dev/null
+++ b/vendor/zendframework/zendxml/tests/ZendXmlTest/SecurityTest.php
@@ -0,0 +1,137 @@
+<?php
+/**
+ * Zend Framework (http://framework.zend.com/)
+ *
+ * @link      http://github.com/zendframework/zf2 for the canonical source repository
+ * @copyright Copyright (c) 2005-2013 Zend Technologies USA Inc. (http://www.zend.com)
+ * @license   http://framework.zend.com/license/new-bsd New BSD License
+ */
+namespace ZendTest\Xml;
+
+use ZendXml\Security as XmlSecurity;
+use ZendXml\Exception;
+use DOMDocument;
+use SimpleXMLElement;
+
+class SecurityTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * @expectedException ZendXml\Exception\RuntimeException
+     */
+    public function testScanForXEE()
+    {
+        $xml = <<<XML
+<?xml version="1.0"?>
+<!DOCTYPE results [<!ENTITY harmless "completely harmless">]>
+<results>
+    <result>This result is &harmless;</result>
+</results>
+XML;
+
+        $this->setExpectedException('ZendXml\Exception\RuntimeException');
+        $result = XmlSecurity::scan($xml);
+    }
+
+    public function testScanForXXE()
+    {
+        $file = tempnam(sys_get_temp_dir(), 'ZendXml_Security');
+        file_put_contents($file, 'This is a remote content!');
+        $xml = <<<XML
+<?xml version="1.0"?>
+<!DOCTYPE root
+[
+<!ENTITY foo SYSTEM "file://$file">
+]>
+<results>
+    <result>&foo;</result>
+</results>
+XML;
+
+        try {
+            $result = XmlSecurity::scan($xml);
+        } catch (Exception\RuntimeException $e) {
+            unlink($file);
+            return;
+        }
+        $this->fail('An expected exception has not been raised.');
+    }
+
+    public function testScanSimpleXmlResult()
+    {
+        $result = XmlSecurity::scan($this->_getXml());
+        $this->assertTrue($result instanceof SimpleXMLElement);
+        $this->assertEquals($result->result, 'test');
+    }
+
+    public function testScanDom()
+    {
+        $dom = new DOMDocument('1.0');
+        $result = XmlSecurity::scan($this->_getXml(), $dom);
+        $this->assertTrue($result instanceof DOMDocument);
+        $node = $result->getElementsByTagName('result')->item(0);
+        $this->assertEquals($node->nodeValue, 'test');
+    }
+
+    public function testScanInvalidXml()
+    {
+        $xml = <<<XML
+<foo>test</bar>
+XML;
+
+        $result = XmlSecurity::scan($xml);
+        $this->assertFalse($result);
+    }
+
+    public function testScanInvalidXmlDom()
+    {
+        $xml = <<<XML
+<foo>test</bar>
+XML;
+
+        $dom = new DOMDocument('1.0');
+        $result = XmlSecurity::scan($xml, $dom);
+        $this->assertFalse($result);
+    }
+
+    public function testScanFile()
+    {
+        $file = tempnam(sys_get_temp_dir(), 'ZendXml_Security');
+        file_put_contents($file, $this->_getXml());
+
+        $result = XmlSecurity::scanFile($file);
+        $this->assertTrue($result instanceof SimpleXMLElement);
+        $this->assertEquals($result->result, 'test');
+        unlink($file);
+    }
+
+    public function testScanXmlWithDTD()
+    {
+        $xml = <<<XML
+<?xml version="1.0"?>
+<!DOCTYPE results [
+<!ELEMENT results (result+)>
+<!ELEMENT result (#PCDATA)>
+]>
+<results>
+    <result>test</result>
+</results>
+XML;
+
+        $dom = new DOMDocument('1.0');
+        $result = XmlSecurity::scan($xml, $dom);
+        $this->assertTrue($result instanceof DOMDocument);
+        $this->assertTrue($result->validate());
+    }
+
+    protected function _getXml()
+    {
+        return <<<XML
+<?xml version="1.0"?>
+<results>
+    <result>test</result>
+</results>
+XML;
+
+    }    
+    
+}
diff --git a/vendor/zendframework/zendxml/tests/phpunit.xml.dist b/vendor/zendframework/zendxml/tests/phpunit.xml.dist
new file mode 100644
index 0000000000000000000000000000000000000000..069784bd7ffb7e593605a93ed101b981295e871c
--- /dev/null
+++ b/vendor/zendframework/zendxml/tests/phpunit.xml.dist
@@ -0,0 +1,27 @@
+<phpunit bootstrap="./Bootstrap.php" colors="true">
+    <testsuites>
+        <testsuite name="ZendXml Test Suite">
+            <directory>./ZendXmlTest</directory>
+            <exclude>./ZendXmlTest/TestAsset</exclude>
+        </testsuite>
+    </testsuites>
+
+    <groups>
+        <exclude>
+        </exclude>
+    </groups>
+
+    <listeners>
+    </listeners>
+
+    <filter>
+        <blacklist>
+            <directory suffix=".php">./ZendXmlTest</directory>
+            <directory>../vendor</directory>
+        </blacklist>
+    </filter>
+
+    <php>
+    </php>
+
+</phpunit>