case $# in
  2) ;;
  *) exit 1 ;;
esac

INFILE=$1
OUTFILE=$2

if test ! -f $INFILE
then
	exit 1 
fi

if touch $OUTFILE > /dev/null 2>&1
then
	if test ! -f $OUTFILE
	then
	: not an invalid out file name
		exit 1
	fi
else
	exit 1
fi

cat $INFILE | sed -n -e '
/^"/{
	s/^"//
	s/".*$//
	p
}
' $* | \
awk '
(NR == 1)	{
	if ($4 != 1)
	{
		print "conversion fails"
		exit
	}
	else
	{
		print "(EMPPM)"
		print $1 " " $2 " " $3
		ncolors = $3
	}
	continue
}
(NR >= 2 && NR <= ncolors + 1)	{
	print "###" $0
	continue
}
{
	print $0
	continue
}
' | \
sed -e '
/^###/{
	s/###//
	s/\([ 	][ 	]*\)m  *[^ 	]*/\1/
	s/\([ 	][ 	]*\)s  *[^ 	]*/\1/
	s/\([ 	][ 	]*\)g4  *[^ 	]*/\1/
	s/\([ 	][ 	]*\)g  *[^ 	]*/\1/
	s/\([ 	][ 	]*\)c [Nn][Oo][Nn][Ee]/\1background/
	s/\([ 	][ 	]*\)c  *\([^ 	]*\)/\1\2/
}
' | cat > $OUTFILE

if grep "conversion fails" $OUTFILE > /dev/null 2>&1
then
	exit 1
else
	if grep "EMPPM" $OUTFILE > /dev/null 2>&1
	then
		exit 0
	else
		exit 1
	fi
fi
