MAJOR=4
MINOR=59
DEVNAME=tty59
  "   ˆl–äY>”*hŠ
�nà\¸Ø”Å£ÁƒÀ¿ 0    #!/usr/bin/perl -w

use strict;
use warnings;

sub usage {
    my $prog = $0; $prog =~ s,.*/,,;
    die "Usage: $prog <uri> [<method> [<args>]...]\n";
}

usage() unless @ARGV;
my $uri = shift;
my $orig = $uri;

require URI;

my @ctor_arg = ($uri);
push(@ctor_arg, shift) while @ARGV && $ARGV[0] =~ s/^\+//;

$uri = URI->new(@ctor_arg);

if (@ARGV) {
    my $method = shift;
    my $list_context = ($method =~ s/^\@//);
    #print "URI->new(\"$uri\")->$method ==> ";
    for (@ARGV) {
	undef($_) if $_ eq "UNDEF";
    }

    my @result;
    if ($list_context) {
	@result = $uri->$method(@ARGV);
    } else {
	@result = scalar($uri->$method(@ARGV));
    }

    for (@result) {
	if (defined) {
	    $_ = "«$_»" if /^\s*$/;
	} else {
	    $_ = "<undef>";
	}
    }
    print join(" ", @result), "\n";
}
print "$uri\n" unless $orig eq $uri;
exit;

# Some extra methods that might be nice

sub UNIVERSAL::class { ref($_[0]) }

sub UNIVERSAL::dump {
    require Data::Dumper;
    my $d = Data::Dumper->Dump(\@_, ["self", "arg1", "arg2", "arg3", "arg4"]);
    chomp($d);
    $d;
}
  #   ˆl–äY>”*e¶¥8 Aq±\ŠbÑ¿Â„m�2/ÁÀ ?÷     ELF          >    ÀO      @       hÇ          @ 8  @         @       @       @       Ø      Ø                                                                                        )      )                    0       0       0      Z      Z                    �       �       �      $      $                   °¹      °¹      °¹      ¸                          È¹      È¹      È¹                                 8      8      8      0       0                    h      h      h      D       D              Såtd   8      8      8      0       0              Påtd   T       T       T                          Qåtd                                                  Råtd   °¹      °¹      °¹      P      P             /lib64/ld-linux-x86-64.so.2               GNU   À          € À                   GNU ‰›74Ê'(u8Œ}ùp^)W>­         GNU                      �         °€ !
ˆ @�   †   �   
Þ÷j	CÖºã’|BEÕì)Œ:—2bÛí¬KãÀÀ³÷ØqX8ò‹kš|2Ä÷³¢÷                            p                     z                     ’                     ª                     é                     ó                     ï                     Ý                      ¯                     ç                     Æ                     >                     ´                     M                                            (                                          }                     �                                          Ñ                     Ã                                                               ˆ                     0                     —                     4                     Å                     Y                     g                      »                      �                     q                     3                     è                                                                 $                     È                     ¢                      )                     »                     ,                       f                     ˆ                                          F   "                   L                     ¼                     º                     ª                     þ                      ¤                     Â                     T                     ‘                     ÷                     Y                     ­                     C                     i                     �                     e                     Ü                     �                     `                     ¾                     ~                     ’                      m                     
                     Š                     Ì                     ¶                     /             