%w[tempfile uri].map{|l|require l};class Object;def meta_def m,&b;(class<URL(*a)end;def r404 p=env.PATH r 404,P%"#{p} not found"end;def r500 k,m,x r 500,P%"#{k}.#{m}"+"

#{x.class} #{x.message}:

"end;def r501 m=@method r 501,P%"#{m.upcase} not implemented"end;def to_a [status,body,headers]end;def initialize r,e,m;@status,@method,@env,@headers, @root=200,m,e,H['Content-Type','text/html'],e.SCRIPT_NAME.sub(/\/$/,'') @k=C.kp e.HTTP_COOKIE;q=C.qsp e.QUERY_STRING;@in=r;case e.CONTENT_TYPE when%r|\Amultipart/form-.*boundary=\"?([^\";,]+)|n b=/(?:\r?\n|\A)#{Regexp.quote"--#$1"}(?:--)?\r$/;until@in.eof?;fh=H[] for l in@in;case l;when Z;break;when/^Content-D.+?: form-data;/ fh.u H[*$'.scan(/(?:\s(\w+)="([^"]+)")/).flatten] when/^Content-Type: (.+?)(\r$|\Z)/m: fh.type = $1 end end;fn=fh.name o=if fh.filename;o=fh.tempfile=Tempfile.new(:C);o.binmode;else;fh="";end;s=8192 k='';l=@in.read(s*2);while l;if(k<x;X::I.new(r,e,'r500').service k,m,x end;def method_missing m,c,*a;X.M;k=X.const_get(c).new StringIO.new, H['HTTP_HOST','','SCRIPT_NAME','','HTTP_COOKIE',''],m.to_s H[a.pop].each{|e,f|k.send"#{e}=",f}if Hash===a[-1];k.service(*a)end end module Views;include X,Helpers end;module Models;autoload:Base,'camping/db' def Y;self;end end;autoload:Mab,'camping/mab'end