static function tryCatchSurprise($fn, $msg = null, $p = null)
 {
     try {
         return ufront_core_SurpriseTools::asGoodSurprise(call_user_func($fn));
     } catch (Exception $__hx__e) {
         $_ex_ = $__hx__e instanceof HException ? $__hx__e->e : $__hx__e;
         $e = $_ex_;
         return ufront_core_SurpriseTools::asSurpriseError($e, $msg, $p);
     }
 }
 public function doReadSessionFile($_)
 {
     if (ufront_web_session_FileSession_2($this, $_)) {
         $filename = "" . _hx_string_or_null($this->savePath) . _hx_string_or_null($this->sessionID) . ".sess";
         try {
             return ufront_core_SurpriseTools::asGoodSurprise(sys_io_File::getContent($filename));
         } catch (Exception $__hx__e) {
             $_ex_ = $__hx__e instanceof HException ? $__hx__e->e : $__hx__e;
             $e = $_ex_;
             return ufront_core_SurpriseTools::asGoodSurprise(null);
         }
     } else {
         $this->context->messages->push(_hx_anonymous(array("msg" => "Session ID " . _hx_string_or_null($this->sessionID) . " was invalid, resetting session.", "pos" => _hx_anonymous(array("fileName" => "FileSession.hx", "lineNumber" => 243, "className" => "ufront.web.session.FileSession", "methodName" => "doReadSessionFile")), "type" => ufront_log_MessageType::$MWarning)));
         $this->sessionID = null;
         return ufront_core_SurpriseTools::asGoodSurprise(null);
     }
 }