code: def get(cls):
          
          mask = sigset_t()
          sigemptyset(mask)
          cls._do_mask(0, None, mask)
          signals = []
          for sig_num in range(1, NSIG):
              if sigismember(mask, sig_num):
                  signals.append(sig_num)
          self = cls(signals)
          self._is_active = True
          self._old_mask = mask
          return self
docs: Use the masking function (``sigprocmask(2)`` or ``pthread_sigmask(3)``)
          to obtain the mask of blocked signals
  
          :returns:
              A fresh :class:`sigprocmask` object.
  
          The returned object behaves as it was constructed with the list of
          currently blocked signals, ``setmask=False`` and as if the
          :meth:`block()` was immediately called.
  
          That is, calling :meth:`unblock()` will will cause those signals not to
          be blocked anymore while calling :meth:`block()` will re-block them (if
          they were unblocked after this method returns).