#!/bin/bash

# USAGE: judge <symbolfile> <solver output> <optimization flag>

BIN=`dirname $0`

if egrep  "^Solution pool: [1-9][0-9]* solution[s]* saved.$" $2 1>/dev/null
then
  echo "ANSWER"
  fgrep "var_" $2 \
  | fgrep "1.000000" \
  | sed "s/1\.000000//g" \
  | $BIN/interpret-1.11 $1 \
  | sed 's/ /. /g' | tr -d "\n"; echo ""
  if test $3 -eq 0
  then
    rval=10
  else
    pat="^MIP - Integer optimal solution"
    o=`egrep "$pat" $2 \
       | awk -F'=' '{print $2}' \
       | sed 's/e/*10^/g;s/+0//g;s/-0/-/g' \
       | bc -l | sed 's/.0000000000//g'`
    if test "$o" = ""
    then
      rval=11
    else
      echo "COST $o"
      echo "OPTIMUM"
      rval=30
    fi
  fi
else
  if egrep "^MIP - Integer infeasible.$" $2 1>/dev/null
  then
    echo "INCONSISTENT"
    rval=20
  else
    echo "UNKNOWN"
    rval=1
  fi
fi

rm -f $1
rm -f $2

exit $rval
