7  java/lang/Object()V  org/freertr/serv/servSipDoeruserLjava/lang/String;  lowerLorg/freertr/serv/servSip;  pipeLorg/freertr/pipe/pipeSide;  connLorg/freertr/prt/prtGenConn;java/lang/Thread  (Ljava/lang/Runnable;)V ! "start $%& '(org/freertr/prt/prtGenConn compareTo(Lorg/freertr/prt/prtGenConn;)I *+, -.org/freertr/pack/packSipbyteCopy7(Lorg/freertr/pipe/pipeSide;)Lorg/freertr/pack/packSip; *0 1 writeDown $3 45peerAddrLorg/freertr/addr/addrIP; $7 89portRemI ;<= >?org/freertr/enc/encUrladdr2str.(Lorg/freertr/addr/addrIP;I)Ljava/lang/String; $A BCifaceLorg/freertr/ip/ipFwdIface; EFG H5org/freertr/ip/ipFwdIfaceaddr $J K9portLocM NOmakeConcatWithConstants&(Ljava/lang/String;)Ljava/lang/String; $Q RSprotoDatLjava/lang/Object;UUDPWTCPY NZ8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; \]^ _`org/freertr/util/debugger servSipTrafZbstarted def ghorg/freertr/util/loggerdebug(Ljava/lang/String;)V jkl mnorg/freertr/serv/servSip addClient!(Lorg/freertr/serv/servSipDoer;)V p qdoersjava/lang/Exception du vw traceback(Ljava/lang/Throwable;)V yz{ |}org/freertr/pipe/pipeSidesetClose()Z j n delClientstoppedFrom *  headerGet'(Ljava/lang/String;I)Ljava/lang/String;To j  trnsOutSrcLjava/util/List;  org/freertr/cfg/cfgTrnsltn doTranslate6(Ljava/util/List;Ljava/lang/String;)Ljava/lang/String; j  trnsOutDst 100 trying  getMyContact()Ljava/lang/String; *  makeNumericA(Ljava/lang/String;Lorg/freertr/pack/packSip;Ljava/lang/String;)Vtx * hdump j myPeer  org/freertr/cfg/cfgAlldialFind.(Ljava/lang/String;Z)Lorg/freertr/cfg/cfgDial; X(Ljava/lang/String;Ljava/lang/String;Lorg/freertr/cfg/cfgDial;)Lorg/freertr/cfg/cfgDial;no such number * makeErrA(Lorg/freertr/pack/packSip;Ljava/lang/String;Ljava/lang/String;)V * content  org/freertr/cfg/cfgDialsendMsg7(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Z not went out * makeOk0(Lorg/freertr/pack/packSip;Ljava/lang/String;I)V * (Lorg/freertr/pipe/pipeSide;)V * }readUprx * command  java/lang/Stringtrim indexOf(Ljava/lang/String;)I  substring(II)Ljava/lang/String;  toLowerCasenull:// ; parseOne,(Ljava/lang/String;)Lorg/freertr/enc/encUrl;register equals(Ljava/lang/Object;)Z subscribe ; O fromEmail ;  fromString(Ljava/lang/String;)Z ; usernameContact *  copyHeader/(Lorg/freertr/pack/packSip;Ljava/lang/String;)Voptionssip/    startsWith j    findClient2(Ljava/lang/String;)Lorg/freertr/serv/servSipDoer;  '!(Lorg/freertr/serv/servSipDoer;)Ipacket to yourself  length()Inot registered  getPeerContactM * headerM "#$ %java/util/Listadd *' () headerSet((Ljava/lang/String;ILjava/lang/String;)Z+Via -./ 0org/freertr/util/bitsrandomD2 NM 5 6getMyVia *8 9Z updateVia;fwd = >?sendPack(Lorg/freertr/pack/packSip;)VAackCbyeEcancelGmessage I JKdoMsg7(Lorg/freertr/pack/packSip;Lorg/freertr/pack/packSip;)VMnotifyOinviteQ cant handleSorg/freertr/addr/addrIP R *V WX sdpGetMediaEP(Lorg/freertr/addr/addrIP;)IZ no endpoint\CSeqM -_ `str2numbCall-Idd Ne(I)Ljava/lang/String; *g hO updateTagj 180 ringing l mZmakeCallofailed to make call jq r getDataPort t uvgetCodec()Lorg/freertr/snd/sndCodec; *x yzmakeSdp7(Lorg/freertr/addr/addrIP;ILorg/freertr/snd/sndCodec;)V|org/freertr/pack/packRtp { j srvVrfLorg/freertr/cfg/cfgVrf;  org/freertr/cfg/cfgVrfgetUdp3(Lorg/freertr/addr/addrIP;)Lorg/freertr/prt/prtUdp;org/freertr/pipe/pipeLine  (IZ)V {  startConnectl(Lorg/freertr/prt/prtGen;Lorg/freertr/pipe/pipeLine;Lorg/freertr/ip/ipFwdIface;ILorg/freertr/addr/addrIP;I)ZBYE * makeReq(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;II)V  hstopCallorg/freertr/snd/sndConnect  getCall.(Ljava/lang/String;)Lorg/freertr/pack/packRtp;  k(Lorg/freertr/pack/packRtp;Lorg/freertr/pack/packRtp;Lorg/freertr/snd/sndCodec;Lorg/freertr/snd/sndCodec;)V  isClosed * * ready2rx - sleep(I)V only one call bad method  |java/lang/Runnablejava/lang/ComparableT(Lorg/freertr/serv/servSip;Lorg/freertr/pipe/pipeSide;Lorg/freertr/prt/prtGenConn;)VCodeLineNumberTable StackMapTablerun(Ljava/lang/Object;)IMethodParameters Signature\Ljava/lang/Object;Ljava/lang/Runnable;Ljava/lang/Comparable; SourceFile servSip.javaBootstrapMethods  SIP/2.0/   Contact: SIP/2.0/UDP ;rport;branch=Via:    N$java/lang/invoke/StringConcatFactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; InnerClasses%java/lang/invoke/MethodHandles$Lookupjava/lang/invoke/MethodHandlesLookup   -** *+*,*-*Y* &   !,! jy$'$ *+#>?.+*)M,/ **2*6:2*@D*I:L6a.*P TLVL+*@D*I:X  ;[ac**i*oL+t*xW**~[cr2      ' /5:  NrJKl+N+:*-N*:,+*[ ,,/:**:-:,+[ ,,/-+,+¶[ ,,/,+IJ[ ,,/v+6<BFIS`!j"o#w$}%'(*+,-/023467B""q *Y*L+˙[ +ζ+M+N+ж:ض6޶Ӷ:: L-W* *Y*:+x+[ /Q-*Y*:+IJ[ /6,:-MN:-W* :*/*Y*:  +[   /* /*Y*:  +[   /x+:*:+ !W+*&W+*:"*,1:+3!W+**47&W[ +:+<@λ*Y*: BD  +IJ[   /F *+ HyL  +IJ[   /QN" +P[   /'RYT: + U6  " +Y[   /+[]:ض6  ޶Ӹ^6 +:*:+ !W+*&W+*:  "*,1: + 3!W *47: +* &W+a: ,c:*: +*[   /-fN+-&W i+*[   /*,:*-::**::! +[   /tk:" +n[   /E +* *@D*psw[   /{Y}:*~ Y*@*p  8 -,*  `[   /Yss:?+5+ +˙[ +ζ+ж:ض6޶Ӷ:@ ) +x +[   /I  +IJ[   /!F *+ H L  +IJ[   /N+a:" +[   /+*&W+* &W +*[   /+-&W i+*[   / +* *@D*psw[   /BD  +IJ[   /" +[   / -,*  `[   /: <=?@ B(C0D9EBFGGJIZJaKuLMNOPQRTUWXYZ[]^`abcd egh&i+j4kAlKmQnXp]q`sktxuvwyz|}~"(+03>ANdlry~ -6FOXct '-49FSV`mx} <U[bgnq       "!#*$2%8&?(D)G+R,Z-`.g0l1o3z45789:<=?@ABCDFGIJK LMOP(Q5R;SBUGVRWmXsYz[\^_`acdfghjlmnoqr sH * ) **;@*,*I *.*-= "*!-RU=2!,8%&2d{   5/'7*A'! *+ 2