##
package MyNotIO;
use base 'IO::Handle';
sub isa
{
my $self = shift;
my $type = shift;
return 0 if $type eq 'IO::Handle';
return $self->SUPER::isa($type);
}
##
##
package UNIVERSAL;
sub safe_isa
{
my $obj = shift;
return unless defined $obj and ref $obj;
$obj->isa(@_);
}