code: private Boolean getNonStandardBoolean(final String key, final JSONObject jsonObject) {
      Boolean value = false;
      try {
        String stringValue = jsonObject.getString(key);
        LOGGER.debug("got value: {} for key {}", stringValue, key);
        if(isTruthy(stringValue)) {
          LOGGER.debug("value is truthy");
          value = true;
        }
      }
      catch(JSONException e) {
        LOGGER.error("Could not get boolean (not even truthy) from JSONObject for key: " + key, e);
      }
      return value;
    }
docs: This method differs from {@link #getBoolean(String, JSONObject)} in that
  the value is not be the standard JSON true/false but rather the string
  yes/no.
  
  @param key name of the field to fetch from the json object
  @param jsonObject object from which to fetch the value
  
  @return boolean value corresponding to the key or false