code: def synset(synset_key):
      
  
      if synset_key in SYNSETS_DICT:
          return SYNSETS_DICT[synset_key]
  
      def _get_synset_idx(synset_key):
          """Returns synset index for the provided key.
  
          Note
          ----
            Internal function. Do not call directly.
  
          """
          with codecs.open(_SENSE_FILE,'rb', 'utf-8') as fin:
              for line in fin:
                  split_line = line.split(':')
                  if split_line[0] == synset_key:
                      return int(split_line[1].strip())
          return None
  
      synset_idx = _get_synset_idx(synset_key)
  
      if synset_idx == None:
          return None
  
      synset_offset = _get_synset_offsets([synset_idx])
      synset = _get_synsets(synset_offset)
  
      return synset[0]
docs: Returns synset object with the provided key.
  
      Notes
      -----
      Uses lazy initialization - synsets will be fetched from a dictionary after the first request.
  
      Parameters
      ----------
      synset_key : string
        Unique synset identifier in the form of `lemma.pos.sense_no`.
        
      Returns
      -------
      Synset
        Synset with key `synset_key`.
        None, if no match was found.