import sys,os,SimpleXMLRPCServer as S,xmlrpclib as L,re,hmac;T=lambda x=[]:([(y 
in s)or s.append(y)for y in x],s)[1];f=lambda p,n,a:p==P(M)and{0:T,1:lambda a:[U
(a)]}.get(n,lambda n:L.Binary(file(n,'rb').read()))(a);U=lambda p='':[n for n in
os.listdir(os.getcwd())if re.search(p,n)];O=lambda u:(u==M and T())or T(X(u).f(P
(u),0,T([M])));P=lambda u:hmac.new(V[1],u).hexdigest();V=sys.argv;M="http://"+V[
3]+":"+V[4];X=L.ServerProxy;s=V[5:];"server"!=V[2]and([[file(F,"wb").write(X(l).
f(P(l),2,F).data)for F in[i for i in X(l).f(P(l),1,V[4])[0]if not i in U()]]for 
l in X(V[3]).f(P(V[3]),0,[])],sys.exit(0));i=S.SimpleXMLRPCServer((V[3],int(V[4]
)));T()and map(O,O(T()[0]));i.register_function(f,"f")or i.serve_forever();('_')
