code: def locate(self, pattern):
          '''Find sequences matching a pattern.
  
          :param pattern: Sequence for which to find matches.
          :type pattern: str
          :returns: Indices of pattern matches.
          :rtype: list of ints
  
          '''
          if self.circular:
              if len(pattern) >= 2 * len(self):
                  raise ValueError('Search pattern longer than searchable ' +
                                   'sequence.')
              seq = self + self[:len(pattern) - 1]
              return super(NucleicAcid, seq).locate(pattern)
          else:
              return super(NucleicAcid, self).locate(patternf locate(self, pattern):
          '''Find sequences matching a pattern.
  
          :param pattern: Sequence for which to find matches.
          :type pattern: str
          :returns: Indices of pattern matches.
          :rtype: list of ints
  
          '''
          if self.circular:
              if len(pattern) >= 2 * len(self):
                  raise ValueError('Search pattern longer than searchable ' +
                                   'sequence.')
              seq = self + self[:len(pattern) - 1]
              return super(NucleicAcid, seq).locate(pattern)
          else:
              return super(NucleicAcid, self).locate(pattern)
docs: Find sequences matching a pattern.
  
          :param pattern: Sequence for which to find matches.
          :type pattern: str
          :returns: Indices of pattern matches.
          :rtype: list of ints