alias urldata {
var %arg = $gettok($replace($1,/@,@),2,47) , %up = $iif(@ isin %arg,$gettok(%arg,1,64)) , %hp = $gettok($gettok(%arg,$iif(@ isin %arg,2,1),64),1,47) , %p = $$2
if (%p == port) { return $iif($gettok(%hp,2,58) isnum 1-65535,$ifmatch,$iif($left($1,4) == ftp:,21,80)) }
elseif (%p == user || %p == pass) { return $gettok(%up,$iif(%p == user,1,2),58) }
elseif (%p == path) { return $+(/,$gettok($1,3-,47)) }
elseif (%p == host) { return $gettok(%hp,1,58) }
}