Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从SpringSecureJava类调用jsp页面?_Java_Jsp_Authentication_Spring Security - Fatal编程技术网

如何从SpringSecureJava类调用jsp页面?

如何从SpringSecureJava类调用jsp页面?,java,jsp,authentication,spring-security,Java,Jsp,Authentication,Spring Security,我有一个需求,我想调用另一个web应用程序的jsp页面,向其传递参数。但我不能使用简单的servlet,因为我使用了spring security和struts拦截器。我想要的只是调用一个jsp页面,向其传递一些值,然后将其响应捕获为true/false 我试过这个: try { URL url = new URL("http://someURL/page.jsp/"); InputStream is = url.openStream

我有一个需求,我想调用另一个web应用程序的jsp页面,向其传递参数。但我不能使用简单的servlet,因为我使用了spring security和struts拦截器。我想要的只是调用一个jsp页面,向其传递一些值,然后将其响应捕获为true/false

我试过这个:

       try {
            URL url = new URL("http://someURL/page.jsp/");
            InputStream is = url.openStream();
            InputStreamReader isr = new InputStreamReader(is);
            BufferedReader br = new BufferedReader(isr);
            String htmlText = "";
            String nextLine = "";
            while ((nextLine = br.readLine()) != null) {
                htmlText = htmlText + nextLine;
            }
            System.out.println(htmlText);

        } catch (MalformedURLException murle) {
            System.err.println("MalformedURLException: " + murle.getMessage());

        } catch (IOException ioe) {
            System.err.println("IOException: " + ioe.getMessage());
        }
我得到的回应如下:

<!doctype html>
    <html itemscope itemtype="http://schema.org/WebPage">
        <head>
            <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
            <meta itemprop="image" content="/images/google_favicon_128.png">      
            <title>Google</title>
            <script>window.google={kEI:"SwcyT9XhLofUrQe7wsiGBA",getEI:function(a){var d;while(a&&!(a.getAttribute&&(d=a.getAttribute("eid"))))a=a.parentNode;return d||google.kEI},https:function(){return window.location.protocol=="https:"},kEXPI:"34709,35055,36045,36121,36483",kCSI:{e:"34709,35055,36045,36121,36483",ei:"SwcyT9XhLofUrQe7wsiGBA"},authuser:0,ml:function(){},kHL:"en",time:function(){return(new Date).getTime()},log:function(a,d,f,h){var e=new Image,g=google,k=g.lc,i=g.li,m="";e.onerror=(e.onload=(e.onabort=function(){delete k[i]}));k[i]=e;if(!f&&d.search("&ei=")==-1)m="&ei="+google.getEI(h);var j=f||"/gen_204?atyp=i&ct="+a+"&cad="+d+m+"&zx="+google.time(),b=/^http:/i;if(b.test(j)&&google.https()){google.ml(new Error("GLMM"),false,{src:j});delete k[i];return}e.src=j;g.li=i+1},lc:[],li:0,Toolbelt:{},y:{},x:function(a,d){google.y[a.id]=[a,d];return false}};(function(){var a=google.kEI;window.pp_tos={};var d=document.domain.replace(/.*?(google\..*)/,"$1");function f(){var b=0;try{var c=document.cookie.match(/PP_TOS_ACK=([^;]*)/);b=c&&!isNaN(c[1])?c[1]:0}catch(l){e("error","read_cookie")}return b}function h(b){var c=f();if(c>=0){g(++c);if(f()>0&&!b)m()}}function e(b,c){var l=new Image;c=c?"&emsg="+c:"";l.src=["//",d,"/gen_204?atyp=i&ct=pp_tos&cd=",b,"&source=","web","&ei=",a,c].join("");window.pp_tos.beacon=l}function g(b){var c=new Date((new Date).getTime()+5184000000);try{var l="PP_TOS_ACK="+b+"; expires="+c.toGMTString()+"; path=/; domain="+d;document.cookie=l}catch(n){e("error","write_cookie")}}function k(){g(-1);e("dismiss");j()}function i(){g(-1);e("tellmore");j()}function m(){var b=document.getElementById("bb_pp_tos_ack");if(b){b.style.display="";e("display")}}function j(){var b=document.getElementById("bb_pp_tos_ack");if(b)b.style.display="none"}window.pp_tos.handleDismiss=k;window.pp_tos.handleLearnMore=i;window.pp_tos.checkCookie=h})();window.google.sn="webhp";window.google.timers={};window.google.startTick=function(a,b){window.google.timers[a]={t:{start:(new Date).getTime()},bfr:!(!b)}};window.google.tick=function(a,b,c){if(!window.google.timers[a])google.startTick(a);window.google.timers[a].t[b]=c||(new Date).getTime()};google.startTick("load",true);try{}catch(u){}var _gjwl=location;function _gjuc(){var e=_gjwl.href.indexOf("#");if(e>=0){var a=_gjwl.href.substring(e);if(a.indexOf("&q=")>0||a.indexOf("#q=")>=0){a=a.substring(1);if(a.indexOf("#")==-1){for(var c=0;c<a.length;){var d=c;if(a.charAt(d)=="&")++d;var b=a.indexOf("&",d);if(b==-1)b=a.length;var f=a.substring(d,b);if(f.indexOf("fp=")==0){a=a.substring(0,c)+a.substring(b,a.length);b=c}else if(f=="cad=h")return 0;c=b}_gjwl.href="/search?"+a+"&cad=h";return 1}}}return 0}function _gjp(){!(window._gjwl.hash&&window._gjuc())&&setTimeout(_gjp,500)};window._gjp && _gjp()</script>
            <style>#gbar,#guser{font-size:13px;padding-top:1px !important;}#gbar{height:22px}#guser{padding-bottom:7px !important;text-align:right}.gbh,.gbd{border-top:1px solid #c9d7f1;font-size:1px}.gbh{height:0;position:absolute;top:24px;width:100%}@media all{.gb1{height:22px;margin-right:.5em;vertical-align:top}#gbar{float:left}}a.gb1,a.gb4{text-decoration:underline !important}a.gb1,a.gb4{color:#00c !important}</style>
            <style id=gstyle>body{margin:0;overflow-y:scroll}#gog{padding:3px 8px 0}td{line-height:.8em}.gac_m td{line-height:17px}form{margin-bottom:20px}body,td,a,p,.h{font-family:arial,sans-serif}.h{color:#36c;font-size:20px}.q{color:#00c}.ts td{padding:0}.ts{border-collapse:collapse}em{font-weight:bold;font-style:normal}.lst{height:25px;width:496px}.gsfi,.lst{font:18px arial,sans-serif}.gsfs{font:17px arial,sans-serif}.ds{border-bottom:solid 1px #e7e7e7;border-right:solid 1px #e7e7e7;display:-moz-inline-box;display:inline-block;margin:3px 0 4px;margin-left:4px}input{font-family:inherit}a.gb1,a.gb2,a.gb3,a.gb4{color:#11c !important}body{background:#fff;color:black}a{color:#11c;text-decoration:none}a:hover,a:active{text-decoration:underline}.fl a{color:#36c}a:visited{color:#551a8b}a.gb1,a.gb4{text-decoration:underline}a.gb3:hover{text-decoration:none}#ghead a.gb2:hover{color:#fff!important}.sblc{padding-top:5px}.sblc a{display:block;margin:2px 0;margin-left:13px;font-size:11px;}.lsbb{background:#eee;border:solid 1px;border-color:#ccc #999 #999 #ccc;height:30px;display:block}.pp-new-desktop,.pp-new-mobile{color:red}.ftl,#fll a{display:inline-block;margin:0 12px}.lsb{background:url(/images/srpr/nav_logo80.png) 0 -258px repeat-x;border:none;color:#000;cursor:pointer;height:30px;margin:0;outline:0;font:15px arial,sans-serif;vertical-align:top}.lsb:active{background:#ccc}.lst:focus{outline:none}#addlang a{padding:0 3px}.gac_v div{display:none}.gac_v .gac_v2,.gac_bt{display:block!important}table.gssb_c{z-index:986  }.nbcl{background:url(/images/srpr/nav_logo80.png) no-repeat ;height:px;width:px}</style>
            <script>window.rwt=function(a,f,g,l,m,h,c,n,i){try{if(a===window){a=window.event.srcElement;while(a){if(a.href)break;a=a.parentNode}}var b=encodeURIComponent||escape,d;d=a.getAttribute("href");if(c&&c.substring(0,6)!="&sig2=")c="&sig2="+c;var o=["/url?sa=t","","&cd=",b(m),i?"&authuser="+b(i):"",google.j&&google.j.pf?"&sqi=2":"","&ved=",b(n),"&url=",b(d).replace(/\+/g,"%2B"),"&ei=","SwcyT9XhLofUrQe7wsiGBA",h?"&usg="+h:"",c].join("");a.href=o;a.onmousedown=""}catch(p){}return true};</script>
        </head>
        <body bgcolor=#ffffff text=#000000 link=#0000cc vlink=#551a8b alink=#ff0000 onload="document.f&&document.f.q.focus();document.gbqf&&document.gbqf.q.focus();if(document.images)new Image().src='/images/srpr/nav_logo80.png'" >
            <textarea id=csi style=display:none></textarea>
            <div id=mngb>
                <div id=gbar>
                    <nobr>
                        <b class=gb1>Search</b> 
                        <a class=gb1 href="http://www.google.co.in/imghp?hl=en&tab=wi">Images</a> 
                        <a class=gb1 href="http://maps.google.co.in/maps?hl=en&tab=wl">Maps</a> 
                        <a class=gb1 href="http://news.google.co.in/nwshp?hl=en&tab=wn">News</a> 
                        <a class=gb1 href="http://www.orkut.com/Main?tab=w0#Home">Orkut</a> 
                        <a class=gb1 href="http://translate.google.co.in/?hl=en&tab=wT">Translate</a> 
                        <a class=gb1 href="https://mail.google.com/mail/?tab=wm">Gmail</a> 
                        <a class=gb1 style="text-decoration:none" href="http://www.google.co.in/intl/en/options/"><u>More</u> &raquo;</a>
                    </nobr>
                </div>
                <div id=guser width=100%>
                    <nobr>
                        <span id=gbn class=gbi></span>
                        <span id=gbf class=gbf></span>
                        <span id=gbe>
                            <a  href="/url?sa=p&pref=ig&pval=3&q=http://www.google.co.in/ig%3Fhl%3Den%26source%3Diglk&usg=AFQjCNHe9Dv_h1zYL1VKlS7wKo_0Kg38dg" class=gb4>iGoogle</a> | 
                        </span>
                        <a href="http://www.google.com/history/optout?hl=en" class=gb4>Web History</a> | 
                        <a  href="/preferences?hl=en" class=gb4>Settings</a> | <a id=gb_70 href="https://accounts.google.com/ServiceLogin?hl=en&continue=http://www.google.co.in/" class=gb4>Sign in</a>
                    </nobr>
                </div>
                <div class=gbh style=left:0></div>
                <div class=gbh style=right:0></div>
            </div>
            <center>
                <br clear=all id=lgpd>
                <div id=lga>
                    <div style="padding:28px 0 3px">
                        <div align=left style="background:url(/intl/en_com/images/srpr/logo1w.png) no-repeat;height:110px;width:276px" title="Google" id=hplogo onload="window.lol&&lol()">
                            <div nowrap style="color:#777;font-size:16px;font-weight:bold;left:214px;position:relative;top:70px">India</div>
                        </div>
                    </div>
                    <br>
                </div>
                <form action="/search" name=f>
                    <table cellpadding=0 cellspacing=0>
                        <tr valign=top>
                            <td width=25%>&nbsp;</td>
                            <td align=center nowrap>
                                <input name=hl type=hidden value=en>
                                <input name=source type=hidden value=hp>
                                <input type=hidden name=ie value="ISO-8859-1">
                                <div class=ds style="height:32px;margin:4px 0">
                                    <input autocomplete=off maxlength=2048 name=q class="lst" title="Google Search" value="" size=57 style="background:#fff;border:1px solid #ccc;border-bottom-color:#999;border-right-color:#999;color:#000;margin:0;padding:5px 8px 0 6px;vertical-align:top">
                                </div>
                                <br style="line-height:0">
                                <span class=ds >
                                    <span class=lsbb>
                                        <input name=btnG type=submit value="Google Search" class=lsb>
                                    </span>
                                </span>
                                <span class=ds>
                                    <span class=lsbb>
                                        <input name=btnI type=submit class=lsb value="I&#39;m Feeling Lucky">
                                    </span>
                                </span>
                            </td>
                            <td nowrap width=25% align=left class="fl sblc">
                                <a href="/advanced_search?hl=en">Advanced search</a>
                                <a href="/language_tools?hl=en">Language tools</a>
                            </td>
                        </tr>
                    </table>
                    <input type=hidden id=gbv name=gbv value="1">
                </form><div style="font-size:83%;min-height:3.5em">
                <br>
                <div id=als>
                    <font size=-1 id=addlang>Google.co.in offered in: 
                        <a href="http://www.google.co.in/setprefs?sig=0_DDnMKGiVFxFvNLf08409BXmS8WU=&amp;hl=hi">Hindi</a> 
                        <a href="http://www.google.co.in/setprefs?sig=0_DDnMKGiVFxFvNLf08409BXmS8WU=&amp;hl=bn">Bengali</a> 
                        <a href="http://www.google.co.in/setprefs?sig=0_DDnMKGiVFxFvNLf08409BXmS8WU=&amp;hl=te">Telugu</a> 
                        <a href="http://www.google.co.in/setprefs?sig=0_DDnMKGiVFxFvNLf08409BXmS8WU=&amp;hl=mr">Marathi</a> 
                        <a href="http://www.google.co.in/setprefs?sig=0_DDnMKGiVFxFvNLf08409BXmS8WU=&amp;hl=ta">Tamil</a> 
                        <a href="http://www.google.co.in/setprefs?sig=0_DDnMKGiVFxFvNLf08409BXmS8WU=&amp;hl=gu">Gujarati</a> 
                        <a href="http://www.google.co.in/setprefs?sig=0_DDnMKGiVFxFvNLf08409BXmS8WU=&amp;hl=kn">Kannada</a> 
                        <a href="http://www.google.co.in/setprefs?sig=0_DDnMKGiVFxFvNLf08409BXmS8WU=&amp;hl=ml">Malayalam</a> 
                        <a href="http://www.google.co.in/setprefs?sig=0_DDnMKGiVFxFvNLf08409BXmS8WU=&amp;hl=pa">Punjabi</a>
                    </font>
                    <br><br>
                </div>
            </div>
            <div id=res></div>
            <span id=footer>
                <center id=fctr>
                    <div style="font-size:10pt">
                        <div id=fll style="margin:19px auto;text-align:center">
                            <a href="/intl/en/ads/">Advertising&nbsp;Programs</a>
                            <a href="http://www.google.co.in/services/">Business Solutions</a>
                            <a href="/intl/en/about.html">About Google</a>
                            <a href="http://www.google.com/ncr" class="gl nobr">Go to Google.com</a>
                        </div>
                    </div>
                    <p style="color:#767676;font-size:8pt">
                        &copy; 2012 - <a href="/intl/en/privacy.html">Privacy</a>
                    </p>
                </center>
            </span> 
            <div id=xjsd></div>
            <div id=xjsi>
                <script>if(google.y)google.y.first=[];google.dlj=function(b){window.setTimeout(function(){var a=document.createElement("script");a.src=b;document.getElementById("xjsd").appendChild(a)},0)};if(google.y)google.y.first=[];if(!google.xjs){google.dstr=[];google.rein=[];if(google.timers&&google.timers.load.t){google.timers.load.t.xjsls=new Date().getTime();}google.dlj('/extern_js/f/CgJlbhICaW4gACswRTgALCswWjgALCswDjgALCswFzgALCswPDgALCswUTgALCswCjgAmgICaGUsKzCYATgALCswFjgALCswGTgALCswQTgALCswTTgALCswTjgALCswVDgALCswaTgALCswkAE4ACwrMJIBOAAsKzDYATgALCswGDgALCswJjgALIACUJACYw/bbNmQ_tfM2A.js');google.xjs=1}google.neegg=1;google.mc=[];google.mc=google.mc.concat([[69,{}],[14,{}],[60,{}],[23,{}],[81,{}],[10,{"client":"hp","dh":true,"ds":"","fl":true,"host":"google.co.in","jsonp":true,"msgs":{"lcky":"I\u0026#39;m Feeling Lucky","lml":"Learn more","psrc":"This search was removed from your \u003Ca href=\"/history\"\u003EWeb History\u003C/a\u003E","psrl":"Remove","srch":"Google Search"},"ovr":{"o":1,"pf":1,"ps":1,"sn":1,"sw":1},"pq":"","scd":10,"sce":5}],[152,{}],[65,{}],[78,{}],[25,{"g":8,"k":false,"m":{"app":true,"bks":true,"blg":true,"dsc":true,"evn":true,"flm":true,"frm":true,"isch":true,"klg":true,"mbl":true,"nws":true,"plcs":true,"ppl":true,"prc":true,"pts":true,"rcp":true,"shop":true,"vid":true},"t":null}],[216,{}],[105,{}],[22,{"db":false,"m_errors":{"32":"Sorry, no more results to show.","default":"\u003Cfont color=red\u003EError:\u003C/font\u003E The server could not complete your request.  Try again in 30 seconds."},"m_tip":"Click for more information","nlpm":"-153px -84px","nlpp":"-153px -70px","utp":false}],[77,{}],[146,{}],[144,{}],[84,{}],[24,{}],[38,{}]]);google.y.first.push(function(){if(google.med){google.med('init');google.initHistory();google.med('history');}google.History&&google.History.initialize('/')});if(google.j&&google.j.en&&google.j.xi){window.setTimeout(google.j.xi,0);}</script></div><script>(function(){var b,d,e,f;function g(a,c){if(a.removeEventListener){a.removeEventListener("load",c,false);a.removeEventListener("error",c,false)}else{a.detachEvent("onload",c);a.detachEvent("onerror",c)}}function h(a){f=(new Date).getTime();++d;a=a||window.event;var c=a.target||a.srcElement;g(c,h)}var i=document.getElementsByTagName("img");b=i.length;d=0;for(var j=0,k;j<b;++j){k=i[j];if(k.complete||typeof k.src!="string"||!k.src)++d;else if(k.addEventListener){k.addEventListener("load",h,false);k.addEventListener("error",h,false)}else{k.attachEvent("onload",h);k.attachEvent("onerror",h)}}e=b-d;function l(){if(!google.timers.load.t)return;google.timers.load.t.ol=(new Date).getTime();google.timers.load.t.iml=f;google.kCSI.imc=d;google.kCSI.imn=b;google.kCSI.imp=e;if(google.stt!==undefined)google.kCSI.stt=google.stt;google.timers.load.t.xjs&&google.report&&google.report(google.timers.load,google.kCSI)}if(window.addEventListener)window.addEventListener("load",l,false);else if(window.attachEvent)window.attachEvent("onload",l);google.timers.load.t.prt=(f=(new Date).getTime());})();</script>

谷歌
window.google={kEI:“SwcyT9XhLofUrQe7wsiGBA”,getEI:function(a){var d;while(a&!(a.getAttribute&&(d=a.getAttribute(“eid”))a=a.parentNode;return d | | google.kEI},https:function(){return window location.location.protocol=“https:”,kEXPI:“3470935055360453612136483”,kCSI:{e:“3470935055360453612136483”,ei:“swcytxhlofurqe7qe0,authqe0,user:”用户:}(一、d、f、h){var e=新图像,g=谷歌,g=g.lc,g=g.lc,i=g.li,g=谷歌,g=谷歌,g=g=g.C.lc,i=g.li,m=”;e.N:当时:时间:时间:函数函数(返回(新日期)返回(返回(新日期)。时间:返回(返回)时间:函数。时间:函数(a、d、d、d、f、f、f、f、f、f、f、f、h、h、h、h)以及h){{{{从新图像,g=新图像,g=谷歌,g=谷歌,g=谷歌,g=谷歌,g=g,g=g.g=g.C.C.C.C,g=g.lc,g=g.C,i,i,i,i,i,i,i=g.C,i,i=g.C,i,i=g.C,i i;if(b.test(j)和&google.https()google.ml(新的错误(“GLMM”)、假、假、{src:j});删除k[i];返回;返回)e.src=j;g.li=i+1},lc:[,li:0,li:0,工具带:新的错误(“GLMM”)、假、假、假、假;删除k[i];删除k[i];返回;返回;返回)e.src.src=i=j.i=i=i+1;1},1},1},1.1.1},1.1.1.1.1.1.1.1.1.1.1.1.1;删除k;删除k[c.c.c.c.c.src.src.src.src.src.1.1.1.src.src.i=c=c=c.i=c=c.1.i=c.i=c.1.i=c.i=c.)/;b=c&&!isNaN(c[1] (1)c(1)c(1)c(1)c(1)c(1)c(1)c(1)c(1)c(1)c(1)c(1)c(1)c(1)c(1)c(1)c(1)c(1)0)c(1)捕获(1)捕获(1)捕获(1)捕获(1)的)捕获(1)捕获(1)的)可能(1)捕获(1)可能(1)捕获(1)捕获(1)捕获(1)捕获(1)捕获(1)捕获(1)的)可能(1)捕获(1)捕获(1)捕获(1)捕获(1)捕获(1)捕获(1)捕获(1)可能(1)捕获(1)捕获(1)捕获(1)的(1)捕获(1)的)可能(1)可能(1)捕获(1)可能(1)的)捕获(1)捕获(1)捕获(1)捕获(1)的)的)的)(新日期).getTime()+5184000000);尝试{var l=“PP_-TOS_-ACK=“+b+”expires=“+c.togmstring()+”;path=/;domain=“+d;document.cookie=l}catch(n){e(“error”,“write_-cookie”)}函数k(){g(-1);e(“dismise”);j()}函数i(){g(-1);e(“tellmore”);j()}函数m(){var b=document.getElementById(“bb-PP_-TOS-ACK-ACK”);if(b.style.display”);e(“display”)}函数getelementb=document id”()bb_pp_tos_ack”);if(b)b.style.display=“none”}window.pp_tos.handleDismiss=k;window.pp_tos.handleLearnMore=i;window.pp_tos.checkCookie=h}();window.google.sn=“webhp”window.google.timers={};window.google.startTick=function(a,b){window.google.timers[a]={t:{开始:(新日期).getTime(),bfr:!(b)};window.google.tick=function(如果b){谷歌(window.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.计时器[a a]一个)谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.窗口.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.计时器[a a]一个[a]的[a]一个]谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌.谷歌a.indexOf(“#”)==-1{for(var c=0;c
| 
| 
| 

印度


Google.co.in提供于:

&副本;2012年-

if(google.y)google.y.first=[];google.dlj=function(b){window.setTimeout(function(){var a=document.createElement(“script”);a.src=b;document.getElementById(“xjsd”).appendChild(a)},0};if(google.y)google.y.first=[];if(!google.xjs){.google.dstr=[];google.rein=[];if(google.timers&&google.timers.load.t){.google.timers.load.t()=new Date.getTime}google.dlj('/extern_js/f/cgjlbhicaw4Gacswrtgalcswwjgalswjgalswjgalswjgalswjgalswjgalswuggalcswuguskzcyatgalcwjgalswjgalswggalswqtgalcswtgalcswjga