def _validate_dic ( self, dic ):
        name    = self.name
        new_dic = {}

        key_validate = self.trait.key_trait.handler.validate
        if key_validate is not None:
            key_validate = lambda object, name, key: key

        value_validate = self.trait.value_trait.handler.validate
        if value_validate is None:
            value_validate = lambda object, name, value: value

        object = self.object()
        for key, value in dic.iteritems():
            try:
                key = key_validate( object, name, key )
            except TraitError, excp:
                excp.set_prefix( 'Each key of the' )
                raise excp

            try:
                value = value_validate( object, name, value )
            except TraitError, excp:
                excp.set_prefix( 'Each value of the' )
                raise excp

            new_dic[ key ] = value

        return new_dic

#-------------------------------------------------------------------------------
#  Tell the C-based traits module about 'TraitListObject', 'TraitSetObject and
#  'TraitDictObject', and the PyProtocols 'adapt' function:
#-------------------------------------------------------------------------------
dataset/ETHPy150Open enthought/traits/traits/trait_handlers.py/TraitDictObject._validate_dic/operator `is` -> `is not`