    
    /// \param key   key of header: will be lower-cased before insertion
    /// \param value value of header.
    void addHeader(const std::string &key,
                     const std::string &value);

  private:
    /// m_req: the request line
    std::vector<uint8_t> m_req;
    /// m_headers: all headers except content-length
    std::vector<uint8_t> m_headers;
    /// m_body: the request body
    std::vector<uint8_t> m_body;
    /// Serialisation buffer
    mutable std::vector<uint8_t> m_cache;
  };

  class Reply {
  public:
    Reply();
    /// Attempt parsing headers. Returns true on success. If
    /// unsuccessful, read more data into buffer and re-try the
    /// parse. This *may* seem inefficient - but in fact we will
    /// usually receive the full headers in the first recv(), so retry
    /// is unlikely.
    bool consumeHeaders(std::vector<uint8_t> &d);

    /// Consume body. Returns true on completion, false if there is
    /// more body data to be consumed.
    bool consumeBody(std::vector<uint8_t> &d);

    /// Return status code
    unsigned getCode() const;

    /// For debug purposes - print reply summary
    std::string toString() const;
      
      //For reading content-length
      std::string readHeader() const;

    /// Reference the body buffer
    std::vector<uint8_t> &refBody();
  private:
    /// status code
    unsigned m_code;

    /// Map of headers
    typedef std::map<std::string,std::string> headers_t;
    headers_t m_headers;

    /// Body data
    std::vector<uint8_t> m_body;

    /// Parser utility. Searches "haystack" from position "pos" and
    /// increments "pos" to the position immediately following
    /// "needle". Returns the data up until (but not including) the
    /// "needle". Throws in case "needle" does not exist in "haystack"
    /// at or after "pos".
    std::string consumeUntil(const std::string &needle,
                             const std::string &haystack,
                             std::string::const_iterator &pos);
  };

  /// Blocking request/response
  Reply execute(const Request&);

  /// Get host name of server
  const std::string &getHostname() const;

  /// Print statistics - this is traced with INFO level to
  /// /ServerConnection
  void traceStatistics() const;

private:
  /// Protect against assignment
  ServerConnection &operator=(const ServerConnection&);

#if defined(__unix__) || defined(__APPLE__)
  /// Socket - if -1 we're not connected
  int m_sock;
#endif

#if defined(_WIN32)
  SOCKET m_sock;
#endif

  /// SSL State if SSL is in use
  SSL *m_ssl;
  /// SSL BIO
  BIO *m_bio;

  /// Remember the host name
  const std::string m_hostname;

  /// Remember the port
  const uint16_t m_port;

  /// Remember whether or not to use SSL
  const bool m_use_ssl;

  /// We keep our connection receive data buffer per connection - this
  /// is to allow for parsing of pipe-lined requests.
  std::vector<uint8_t> m_data;

  /// Send all data from buffer over network
  void tx(const std::vector<uint8_t> &data);

  /// Receive at least n bytes from network - append to given data
  /// buffer
  void rx(size_t n, std::vector<uint8_t> &data);

  /// Statistics for connection; counts of requests
  ///
  /// reqstat[0] - HEAD requests
  /// reqstat[1] - GET requests
  /// reqstat[2] - POST requests
  size_t m_reqstat[3];

  /// If we have a set of default credentials for Basic auth, these
  /// are set.
  Optional<std::string> m_defaultbasicuser;
  Optional<std::string> m_defaultbasicpass;


  //! For connection management - used by the execute() method. Report
  //! whether we are connected to a server.
  bool isConnected() const;

  //! Connect to server. If already connected, does nothing.
  void doConnect();

  //! Drop connection to server. If already not connected, does nothing.
  void dropConnection();



};

#endif
I had applied for EIDL loan back in 2020 was denied due to credit. Randomly in September received an email stating I was approved for targetted funding. I then learned I could request a reconsideration and I figured why the heck not since the rules changed on the 8th.   


On October 7th I logged into the portal to discover the numbers had changed- I had an "approval" amount, all documents were waived, SBA requested a P022 form and requested ANOTHER IRS transcript release form. LIterally filled all of that out the same night.   


Yesterday afternoon I decided to go for broke and accept the whole "approved" amount. Now the loan is showing as "Processing"   


Are these good signs? What can I expect from here? What's the liklihood of being approved?A back-to-back road set started with a win for the Chicago Blackhawks (11-12-5), who squandered a three-goal lead, but still managed to claim a 4-3 overtime triumph against the Boston Bruins at TD Garden on Thursday. Jonathan Toews (5 goals, 15 points this year) banked the winner 54 seconds into the extra session after the hosts scored three consecutive goals in the third frame to force the bonus period. Ryan Carpenter (1 goal, 8 points), Dylan Strome (6 goals, 19 points) and Alex DeBrincat (6 goals, 20 points) also got on the scoreboard for Chicago, which ended a three-game losing run (0-3-0).
Goalie Robin Lehner (6-5-3 on the season with a 2.71 GAA and a.929 save percentage) made 37 saves in Boston, but will be backing up Corey Crawford for the trip to New Jersey. Crawford is 3-4-1 against the Devils previously with a 3.49 GAA and a.878 save percentage, and has gone 5-7-2 for the rolling year with a 3.04 GAA and a.909 save percentage. The Blackhawks, meanwhile, are 10th in least goals scored per game (2.79), 14th in most goals allowed on average (3.04), 26th in power play (14.1%) and 17th in penalty kill (80.7%).
The current losing skid of the New Jersey Devils (9-14-4) stretched out to three consecutive outings (0-3-0) after the team dropped a 4-3 decision against the Vegas Golden Knights at Prudential Center on Tuesday. With new coach Alain Nasreddine slipping into the place of sacked John Hynes, the Devils recorded 1-0 and 2-1 leads ahead of the second intermission before the Knights scored three consecutive snipes in the final third, as Nico Hischier (5 goals, 16 points this year) was only able to make it 4-3. Kyle Palmieri (10 goals, 18 points) and Jesper Bratt (5 goals, 8 points) also scored for the Devils, who are 2-6-0 in their last eight fixtures.
Nasreddine talks about how his first practice went as interim head coach, and where he wants to take the team.
Goalie Mackenzie Blackwood stopped 26 shots versus Vegas, taking his current performance status to 8-8-3 for the season with a 3.17 GAA and a.896 save percentage. He has won his only previous start against the Chicago Blackhawks, allowing five goals on 32 shots in an 8-5 victory for New Jersey back on Jan. 14. The Devils, meanwhile, are scoring the 4th lowest quantity of goals per game (2.52), while conceding the 2nd highest bulk in their defensive zone (3.63). They are 28th in power play (13.1%) and 24th in penalty kill (76.1%).
Devils are 11-4 in their last 15 meetings with Blackhawks in New Jersey.
Blackhawks are 0-6 in their last 6 road games vs. a team with a home winning % of less than.400.
Blackhawks are 2-8 in their last 10 vs. a team with a losing record.
After the sacking of coach John Hynes on Tuesday, the Devils still came up short to snap a two-game losing run, with new interim coach Alain Nasreddine starting his New Jersey