#NEWLINE# def find_shadowed( self , extra = ( ) ) : #NEWLINE# #INDENT# 'Find all the shadowed names.  extra is an iterable of variables\n        that may be defined with `add_special` which may occour scoped.\n        ' #NEWLINE# i = self . identifiers #NEWLINE# return ( ( ( i . declared | i . outer_undeclared ) & ( i . declared_locally | i . declared_parameter ) ) | set ( ( x for x in extra if i . is_declared ( x ) ) ) )