def mkrngs(self):
bbool = bool_2_indices(self.bkg)<EOL>if bbool is not None:<EOL><INDENT>self.bkgrng = self.Time[bbool]<EOL><DEDENT>else:<EOL><INDENT>self.bkgrng = [[np.nan, np.nan]]<EOL><DEDENT>sbool = bool_2_indices(self.sig)<EOL>if sbool is not None:<EOL><INDENT>self.sigrng = self.Time[sbool]<EOL><DEDENT>else:<EOL><INDENT>self.sigrng = [[np.nan, np.nan]]<EOL><DEDENT>tbool = bool_2_indices(self.trn)<EOL>if tbool is not None:<EOL><INDENT>self.trnrng = self.Time[tbool]<EOL><DEDENT>else:<EOL><INDENT>self.trnrng = [[np.nan, np.nan]]<EOL><DEDENT>self.ns = np.zeros(self.Time.size)<EOL>n = <NUM_LIT:1><EOL>for i in range(len(self.sig) - <NUM_LIT:1>):<EOL><INDENT>if self.sig[i]:<EOL><INDENT>self.ns[i] = n<EOL><DEDENT>if self.sig[i] and ~self.sig[i + <NUM_LIT:1>]:<EOL><INDENT>n += <NUM_LIT:1><EOL><DEDENT><DEDENT>self.n = int(max(self.ns))  <EOL>return<EOL>
Transform boolean arrays into list of limit pairs.

Gets Time limits of signal/background boolean arrays and stores them as
sigrng and bkgrng arrays. These arrays can be saved by 'save_ranges' in
the analyse object.