#NEWLINE# def __getitem__( self , item ) : #NEWLINE# #INDENT# if isinstance ( item , string ) : #NEWLINE# #INDENT# try : #NEWLINE# #INDENT# return tuple . __getitem__ ( self , self . __keys . index ( item ) ) #NEWLINE# #UNINDENT# except ValueError : #NEWLINE# #INDENT# raise KeyError ( item ) #NEWLINE# #UNINDENT# #UNINDENT# else : #NEWLINE# #INDENT# if isinstance ( item , slice ) : #NEWLINE# #INDENT# return self . __class__ ( self . __keys [ item . start : item . stop ] , tuple . __getitem__ ( self , self ) ) #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# return tuple . __getitem__ ( self , item )