  # get the values for these two explicitly from DETAILS so sourcing this
  # from PREPARE works
  REJECT=$(source $SCRIPT_DIRECTORY/DETAILS > /dev/null && echo $REJECT)
  WEB_SITE=$(source $SCRIPT_DIRECTORY/DETAILS > /dev/null && echo $WEB_SITE)
  message "${MESSAGE_COLOR}This spell is considered${PROBLEM_COLOR}" \
          "rejected${DEFAULT_COLOR}${MESSAGE_COLOR} because of the"   \
          "following reason:\n"
  message "${PROBLEM_COLOR}$REJECT${DEFAULT_COLOR}${MESSAGE_COLOR}.\n"
  message "Please view the software website for more information:\n"
  message "${DEFAULT_COLOR}$WEB_SITE${MESSAGE_COLOR}\n"
  message "You may continue casting the spell and it will still be tracked" \
          "by Sorcery.\nHowever, the software installation process may have" \
          "questions that need to be\nanswered and/or licensing agreements" \
          "that must be agreed to.${DEFAULT_COLOR}\n"

  if spell_ok "$SPELL" && [ -e $SCRIPT_DIRECTORY/UNATTEND_SAFE ]; then
    message "${SPELL_COLOR}$SPELL${DEFAULT_COLOR}${MESSAGE_COLOR} is" \
            "installed, and has been determined" \
            "to be ${FILE_COLOR}safe\nfor unattended" \
            "update${DEFAULT_COLOR}${MESSAGE_COLOR}, so the prompt will" \
            "be skipped.${DEFAULT_COLOR}\n"
    return
  fi
  message "\n${MESSAGE_COLOR}Allowing the next question to timeout will" \
          "choose not to install this spell.\nThis means that rejected" \
          "spells ${PROBLEM_COLOR}will not be installed or updated" \
          "automatically.\n"
  message "${DEFAULT_COLOR}${MESSAGE_COLOR}If you want a rejected spell to" \
          "be installed or updated you must\nconfirm your decision now or" \
          "cast the spell later.${DEFAULT_COLOR}\n"

  if ! query  "CONTINUE casting?" n; then
    return 1
  fi
  message "\n${MESSAGE_COLOR}OK, here we go... you are on your" \
          "own!${DEFAULT_COLOR}"
  return 0
