--- pcx-1.1.18.orig/debian/README.Debian
+++ pcx-1.1.18/debian/README.Debian
@@ -0,0 +1,7 @@
+PCx for DEBIAN
+----------------------
+
+PCx is configured to use the sparse Cholesky solver of Ng and Peyton,
+not the (proprietary) IBM code WSSMP.
+
+James R. Van Zandt <jrv@debian.org>, Mon, 14 Sep 1998 20:28:40 -0400
--- pcx-1.1.18.orig/debian/changelog
+++ pcx-1.1.18/debian/changelog
@@ -0,0 +1,155 @@
+pcx (1.1.18-2) unstable; urgency=low
+
+  * debian/control: build-depends on gfortran instead of g77
+
+ -- James R. Van Zandt <jrv@debian.org>  Sat, 26 Jul 2008 22:38:52 -0400
+
+pcx (1.1.18-1) unstable; urgency=low
+
+  * New upstream release, "Fixed bug in memory allocation for array
+    min_phi in PCx.c"
+
+  * SRC/main.c: #include stdlib.h and strings.h, to silence warnings about
+    implicit declarations.
+
+  * debian/control: add Homepage field.  Bump policy number to 3.8.0.
+
+  * debian/rules: handle DEB_BUILD_OPTIONS "nostrip" and "parallel".
+    Don't ignore errors for "make clean".  Use gfortran instead of f77.
+
+  * debian/pcx.doc-base: move to section Science/Mathematics per doc-base
+    manual (closes:Bug#329964)
+
+ -- James R. Van Zandt <jrv@debian.org>  Wed, 23 Jul 2008 20:39:07 -0400
+
+pcx (1.1.17-3) unstable; urgency=low
+
+  * install the library and header files (thanks to Dennis Furey
+    <fureyd@lsbu.ac.uk>, closes:Bug#377509)
+
+  * debian/control: bump version to 3.7.2 (no changes needed)
+
+ -- James R. Van Zandt <jrv@debian.org>  Tue, 11 Jul 2006 20:42:06 -0400
+
+pcx (1.1.17-2) unstable; urgency=low
+
+  * debian/control: depend on g77 (closes:Bug#300394)
+
+ -- James R. Van Zandt <jrv@debian.org>  Tue, 22 Mar 2005 20:01:44 -0500
+
+pcx (1.1.17-1) unstable; urgency=low
+
+  * New upstream release dated 2004-05-11.
+
+  * Add upstream changelog (from website) as
+    /usr/share/doc/pcx/changelog.html[.gz] plus text version
+
+  * Register user guide with doc-base.
+  
+  * PCx.1: point to /usr/share/doc rather than /usr/doc, convert some
+    plain hyphens to \- or \[em].
+  
+  * contol: versioned depends on debhelper
+
+ -- James R. Van Zandt <jrv@debian.org>  Sun, 13 Mar 2005 21:32:29 -0500
+
+pcx (1.1.10-5) unstable; urgency=low
+
+  * F2C/Makefile: eliminate "-DKR_headers " from CFLAGS to allow
+    compilation by gcc-3.4 (closes:Bug#273155, thanks to Andreas Jochens
+    <aj at andaco.de> and Kaare Hviid <ukh at id.cbs.dk>).  Use inherited
+    $CFLAGS, but include local additions in .c.o rule.
+  
+  * build: set -e.
+  
+  * debian/rules: call dh_installman instead of deprecated dh_installmanpages
+
+  * debian/diversion.ex - delete unused example file
+
+  * debian/control build-depends on c-shell|csh not just the virtual
+    package c-shell.
+
+ -- James R. Van Zandt <jrv@debian.org>  Sat, 25 Sep 2004 13:47:26 -0400
+
+pcx (1.1.10-4) unstable; urgency=low
+
+  * new maintainer email
+
+ -- James R. Van Zandt <jrv@debian.org>  Sun,  9 Dec 2001 21:36:49 -0500
+
+pcx (1.1.10-3) unstable; urgency=low
+
+  * debian/control: comma separate the build-deps
+
+ -- James R. Van Zandt <jrv@vanzandt.mv.com>  Mon, 23 Apr 2001 22:06:27 -0400
+
+pcx (1.1.10-2) unstable; urgency=low
+
+  * Build-Depends on c-shell (closes:Bug#94524)
+
+ -- James R. Van Zandt <jrv@vanzandt.mv.com>  Sat, 21 Apr 2001 09:28:27 -0400
+
+pcx (1.1.10-1) unstable; urgency=low
+
+  * New upstream release dated 2001-02-27
+  * F2C/Makefile: add -DNON_UNIX_STDIO to CFLAGS to work around invalid
+    assumptions about the libc implementation.
+
+ -- James R. Van Zandt <jrv@vanzandt.mv.com>  Mon,  2 Apr 2001 21:02:51 -0400
+
+pcx (1.1.9-7) unstable; urgency=low
+
+  * debian/control: Move Build-Depend line to source section.
+  * Support debian-test.
+
+ -- James R. Van Zandt <jrv@vanzandt.mv.com>  Sun,  1 Apr 2001 20:01:02 -0400
+
+pcx (1.1.9-6) unstable; urgency=low
+
+  * build-depends on debhelper
+
+ -- James R. Van Zandt <jrv@vanzandt.mv.com>  Sun,  3 Sep 2000 11:46:56 -0400
+
+pcx (1.1.9-5) unstable; urgency=low
+
+  * Allow other packages to also supply the mps(5) manual page, using the
+    alternatives mechanism.
+
+ -- James R. Van Zandt <jrv@vanzandt.mv.com>  Sat, 23 Oct 1999 10:52:06 -0400
+
+pcx (1.1.9-4) unstable; urgency=low
+
+  * Create /usr/doc/pcx symlink.
+
+ -- James R. Van Zandt <jrv@vanzandt.mv.com>  Tue, 14 Sep 1999 21:50:27 -0400
+
+pcx (1.1.9-3) unstable; urgency=low
+
+  * Update to FHS
+
+ -- James R. Van Zandt <jrv@vanzandt.mv.com>  Sat,  4 Sep 1999 12:36:49 -0400
+
+pcx (1.1.9-2) unstable; urgency=low
+
+  * Link against glibc2.1
+
+ -- James R. Van Zandt <jrv@vanzandt.mv.com>  Thu,  2 Sep 1999 19:54:52 -0400
+
+pcx (1.1.9-1) unstable; urgency=low
+
+  * New upstream release: fixed a memory leak.  The upstream authors did
+    not bump the version number for this minor change (exchanging two
+    lines of code).  Judging from the older versions remaining on their
+    ftp site, this is the ninth version of PCx, so I have assigned the
+    above version number to the Debian package.
+
+ -- James R. Van Zandt <jrv@vanzandt.mv.com>  Mon,  9 Nov 1998 20:03:38 -0500
+
+pcx (1.1-1) unstable; urgency=low
+
+  * SRC/parameters.c: insert #include <stdlib.h>, for declaration of atof().
+  * Initial Release.  Added manpages: PCx.1 mps.5
+
+ -- James R. Van Zandt <jrv@vanzandt.mv.com>  Mon, 14 Sep 1998 20:28:40 -0400
+
+
--- pcx-1.1.18.orig/debian/compat
+++ pcx-1.1.18/debian/compat
@@ -0,0 +1 @@
+4
--- pcx-1.1.18.orig/debian/dirs
+++ pcx-1.1.18/debian/dirs
@@ -0,0 +1 @@
+usr/bin
--- pcx-1.1.18.orig/debian/changelog-upstream.html
+++ pcx-1.1.18/debian/changelog-upstream.html
@@ -0,0 +1,206 @@
+<html>
+
+<head>
+<title> PCx: Releases and Change Log </title>
+<meta name="description" value="PCx change logs updates">
+<meta name="keywords" value="linear programming software interior-point">
+</head>
+
+<body bgcolor="#ffffff" link="DarkGreen" vlink="Red">
+
+<p><img src="pcx.gif" ALT="PCx" width="579" height="55"> </p>
+
+<h3>New Versions and Release Dates </h3>
+
+<p>5/15/96: Version <b>beta-1.0</b> announced. <br>
+10/18/96: Version <b>beta-2.0</b> announced. <br>
+3/7/97: Version <b>1.0</b> announced. <br>
+11/2/97: Version <b>1.1</b> announced. <br>
+1/26/98: Windows Version <b>1.1</b> announced.<br>
+8/6/98: AMPL interface and PCxGUI (Java interface) announced.<br>
+</p>
+
+<hr>
+
+<h3>Detailed Change Log for PCx (updated 3/19/04) </h3>
+
+<table BORDER="1">
+  <tr>
+    <th>Date</th>
+    <th>Change </th>
+  </tr>
+  <tr>
+    <td>5/15/96</td>
+    <td>Initial Release: version <b>beta-1.0</b> </td>
+  </tr>
+  <tr>
+    <td>5/17/96</td>
+    <td>Added Solaris executable and timing code </td>
+  </tr>
+  <tr>
+    <td>5/28/96</td>
+    <td>Added #include stdlib.h to readmps.c for Linux </td>
+  </tr>
+  <tr>
+    <td>7/09/96</td>
+    <td>Fixed bug in presolve.c </td>
+  </tr>
+</table>
+
+<table BORDER="1">
+  <tr>
+    <th>Date</th>
+    <th>Change </th>
+  </tr>
+  <tr>
+    <td>10/18/96</td>
+    <td>Release of version <b>beta-2.0:</b></td>
+  </tr>
+  <tr>
+    <td>... </td>
+    <td>Includes dense column handling, many memory leak and bug fixes.</td>
+  </tr>
+  <tr>
+    <td>11/25/96</td>
+    <td>New ComputeADAT routine: greatly improves efficiency on some problems</td>
+  </tr>
+</table>
+
+<table BORDER="1">
+  <tr>
+    <th>Date</th>
+    <th>Change </th>
+  </tr>
+  <tr>
+    <td>3/7/97</td>
+    <td>Release of version <b>1.0:</b></td>
+  </tr>
+  <tr>
+    <td>... </td>
+    <td>Includes higher-order corrections, scaling, bug fixes. </td>
+  </tr>
+  <tr>
+    <td>6/25/97</td>
+    <td>Some memory leaks corrected</td>
+  </tr>
+  <tr>
+    <td>8/18/97</td>
+    <td>Fixed various minor leaks and bugs</td>
+  </tr>
+  <tr>
+    <td>...</td>
+    <td>Provided cleaner interface to sparse Cholesky solvers</td>
+  </tr>
+  <tr>
+    <td>9/22/97</td>
+    <td>Fixed various leaks and changed input routine to always seek MPS file in current
+    directory first </td>
+  </tr>
+  <tr>
+    <td>10/20/97</td>
+    <td>Fixed a few bugs in documentation </td>
+  </tr>
+</table>
+
+<table BORDER="1">
+  <tr>
+    <th>Date</th>
+    <th>Change </th>
+  </tr>
+  <tr>
+    <td>11/2/97</td>
+    <td>Release of version <b>1.1:</b></td>
+  </tr>
+  <tr>
+    <td>...</td>
+    <td>Includes hooks to incorporate alternative linear equations solvers, including WSSMP </td>
+  </tr>
+  <tr>
+    <td>12/8/97</td>
+    <td>Computational results added for WSSMP and Ng-Peyton versions</td>
+  </tr>
+  <tr>
+    <td>1/26/98</td>
+    <td>PCx 1.1 for Windows released</td>
+  </tr>
+  <tr>
+    <td>3/01/98</td>
+    <td>2 minor memory bugs fixed, new linux version built</td>
+  </tr>
+  <tr>
+    <td>3/10/98</td>
+    <td>PCx 1.1 for Windows - parameter file bug fixed </td>
+  </tr>
+  <tr>
+    <td>6/10/98</td>
+    <td>Added DOS version 1.1, unified parameter.c for DOS, Unix, all-C versions </td>
+  </tr>
+  <tr>
+    <td>8/6/98</td>
+    <td>AMPL interface and PCxGUI (Java interface) released.</td>
+  </tr>
+  <tr>
+    <td>8/12/99</td>
+    <td>Unix and C versions changed to accept problems with zero rows in the constraint
+    matrix, and to improve efficiency of&nbsp; initial matrix ordering routines. (We are
+    working on improvements to the dense column handling, which will be released shortly.)</td>
+  </tr>
+  <tr>
+    <td>9/13/99</td>
+    <td>Bug fix in PCx Unix and&nbsp; C versions. Bug affected instances with bound
+    constraints in whch Gondzio correctors were used.</td>
+  </tr>
+  <tr>
+    <td>12/14/00</td>
+    <td>Fixed readmps.c to avoid core dumping on incorrect MPS input files.</td>
+  </tr>
+  <tr>
+    <td>2/27/01</td>
+    <td>A few fixes in line search heuristic and MPS file handling; affects only a few cases.</td>
+  </tr>
+  <tr>
+    <td>12/23/01</td>
+    <td>Fixed handling of &quot;MI&quot; in the BOUNDS section of MPS files; affects only
+    cases in which MI variables have upper bounds other than 0. </td>
+  </tr>
+  <tr>
+    <td>2/26/02</td>
+    <td>Updated PCx-AMPL interface to fix some bugs in the interface, and
+      document the installation process more thoroughly. Also created
+      precompiled executables for Intel Solaris, Sun Solaris, and Linux. </td>
+  </tr>
+  <tr>
+    <td>2/28/02</td>
+    <td>Fixed bug in preprocessor for bounded variables in a singleton row. </td>
+  </tr>
+  <tr>
+    <td>11/4/03</td>
+    <td>Fixed another bug in preprocessor, again concerning row singletons. </td>
+  </tr>
+  <tr>
+    <td>11/5/03</td>
+    <td>Updated PCx-C (C version) to use latest version of fortran-to-C utility
+      f2c. </td>
+  </tr>
+  <tr>
+    <td>3/19/04</td>
+    <td>Fixed minor bugs concerning handling of upper bounds (in PCx.c) and
+      scaling (in scale.c). Unified the unix and Matlab-ready distributions. </td>
+  </tr>
+  <tr>
+    <td>5/11/04</td>
+    <td>Fixed hash.c to allow more than 1.3 million rows and columns; redefined
+      allowable hash table sizes. </td>
+  </tr>
+</table>
+
+<hr>
+
+<h3>&nbsp;<image align="right" src="http://www-unix.mcs.anl.gov/otc/cgi-bin/neos/Counters/PCx.cgi"> </h3>
+<!--<p><img align="right" SRC="PCx.gif" width="40" height="16"> </p>-->
+
+<p align="center">[ <a href="./">PCx Home Page</a> | <a href="../../index.html">Optimization
+Technology Center</a> | <a href="http://www-neos.mcs.anl.gov/">NEOS Server</a> | <a
+href="../../Guide/index.html">NEOS Guide</a> | <a href="../index.html">NEOS Tools</a> ] </p>
+</body>
+</html>
--- pcx-1.1.18.orig/debian/prerm
+++ pcx-1.1.18/debian/prerm
@@ -0,0 +1,39 @@
+#! /bin/sh
+# prerm script for pcx
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <prerm> `remove'
+#        * <old-prerm> `upgrade' <new-version>
+#        * <new-prerm> `failed-upgrade' <old-version>
+#        * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
+#        * <deconfigured's-prerm> `deconfigure' `in-favour'
+#          <package-being-installed> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see /usr/doc/packaging-manual/
+
+case "$1" in
+    remove|upgrade|deconfigure)
+	update-alternatives --remove mps.5.gz \
+	    /usr/share/man/man5/mps-pcx.5.gz
+
+        ;;
+    failed-upgrade)
+        ;;
+    *)
+        echo "prerm called with unknown argument \`$1'" >&2
+        exit 0
+    ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
+
--- pcx-1.1.18.orig/debian/pcx.doc-base
+++ pcx-1.1.18/debian/pcx.doc-base
@@ -0,0 +1,13 @@
+Document: pcx-user-guide
+Title: PCx User Guide
+Author: Joseph Czyzyk, Sanjay Mehrotra, Michael Wagner, and Stephen J. Wright
+Abstract: We describe the code PCx, a primal-dual interior-point code
+ for linear programming.  Information is given about problem
+ formulation and the underlying algorithm, along with instructions for
+ installing, invoking, and using the code.  Computational results on
+ standard test problems are tabulated.  The current version number is
+ 1.1.
+Section: Science/Mathematics
+
+Format: postscript
+Files: /usr/share/doc/pcx/PCx-user.ps.gz
--- pcx-1.1.18.orig/debian/PCx.1
+++ pcx-1.1.18/debian/PCx.1
@@ -0,0 +1,156 @@
+.\"                                    -*- nroff -*-
+.TH PCX 1
+.SH NAME
+PCx \- primal-dual interior-point code for linear programming 
+.SH SYNOPSIS
+.B PCx
+\fIprobname\fP[.mps]
+.SH DESCRIPTION
+This manual page documents briefly the \fBPCx\fP command.
+\fBPCx\fP has more detailed documentation in PostScript format; see [1].
+.PP
+\fBPCx\fP is a freely available primal-dual interior-point code for linear
+programming. It implements Mehrotra's predictor-corrector algorithm,
+the algorithm that forms the basis of most existing interior-point
+codes for general linear programming. The major computational
+operation \[em] solution of a linear system with a large, sparse positive
+definite coefficient matrix \[em] is performed with the sparse Cholesky
+package of Ng and Peyton (Oak Ridge National Laboratory), with minor
+modifications to handle small pivot elements.
+.PP
+\fBPCx\fP accepts any valid linear program that can be specified in
+the MPS format \[em] see mps(5).  \fBPCx\fP does not solve integer linear
+programs. 
+.SH OPTIONS
+\fBPCx\fP has no command-line options.
+.SH PARAMETERS
+\fBPCx\fP allows many parameters and options to be set by the user.
+These quantities are read from a specifications file.  If the name of
+the MPS input file is \fIprobname.mps\fP, \fBPCx\fP looks for the
+following files, in order: 
+.nf
+	\fIprobname\fP.spc
+	\fIprobname\fP.specs
+	spc
+	specs
+	PCx.specs
+.fi
+If more than one of these files exist, \fBPCx\fP uses the first file
+in the list and ignores the others.
+.PP
+The following keywords can be used in the specifications file,
+together with their default settings.  The file should contain one
+such keyword per line, together with its corresponding numerical value
+or option, if appropriate.  The file is processed sequentially from
+beginning to end, so the effect of any line can be undone by a later
+line.  For keywords with a yes/no argument, omission of the argument
+will be taken to mean \fByes\fP.  Note that the default setting is not
+necessarily \fByes\fP.  Case is not significant in keywords.
+.sp
+.IP "\fBmin\fP [ \fByes\fP | \fBno\fP ]"
+Minimize the objective (default).
+.IP "\fBmax\fP [ \fByes\fP | \fBno\fP ]"
+Maximize the objective.
+.IP \fBinputdirectory\fP
+If \fBPCx\fP is to search for the MPS input files in another
+directory, in addition to the current working directory, name this
+other directory here.  Include a trailing "/".  \fBPCx\fP always looks
+first in the current working directory.  The output and history files
+are always written to the working directory.
+.IP "\fBsolution\fP [ \fByes\fP | \fBno\fP ]"
+Specify whether to write a solution file \fIprobname.out\fP in the
+current working directory.  Default: yes.
+.IP "\fBhistory\fP [ \fByes\fP | \fBno\fP ]"
+Specify whether to write a history file \fIprobname\fP.log in the
+working directory.  Default: yes.
+.IP "\fBobjectivename\fP \fIname\fP"
+Request the objective cost vector to be the specific row \fIname\fP in
+\fIprobname.mps\fP.  Default: the first row of type "N" in
+\fIprobname.mps\fP is taken to be the objective.
+.IP "\fBrhsname\fP \fIname\fP"
+Request the right-hand side to be the specific column \fIname\fP in
+\fIprobname.mps\fP.  Default: the first RHS encountered in the MPS file.
+.IP "\fBrangename\fP \fIname\fP"
+Request the range to be the specific column \fIname\fP in
+\fIprobname.mps\fP.  Default: the first RANGE encountered in the MPS file.
+.IP "\fBboundname\fP \fIname\fP"
+Request the bound to be the specific column \fIname\fP in
+\fIprobname.mps\fP.  Default: the first BOUND in the MPS file.
+.IP "\fBpresolve\fP [ \fByes\fP | \fBno\fP ]"
+Specify whether or  not to perform presolving.  The purpose of
+presolving is to detect and handle redundant information, producing a
+smaller problem to be solved by the actual linear programming
+algorithm [2].  Default: yes.
+.IP "\fBpreprocess\fP [ \fByes\fP | \fBno\fP ]"
+Same as \fPpresolve\fP.
+.IP "\fBcachesize\fP \fIvalue\fP"
+Specify the size of the cache on the machine, in kilobytes.  Any value
+in the range 0-2048 is acceptable.  Specify 0 for Cray machines.  This
+parameter is used by the Ng-Peyton sparse Cholesky code.  Default: 16.
+.IP "\fBcenterexp\fP \fIvalue\fP"
+Specify the exponent to be used for calculation of the centering
+parameter sigma.  Any real value in the range 1.0-4.0 is allowable.
+Default: 3.0.
+.IP "\fBopttol\fP \fIvalue\fP"
+Specify an optimality tolerance.  Default: 1.e-8.
+.IP "\fBprifeastol\fP \fIvalue\fP"
+Specify a primal feasibility tolerance.  Default: 1.e-8.
+.IP "\fBdualfeastol\fP \fIvalue\fP"
+Specify a dual feasibility tolerance.  Default: 1.e-8.
+.IP "\fBunrollinglevel\fP \fInum\fP"
+Specify the level of loop unrolling.  Allowable values are 1, 2, 4,
+and 8.  This parameter is used only in the Ng-Peyton Cholesky code.
+Default: 4.
+.IP "\fBiterationlimit\fP \fInum\fP"
+Specify an upper limit on the number of iterations.  The algorithm
+terminates in \fBsuboptimal\fP status if it exceeds this many
+iterations without satisfying any of the termination conditions.  Any
+positive integer is allowable.  Default: 100.
+.IP "\fBrefinement\fP [ \fByes\fP | \fBno\fP ]"
+Specify whether to perform preconditioned conjugate gradient
+refinement of the computed solution to the linear system if it has a
+relative residual larger than the parameter \fBprifeastol\fP.
+Default: no.
+.IP "\fBstepfactor\fP \fIvalue\fP"
+Specify a value in the range (0, 1) that is used in Mehrotra's
+adaptive steplength heuristic from [3].  Default: 0.9.
+.IP "\fBscaling\fP [ \fByes\fP | \fBno\fP ]"
+Specify whether or not row and column scaling [4] is performed on the
+constraint matrix.  Default: yes.
+.IP "\fBHOCorrections\fP [ \fByes\fP | \fBno\fP ]"
+Specify whether Gondzio's higher-order corrections [5] are used to enhance
+the search direction.  Default: yes.
+.IP "\fBMaxCorrections\fP \fIvalue\fP"
+If \fBHOCorrections\fP=\fByes\fP, this parameter is an upper limit on
+the number of Gondzio's higher-order corrections allowed at each
+iteration.  If \fIvalue\fP=0, the maximum is determined automatically
+by \fBPCx\fP according to the relative cost of factorization and solve
+operations.  if \fBHOCorrections\fP=\fBno\fP, this parameter is ignored.
+Default: 0.
+.SH REFERENCES
+[1] J. Czyzyk et al., "PCx User Guide (Version 1.1)", Optimization
+Technology Center, Technical Report OTC 96/01, November 3, 1997.
+.br
+[2] E. D. Andersen and K. D. Andersen, "Presolving in linear
+programming", Mathematical Programming, 71 (1995), pp. 221-245.
+.br
+[3] S. Mehrotra, "On the implementation of a primal-dual interior
+point method", SIAM Journal on Optimization, 2 (1992), pp 575-601.
+.br
+[4] A. R. Curtis and J. K. Reid, "On the automatic scaling of matrices
+for Gaussian elimination", J. Inst. Maths Applics, 10 (1972), pp. 118-124.
+.br
+[5] J. Gondzio, "Multiple centrality corrections in a primal-dual
+method for linear programming", Computational Optimization and
+Applications, 6 (1996), pp. 137-156.
+.SH "SEE ALSO"
+\fI/usr/share/doc/pcx/PCx-user.ps.gz\fP, mps(5)
+.SH AUTHOR
+This manual page was written by James R. Van Zandt <jrv@debian.org>,
+for the Debian GNU/Linux system (but may be used by others).
+\"  LocalWords:  PCx probname mps Mehrotra's Ng spc boundname cachesize min RHS
+\"  LocalWords:  centerexp objectivename rhsname rangename presolve presolving
+\"  LocalWords:  preprocess inputdirectory opttol prifeastol dualfeastol num al
+\"  LocalWords:  unrollinglevel iterationlimit stepfactor steplength Gondzio's
+\"  LocalWords:  HOCorrections MaxCorrections Czyzyk OTC pp Mehrotra Inst Maths
+\"  LocalWords:  Applics Gondzio usr doc pcx ps gz mv com
--- pcx-1.1.18.orig/debian/postinst
+++ pcx-1.1.18/debian/postinst
@@ -0,0 +1,50 @@
+#! /bin/sh
+# postinst script for pcx
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postinst> `configure' <most-recently-configured-version>
+#        * <old-postinst> `abort-upgrade' <new version>
+#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
+#          <new-version>
+#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
+#          <failed-install-package> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see /usr/doc/packaging-manual/
+#
+# quoting from the policy:
+#     Any necessary prompting should almost always be confined to the
+#     post-installation script, and should be protected with a conditional
+#     so that unnecessary prompting doesn't happen if a package's
+#     installation fails and the `postinst' is called with `abort-upgrade',
+#     `abort-remove' or `abort-deconfigure'.
+
+case "$1" in
+    configure)
+	update-alternatives --install 			\
+	    /usr/share/man/man5/mps.5.gz mps.5.gz 	\
+	    /usr/share/man/man5/mps-pcx.5.gz 40 
+
+    ;;
+
+    abort-upgrade|abort-remove|abort-deconfigure)
+
+    ;;
+
+    *)
+        echo "postinst called with unknown argument \`$1'" >&2
+        exit 0
+    ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
+
--- pcx-1.1.18.orig/debian/copyright
+++ pcx-1.1.18/debian/copyright
@@ -0,0 +1,95 @@
+This package was debianized by James R. Van Zandt jrv@debian.org on
+Mon, 14 Sep 1998 20:28:40 -0400.
+
+It was downloaded on Thu Jul 24, 2008 from
+  http://www.mcs.anl.gov/otc/Tools/PCx/
+
+The PCx authors sometimes change the sources without bumping the
+version number.  This package was based on sources dated Jan 10, 2006.
+
+Comment by the Debian maintainer: 
+
+        This package is in "non-free" because the PCx license (below)
+        does not meet paragraph 1 of the Debian Free Software
+        Guidelines: it can be distributed for free (e.g. via ftp
+        archives), but incorporating PCx into a product for sale
+        requires a commercial purchase.  The notification requirement
+        does apply to vendors who want to include the PCx package in a
+        cdrom for sale.  The sale price for PCx is $1,000 a copy as of
+        Oct. 1, 1998.  Discounts for multiple copy purchases are
+        available and may be applicable.
+
+
+Copyright:
+
+<*****************************************************************
+				   
+			COPYRIGHT NOTIFICATION
+
+*****************************************************************
+
+(C) COPYRIGHT 1996 UNIVERSITY OF CHICAGO
+
+*****************************************************************
+
+This software discloses material protectable under copyright laws of
+the United States. Permission is hereby granted to use, reproduce,
+prepare derivative works, and redistribute to others at no charge,
+provided that the original copyright notice, Government license and
+disclaimer are retained and any changes are clearly documented;
+however, any entity desiring permission to incorporate this software
+or a work based on the software into a product for sale must contact
+Paul Betten at the Industrial Technology Development Center, Argonne
+National Laboratory.
+
+
+This software was authored by:
+
+JOSEPH CZYZYK             czyzyk@mcs.anl.gov    (630) 252-4279
+Mathematics and Computer Science Division
+Argonne National Laboratory, Argonne IL 60439-4844
+FAX: (630) 252-5986
+
+SANJAY MEHROTRA           mehrotra@iems.nwu.edu (847) 491-3155
+Department of Industrial Engineering and Management Science,
+Northwestern University, Evanston IL 60208-3119
+FAX: (847) 491-8005
+
+STEPHEN J. WRIGHT         wright@mcs.anl.gov    (630) 252-7847 
+Mathematics and Computer Science Division
+Argonne National Laboratory, Argonne IL 60439-4844
+FAX: (630) 252-5986
+
+Any questions or comments on the software may be directed to one of
+the authors.
+
+*****************************************************************
+
+ARGONNE NATIONAL LANORATORY (ANL), WITH FACILITIES IN THE STATES OF
+ILLINOIS AND IDAHO, IS OWNED BY THE UNITED STATES GOVERNMENT, AND
+OPERATED BY THE UNIVERSITY OF CHICAGO UNDER PROVISION OF A CONTRACT
+WITH THE DEPARTMENT OF ENERGY.
+
+*****************************************************************
+
+             GOVERNMENT LICENSE AND DISCLAIMER
+
+*****************************************************************
+
+NOTICE: The Government is granted for itself and others acting on its
+behalf a paid-up, non-exclusive, irrevocable worldwide license in this
+data to reproduce, prepare derivative works, and perform publicly and
+display publicly by or on behalf of the Government. The Government
+license may be modified beginning mm-dd-yy to provide greater rights
+to the Government. NEITHER THE UNITED STATES GOVERNMENT NOR ANY AGENCY
+THEREOF, NOR THE UNIVERSITY OF CHICAGO, NOR ANY OF THEIR EMPLOYEES
+MAKES ANY WARRANTY, EXPRESS OR IMPLIED, OR ASSUMES ANY LEGAL LIABILITY
+OR RESPONSIBILITY FOR THE ACCURACY, COMPLETENESS, OR USEFULNESS OF ANY
+INFORMATION, APPARATUS, PRODUCT, OR PROCESS DISCLOSED, OR REPRESENTS
+THAT ITS USE WOULD NOT INFRINGE PRIVATELY OWNED RIGHTS.
+
+*****************************************************************
+
+LICENSING INQUIRES MAY BE DIRECTED TO THE INDUSTRIAL TECHNOLOGY
+DEVELOPMENT CENTER AT ARGONNE NATIONAL LABORATORY.
+
--- pcx-1.1.18.orig/debian/control
+++ pcx-1.1.18/debian/control
@@ -0,0 +1,22 @@
+Source: pcx
+Section: non-free/math
+Priority: optional
+Maintainer: James R. Van Zandt <jrv@debian.org>
+Build-Depends: debhelper (>=4.0), csh | c-shell, gfortran
+Standards-Version: 3.8.0
+Homepage:  http://www.mcs.anl.gov/otc/Tools/PCx/
+
+Package: pcx
+Architecture: any
+Depends: ${shlibs:Depends}
+Description: primal-dual interior-point code for linear programming 
+ PCx is a freely available primal-dual interior-point code for linear
+ programming. It implements Mehrotra's predictor-corrector algorithm,
+ the algorithm that forms the basis of most existing interior-point
+ codes for general linear programming. The major computational
+ operation--solution of a linear system with a large, sparse positive
+ definite coefficient matrix--is performed with the sparse Cholesky
+ package of Ng and Peyton (Oak Ridge National Laboratory), with minor
+ modifications to handle small pivot elements.  PCx does not solve
+ integer programming problems.
+
--- pcx-1.1.18.orig/debian/rules
+++ pcx-1.1.18/debian/rules
@@ -0,0 +1,117 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+
+CFLAGS = -g -W -Wno-uninitialized -Wwrite-strings -Wpointer-arith -I../F2C
+FFLAGS = -g -W -Wno-uninitialized  -I../F2C 
+
+
+INSTALL = install
+INSTALL_FILE    = $(INSTALL) -p    -o root -g root  -m  644
+INSTALL_PROGRAM = $(INSTALL) -p    -o root -g root  -m  755
+INSTALL_SCRIPT  = $(INSTALL) -p    -o root -g root  -m  755
+INSTALL_DIR     = $(INSTALL) -p -d -o root -g root  -m  755
+
+ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
+    CFLAGS += -O0
+    FFLAGS += -O0
+else
+    CFLAGS += -O3
+    FFLAGS += -O3
+endif
+ifeq (,$(filter nostrip,$(DEB_BUILD_OPTIONS)))
+    INSTALL_PROGRAM += -s
+endif
+ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+    NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+    MAKEFLAGS += -j$(NUMJOBS)
+endif
+
+configure: configure-stamp
+configure-stamp:
+	dh_testdir
+	# Add here commands to configure the package.
+
+	touch configure-stamp
+
+
+build: build-stamp
+
+build-stamp: configure-stamp 
+	dh_testdir
+
+	# compile the package.
+	MOREFFLAGS="$(FFLAGS)"			\
+	MORECFLAGS="$(CFLAGS)"			\
+	FC=gfortran				\
+	./build
+
+	touch build-stamp
+
+clean:
+	dh_testdir
+	dh_testroot
+	rm -f build-stamp configure-stamp
+
+	# clean up after the build process.
+	[ ! -f Makefile ] || $(MAKE) clean
+
+	dh_clean 
+
+install: build
+	dh_testdir
+	dh_testroot
+	dh_clean -k 
+	dh_installdirs
+
+	# install the package into debian/pcx.
+	$(INSTALL_PROGRAM) PCx `pwd`/debian/pcx/usr/bin
+
+
+# Build architecture-independent files here.
+binary-indep: 
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+	dh_testdir
+	dh_testroot
+	dh_installchangelogs debian/changelog-upstream.html
+	dh_installdocs README README.mex DOC/PCx-user.ps.gz 
+	dh_installexamples mps/25fv47.mps mps/afiro.mps debian/README.examples
+	dh_install SRC/libPCx.a usr/lib
+	dh_install */*.h usr/include/pcx
+#	dh_install
+#	dh_installmenu
+#	dh_installdebconf	
+#	dh_installlogrotate
+#	dh_installemacsen
+#	dh_installpam
+#	dh_installmime
+#	dh_installinit
+#	dh_installcron
+#	dh_installinfo
+	dh_installman debian/PCx.1 debian/mps-pcx.5 
+	dh_link
+	dh_strip
+	dh_compress
+	dh_fixperms
+#	dh_perl
+#	dh_python
+#	dh_makeshlibs
+	dh_installdeb
+	dh_shlibdeps
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install configure
--- pcx-1.1.18.orig/debian/rules-orig
+++ pcx-1.1.18/debian/rules-orig
@@ -0,0 +1,94 @@
+#!/usr/bin/make -f
+# Sample debian/rules that uses debhelper.
+# GNU copyright 1997 to 1999 by Joey Hess.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+# This is the debhelper compatibility version to use.
+export DH_COMPAT=3
+
+
+
+ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
+	CFLAGS += -g
+endif
+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
+	INSTALL_PROGRAM += -s
+endif
+
+configure: configure-stamp
+configure-stamp:
+	dh_testdir
+	# Add here commands to configure the package.
+
+	touch configure-stamp
+
+
+build: build-stamp
+
+build-stamp: configure-stamp 
+	dh_testdir
+
+	# Add here commands to compile the package.
+	$(MAKE)
+	#/usr/bin/docbook-to-man debian/pcx.sgml > pcx.1
+
+	touch build-stamp
+
+clean:
+	dh_testdir
+	dh_testroot
+	rm -f build-stamp configure-stamp
+
+	# Add here commands to clean up after the build process.
+	-$(MAKE) clean
+
+	dh_clean
+
+install: build
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+	dh_installdirs
+
+	# Add here commands to install the package into debian/pcx.
+	$(MAKE) install DESTDIR=$(CURDIR)/debian/pcx
+
+
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+	dh_testdir
+	dh_testroot
+#	dh_installdebconf	
+	dh_installdocs
+	dh_installexamples
+	dh_installmenu
+#	dh_installlogrotate
+#	dh_installemacsen
+#	dh_installpam
+#	dh_installmime
+#	dh_installinit
+	dh_installcron
+	dh_installman
+	dh_installinfo
+#	dh_undocumented
+	dh_installchangelogs 
+	dh_link
+	dh_strip
+	dh_compress
+	dh_fixperms
+#	dh_makeshlibs
+	dh_installdeb
+#	dh_perl
+	dh_shlibdeps
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install configure
--- pcx-1.1.18.orig/debian/README.examples
+++ pcx-1.1.18/debian/README.examples
@@ -0,0 +1,11 @@
+# PCx expects the name of the input file on the command line.
+# output goes to stdout.
+#
+# Run PCx on the example input files like this:
+PCx afiro.mps |less
+
+gunzip 25fv47.mps.gz
+# here, PCx takes about 2.5 sec on my 300 MHz Pentium II:
+PCx 25fv47.mps |less
+
+
--- pcx-1.1.18.orig/debian/mps-pcx.5
+++ pcx-1.1.18/debian/mps-pcx.5
@@ -0,0 +1,247 @@
+.\"                                       -*- nroff -*-
+.\" Man page by Jim Van Zandt
+.TH MPS 5 "13 September 1998" "Debian GNU Linux"
+.SH NAME
+mps \- file format for linear programming problems
+.SH DESCRIPTION
+The MPS file format was introduced for an IBM program,
+but has also been accepted by most subsequent linear programming codes.
+
+One standard form for a linear programming problem is as follows:
+.nf
+minimize
+          c'x
+under the constraints 
+          Ax = b 
+and       x >= 0
+.fi
+where x is a vector of unknowns, c is the cost (or objective) vector,
+c' is the transpose of c, and A is a constraint matrix with m rows
+and n columns.  
+.PP
+Alternately, the constraints may be defined as
+.nf
+            Ax < b
+.fi
+and the goal may be to maximize c'x.  
+Unfortunately, nothing in the MPS file format specifies whether the
+objective is to be minimized or maximized, and different programs have
+different defaults for this.  On the other hand, it is trivial to
+restate a maximization problem as a minimization problem: just reverse
+the sign of each element of c.
+.PP
+The feasible region described by the constraints is a polytope, or
+simplex, and at least one member of the solution set lies at a vertex
+of this polytope.
+.PP
+The MPS file format is column-oriented, designed for use with punched
+cards.  All numerical values should include a decimal point.  MPS
+files are typically all upper-case, though many MPS readers accept
+mixed case anywhere except the headers, and some accept mixed case
+anywhere.  The file
+layout is suggested in the following table:
+.sp
+.nf
+Field:      1        2          3        4       5        6
+Columns:   2-3      5-12      15-22    25-36   40-47    50-61
+
+          NAME             problem_name
+          ROWS
+           type     name
+          COLUMNS
+                  col_name   row_name  value  row_name  value
+          RHS
+                  rhs_name   row_name  value  row_name  value
+          RANGES
+                 range_name  row_name  value  row_name  value
+          BOUNDS
+           type  bound_name  col_name  value
+          ENDATA
+.fi
+.sp
+Here are the details on each of the seven sections:
+.SS NAME
+This section consists of a single card, with "NAME" in columns 1-4 and
+the title of the problem in columns 15-22.
+.SS ROWS
+This section describes the rows of the constraint matrix, and the
+objective function.  It starts with a card with "ROWS" in columns
+1-4.  There is an additional card for each row in the constraint
+matrix, plus one for the objective function.  Each of these cards has
+a type in column 2 or 3, as follows:
+.IP \fBE\fP
+Equality
+.IP \fBL\fP
+Less than or equal
+.IP \fBG\fP
+Greater than or equal
+.IP \fBN\fP
+no restriction.  The first \fBN\fP-type row encountered is regarded as
+the objective, unless it is explicitly identified in the control
+commands.
+.PP
+Linear combinations of rows may also be specified. In this case the
+above row types are denoted respectively by the codes \fBDE\fP,
+\fBDL\fP, \fBDG\fP, and \fBDN\fP, in columns 2-3. Field 2 contains the
+linear combination rowname. Fields 3-6 contain the rowname(s) (fields
+3 and 5) and their multiplier(s) (fields 4 and 6) which form the
+combination. A linear combination of three or more rows requires
+additional cards, following the first card contiguously. In the
+additional cards field 1 is empty. (The right-hand sides of a linear
+combination row must be specified in the RHS section, described
+below.)
+.PP
+The order of the cards in the ROWS section is not significant.
+.SS COLUMNS
+This section defines the names of the variable, the coefficients of
+the objective, and all the nonzero matrix elements Aij. The section
+starts with a card with COLUMNS in columns 1-7, followed by data cards
+which may have one or two matrix elements per card.  The data are
+entered column by column, and all the data cards for the nonzero
+entries in each column must be grouped together contiguously.  Within
+a column, the order of the entries is irrelevant.  Rows not mentioned
+are assumed to have coefficients of zero.
+.PP
+The data card has the column label in field 2 (columns 5-12), the row
+label in field 3 (columns 15-22), and the value of the coefficient Aij
+(or cj) in field 4 (columns 25-36).  Remember that the coefficient
+should include a decimal point.  If more than one nonzero row entry
+for the same column is to be made on the card, then field 5 (columns
+40-47) has the next row label and field 6 (columns 50-61) has its
+corresponding coefficient value. It should be emphasized that the use
+of fields 5 and 6 is optional.
+.PP
+There is no need to specify columns for slack variables; this is taken
+care of automatically having defined the row types.
+.PP
+A mixed integer program requires the specification of which variables
+are required to be integer.  Markers are placed in the COLUMNS section
+to indicate the start and end of a group of integer variables.  The
+start marker has its name in field 2, "MARKER" in field 3, and
+"INTORG" in field 5.  The end marker has its name in field 2, "MARKER"
+in field 3, and "INTEND" in field 5.
+.SS RHS
+This section supplies the elements of the right-hand side. The section
+starts with a card with "RHS" in columns 1-3. Since the right-hand
+side can be regarded as another column of the matrix, the data cards
+specifying the nonzero entries are in exactly the same format as the
+COLUMNS data cards, except that field 2 (columns 5-12) has a label for the
+right-hand side. More than one right-hand side may thus be specified
+in this section; the one to be used for the current run is specified
+separately.  Rows not mentioned in the RHS section are assumed to have
+a right-hand-side of zero.
+.SS "RANGES (optional)"
+The RANGES section is for constraints of the form
+.br
+	h\fIi\fP <= A\fIi\fP1 x1 + A\fIi\fP2 x2 + ... A\fIi\fPn xn <= u\fIi\fP
+.br
+i.e. both an upper and lower bound exist for the row.  The range of
+the constraint is 
+.br
+	r\fIi\fP = u\fIi\fP - h\fIi\fP
+.br
+The value of u\fIi\fP or h\fIi\fP is specified in the RHS section data, and the
+value of r\fIi\fP is specified in the RANGES section data.  This
+information, plus the row type specified in the ROWS section, defines
+the bounds u\fIi\fP and h\fIi\fP.
+.PP
+If b\fIi\fP is the number entered in the RHS section and r\fIi\fP is the number
+specified in the RANGES section, the u\fIi\fP and h\fIi\fP are defined as follows:
+.sp
+.nf
+Row type    Sign of r\fIi\fP   Lower limit, h\fIi\fP  Upper limit, u\fIi\fP
+G (>=)      + or -       b\fIi\fP               b\fIi\fP + |r\fIi\fP|
+L (<=)      + or -       b\fIi\fP - |r\fIi\fP|        b\fIi\fP
+E (=)       +            b\fIi\fP               b\fIi\fP + |r\fIi\fP|
+E (=)       -            b\fIi\fP - |r\fIi\fP|        b\fIi\fP
+.fi
+.sp
+The section starts with a card with "RANGES" in columns 1-6.  The data
+cards specifying the values of r\fIi\fP are in the same format as the
+COLUMNS data cards, except field 2 (columns 5-12) has a label for the
+column of ranges (which can also be regarded as another column of the
+matrix).  More than one column of ranges may be specified, but all the
+data cards for each column must be grouped together contiguously.
+.SS "BOUNDS (optional)"
+The BOUNDS section specifies bounds on the variables.  This is an
+alternative to defining extra rows in the matrix.  The section starts
+with a card with "BOUNDS" in columns 1-6.  Each card has a type code
+in field 1 (columns 2-3).  The type codes, and the resulting bounds,
+are as follows:
+.IP \fBLO\fP
+Lower bound: \fIvalue\fP <= x (< infinity)
+.IP \fBUP\fP
+Upper bound: (0 <=) x <= \fIvalue\fP
+.IP \fBFX\fP
+Fixed variable: x = \fIvalue\fP
+.IP \fBFR\fP
+Free variable
+.IP \fBMI\fP
+Lower bound is minus infinity: \-infinity <= x (<= 0)
+.IP \fBPL\fP
+upper bound is plus infinity (default): (0 <=) x < infinity
+.IP \fBBV\fP
+Binary variable: x = 0 or 1
+.sp
+Field 2
+(columns 5-12) specifies, a bounds row name.  Field 3 (columns 15-22)
+specifies a column label \fIj\fP, corresponding to the variable
+x\fIj\fP.
+Field 4 (columns 25-36) specifies a bound value b\fIj\fP.  Fields 5
+and 6 are blank.
+.PP
+When bounds are not specified for a column, or the entire BOUNDS
+section is omitted, the usual bounds, 0 <= xi <= infinity, are
+assumed.  More than one bound for a given variable may be entered,
+i.e. both a lower and an upper bound.  When only one is specified the
+other is assumed to be one of the default values of 0 or infinity, as
+shown in parentheses above.
+.SS ENDATA
+This section consists of a single card with "ENDATA" in columns 1-6.
+Note the odd spelling.
+.SH EXAMPLE
+Suppose we want to minimize
+.br
+	XONE + 4 YTWO + 9 ZTHREE       (COST)
+.br
+subject to
+.nf
+	XONE + YTWO <= 5               (LIM1)
+	XONE + ZTHREE >= 10            (LIM2)
+	- YTWO + ZTHREE  = 7          (MYEQN)
+	0 <= XONE <= 4
+	-1 <= YTWO <= 1
+.fi
+.sp
+This problem is represented by the following MPS file:
+.sp
+.\" 22222222  33333333  444444444444   55555555  666666666666
+.nf
+NAME          TESTPROB
+ROWS
+ N  COST
+ L  LIM1
+ G  LIM2
+ E  MYEQN
+COLUMNS
+    XONE      COST                 1   LIM1                 1
+    XONE      LIM2                 1
+    YTWO      COST                 4   LIM1                 1
+    YTWO      MYEQN               \-1
+    ZTHREE    COST                 9   LIM2                 1
+    ZTHREE    MYEQN                1
+RHS
+    RHS1      LIM1                 5   LIM2                10
+    RHS1      MYEQN                7
+BOUNDS
+ UP BND1      XONE                 4
+ LO BND1      YTWO                \-1
+ UP BND1      YTWO                 1
+ENDATA
+.fi
+.sp
+.SH "SEE ALSO"
+http://www.mcs.anl.gov/home/otc/Guide/faq/linear-programming-faq.html
+.br
+http://www.mcs.anl.gov/otc/Server/lp/mps/mps.html
+.\".SH NOTES
