PRINT() {
	local MESSAGE
	local LAST_LINE_END='\n'
	local STDERR=1
	local STDOUT=0

	local LTRIM=1
	while [[ $# -gt 0 ]]
	do
		case $1 in
			-n | --no-trim-tabs ) LTRIM=0 ;;
			-x | --no-line-end  ) LAST_LINE_END='' ;;
			-o | --use-stdout   ) STDOUT=1; STDERR=0 ;;
			* ) MESSAGE+="$(echo $1) " ;;
		esac
		shift 1
	done

	MESSAGE="$(echo "$MESSAGE" | sed 's/%/%%/g')"

	local STYLED_MESSAGE="$({
		printf "${COLOR}"
		while IFS='' read line
		do
			[[ $PREFIX =~ ^[[:space:]]\+$ ]] && printf '\n'

			printf "${PREFIX} : $(echo "$line" | sed 's/^	\+//; s/ \+$//')"

			PREFIX=$(echo $PREFIX | sed 's/./ /g')
		done <<< $MESSAGE
	})"
	STYLED_MESSAGE="${COLOR}$(echo "$STYLED_MESSAGE" | sed 's/%/%%/g')${__COLOR_RESET}${LAST_LINE_END}"

	[[ $STDERR -eq 1 ]] && printf $STYLED_MESSAGE >&2
	[[ $STDOUT -eq 1 ]] && printf $STYLED_MESSAGE

	return 0
}