v{}!*DrM>bFF)#1@CbKGBbs$LRzU@2(ORkqEKX|FjAo-a#!NKvophVQr=Dw?3SFx1?hV)!%6eqh-J
zpVjTE#l7*e<22f>9bytXVUOYBMvI5l|NUZj%ct80)g?0_KrZT*rI}R!yW=paQ-qK7
zsCsUt&=S`m-Af-pCq*j$Vy54qWC^y-pq6Z#yE1pVr+|v>*c0K{iBtt2GaPxkDqRcR
z2q^fB;p~5YMv!;m_XyR^Jl&?Vj^|IEB|ai_&nBi0h;|9kNS#uS)FkCd{ZWq88s$h`
zku1`pe*vjc(HlutsHvv#4B?4;`&&X2zps7;tEBftBKNWP9`;LVG#ZuCK`9-M#iVpZ
zN=M^yDUC_#1x1n4xRj13QYk5(NX366*hmNawMw*ugIXol!4a(z?_f-;C>@Mzl|%<8
zw0p?@Kwb>sB>fM|lh$wnbu5A7lw1+3^r{H_o+X_q&8xYShwkIW+~J>a=5d4uo!_Fj
zK~o}(kUi<+CCQ5T61+qR?`6Capyp|0q!r8kh%?{GZG}T|IoXmhYF8nE8N@l9rx`)z
zRoXxpAKk>On<$Jvz%=j+W(Mf*8UvB=GZuaa`~ERpKZJX<8!US2&;uaAJx?JLpiW
zTe%j=J*-R!R_7uIH?ef;aWu9?*C5^5?*tgRz_(u|4qj~8rIMoR0=pvF3EGBF
z5+S2sLy3NaXhbj*k)i4`6F$K(RwQ2r>BKOgPSHygRT2g$k~KNju}Y&L(jk}+;bRT!
ZG?ONsyZ8v7-~g?Ciq9#>zmOK6{tX4nDS7|^
literal 0
HcmV?d00001
diff --git a/bin/org/kne/cloud/network/tun/WindowsIPAddressManager$SuffixOrigin.class b/bin/org/kne/cloud/network/tun/WindowsIPAddressManager$SuffixOrigin.class
new file mode 100644
index 0000000000000000000000000000000000000000..a2a5708a243c0d80fc464fb22e9f926e8c85e5a1
GIT binary patch
literal 3149
zcmb_eTXz#x6#hv>kG}chgBF#FOBT;Af0N67PKI_;Doa=FLr=al`*yy)_u1!@~xx*voF=%2=i1=&n1-End@|A+1@h8n>n$qh?qN
z!VEn(`4Z2X+^S{At>z-bi-kr|XxdxQ9fr|jXTEX_JK7CXL``lo>}ub>rkmzv%U-q^
zdfUHTSSU9b_O@>p4Xa+{E4t&K^BFf+IT1m}+T>=|DlgEP^$J5|iJMKGffX3K$ERi|
zhvvqLv*Q}W*p1Fl9UCc|hGlqX8A7S_978y7SM(Sn2{81j*oBuEq9eY@u2gX&ADZVF
zRxMX3r03!!JfI?iXbg$~dsHX_#01!{A|^mwfR|Oo1xN^RSVcmBZUNFNx&=@LIHE#D
zRQx)oVmp!y+lfnks<}9?J2QOVBu09RcA1-V+%W`}n+b&Qs)+hEihiqLTd|%}u?;s$(zuJNZ;0-6_w4%n=oDfoP7(e3I9ED&27c6BxyL1!D|J
znV6<$nAtJM;VZ6+JT8zs*K>4E6?QCjBapo5`I~y#%cWaeQmrMJrL>ZKu9q75qKdaM
zA!yQFkKuq|V#7_fX_Y<0wz5|oy<(KPr{}tH2}K2$sh&6F+U%;B#1utUHB3)5?ioKx
zGJ-8E1|7B;lD@8}cn4QSzUV%=XgDIuzEn_Wx*iQtHB&8S)2YdR!)HE;$o
zIYv4S@GKoUdET}?Dns6w)V&3};wE6Bp}=N1xWSKME!lNFTa@&WAg}VWXFDq@J_eP1
z_u|GD!=FL+ea)8f2^tNi?hX}gyWVVUk(0m)+Z1P38hTLt-+yeme7>&VU9u8<%Xw~^
znnC@)Jqo&Mb_S31w0o{6;fZT-Sw#gp2`-5nu+yZZ$t<;&TCgnLk+rM43O-{v^h`Ro
zB2~d18rjbmrE8&;0R>+$ocPc042mxJV4=R5qT6)BcD>OP#7Btk+4yL`n4JKvG&bc*
z6H~4lm9F}NMqP>xbMEfK<5RFQ7P@*A4k?4>_uf$>!r6kHEqsgSi!%5|L@)BA_zg7yb
zVo)nZR%P-<9
zJwW`^Opr{N_SMYr;6t3q?D-idH(R(vtlXt%#64-DkMv0%rzKb7mtZSI_FgAXEsnCZ
zGLnj9e!|J`rCSkDRBqmvX4IB|Zzhg2c$0Pn!I#K^P~N|W+#1deJi<8eD+*ooZ<>L)
z_yyV%upc(r{W@TGe=CLbDx&9sZ}&7MP83GpDvp*ehcb^#BZAz?(C#&qj%>EZ*6E7V
zjsB5uBjd-G=w+ET@GYWP*GncuPx^X!(i61x3=<&(-$Dt0hj2(R6OyTFF%vvN52}){
z8p%Y^rH<006$=EqVBn@)>o92*M7m_AiCef$nHKfig-`K0<*c8+-NTpE0r#cGy}toq
Cyg1$f
literal 0
HcmV?d00001
diff --git a/bin/org/kne/cloud/network/tun/WindowsIPAddressManager$UnicastIPAddressRow.class b/bin/org/kne/cloud/network/tun/WindowsIPAddressManager$UnicastIPAddressRow.class
new file mode 100644
index 0000000000000000000000000000000000000000..5061294a789c80b70aabdd9d151b6fdb745dd0b5
GIT binary patch
literal 11021
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
literal 0
HcmV?d00001
diff --git a/bin/org/kne/cloud/network/tun/WindowsIPAddressManager.class b/bin/org/kne/cloud/network/tun/WindowsIPAddressManager.class
new file mode 100644
index 0000000000000000000000000000000000000000..9e9e7c4efce9ff3e5ddb51e1730e34b691368aa9
GIT binary patch
literal 17017
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