#! /bin/sh

set -e

PREFIX=$1
shift

trap 'rm -r $TMPDIR' 0
TMPDIR=`mktemp -d`

exec 3>/dev/null
for f; do
    while IFS="
" read -r LINE; do
	case "$LINE" in
	    *$PREFIX:[0-9]*:\**)
		NUM=`echo "$LINE" | sed "s/.*$PREFIX:\([0-9]*\).*/\1/"`
		if [ -f $TMPDIR/$NUM ]; then
		    echo "$TMPDIR/$NUM already exits prior to $f"
		    exit 1
		fi
		exec 3>>$TMPDIR/$NUM
		echo $f | sed 's,\.\./,,g' > $TMPDIR/.$NUM
		/bin/echo "$LINE" | sed -e "s/$PREFIX:[0-9]*//" -e "s/:\*/*/" >&3
		;;
	    *$PREFIX:[0-9]*)
		NUM=`echo "$LINE" | sed "s/.*$PREFIX:\([0-9]*\).*/\1/"`
		if [ -f $TMPDIR/$NUM ]; then
		    echo "$TMPDIR/$NUM already exits prior to $f"
		    exit 1
		fi
		exec 3>>$TMPDIR/$NUM
		echo $f | sed 's,\.\./,,g' > $TMPDIR/.$NUM
		/bin/echo "$LINE" | sed "s/$PREFIX:[0-9]*//" >&3
		;;
	    *:\**)
		/bin/echo "$LINE" | sed -e "s/:\*/*/" -e "s,/\*\*/,," >&3
		echo >&3
		exec 3>/dev/null
		;;
	    *)
		/bin/echo "$LINE" >&3
		;;
	esac
    done < $f
    echo >&3
    exec 3>/dev/null
done

LASTFILE=""
for f in $TMPDIR/*; do
    if [ "$LASTFILE" != $(cat $TMPDIR/.$(basename $f) ) ]; then
	LASTFILE=$(cat $TMPDIR/.$(basename $f) )
	echo "[ $LASTFILE ]"
    fi
    cat $f
done

