ninenines / cowboy

Small, fast, modern HTTP server for Erlang/OTP.
https://ninenines.eu
ISC License
7.27k stars 1.16k forks source link

I cannot make HTTP requests. #1040

Closed JamesArthurHolland closed 7 years ago

JamesArthurHolland commented 7 years ago

Hi,

I've recently got using cowboy and I am really enthused by what it provides. I got a quick endpoint working that handles post / get requests with hardly any lines of code compared to what it would take to set up a PHP application in whatever framework.

The problem: I can't make a HTTP request from within cowboy application. I tried installing cowboy through the tutorial (with erlang.mk) and with rebar3, still the same issue. It crashes everytime I try to call inets:start(). I can spawn an erlang shell with erl and it works there, but not in the eshell that is spawned when I run the compiled release with the console option, as in the tutorial. I get this error

(cowboy_hello_world@CTAFrontend)1> application:start(inets). {error,{"no such file or directory","inets.app"}}

^This same error happens for application:start(ssl). , but both commands work when in an erlang shell spawned by 'erl' command. I have successfully made http requests from within a shell spawned by 'erl'.

Tried to use gun as a workaround but if I add "DEPS = gun" to the Makefile, it compiles ok but then crashes every time I start the application.

Been at this for nearly 10 hours and really starting to lose faith in what I started out thinking was a great new way of doing things.

Using ubuntu 12.04 on a virtualbox vm, with the latest esl-erlang download from the erlang solutions repos.

essen commented 7 years ago

For inets, try adding LOCAL_DEPS = inets to your Makefile and do make run again.

For Gun, I would love to see the full error.

Cheers.

JamesArthurHolland commented 7 years ago

So I changed the VM box to centos instead of ubuntu, reinstalled everything, still same problem. Tried LOCAL_DEPS = inets but still no dice. I reverted back to the inets implementation in my code, as I thought it would be easiest to fix it with that rather than an external package, so I don't have the gun error, sorry. I'm confident the error on the last line of output is the same as it was when using gun and attempting to use another HTTP client, 'hackney'.

Thanks

(cta_erlang_backend@127.0.0.1)1> application:ensure_all_started(inets).
{ok,[]}
(cta_erlang_backend@127.0.0.1)2> 
=ERROR REPORT==== 19-Oct-2016::23:59:32 ===
Error in process <0.450.0> on node 'cta_erlang_backend@127.0.0.1' with exit value:
{[{reason,function_clause},
  {mfa,{hello_handler,handle,2}},
  {stacktrace,
      [{hello_handler,response_body,
           [{error,
                {failed_connect,
                    [{to_address,{"www.youtube.com",443}},
                     {inet,
                         [inet],
                         {eoptions,
                             {undef,
                                 [{ssl,connect,
                                      ["www.youtube.com",443,
                                       [binary,
                                        {active,false},
                                        {ssl_imp,new},
                                        inet],
                                       infinity],
                                      []},
                                  {http_transport,connect,4,
                                      [{file,"http_transport.erl"},
                                       {line,109}]},
                                  {httpc_handler,connect,4,
                                      [{file,"httpc_handler.erl"},{line,902}]},
                                  {httpc_handler,
                                      connect_and_send_first_request,3,
                                      [{file,"httpc_handler.erl"},{line,916}]},
                                  {httpc_handler,init,1,
                                      [{file,"httpc_handler.erl"},{line,243}]},
                                  {proc_lib,init_p_do_apply,3,
                                      [{file,"proc_lib.erl"},
                                       {line,247}]}]}}}]}}],
           [{file,"src/hello_handler.erl"},{line,14}]},
       {hello_handler,handle,2,[{file,"src/hello_handler.erl"},{line,23}]},
       {cowboy_handler,handler_handle,4,
           [{file,"src/cowboy_handler.erl"},{line,111}]},
       {cowboy_protocol,execute,4,
           [{file,"src/cowboy_protocol.erl"},{line,442}]}]},
  {req,
      [{socket,#Port<0.607>},
       {transport,ranch_tcp},
       {connection,keepalive},
       {pid,<0.450.0>},
       {method,<<"POST">>},
       {version,'HTTP/1.1'},
       {peer,{{10,0,0,1},56357}},
       {host,<<"10.0.0.101">>},
       {host_info,undefined},
       {port,8080},
       {path,<<"/">>},
       {path_info,undefined},
       {qs,<<>>},
       {qs_vals,undefined},
       {bindings,[]},
       {headers,
           [{<<"host">>,<<"10.0.0.101:8080">>},
            {<<"connection">>,<<"keep-alive">>},
            {<<"content-length">>,<<"0">>},
            {<<"user-agent">>,
             <<"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/39.0.2171.65 Chrome/39.0.2171.65 Safari/537.36">>},
            {<<"cache-control">>,<<"no-cache">>},
            {<<"origin">>,
             <<"chrome-extension://fdmmgilgnpjigdojojpjoooidkmcomcm">>},
            {<<"accept">>,<<"*/*">>},
            {<<"accept-encoding">>,<<"gzip, deflate">>},
            {<<"accept-language">>,<<"en-GB,en-US;q=0.8,en;q=0.6">>}]},
       {p_headers,[{<<"connection">>,[<<"keep-alive">>]}]},
       {cookies,undefined},
       {meta,[]},
       {body_state,waiting},
       {buffer,<<>>},
       {multipart,undefined},
       {resp_compress,false},
       {resp_state,waiting},
       {resp_headers,[]},
       {resp_body,<<>>},
       {onresponse,undefined}]},
  {state,{state}}],
 [{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,442}]}]}

=ERROR REPORT==== 19-Oct-2016::23:59:32 ===
Ranch listener my_http_listener had connection process started with cowboy_protocol:start_link/4 at <0.450.0> exit with reason: {[{reason,function_clause},{mfa,{hello_handler,handle,2}},{stacktrace,[{hello_handler,response_body,[{error,{failed_connect,[{to_address,{"www.youtube.com",443}},{inet,[inet],{eoptions,{undef,[{ssl,connect,["www.youtube.com",443,[binary,{active,false},{ssl_imp,new},inet],infinity],[]},{http_transport,connect,4,[{file,"http_transport.erl"},{line,109}]},{httpc_handler,connect,4,[{file,"httpc_handler.erl"},{line,902}]},{httpc_handler,connect_and_send_first_request,3,[{file,"httpc_handler.erl"},{line,916}]},{httpc_handler,init,1,[{file,"httpc_handler.erl"},{line,243}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,247}]}]}}}]}}],[{file,"src/hello_handler.erl"},{line,14}]},{hello_handler,handle,2,[{file,"src/hello_handler.erl"},{line,23}]},{cowboy_handler,handler_handle,4,[{file,"src/cowboy_handler.erl"},{line,111}]},{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,442}]}]},{req,[{socket,#Port<0.607>},{transport,ranch_tcp},{connection,keepalive},{pid,<0.450.0>},{method,<<"POST">>},{version,'HTTP/1.1'},{peer,{{10,0,0,1},56357}},{host,<<"10.0.0.101">>},{host_info,undefined},{port,8080},{path,<<"/">>},{path_info,undefined},{qs,<<>>},{qs_vals,undefined},{bindings,[]},{headers,[{<<"host">>,<<"10.0.0.101:8080">>},{<<"connection">>,<<"keep-alive">>},{<<"content-length">>,<<"0">>},{<<"user-agent">>,<<"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/39.0.2171.65 Chrome/39.0.2171.65 Safari/537.36">>},{<<"cache-control">>,<<"no-cache">>},{<<"origin">>,<<"chrome-extension://fdmmgilgnpjigdojojpjoooidkmcomcm">>},{<<"accept">>,<<"*/*">>},{<<"accept-encoding">>,<<"gzip, deflate">>},{<<"accept-language">>,<<"en-GB,en-US;q=0.8,en;q=0.6">>}]},{p_headers,[{<<"connection">>,[<<"keep-alive">>]}]},{cookies,undefined},{meta,[]},{body_state,waiting},{buffer,<<>>},{multipart,undefined},{resp_compress,false},{resp_state,waiting},{resp_headers,[]},{resp_body,<<>>},{onresponse,undefined}]},{state,{state}}],[{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,442}]}]}`
{ok,[]}
(cta_erlang_backend@127.0.0.1)2> 
=ERROR REPORT==== 19-Oct-2016::23:59:32 ===
Error in process <0.450.0> on node 'cta_erlang_backend@127.0.0.1' with exit value:
{[{reason,function_clause},
  {mfa,{hello_handler,handle,2}},
  {stacktrace,
      [{hello_handler,response_body,
           [{error,
                {failed_connect,
                    [{to_address,{"www.youtube.com",443}},
                     {inet,
                         [inet],
                         {eoptions,
                             {undef,
                                 [{ssl,connect,
                                      ["www.youtube.com",443,
                                       [binary,
                                        {active,false},
                                        {ssl_imp,new},
                                        inet],
                                       infinity],
                                      []},
                                  {http_transport,connect,4,
                                      [{file,"http_transport.erl"},
                                       {line,109}]},
                                  {httpc_handler,connect,4,
                                      [{file,"httpc_handler.erl"},{line,902}]},
                                  {httpc_handler,
                                      connect_and_send_first_request,3,
                                      [{file,"httpc_handler.erl"},{line,916}]},
                                  {httpc_handler,init,1,
                                      [{file,"httpc_handler.erl"},{line,243}]},
                                  {proc_lib,init_p_do_apply,3,
                                      [{file,"proc_lib.erl"},
                                       {line,247}]}]}}}]}}],
           [{file,"src/hello_handler.erl"},{line,14}]},
       {hello_handler,handle,2,[{file,"src/hello_handler.erl"},{line,23}]},
       {cowboy_handler,handler_handle,4,
           [{file,"src/cowboy_handler.erl"},{line,111}]},
       {cowboy_protocol,execute,4,
           [{file,"src/cowboy_protocol.erl"},{line,442}]}]},
  {req,
      [{socket,#Port<0.607>},
       {transport,ranch_tcp},
       {connection,keepalive},
       {pid,<0.450.0>},
       {method,<<"POST">>},
       {version,'HTTP/1.1'},
       {peer,{{10,0,0,1},56357}},
       {host,<<"10.0.0.101">>},
       {host_info,undefined},
       {port,8080},
       {path,<<"/">>},
       {path_info,undefined},
       {qs,<<>>},
       {qs_vals,undefined},
       {bindings,[]},
       {headers,
           [{<<"host">>,<<"10.0.0.101:8080">>},
            {<<"connection">>,<<"keep-alive">>},
            {<<"content-length">>,<<"0">>},
            {<<"user-agent">>,
             <<"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/39.0.2171.65 Chrome/39.0.2171.65 Safari/537.36">>},
            {<<"cache-control">>,<<"no-cache">>},
            {<<"origin">>,
             <<"chrome-extension://fdmmgilgnpjigdojojpjoooidkmcomcm">>},
            {<<"accept">>,<<"*/*">>},
            {<<"accept-encoding">>,<<"gzip, deflate">>},
            {<<"accept-language">>,<<"en-GB,en-US;q=0.8,en;q=0.6">>}]},
       {p_headers,[{<<"connection">>,[<<"keep-alive">>]}]},
       {cookies,undefined},
       {meta,[]},
       {body_state,waiting},
       {buffer,<<>>},
       {multipart,undefined},
       {resp_compress,false},
       {resp_state,waiting},
       {resp_headers,[]},
       {resp_body,<<>>},
       {onresponse,undefined}]},
  {state,{state}}],
 [{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,442}]}]}

=ERROR REPORT==== 19-Oct-2016::23:59:32 ===
Ranch listener my_http_listener had connection process started with cowboy_protocol:start_link/4 at <0.450.0> exit with reason: {[{reason,function_clause},{mfa,{hello_handler,handle,2}},{stacktrace,[{hello_handler,response_body,[{error,{failed_connect,[{to_address,{"www.youtube.com",443}},{inet,[inet],{eoptions,{undef,[{ssl,connect,["www.youtube.com",443,[binary,{active,false},{ssl_imp,new},inet],infinity],[]},{http_transport,connect,4,[{file,"http_transport.erl"},{line,109}]},{httpc_handler,connect,4,[{file,"httpc_handler.erl"},{line,902}]},{httpc_handler,connect_and_send_first_request,3,[{file,"httpc_handler.erl"},{line,916}]},{httpc_handler,init,1,[{file,"httpc_handler.erl"},{line,243}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,247}]}]}}}]}}],[{file,"src/hello_handler.erl"},{line,14}]},{hello_handler,handle,2,[{file,"src/hello_handler.erl"},{line,23}]},{cowboy_handler,handler_handle,4,[{file,"src/cowboy_handler.erl"},{line,111}]},{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,442}]}]},{req,[{socket,#Port<0.607>},{transport,ranch_tcp},{connection,keepalive},{pid,<0.450.0>},{method,<<"POST">>},{version,'HTTP/1.1'},{peer,{{10,0,0,1},56357}},{host,<<"10.0.0.101">>},{host_info,undefined},{port,8080},{path,<<"/">>},{path_info,undefined},{qs,<<>>},{qs_vals,undefined},{bindings,[]},{headers,[{<<"host">>,<<"10.0.0.101:8080">>},{<<"connection">>,<<"keep-alive">>},{<<"content-length">>,<<"0">>},{<<"user-agent">>,<<"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/39.0.2171.65 Chrome/39.0.2171.65 Safari/537.36">>},{<<"cache-control">>,<<"no-cache">>},{<<"origin">>,<<"chrome-extension://fdmmgilgnpjigdojojpjoooidkmcomcm">>},{<<"accept">>,<<"*/*">>},{<<"accept-encoding">>,<<"gzip, deflate">>},{<<"accept-language">>,<<"en-GB,en-US;q=0.8,en;q=0.6">>}]},{p_headers,[{<<"connection">>,[<<"keep-alive">>]}]},{cookies,undefined},{meta,[]},{body_state,waiting},{buffer,<<>>},{multipart,undefined},{resp_compress,false},{resp_state,waiting},{resp_headers,[]},{resp_body,<<>>},{onresponse,undefined}]},{state,{state}}],[{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,442}]}]}`
essen commented 7 years ago

For some reason it didn't include ssl application either, so try to add ssl to the LOCAL_DEPS line also.

JamesArthurHolland commented 7 years ago

So I added ssl to the makefile. It can't seem to pick up inets in the system, although I'm positive it was bundled along with ssl in the install from the erlang solutions repo.

(cta_erlang_backend@127.0.0.1)1> application:start(inets).
{error,{"no such file or directory","inets.app"}}
(cta_erlang_backend@127.0.0.1)2> application:start(ssl).  
{error,{already_started,ssl}}
(cta_erlang_backend@127.0.0.1)3> 
BREAK: (a)bort (c)ontinue (p)roc info (i)nfo (l)oaded
       (v)ersion (k)ill (D)b-tables (d)istribution
^Cheart: Thu Oct 20 11:49:01 2016: Erlang has closed.
heart: Thu Oct 20 11:49:01 2016: Would reboot. Terminating.

[vagrant@CTASriracha cta_erlang_backend]$ sudo yum install erlang-inets
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.bytemark.co.uk
 * extras: mirror.mhd.uk.as44574.net
 * updates: mirror.mhd.uk.as44574.net
base                                                                                                                                                                    | 3.7 kB     00:00     
erlang-solutions                                                                                                                                                        |  951 B     00:00     
extras                                                                                                                                                                  | 3.4 kB     00:00     
updates                                                                                                                                                                 | 3.4 kB     00:00     
Setting up Install Process
Package erlang-inets-19.1-1.el6.x86_64 already installed and latest version
Nothing to do
[vagrant@CTASriracha cta_erlang_backend]$ 
essen commented 7 years ago

Does inets work if you just run erl?

JamesArthurHolland commented 7 years ago

Yea, I can get requests being served no problem with erl. I have to start all the following applications to get it working, so I added all of them to the Makefile as local dependencies, but that still did not fix the problem.

Do you think it could be something to do with the PATH/environment variables being different in the different in the 2 shells? I've only started programming Erlang yesterday so it could be something very minor so please don't take it for granted that I know what I'm talking about. I'm a complete novice.

vagrant@CTAFrontend:/var/www/cta_erlang_backend$ erl
Erlang/OTP 19 [erts-8.1] [source] [64-bit] [async-threads:10] [kernel-poll:false]

Eshell V8.1  (abort with ^G)
1> application:start(inets).
ok
2> application:start(asn1).
ok  
2> application:start(crypto).
ok
3> application:start(public_key).
ok
4> application:start(ssl).       
ok
5> httpc:request(get, {"http://www.google.co.uk", []}, [], []).
...(request comes back fine)

Makefile

PROJECT = cta_erlang_backend
PROJECT_DESCRIPTION = New project
PROJECT_VERSION = 0.0.1
DEPS = cowboy 
LOCAL_DEPS = inets
LOCAL_DEPS = asn1
LOCAL_DEPS = public_key
LOCAL_DEPS = crypto
LOCAL_DEPS = ssl
include erlang.mk
ERLC_OPTS = -W0
essen commented 7 years ago

You're redefining LOCAL_DEPS like this. Put everything on the same LOCAL_DEPS line or use +=.

This should be enough though:

LOCAL_DEPS = inets ssl
JamesArthurHolland commented 7 years ago

Hey, some progress at last, thanks. Putting ssl on the same line allowed for HTTP requests to be made, but I'm still getting problems in the cowboy application that aren't problems in the erl shell.

Example, this line of code in hello_handler(line 24) wherein I pattern match the response, flags up a badmatch error here, but not in the erl shell. In the erl shell I can get at the bound variables Version, ReasonPhrase etc with no problem.

hello_handler.erl (line 24) {ok, {{Version, 200, ReasonPhrase}, Headers, Body}} = httpc:request(get, {"http://www.google.co.uk", []}, [], []),

The error:

(cta_erlang_backend@127.0.0.1)1> 
=ERROR REPORT==== 20-Oct-2016::17:17:25 ===
Error in process <0.512.0> on node 'cta_erlang_backend@127.0.0.1' with exit value:
{[{reason,{badmatch,{ok,{{"HTTP/1.1",200,"OK"},
                         [{"cache-control","private, max-age=0"},
                          {"date","Thu, 20 Oct 2016 17:17:24 GMT"},
                          {"accept-ranges","none"},
                          {"server","gws"},
                          {"vary","Accept-Encoding"},
                          {"content-length","45790"},
                          {"content-type","text/html; charset=ISO-8859-1"},
                          {"expires","-1"},
                          {"p3p",
                           "CP=\"This is not a P3P policy! See https://www.google.com/support/accounts/answer/151657?hl=en for more info.\""},
                          {"x-xss-protection","1; mode=block"},
                          {"x-frame-options","SAMEORIGIN"},
                          {"set-cookie",
                           "NID=89=BpYkTRLKZHItZ_510zhd5qTiPsxf4YG52TgEKKJgUn2y4_i1L5x0N4cLMRsE91xTzHJKrjwFgZiiA2AfQA-qnFaX6M7LGnUAXulH2B79-JFHhEBbe_IeQjAY6RQCIoYZ; expires=Fri, 21-Apr-2017 17:17:24 GMT; path=/; domain=.google.co.uk; HttpOnly"}],
                         "<!doctype html><html itemscope=\"\" itemtype=\"http://schema.org/WebPage\" lang=\"en-GB\"><head><meta content=\"text/html; charset=UTF-8\" http-equiv=\"Content-Type\"><meta content=\"/images/branding/googleg/1x/googleg_standard_color_128dp.png\" itemprop=\"image\"><title>Google</title><script>(function(){window.google={kEI:'JPwIWJ-DN4i5swGe_63gBQ',kEXPI:'18168,1351634,1351901,3700289,3700400,4029815,4031109,4032678,4036527,4038012,4039268,4043492,4045841,4048347,4052304,4058720,4063220,4065787,4067939,4068550,4069838,4069840,4070142,4070329,4071230,4071842,4072289,4072364,4072602,4072705,4072773,4073111,4073405,4073959,4074684,4074809,4076096,4076930,4076999,4077221,4077298,4078407,4078430,4078438,4078457,4078760,4079105,4079155,4079199,4079388,4079553,4079810,4079872,4080104,4080167,4080230,4080479,4080513,4080640,4081016,4081037,4081038,4081253,4081264,4081371,4081423,4081460,4081798,4082183,4082290,4082471,4082538,4082618,4083021,8300096,8300273,8300441,8502184,8503209,8503585,8504110,8504846,8505150,8505152,8505258,8506251,8506255,8506340,8506615,8506977,8507019,8507080,8507125,8507336,8507380,10200083,13500016,19000912',authuser:0,kscs:'c9c918f0_24'};google.kHL='en-GB';})();(function(){google.lc=[];google.li=0;google.getEI=function(a){for(var b;a&&(!a.getAttribute||!(b=a.getAttribute(\"eid\")));)a=a.parentNode;return b||google.kEI};google.getLEI=function(a){for(var b=null;a&&(!a.getAttribute||!(b=a.getAttribute(\"leid\")));)a=a.parentNode;return b};google.https=function(){return\"https:\"==window.location.protocol};google.ml=function(){return null};google.wl=function(a,b){try{google.ml(Error(a),!1,b)}catch(c){}};google.time=function(){return(new Date).getTime()};google.log=function(a,b,c,e,g){a=google.logUrl(a,b,c,e,g);if(\"\"!=a){b=new Image;var d=google.lc,f=google.li;d[f]=b;b.onerror=b.onload=b.onabort=function(){delete d[f]};window.google&&window.google.vel&&window.google.vel.lu&&window.google.vel.lu(a);b.src=a;google.li=f+1}};google.logUrl=function(a,b,c,e,g){var d=\"\",f=google.ls||\"\";if(!c&&-1==b.search(\"&ei=\")){var h=google.getEI(e),d=\"&ei=\"+h;-1==b.search(\"&lei=\")&&((e=google.getLEI(e))?d+=\"&lei=\"+e:h!=google.kEI&&(d+=\"&lei=\"+google.kEI))}a=c||\"/\"+(g||\"gen_204\")+\"?atyp=i&ct=\"+a+\"&cad=\"+b+d+f+\"&zx=\"+google.time();/^http:/i.test(a)&&google.https()&&(google.ml(Error(\"a\"),!1,{src:a,glmm:1}),a=\"\");return a};google.y={};google.x=function(a,b){google.y[a.id]=[a,b];return!1};google.lq=[];google.load=function(a,b,c){google.lq.push([[a],b,c])};google.loadAll=function(a,b){google.lq.push([a,b])};})();var a=window.location,b=a.href.indexOf(\"#\");if(0<=b){var c=a.href.substring(b+1);/(^|&)q=/.test(c)&&-1==c.indexOf(\"#\")&&a.replace(\"/search?\"+c.replace(/(^|&)fp=[^&]*/g,\"\")+\"&cad=h\")};</script><style>#gb{font:13px/27px Arial,sans-serif;height:30px}#gbz,#gbg{position:absolute;white-space:nowrap;top:0;height:30px;z-index:1000}#gbz{left:0;padding-left:4px}#gbg{right:0;padding-right:5px}#gbs{background:transparent;position:absolute;top:-999px;visibility:hidden;z-index:998;right:0}.gbto #gbs{background:#fff}#gbx3,#gbx4{background-color:#2d2d2d;background-image:none;_background-image:none;background-position:0 -138px;background-repeat:repeat-x;border-bottom:1px solid #000;font-size:24px;height:29px;_height:30px;opacity:1;filter:alpha(opacity=100);position:absolute;top:0;width:100%;z-index:990}#gbx3{left:0}#gbx4{right:0}#gbb{position:relative}#gbbw{left:0;position:absolute;top:30px;width:100%}.gbtcb{position:absolute;visibility:hidden}#gbz .gbtcb{right:0}#gbg .gbtcb{left:0}.gbxx{display:none !important}.gbxo{opacity:0 !important;filter:alpha(opacity=0) !important}.gbm{position:absolute;z-index:999;top:-999px;visibility:hidden;text-align:left;border:1px solid #bebebe;background:#fff;-moz-box-shadow:-1px 1px 1px rgba(0,0,0,.2);-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2);box-shadow:0 2px 4px rgba(0,0,0,.2)}.gbrtl .gbm{-moz-box-shadow:1px 1px 1px rgba(0,0,0,.2)}.gbto .gbm,.gbto #gbs{top:29px;visibility:visible}#gbz .gbm{left:0}#gbg .gbm{right:0}.gbxms{background-color:#ccc;display:block;position:absolute;z-index:1;top:-1px;left:-2px;right:-2px;bottom:-2px;opacity:.4;-moz-border-radius:3px;filter:progid:DXImageTransform.Microsoft.Blur(pixelradius=5);*opacity:1;*top:-2px;*left:-5px;*right:5px;*bottom:4px;-ms-filter:\"progid:DXImageTransform.Microsoft.Blur(pixelradius=5)\";opacity:1\\0/;top:-4px\\0/;left:-6px\\0/;right:5px\\0/;bottom:4px\\0/}.gbma{position:relative;top:-1px;border-style:solid dashed dashed;border-color:transparent;border-top-color:#c0c0c0;display:-moz-inline-box;display:inline-block;font-size:0;height:0;line-height:0;width:0;border-width:3px 3px 0;padding-top:1px;left:4px}#gbztms1,#gbi4m1,#gbi4s,#gbi4t{zoom:1}.gbtc,.gbmc,.gbmcc{display:block;list-style:none;margin:0;padding:0}.gbmc{background:#fff;padding:10px 0;position:relative;z-index:2;zoom:1}.gbt{position:relative;display:-moz-inline-box;display:inline-block;line-height:27px;padding:0;vertical-align:top}.gbt{*display:inline}.gbto{box-shadow:0 2px 4px rgba(0,0,0,.2);-moz-box-shadow:0 2px 4px rgba(0,0,0,.2);-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2)}.gbzt,.gbgt{cursor:pointer;display:block;text-decoration:none !important}span#gbg6,span#gbg4{cursor:default}.gbts{border-left:1px solid transparent;border-right:1px solid transparent;display:block;*display:inline-block;padding:0 5px;position:relative;z-index:1000}.gbts{*display:inline}.gbzt .gbts{display:inline;zoom:1}.gbto .gbts{background:#fff;border-color:#bebebe;color:#36c;padding-bottom:1px;padding-top:2px}.gbz0l .gbts{color:#fff;font-weight:bold}.gbtsa{padding-right:9px}#gbz .gbzt,#gbz .gbgt,#gbg .gbgt{color:#ccc!important}.gbtb2{display:block;border-top:2px solid transparent}.gbto .gbzt .gbtb2,.gbto .gbgt .gbtb2{border-top-width:0}.gbtb .gbts{background:url(//ssl.gstatic.com/gb/images/b_8d5afc09.png);_background:url(//ssl.gstatic.com/gb/images/b8_3615d64d.png);background-position:-27px -22px;border:0;font-size:0;padding:29px 0 0;*padding:27px 0 0;width:1px}.gbzt:hover,.gbzt:focus,.gbgt-hvr,.gbgt:focus{background-color:#4c4c4c;background-image:none;_background-image:none;background-position:0 -102px;background-repeat:repeat-x;outline:none;text-decoration:none !important}.gbpdjs .gbto .gbm{min-width:99%}.gbz0l .gbtb2{border-top-color:#dd4b39!important}#gbi4s,#gbi4s1{font-weight:bold}#gbg6.gbgt-hvr,#gbg6.gbgt:focus{background-color:transparent;background-image:none}.gbg4a{font-size:0;line-height:0}.gbg4a .gbts{padding:27px 5px 0;*padding:25px 5px 0}.gbto .gbg4a .gbts{padding:29px 5px 1px;*padding:27px 5px 1px}#gbi4i,#gbi4id{left:5px;border:0;height:24px;position:absolute;top:1px;width:24px}.gbto #gbi4i,.gbto #gbi4id{top:3px}.gbi4p{display:block;width:24px}#gbi4id{background-position:-44px -101px}#gbmpid{background-position:0 0}#gbmpi,#gbmpid{border:none;display:inline-block;height:48px;width:48px}#gbmpiw{display:inline-block;line-height:9px;padding-left:20px;margin-top:10px;position:relative}#gbmpi,#gbmpid,#gbmpiw{*display:inline}#gbg5{font-size:0}#gbgs5{padding:5px !important}.gbto #gbgs5{padding:7px 5px 6px !important}#gbi5{background:url(//ssl.gstatic.com/gb/images/b_8d5afc09.png);_background:url(//ssl.gstatic.com/gb/images/b8_3615d64d.png);background-position:0 0;display:block;font-size:0;height:17px;width:16px}.gbto #gbi5{background-position:-6px -22px}.gbn .gbmt,.gbn .gbmt:visited,.gbnd .gbmt,.gbnd .gbmt:visited{color:#dd8e27 !important}.gbf .gbmt,.gbf .gbmt:visited{color:#900 !important}.gbmt,.gbml1,.gbmlb,.gbmt:visited,.gbml1:visited,.gbmlb:visited{color:#36c !important;text-decoration:none !important}.gbmt,.gbmt:visited{display:block}.gbml1,.gbmlb,.gbml1:visited,.gbmlb:visited{display:inline-block;margin:0 10px}.gbml1,.gbmlb,.gbml1:visited,.gbmlb:visited{*display:inline}.gbml1,.gbml1:visited{padding:0 10px}.gbml1-hvr,.gbml1:focus{outline:none;text-decoration:underline !important}#gbpm .gbml1{display:inline;margin:0;padding:0;white-space:nowrap}.gbmlb,.gbmlb:visited{line-height:27px}.gbmlb-hvr,.gbmlb:focus{outline:none;text-decoration:underline !important}.gbmlbw{color:#ccc;margin:0 10px}.gbmt{padding:0 20px}.gbmt:hover,.gbmt:focus{background:#eee;cursor:pointer;outline:0 solid black;text-decoration:none !important}.gbm0l,.gbm0l:visited{color:#000 !important;font-weight:bold}.gbmh{border-top:1px solid #bebebe;font-size:0;margin:10px 0}#gbd4 .gbmc{background:#f5f5f5;padding-top:0}#gbd4 .gbsbic::-webkit-scrollbar-track:vertical{background-color:#f5f5f5;margin-top:2px}#gbmpdv{background:#fff;border-bottom:1px solid #bebebe;-moz-box-shadow:0 2px 4px rgba(0,0,0,.12);-o-box-shadow:0 2px 4px rgba(0,0,0,.12);-webkit-box-shadow:0 2px 4px rgba(0,0,0,.12);box-shadow:0 2px 4px rgba(0,0,0,.12);position:relative;z-index:1}#gbd4 .gbmh{margin:0}.gbmtc{padding:0;margin:0;line-height:27px}.GBMCC:last-child:after,#GBMPAL:last-child:after{content:'\\0A\\0A';white-space:pre;position:absolute}#gbmps{*zoom:1}#gbd4 .gbpc,#gbmpas .gbmt{line-height:17px}#gbd4 .gbpgs .gbmtc{line-height:27px}#gbd4 .gbmtc{border-bottom:1px solid #bebebe}#gbd4 .gbpc{display:inline-block;margin:16px 0 10px;padding-right:50px;vertical-align:top}#gbd4 .gbpc{*display:inline}.gbpc .gbps,.gbpc .gbps2{display:block;margin:0 20px}#gbmplp.gbps{margin:0 10px}.gbpc .gbps{color:#000;font-weight:bold}.gbpc .gbpd{margin-bottom:5px}.gbpd .gbmt,.gbpd .gbps{color:#666 !important}.gbpd .gbmt{opacity:.4;filter:alpha(opacity=40)}.gbps2{color:#666;display:block}.gbp0{display:none}.gbp0 .gbps2{font-weight:bold}#gbd4 .gbmcc{margin-top:5px}.gbpmc{background:#fef9db}.gbpmc .gbpmtc{padding:10px 20px}#gbpm{border:0;*border-collapse:collapse;border-spacing:0;margin:0;white-space:normal}#gbpm .gbpmtc{border-top:none;color:#000 !important;font:11px Arial,sans-serif}#gbpms{*white-space:nowrap}.gbpms2{font-weight:bold;white-space:nowrap}#gbmpal{*border-collapse:collapse;border-spacing:0;border:0;margin:0;white-space:nowrap;width:100%}.gbmpala,.gbmpalb{font:13px Arial,sans-serif;line-height:27px;padding:10px 20px 0;white-space:nowrap}.gbmpala{padding-left:0;text-align:left}.gbmpalb{padding-right:0;text-align:right}#gbmpasb .gbps{color:#000}#gbmpal .gbqfbb{margin:0 20px}.gbp0 .gbps{*display:inline}a.gbiba{margin:8px 20px 10px}.gbmpiaw{display:inline-block;padding-right:10px;margin-bottom:6px;margin-top:10px}.gbxv{visibility:hidden}.gbmpiaa{display:block;margin-top:10px}.gbmpia{border:none;display:block;height:48px;width:48px}.gbmpnw{display:inline-block;height:auto;margin:10px 0;vertical-align:top}\n.gbqfb,.gbqfba,.gbqfbb{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;cursor:default !important;display:inline-block;font-weight:bold;height:29px;line-height:29px;min-width:54px;*min-width:70px;padding:0 8px;text-align:center;text-decoration:none !important;-moz-user-select:none;-webkit-user-select:none}.gbqfb:focus,.gbqfba:focus,.gbqfbb:focus{border:1px solid #4d90fe;-moz-box-shadow:inset 0 0 0 1px rgba(255, 255, 255, 0.5);-webkit-box-shadow:inset 0 0 0 1px rgba(255, 255, 255, 0.5);box-shadow:inset 0 0 0 1px rgba(255, 255, 255, 0.5);outline:none}.gbqfb-hvr:focus,.gbqfba-hvr:focus,.gbqfbb-hvr:focus{-webkit-box-shadow:inset 0 0 0 1px #fff,0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:inset 0 0 0 1px #fff,0 1px 1px rgba(0,0,0,.1);box-shadow:inset 0 0 0 1px #fff,0 1px 1px rgba(0,0,0,.1)}.gbqfb-no-focus:focus{border:1px solid #3079ed;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}.gbqfb-hvr,.gbqfba-hvr,.gbqfbb-hvr{-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1)}.gbqfb::-moz-focus-inner,.gbqfba::-moz-focus-inner,.gbqfbb::-moz-focus-inner{border:0}.gbqfba,.gbqfbb{border:1px solid #dcdcdc;border-color:rgba(0,0,0,.1);color:#444 !important;font-size:11px}.gbqfb{background-color:#4d90fe;background-image:-webkit-gradient(linear,left top,left bottom,from(#4d90fe),to(#4787ed));background-image:-webkit-linear-gradient(top,#4d90fe,#4787ed);background-image:-moz-linear-gradient(top,#4d90fe,#4787ed);background-image:-ms-linear-gradient(top,#4d90fe,#4787ed);background-image:-o-linear-gradient(top,#4d90fe,#4787ed);background-image:linear-gradient(top,#4d90fe,#4787ed);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#4d90fe',EndColorStr='#4787ed');border:1px solid #3079ed;color:#fff!important;margin:0 0}.gbqfb-hvr{border-color:#2f5bb7}.gbqfb-hvr:focus{border-color:#2f5bb7}.gbqfb-hvr,.gbqfb-hvr:focus{background-color:#357ae8;background-image:-webkit-gradient(linear,left top,left bottom,from(#4d90fe),to(#357ae8));background-image:-webkit-linear-gradient(top,#4d90fe,#357ae8);background-image:-moz-linear-gradient(top,#4d90fe,#357ae8);background-image:-ms-linear-gradient(top,#4d90fe,#357ae8);background-image:-o-linear-gradient(top,#4d90fe,#357ae8);background-image:linear-gradient(top,#4d90fe,#357ae8)}.gbqfb:active{background-color:inherit;-webkit-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.3);-moz-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.3);box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.3)}.gbqfba{background-color:#f5f5f5;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#f1f1f1));background-image:-webkit-linear-gradient(top,#f5f5f5,#f1f1f1);background-image:-moz-linear-gradient(top,#f5f5f5,#f1f1f1);background-image:-ms-linear-gradient(top,#f5f5f5,#f1f1f1);background-image:-o-linear-gradient(top,#f5f5f5,#f1f1f1);background-image:linear-gradient(top,#f5f5f5,#f1f1f1);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#f5f5f5',EndColorStr='#f1f1f1')}.gbqfba-hvr,.gbqfba-hvr:active{background-color:#f8f8f8;background-image:-webkit-gradient(linear,left top,left bottom,from(#f8f8f8),to(#f1f1f1));background-image:-webkit-linear-gradient(top,#f8f8f8,#f1f1f1);background-image:-moz-linear-gradient(top,#f8f8f8,#f1f1f1);background-image:-ms-linear-gradient(top,#f8f8f8,#f1f1f1);background-image:-o-linear-gradient(top,#f8f8f8,#f1f1f1);background-image:linear-gradient(top,#f8f8f8,#f1f1f1);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#f8f8f8',EndColorStr='#f1f1f1')}.gbqfbb{background-color:#fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#fbfbfb));background-image:-webkit-linear-gradient(top,#fff,#fbfbfb);background-image:-moz-linear-gradient(top,#fff,#fbfbfb);background-image:-ms-linear-gradient(top,#fff,#fbfbfb);background-image:-o-linear-gradient(top,#fff,#fbfbfb);background-image:linear-gradient(top,#fff,#fbfbfb);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff',EndColorStr='#fbfbfb')}.gbqfbb-hvr,.gbqfbb-hvr:active{background-color:#fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:-webkit-linear-gradient(top,#fff,#f8f8f8);background-image:-moz-linear-gradient(top,#fff,#f8f8f8);background-image:-ms-linear-gradient(top,#fff,#f8f8f8);background-image:-o-linear-gradient(top,#fff,#f8f8f8);background-image:linear-gradient(top,#fff,#f8f8f8);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff',EndColorStr='#f8f8f8')}.gbqfba-hvr,.gbqfba-hvr:active,.gbqfbb-hvr,.gbqfbb-hvr:active{border-color:#c6c6c6;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1);color:#222 !important}.gbqfba:active,.gbqfbb:active{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}\n#gbmpas{max-height:220px}#gbmm{max-height:530px}.gbsb{-webkit-box-sizing:border-box;display:block;position:relative;*zoom:1}.gbsbic{overflow:auto}.gbsbis .gbsbt,.gbsbis .gbsbb{-webkit-mask-box-image:-webkit-gradient(linear,left top,right top,color-stop(0,rgba(0,0,0,.1)),color-stop(.5,rgba(0,0,0,.8)),color-stop(1,rgba(0,0,0,.1)));left:0;margin-right:0;opacity:0;position:absolute;width:100%}.gbsb .gbsbt:after,.gbsb .gbsbb:after{content:\"\";display:block;height:0;left:0;position:absolute;width:100%}.gbsbis .gbsbt{background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.2)),to(rgba(0,0,0,0)));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:-moz-linear-gradient(top,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:-ms-linear-gradient(top,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:-o-linear-gradient(top,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:linear-gradient(top,rgba(0,0,0,.2),rgba(0,0,0,0));height:6px;top:0}.gbsb .gbsbt:after{border-top:1px solid #ebebeb;border-color:rgba(0,0,0,.3);top:0}.gbsb .gbsbb{-webkit-mask-box-image:-webkit-gradient(linear,left top,right top,color-stop(0,rgba(0,0,0,.1)),color-stop(.5,rgba(0,0,0,.8)),color-stop(1,rgba(0,0,0,.1)));background:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.2)),to(rgba(0,0,0,0)));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:-moz-linear-gradient(bottom,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:-ms-linear-gradient(bottom,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:-o-linear-gradient(bottom,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:linear-gradient(bottom,rgba(0,0,0,.2),rgba(0,0,0,0));bottom:0;height:4px}.gbsb .gbsbb:after{border-bottom:1px solid #ebebeb;border-color:rgba(0,0,0,.3);bottom:0}\n</style><style>body,td,a,p,.h{font-family:arial,sans-serif}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}.h{color:#36c}.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{display: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}.lsbb{display:block}.ftl,#fll a{display:inline-block;margin:0 12px}.lsb{background:url(/images/nav_logo229.png) 0 -261px 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}</style><script>(function(){try{var e=this;var aa=function(a,b,c,d){d=d||{};d._sn=[\"cfg\",b,c].join(\".\");window.gbar.logger.ml(a,d)};var h=window.gbar=window.gbar||{},k=window.gbar.i=window.gbar.i||{},ba;function _tvn(a,b){var c=parseInt(a,10);return isNaN(c)?b:c}function _tvf(a,b){var c=parseFloat(a);return isNaN(c)?b:c}function _tvv(a){return!!a}function p(a,b,c){(c||h)[a]=b}h.bv={n:_tvn(\"2\",0),r:\"\",f:\".66.41.\",e:\"1300102,3700289,3700400\",m:_tvn(\"1\",1)};\nfunction ca(a,b,c){var d=\"on\"+b;if(a.addEventListener)a.addEventListener(b,c,!1);else if(a.attachEvent)a.attachEvent(d,c);else{var f=a[d];a[d]=function(){var a=f.apply(this,arguments),b=c.apply(this,arguments);return void 0==a?b:void 0==b?a:b&&a}}}var da=function(a){return function(){return h.bv.m==a}},ea=da(1),fa=da(2);p(\"sb\",ea);p(\"kn\",fa);k.a=_tvv;k.b=_tvf;k.c=_tvn;k.i=aa;var q=window.gbar.i.i;var t=function(){},u=function(){},ia=function(a){var b=new Image,c=ga;b.onerror=b.onload=b.onabort=function(){try{delete ha[c]}catch(d){}};ha[c]=b;b.src=a;ga=c+1},ha=[],ga=0;p(\"logger\",{il:u,ml:t,log:ia});var v=window.gbar.logger;var y={},ja={},A=[],ka=k.b(\"0.1\",.1),la=k.a(\"1\",!0),ma=function(a,b){A.push([a,b])},na=function(a,b){y[a]=b},oa=function(a){return a in y},B={},C=function(a,b){B[a]||(B[a]=[]);B[a].push(b)},D=function(a){C(\"m\",a)},pa=function(a,b){var c=document.createElement(\"script\");c.src=a;c.async=la;Math.random()<ka&&(c.onerror=function(){c.onerror=null;t(Error(\"Bundle load failed: name=\"+(b||\"UNK\")+\" url=\"+a))});(document.getElementById(\"xjsc\")||document.getElementsByTagName(\"body\")[0]||\ndocument.getElementsByTagName(\"head\")[0]).appendChild(c)},F=function(a){for(var b=0,c;(c=A[b])&&c[0]!=a;++b);!c||c[1].l||c[1].s||(c[1].s=!0,qa(2,a),c[1].url&&pa(c[1].url,a),c[1].libs&&E&&E(c[1].libs))},ra=function(a){C(\"gc\",a)},sa=null,ta=function(a){sa=a},qa=function(a,b,c){if(sa){a={t:a,b:b};if(c)for(var d in c)a[d]=c[d];try{sa(a)}catch(f){}}};p(\"mdc\",y);p(\"mdi\",ja);p(\"bnc\",A);p(\"qGC\",ra);p(\"qm\",D);p(\"qd\",B);p(\"lb\",F);p(\"mcf\",na);p(\"bcf\",ma);p(\"aq\",C);p(\"mdd\",\"\");\np(\"has\",oa);p(\"trh\",ta);p(\"tev\",qa);if(k.a(\"1\")){var ua=k.a(\"1\"),va=k.a(\"\"),wa=k.a(\"\"),xa=window.gapi={},ya=function(a,b){var c=function(){h.dgl(a,b)};ua?D(c):(C(\"gl\",c),F(\"gl\"))},za={},Aa=function(a){a=a.split(\":\");for(var b;(b=a.pop())&&za[b];);return!b},E=function(a){function b(){for(var b=a.split(\":\"),d=0,f;f=b[d];++d)za[f]=1;for(b=0;d=A[b];++b)d=d[1],(f=d.libs)&&!d.l&&d.i&&Aa(f)&&d.i()}h.dgl(a,b)},H=window.___jsl={};H.h=\"m;/_/scs/abc-static/_/js/k=gapi.gapi.en.vDZ5fWV2Wn4.O/m=__features__/rt=j/d=1/rs=AHpOoo_3e5RFIZgALJe_c8WXopU_RyULxg\";H.ms=\"https://apis.google.com\";\nH.m=\"\";H.l=[];ua||A.push([\"gl\",{url:\"//ssl.gstatic.com/gb/js/abc/glm_e7bb39a7e1a24581ff4f8d199678b1b9.js\"}]);var Ba={pu:va,sh:\"\",si:wa,hl:\"en\"};y.gl=Ba;p(\"load\",ya,xa);p(\"dgl\",ya);p(\"agl\",Aa);k.o=ua};var Ca=k.b(\"0.1\",.001),Da=0;\nfunction _mlToken(a,b){try{if(1>Da){Da++;var c,d=a,f=b||{},g=encodeURIComponent,l=[\"//www.google.com/gen_204?atyp=i&zx=\",(new Date).getTime(),\"&jexpid=\",g(\"28834\"),\"&srcpg=\",g(\"prop=1\"),\"&jsr=\",Math.round(1/Ca),\"&ogev=\",g(\"JPwIWP3tN4uOsgGT1Y6QCg\"),\"&ogf=\",h.bv.f,\"&ogrp=\",g(\"\"),\"&ogv=\",g(\"1476411960.0\"),\"&oggv=\"+g(\"es_plusone_gc_20161013.0_p0\"),\"&ogd=\",g(\"co.uk\"),\"&ogc=\",g(\"GBR\"),\"&ogl=\",g(\"en\")];f._sn&&(f._sn=\n\"og.\"+f._sn);for(var n in f)l.push(\"&\"),l.push(g(n)),l.push(\"=\"),l.push(g(f[n]));l.push(\"&emsg=\");l.push(g(d.name+\":\"+d.message));var m=l.join(\"\");Ea(m)&&(m=m.substr(0,2E3));c=m;var r=window.gbar.logger._aem(a,c);ia(r)}}catch(z){}}var Ea=function(a){return 2E3<=a.length},Fa=function(a,b){return b};function Ga(a){t=a;p(\"_itl\",Ea,v);p(\"_aem\",Fa,v);p(\"ml\",t,v);a={};y.er=a}k.a(\"\")?Ga(function(a){throw a;}):k.a(\"1\")&&Math.random()<Ca&&Ga(_mlToken);var _E=\"left\",Ha=k.a(\"\"),J=function(a,b){var c=a.className;I(a,b)||(a.className+=(\"\"!=c?\" \":\"\")+b)},K=function(a,b){var c=a.className,d=new RegExp(\"\\\\s?\\\\b\"+b+\"\\\\b\");c&&c.match(d)&&(a.className=c.replace(d,\"\"))},I=function(a,b){var c=new RegExp(\"\\\\b\"+b+\"\\\\b\"),d=a.className;return!(!d||!d.match(c))},Ia=function(a,b){I(a,b)?K(a,b):J(a,b)},Ja=function(a,b){a[b]=function(c){var d=arguments;h.qm(function(){a[b].apply(this,d)})}},Ka=function(a){a=[\"//www.gstatic.com\",\n\"/og/_/js/d=1/k=\",\"og.og2.en_US.1ClIDIY4zJw.O\",\"/rt=j/m=\",a,\"/rs=\",\"AA2YrTv5zYh5FMM6GOq1YveoQlMzLAxYeA\"];Ha&&a.push(\"?host=www.gstatic.com&bust=og.og2.en_US._M6MGXFwfr4.DU\");a=a.join(\"\");pa(a)};p(\"ca\",J);p(\"cr\",K);p(\"cc\",I);k.k=J;k.l=K;k.m=I;k.n=Ia;k.p=Ka;k.q=Ja;var La=[\"gb_71\",\"gb_155\"],Ma;function Na(a){Ma=a}function Oa(a){var b=Ma&&!a.href.match(/.*\\/accounts\\/ClearSID[?]/)&&encodeURIComponent(Ma());b&&(a.href=a.href.replace(/([?&]continue=)[^&]*/,\"$1\"+b))}function Pa(a){window.gApplication&&(a.href=window.gApplication.getTabUrl(a.href))}function Qa(a){try{var b=(document.forms[0].q||\"\").value;b&&(a.href=a.href.replace(/([?&])q=[^&]*|$/,function(a,d){return(d||\"&\")+\"q=\"+encodeURIComponent(b)}))}catch(c){q(c,\"sb\",\"pq\")}}\nvar Ra=function(){for(var a=[],b=0,c;c=La[b];++b)(c=document.getElementById(c))&&a.push(c);return a},Sa=function(){var a=Ra();return 0<a.length?a[0]:null},Ta=function(){return document.getElementById(\"gb_70\")},L={},M={},Ua={},N={},O=void 0,Za=function(a,b){try{var c=document.getElementById(\"gb\");J(c,\"gbpdjs\");P();Va(document.getElementById(\"gb\"))&&J(c,\"gbrtl\");if(b&&b.getAttribute){var d=b.getAttribute(\"aria-owns\");if(d.length){var f=document.getElementById(d);if(f){var g=b.parentNode;if(O==d)O=void 0,\nK(g,\"gbto\");else{if(O){var l=document.getElementById(O);if(l&&l.getAttribute){var n=l.getAttribute(\"aria-owner\");if(n.length){var m=document.getElementById(n);m&&m.parentNode&&K(m.parentNode,\"gbto\")}}}Wa(f)&&Xa(f);O=d;J(g,\"gbto\")}}}}D(function(){h.tg(a,b,!0)});Ya(a)}catch(r){q(r,\"sb\",\"tg\")}},$a=function(a){D(function(){h.close(a)})},ab=function(a){D(function(){h.rdd(a)})},Va=function(a){var b,c=document.defaultView;c&&c.getComputedStyle?(a=c.getComputedStyle(a,\"\"))&&(b=a.direction):b=a.currentStyle?\na.currentStyle.direction:a.style.direction;return\"rtl\"==b},cb=function(a,b,c){if(a)try{var d=document.getElementById(\"gbd5\");if(d){var f=d.firstChild,g=f.firstChild,l=document.createElement(\"li\");l.className=b+\" gbmtc\";l.id=c;a.className=\"gbmt\";l.appendChild(a);if(g.hasChildNodes()){c=[[\"gbkc\"],[\"gbf\",\"gbe\",\"gbn\"],[\"gbkp\"],[\"gbnd\"]];for(var d=0,n=g.childNodes.length,f=!1,m=-1,r=0,z;z=c[r];r++){for(var T=0,G;G=z[T];T++){for(;d<n&&I(g.childNodes[d],G);)d++;if(G==b){g.insertBefore(l,g.childNodes[d]||\nnull);f=!0;break}}if(f){if(d+1<g.childNodes.length){var U=g.childNodes[d+1];I(U.firstChild,\"gbmh\")||bb(U,z)||(m=d+1)}else if(0<=d-1){var V=g.childNodes[d-1];I(V.firstChild,\"gbmh\")||bb(V,z)||(m=d)}break}0<d&&d+1<n&&d++}if(0<=m){var w=document.createElement(\"li\"),x=document.createElement(\"div\");w.className=\"gbmtc\";x.className=\"gbmt gbmh\";w.appendChild(x);g.insertBefore(w,g.childNodes[m])}h.addHover&&h.addHover(a)}else g.appendChild(l)}}catch(Ab){q(Ab,\"sb\",\"al\")}},bb=function(a,b){for(var c=b.length,\nd=0;d<c;d++)if(I(a,b[d]))return!0;return!1},db=function(a,b,c){cb(a,b,c)},eb=function(a,b){cb(a,\"gbe\",b)},fb=function(){D(function(){h.pcm&&h.pcm()})},gb=function(){D(function(){h.pca&&h.pca()})},hb=function(a,b,c,d,f,g,l,n,m,r){D(function(){h.paa&&h.paa(a,b,c,d,f,g,l,n,m,r)})},ib=function(a,b){L[a]||(L[a]=[]);L[a].push(b)},jb=function(a,b){M[a]||(M[a]=[]);M[a].push(b)},kb=function(a,b){Ua[a]=b},lb=function(a,b){N[a]||(N[a]=[]);N[a].push(b)},Ya=function(a){a.preventDefault&&a.preventDefault();a.returnValue=\n!1;a.cancelBubble=!0},mb=null,Xa=function(a,b){P();if(a){nb(a,\"Opening&hellip;\");Q(a,!0);var c=\"undefined\"!=typeof b?b:1E4,d=function(){ob(a)};mb=window.setTimeout(d,c)}},pb=function(a){P();a&&(Q(a,!1),nb(a,\"\"))},ob=function(a){try{P();var b=a||document.getElementById(O);b&&(nb(b,\"This service is currently unavailable.%1$sPlease try again later.\",\"%1$s\"),Q(b,!0))}catch(c){q(c,\"sb\",\"sdhe\")}},nb=function(a,b,c){if(a&&b){var d=Wa(a);if(d){if(c){d.innerHTML=\"\";b=b.split(c);c=0;for(var f;f=b[c];c++){var g=document.createElement(\"div\");\ng.innerHTML=f;d.appendChild(g)}}else d.innerHTML=b;Q(a,!0)}}},Q=function(a,b){var c=void 0!==b?b:!0;c?J(a,\"gbmsgo\"):K(a,\"gbmsgo\")},Wa=function(a){for(var b=0,c;c=a.childNodes[b];b++)if(I(c,\"gbmsg\"))return c},P=function(){mb&&window.clearTimeout(mb)},qb=function(a){var b=\"inner\"+a;a=\"offset\"+a;return window[b]?window[b]:document.documentElement&&document.documentElement[a]?document.documentElement[a]:0},rb=function(){return!1},sb=function(){return!!O};p(\"so\",Sa);p(\"sos\",Ra);p(\"si\",Ta);p(\"tg\",Za);\np(\"close\",$a);p(\"rdd\",ab);p(\"addLink\",db);p(\"addExtraLink\",eb);p(\"pcm\",fb);p(\"pca\",gb);p(\"paa\",hb);p(\"ddld\",Xa);p(\"ddrd\",pb);p(\"dderr\",ob);p(\"rtl\",Va);p(\"op\",sb);p(\"bh\",L);p(\"abh\",ib);p(\"dh\",M);p(\"adh\",jb);p(\"ch\",N);p(\"ach\",lb);p(\"eh\",Ua);p(\"aeh\",kb);ba=k.a(\"\")?Pa:Qa;p(\"qs\",ba);p(\"setContinueCb\",Na);p(\"pc\",Oa);p(\"bsy\",rb);k.d=Ya;k.j=qb;var tb={};y.base=tb;A.push([\"m\",{url:\"//ssl.gstatic.com/gb/js/sem_28ccd69532c2390ae661f0e31ef881fd.js\"}]);h.sg={c:\"1\"};p(\"wg\",{rg:{}});var ub={tiw:k.c(\"15000\",0),tie:k.c(\"30000\",0)};y.wg=ub;var vb={thi:k.c(\"10000\",0),thp:k.c(\"180000\",0),tho:k.c(\"5000\",0),tet:k.b(\"0.5\",0)};y.wm=vb;if(k.a(\"1\")){var wb=k.a(\"\");A.push([\"gc\",{auto:wb,url:\"//ssl.gstatic.com/gb/js/abc/gci_91f30755d6a6b787dcc2a4062e6e9824.js\",libs:\"googleapis.client:plusone:gapi.iframes\"}]);var xb={version:\"gci_91f30755d6a6b787dcc2a4062e6e9824.js\",index:\"\",lang:\"en\"};y.gc=xb;var yb=function(a){window.googleapis&&window.iframes?a&&a():(a&&ra(a),F(\"gc\"))};p(\"lGC\",yb);k.a(\"1\")&&p(\"lPWF\",yb)};window.__PVT=\"\";if(k.a(\"1\")&&k.a(\"1\")){var zb=function(a){yb(function(){C(\"pw\",a);F(\"pw\")})};p(\"lPW\",zb);A.push([\"pw\",{url:\"//ssl.gstatic.com/gb/js/abc/pwm_45f73e4df07a0e388b0fa1f3d30e7280.js\"}]);var Bb=[],Cb=function(a){Bb[0]=a},Db=function(a,b){var c=b||{};c._sn=\"pw\";t(a,c)},Eb={signed:Bb,elog:Db,base:\"https://plusone.google.com/u/0\",loadTime:(new Date).getTime()};y.pw=Eb;var Fb=function(a,b){for(var c=b.split(\".\"),d=function(){var b=arguments;a(function(){for(var a=h,d=0,f=c.length-1;d<f;++d)a=a[c[d]];a[c[d]].apply(a,b)})},f=h,g=0,l=c.length-1;g<\nl;++g)f=f[c[g]]=f[c[g]]||{};return f[c[g]]=d};Fb(zb,\"pw.clk\");Fb(zb,\"pw.hvr\");p(\"su\",Cb,h.pw)};var Gb=[1,2,3,4,5,6,9,10,11,13,14,28,29,30,34,35,37,38,39,40,41,42,43,48,49,500];var Hb=k.b(\"0.001\",1E-4),Ib=k.b(\"1\",1),Jb=!1,Kb=!1;if(k.a(\"1\")){var Lb=Math.random();Lb<Hb&&(Jb=!0);Lb<Ib&&(Kb=!0)}var R=null;\nfunction Mb(a,b){var c=Hb,d=Jb,f;f=a;if(!R){R={};for(var g=0;g<Gb.length;g++){var l=Gb[g];R[l]=!0}}if(f=!!R[f])c=Ib,d=Kb;if(d){var d=encodeURIComponent,n=\"es_plusone_gc_20161013.0_p0\",m;h.rp?(m=h.rp(),m=\"-1\"!=m?m:\"\"):m=\"\";f=(new Date).getTime();var g=d(\"28834\"),l=d(\"JPwIWP3tN4uOsgGT1Y6QCg\"),r=h.bv.f,z=d(\"1\");m=d(m);var c=Math.round(1/c),T=d(\"1476411960.0\"),n=n?\"&oggv=\"+d(n):\"\",G=d(\"co.uk\"),U=d(\"en\"),\nV=d(\"GBR\"),w;w=0;k.a(\"\")&&(w|=1);k.a(\"\")&&(w|=2);k.a(\"\")&&(w|=4);f=[\"//www.google.com/gen_204?atyp=i&zx=\",f,\"&oge=\",a,\"&ogex=\",g,\"&ogev=\",l,\"&ogf=\",r,\"&ogp=\",z,\"&ogrp=\",m,\"&ogsr=\",c,\"&ogv=\",T,n,\"&ogd=\",G,\"&ogl=\",U,\"&ogc=\",V,\"&ogus=\",w];if(b){\"ogw\"in b&&(f.push(\"&ogw=\"+b.ogw),delete b.ogw);var x,g=b,l=[];for(x in g)0!=l.length&&l.push(\",\"),l.push(Nb(x)),l.push(\".\"),l.push(Nb(g[x]));x=l.join(\"\");\"\"!=x&&(f.push(\"&ogad=\"),f.push(d(x)))}ia(f.join(\"\"))}}\nfunction Nb(a){\"number\"==typeof a&&(a+=\"\");return\"string\"==typeof a?a.replace(\".\",\"%2E\").replace(\",\",\"%2C\"):a}u=Mb;p(\"il\",u,v);var Ob={};y.il=Ob;var Pb=function(a,b,c,d,f,g,l,n,m,r){D(function(){h.paa(a,b,c,d,f,g,l,n,m,r)})},Qb=function(){D(function(){h.prm()})},Rb=function(a){D(function(){h.spn(a)})},Sb=function(a){D(function(){h.sps(a)})},Tb=function(a){D(function(){h.spp(a)})},Ub={\"27\":\"//ssl.gstatic.com/gb/images/silhouette_24.png\",\"27\":\"//ssl.gstatic.com/gb/images/silhouette_24.png\",\"27\":\"//ssl.gstatic.com/gb/images/silhouette_24.png\"},Vb=function(a){return(a=Ub[a])||\"//ssl.gstatic.com/gb/images/silhouette_24.png\"},\nWb=function(){D(function(){h.spd()})};p(\"spn\",Rb);p(\"spp\",Tb);p(\"sps\",Sb);p(\"spd\",Wb);p(\"paa\",Pb);p(\"prm\",Qb);ib(\"gbd4\",Qb);\nif(k.a(\"\")){var Xb={d:k.a(\"\"),e:\"\",sanw:k.a(\"\"),p:\"//ssl.gstatic.com/gb/images/silhouette_96.png\",cp:\"1\",xp:k.a(\"1\"),mg:\"%1$s (delegated)\",md:\"%1$s (default)\",mh:\"220\",s:\"1\",pp:Vb,ppl:k.a(\"\"),ppa:k.a(\"\"),\nppm:\"Google+ page\"};y.prf=Xb};var S,Yb,W,Zb,X=0,$b=function(a,b,c){if(a.indexOf)return a.indexOf(b,c);if(Array.indexOf)return Array.indexOf(a,b,c);for(c=null==c?0:0>c?Math.max(0,a.length+c):c;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1},Y=function(a,b){return-1==$b(a,X)?(q(Error(X+\"_\"+b),\"up\",\"caa\"),!1):!0},bc=function(a,b){Y([1,2],\"r\")&&(S[a]=S[a]||[],S[a].push(b),2==X&&window.setTimeout(function(){b(ac(a))},0))},cc=function(a,b,c){if(Y([1],\"nap\")&&c){for(var d=0;d<c.length;d++)Yb[c[d]]=!0;h.up.spl(a,b,\"nap\",c)}},dc=\nfunction(a,b,c){if(Y([1],\"aop\")&&c){if(W)for(var d in W)W[d]=W[d]&&-1!=$b(c,d);else for(W={},d=0;d<c.length;d++)W[c[d]]=!0;h.up.spl(a,b,\"aop\",c)}},ec=function(){try{if(X=2,!Zb){Zb=!0;for(var a in S)for(var b=S[a],c=0;c<b.length;c++)try{b[c](ac(a))}catch(d){q(d,\"up\",\"tp\")}}}catch(d){q(d,\"up\",\"mtp\")}},ac=function(a){if(Y([2],\"ssp\")){var b=!Yb[a];W&&(b=b&&!!W[a]);return b}};Zb=!1;S={};Yb={};W=null;\nvar X=1,fc=function(a){var b=!1;try{b=a.cookie&&a.cookie.match(\"PREF\")}catch(c){}return!b},gc=function(){try{return!!e.localStorage&&\"object\"==typeof e.localStorage}catch(a){return!1}},hc=function(a){return a&&a.style&&a.style.behavior&&\"undefined\"!=typeof a.load},ic=function(a,b,c,d){try{fc(document)||(d||(b=\"og-up-\"+b),gc()?e.localStorage.setItem(b,c):hc(a)&&(a.setAttribute(b,c),a.save(a.id)))}catch(f){f.code!=DOMException.QUOTA_EXCEEDED_ERR&&q(f,\"up\",\"spd\")}},jc=function(a,b,c){try{if(fc(document))return\"\";\nc||(b=\"og-up-\"+b);if(gc())return e.localStorage.getItem(b);if(hc(a))return a.load(a.id),a.getAttribute(b)}catch(d){d.code!=DOMException.QUOTA_EXCEEDED_ERR&&q(d,\"up\",\"gpd\")}return\"\"},kc=function(a,b,c){a.addEventListener?a.addEventListener(b,c,!1):a.attachEvent&&a.attachEvent(\"on\"+b,c)},lc=function(a){for(var b=0,c;c=a[b];b++){var d=h.up;c=c in d&&d[c];if(!c)return!1}return!0},mc=function(a,b){try{if(fc(a))return-1;var c=a.cookie.match(/OGPC=([^;]*)/);if(c&&c[1]){var d=c[1].match(new RegExp(\"\\\\b\"+\nb+\"-([0-9]+):\"));if(d&&d[1])return parseInt(d[1],10)}}catch(f){f.code!=DOMException.QUOTA_EXCEEDED_ERR&&q(f,\"up\",\"gcc\")}return-1};p(\"up\",{r:bc,nap:cc,aop:dc,tp:ec,ssp:ac,spd:ic,gpd:jc,aeh:kc,aal:lc,gcc:mc});var Z=function(a,b){a[b]=function(c){var d=arguments;h.qm(function(){a[b].apply(this,d)})}};Z(h.up,\"sl\");Z(h.up,\"si\");Z(h.up,\"spl\");Z(h.up,\"dpc\");Z(h.up,\"iic\");h.mcf(\"up\",{sp:k.b(\"0.01\",1),tld:\"co.uk\",prid:\"1\"});function nc(){function a(){for(var b;(b=g[l++])&&\"m\"!=b[0]&&!b[1].auto;);b&&(qa(2,b[0]),b[1].url&&pa(b[1].url,b[0]),b[1].libs&&E&&E(b[1].libs));l<g.length&&setTimeout(a,0)}function b(){0<f--?setTimeout(b,0):a()}var c=k.a(\"1\"),d=k.a(\"\"),f=3,g=A,l=0,n=window.gbarOnReady;if(n)try{n()}catch(m){q(m,\"ml\",\"or\")}d?p(\"ldb\",a):c?ca(window,\"load\",b):b()}p(\"rdl\",nc);}catch(e){window.gbar&&gbar.logger&&gbar.logger.ml(e,{\"_sn\":\"cfg.init\"});}})();\n(function(){try{var a=window.gbar;a.mcf(\"pm\",{p:\"\"});}catch(e){window.gbar&&gbar.logger&&gbar.logger.ml(e,{\"_sn\":\"cfg.init\"});}})();\n(function(){try{var a=window.gbar;a.mcf(\"mm\",{s:\"1\"});}catch(e){window.gbar&&gbar.logger&&gbar.logger.ml(e,{\"_sn\":\"cfg.init\"});}})();\n(function(){try{var d=window.gbar.i.i;var e=window.gbar;var f=e.i;var g=f.c(\"1\",0),h=/\\bgbmt\\b/,k=function(a){try{var b=document.getElementById(\"gb_\"+g),c=document.getElementById(\"gb_\"+a);b&&f.l(b,h.test(b.className)?\"gbm0l\":\"gbz0l\");c&&f.k(c,h.test(c.className)?\"gbm0l\":\"gbz0l\")}catch(l){d(l,\"sj\",\"ssp\")}g=a},m=e.qs,n=function(a){var b;b=a.href;var c=window.location.href.match(/.*?:\\/\\/[^\\/]*/)[0],c=new RegExp(\"^\"+c+\"/search\\\\?\");(b=c.test(b))&&!/(^|\\\\?|&)ei=/.test(a.href)&&(b=window.google)&&b.kEXPI&&(a.href+=\"&ei=\"+b.kEI)},p=function(a){m(a);\nn(a)},q=function(){if(window.google&&window.google.sn){var a=/.*hp$/;return a.test(window.google.sn)?\"\":\"1\"}return\"-1\"};e.rp=q;e.slp=k;e.qs=p;e.qsi=n;}catch(e){window.gbar&&gbar.logger&&gbar.logger.ml(e,{\"_sn\":\"cfg.init\"});}})();\n(function(){try{var a=this;var b=window.gbar;var c=b.i;var d=c.a,e=c.c,f={cty:\"GBR\",cv:\"1476411960\",dbg:d(\"\"),ecv:\"0\",ei:e(\"JPwIWP3tN4uOsgGT1Y6QCg\"),ele:d(\"1\"),esr:e(\"0.1\"),evts:[\"mousedown\",\"touchstart\",\"touchmove\",\"wheel\",\"keydown\"],gbl:\"es_plusone_gc_20161013.0_p0\",hd:\"co.uk\",hl:\"en\",irp:d(\"\"),pid:e(\"1\"),\nsnid:e(\"28834\"),to:e(\"300000\"),u:e(\"\"),vf:\".66.41.\"},g=f,h=[\"bndcfg\"],k=a;h[0]in k||!k.execScript||k.execScript(\"var \"+h[0]);for(var l;h.length&&(l=h.shift());)h.length||void 0===g?k=k[l]?k[l]:k[l]={}:k[l]=g;}catch(e){window.gbar&&gbar.logger&&gbar.logger.ml(e,{\"_sn\":\"cfg.init\"});}})();\n(function(){try{window.gbar.rdl();}catch(e){window.gbar&&gbar.logger&&gbar.logger.ml(e,{\"_sn\":\"cfg.init\"});}})();\n</script><link href=\"/images/branding/product/ico/googleg_lodp.ico\" rel=\"shortcut icon\"></head><body bgcolor=\"#fff\"><script>(function(){var src='/images/nav_logo229.png';var iesg=false;document.body.onload = function(){window.n && window.n();if (document.images){new Image().src=src;}\nif (!iesg){document.f&&document.f.q.focus();document.gbqf&&document.gbqf.q.focus();}\n}\n})();</script><div id=\"mngb\"> <div id=gb><script>window.gbar&&gbar.eli&&gbar.eli()</script><div id=gbw><div id=gbz><span class=gbtcb></span><ol id=gbzc class=gbtc><li class=gbt><a onclick=gbar.logger.il(1,{t:1}); class=\"gbzt gbz0l gbp1\" id=gb_1 href=\"https://www.google.co.uk/webhp?tab=ww\"><span class=gbtb2></span><span class=gbts>Search</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:2}); class=gbzt id=gb_2 href=\"http://www.google.co.uk/imghp?hl=en&tab=wi\"><span class=gbtb2></span><span class=gbts>Images</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:8}); class=gbzt id=gb_8 href=\"http://maps.google.co.uk/maps?hl=en&tab=wl\"><span class=gbtb2></span><span class=gbts>Maps</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:78}); class=gbzt id=gb_78 href=\"https://play.google.com/?hl=en&tab=w8\"><span class=gbtb2></span><span class=gbts>Play</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:36}); class=gbzt id=gb_36 href=\"http://www.youtube.com/?gl=GB&tab=w1\"><span class=gbtb2></span><span class=gbts>YouTube</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:5}); class=gbzt id=gb_5 href=\"http://news.google.co.uk/nwshp?hl=en&tab=wn\"><span class=gbtb2></span><span class=gbts>News</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:23}); class=gbzt id=gb_23 href=\"https://mail.google.com/mail/?tab=wm\"><span class=gbtb2></span><span class=gbts>Gmail</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:49}); class=gbzt id=gb_49 href=\"https://drive.google.com/?tab=wo\"><span class=gbtb2></span><span class=gbts>Drive</span></a></li><li class=gbt><a class=gbgt id=gbztm href=\"https://www.google.co.uk/intl/en/options/\" onclick=\"gbar.tg(event,this)\" aria-haspopup=true aria-owns=gbd><span class=gbtb2></span><span id=gbztms class=\"gbts gbtsa\"><span id=gbztms1>More</span><span class=gbma></span></span></a><div class=gbm id=gbd aria-owner=gbztm><div id=gbmmb class=\"gbmc gbsb gbsbis\"><ol id=gbmm class=\"gbmcc gbsbic\"><li class=gbmtc><a onclick=gbar.logger.il(1,{t:24}); class=gbmt id=gb_24 href=\"https://www.google.com/calendar?tab=wc\">Calendar</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:51}); class=gbmt id=gb_51 href=\"http://translate.google.co.uk/?hl=en&tab=wT\">Translate</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:10}); class=gbmt id=gb_10 href=\"https://books.google.co.uk/bkshp?hl=en&tab=wp\">Books</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:6}); class=gbmt id=gb_6 href=\"http://www.google.co.uk/shopping?hl=en&tab=wf\">Shopping</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:30}); class=gbmt id=gb_30 href=\"http://www.blogger.com/?tab=wj\">Blogger</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:27}); class=gbmt id=gb_27 href=\"http://www.google.co.uk/finance?tab=we\">Finance</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:31}); class=gbmt id=gb_31 href=\"https://photos.google.com/?tab=wq&pageId=none\">Photos</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:12}); class=gbmt id=gb_12 href=\"http://video.google.co.uk/?hl=en&tab=wv\">Videos</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:25}); class=gbmt id=gb_25 href=\"https://docs.google.com/document/?usp=docs_alc\">Docs</a></li><li class=gbmtc><div class=\"gbmt gbmh\"></div></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:66}); href=\"https://www.google.co.uk/intl/en/options/\" class=gbmt>Even more &raquo;</a></li></ol><div class=gbsbt></div><div class=gbsbb></div></div></div></li></ol></div><div id=gbg><h2 class=gbxx>Account Options</h2><span class=gbtcb></span><ol class=gbtc><li class=gbt><a target=_top href=\"https://accounts.google.com/ServiceLogin?hl=en&passive=true&continue=http://www.google.co.uk/\" onclick=\"gbar.logger.il(9,{l:'i'})\" id=gb_70 class=gbgt><span class=gbtb2></span><span id=gbgs4 class=gbts><span id=gbi4s1>Sign in</span></span></a></li><li class=\"gbt gbtb\"><span class=gbts></span></li><li class=gbt><a class=gbgt id=gbg5 href=\"http://www.google.co.uk/preferences?hl=en\" title=\"Options\" onclick=\"gbar.tg(event,this)\" aria-haspopup=true aria-owns=gbd5><span class=gbtb2></span><span id=gbgs5 class=gbts><span id=gbi5></span></span></a><div class=gbm id=gbd5 aria-owner=gbg5><div class=gbmc><ol id=gbom class=gbmcc><li class=\"gbkc gbmtc\"><a  class=gbmt href=\"/preferences?hl=en\">Search settings</a></li><li class=gbmtc><div class=\"gbmt gbmh\"></div></li><li class=\"gbkp gbmtc\"><a class=gbmt href=\"http://www.google.co.uk/history/optout?hl=en\">Web History</a></li></ol></div></div></li></ol></div></div><div id=gbx3></div><div id=gbx4></div><script>window.gbar&&gbar.elp&&gbar.elp()</script></div> </div><center><br clear=\"all\" id=\"lgpd\"><div id=\"lga\"><div style=\"padding:28px 0 3px\"><div style=\"height:110px;width:276px;background:url(/images/branding/googlelogo/1x/googlelogo_white_background_color_272x92dp.png) no-repeat\" title=\"Google\" align=\"left\" id=\"hplogo\" onload=\"window.lol&&lol()\"><div style=\"color:#777;font-size:16px;font-weight:bold;position:relative;top:70px;left:218px\" nowrap=\"\">UK</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=\"ie\" value=\"ISO-8859-1\" type=\"hidden\"><input value=\"en-GB\" name=\"hl\" type=\"hidden\"><input name=\"source\" type=\"hidden\" value=\"hp\"><input name=\"biw\" type=\"hidden\"><input name=\"bih\" type=\"hidden\"><div class=\"ds\" style=\"height:32px;margin:4px 0\"><input style=\"color:#000;margin:0;padding:5px 8px 0 6px;vertical-align:top\" autocomplete=\"off\" class=\"lst\" value=\"\" title=\"Google Search\" maxlength=\"2048\" name=\"q\" size=\"57\"></div><br style=\"line-height:0\"><span class=\"ds\"><span class=\"lsbb\"><input class=\"lsb\" value=\"Google Search\" name=\"btnG\" type=\"submit\"></span></span><span class=\"ds\"><span class=\"lsbb\"><input class=\"lsb\" value=\"I'm Feeling Lucky\" name=\"btnI\" onclick=\"if(this.form.q.value)this.checked=1; else top.location='/doodles/'\" type=\"submit\"></span></span></td><td class=\"fl sblc\" align=\"left\" nowrap=\"\" width=\"25%\"><a href=\"/advanced_search?hl=en-GB&amp;authuser=0\">Advanced search</a><a href=\"/language_tools?hl=en-GB&amp;authuser=0\">Language tools</a></td></tr></table><input id=\"gbv\" name=\"gbv\" type=\"hidden\" value=\"1\"><script>(function(){var a,b=\"1\";if(document&&document.getElementById)if(\"undefined\"!=typeof XMLHttpRequest)b=\"2\";else if(\"undefined\"!=typeof ActiveXObject){var c,d,e=[\"MSXML2.XMLHTTP.6.0\",\"MSXML2.XMLHTTP.3.0\",\"MSXML2.XMLHTTP\",\"Microsoft.XMLHTTP\"];for(c=0;d=e[c++];)try{new ActiveXObject(d),b=\"2\"}catch(h){}}a=b;if(\"2\"==a&&-1==location.search.indexOf(\"&gbv=2\")){var f=google.gbvu,g=document.getElementById(\"gbv\");g&&(g.value=a);f&&window.setTimeout(function(){location.href=f},0)};})();</script></form><div id=\"gac_scont\"></div><div style=\"font-size:83%;min-height:3.5em\"><br><div id=\"prm\"><style>.szppmdbYutt__middle-slot-promo{font-size:small;margin-bottom:32px}.szppmdbYutt__middle-slot-promo a._uFi{display:inline-block;text-decoration:none}.szppmdbYutt__middle-slot-promo img{border:none;margin-right:5px;vertical-align:middle}.szppmdbYutt__middle-slot-promo ._vFi{color:red}</style><div class=\"szppmdbYutt__middle-slot-promo r-izohXAhqfqNg\" jsl=\"$t t-Gza07Ho9En4;$x 0;\" data-ved=\"0ahUKEwifpajL8enPAhWI3CwKHZ5_C1wQnIcBCAQ\">Introducing <a class=\"_XIi\" href=\"https://www.google.com/url?q=https://madeby.google.com/intl/en_uk/phone/%3Futm_source%3Dhp%26utm_medium%3DHPP_link%26utm_term%3Dall%26utm_campaign%3Doo_ph_pmos:os_enuk&amp;source=hpp&amp;id=19000912&amp;ct=3&amp;usg=AFQjCNGAvQDYYz7vptZmk983-wOMtgKHiA&amp;sa=X&amp;ved=0ahUKEwifpajL8enPAhWI3CwKHZ5_C1wQ8IcBCAU\" rel=\"nofollow\">Pixel, phone by Google</a>. Available now.</div></div></div><span id=\"footer\"><div style=\"font-size:10pt\"><div style=\"margin:19px auto;text-align:center\" id=\"fll\"><a href=\"/intl/en/ads/\">Advertising Programmes</a><a href=\"/services/\">Business Solutions</a><a href=\"https://plus.google.com/103583604759580854844\" rel=\"publisher\">+Google</a><a href=\"/intl/en/about.html\">About Google</a><a href=\"http://www.google.co.uk/setprefdomain?prefdom=US&amp;sig=__JvsH1okuD18vmRzOKzlArWmJYk4%3D\" id=\"fehl\">Google.com</a></div></div><p style=\"color:#767676;font-size:8pt\">&copy; 2016 - <a href=\"/intl/en/policies/privacy/\">Privacy</a> - <a href=\"/intl/en/policies/terms/\">Terms</a></p></span></center><script>(function(){window.google.cdo={height:0,width:0};(function(){var a=window.innerWidth,b=window.innerHeight;if(!a||!b)var c=window.document,d=\"CSS1Compat\"==c.compatMode?c.documentElement:c.body,a=d.clientWidth,b=d.clientHeight;a&&b&&(a!=google.cdo.width||b!=google.cdo.height)&&google.log(\"\",\"\",\"/client_204?&atyp=i&biw=\"+a+\"&bih=\"+b+\"&ei=\"+google.kEI);})();})();</script><div id=\"xjsd\"></div><div id=\"xjsi\"><script>(function(){function c(b){window.setTimeout(function(){var a=document.createElement(\"script\");a.src=b;document.getElementById(\"xjsd\").appendChild(a)},0)}google.dljp=function(b,a){google.xjsu=b;c(a)};google.dlj=c;})();(function(){window.google.xjsrm=['mids'];})();if(google.y)google.y.first=[];if(!google.xjs){window._=window._||{};window._._DumpException=function(e){throw e};if(google.timers&&google.timers.load.t){google.timers.load.t.xjsls=new Date().getTime();}google.dljp('/xjs/_/js/k\\x3dxjs.hp.en_US.e4-85eyk8Bs.O/m\\x3dsb_he,d/rt\\x3dj/d\\x3d1/t\\x3dzcms/rs\\x3dACT90oGwhtLZKDuRRfajPNxXQ_iRSPiqWw','/xjs/_/js/k\\x3dxjs.hp.en_US.e4-85eyk8Bs.O/m\\x3dsb_he,d/rt\\x3dj/d\\x3d1/t\\x3dzcms/rs\\x3dACT90oGwhtLZKDuRRfajPNxXQ_iRSPiqWw');google.xjs=1;}google.pmc={\"sb_he\":{\"agen\":true,\"cgen\":true,\"client\":\"heirloom-hp\",\"dh\":true,\"dhqt\":true,\"ds\":\"\",\"fl\":true,\"host\":\"google.co.uk\",\"isbh\":28,\"jam\":0,\"jsonp\":true,\"msgs\":{\"cibl\":\"Clear Search\",\"dym\":\"Did you mean:\",\"lcky\":\"I\\u0026#39;m Feeling Lucky\",\"lml\":\"Learn more\",\"oskt\":\"Input tools\",\"psrc\":\"This search was removed from your \\u003Ca href=\\\"/history\\\"\\u003EWeb History\\u003C/a\\u003E\",\"psrl\":\"Remove\",\"sbit\":\"Search by image\",\"srch\":\"Google Search\"},\"nds\":true,\"ovr\":{},\"pq\":\"\",\"refpd\":true,\"rfs\":[],\"scd\":10,\"sce\":5,\"stok\":\"BVRNqq8GcGwwMDzu7UsYzXvJrP4\"},\"d\":{}};google.y.first.push(function(){if(google.med){google.med('init');google.initHistory();google.med('history');}});if(google.j&&google.j.en&&google.j.xi){window.setTimeout(google.j.xi,0);}\n</script></div></body></html>"}}}},
  {mfa,{hello_handler,handle,2}},
  {stacktrace,[{hello_handler,handle,2,
                              [{file,"src/hello_handler.erl"},{line,24}]},
               {cowboy_handler,handler_handle,4,
                               [{file,"src/cowboy_handler.erl"},{line,111}]},
               {cowboy_protocol,execute,4,
                                [{file,"src/cowboy_protocol.erl"},
                                 {line,442}]}]},
  {req,[{socket,#Port<0.406>},
        {transport,ranch_tcp},
        {connection,keepalive},
        {pid,<0.512.0>},
        {method,<<"POST">>},
        {version,'HTTP/1.1'},
        {peer,{{10,0,0,1},47451}},
        {host,<<"10.0.0.103">>},
        {host_info,undefined},
        {port,8080},
        {path,<<"/">>},
        {path_info,undefined},
        {qs,<<>>},
        {qs_vals,undefined},
        {bindings,[]},
        {headers,[{<<"host">>,<<"10.0.0.103:8080">>},
                  {<<"connection">>,<<"keep-alive">>},
                  {<<"content-length">>,<<"0">>},
                  {<<"user-agent">>,
                   <<"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/39.0.2171.65 Chrome/39.0.2171.65 Safari/537.36">>},
                  {<<"cache-control">>,<<"no-cache">>},
                  {<<"origin">>,
                   <<"chrome-extension://fdmmgilgnpjigdojojpjoooidkmcomcm">>},
                  {<<"accept">>,<<"*/*">>},
                  {<<"accept-encoding">>,<<"gzip, deflate">>},
                  {<<"accept-language">>,<<"en-GB,en-US;q=0.8,en;q=0.6">>}]},
        {p_headers,[{<<"connection">>,[<<"keep-alive">>]}]},
        {cookies,undefined},
        {meta,[]},
        {body_state,waiting},
        {buffer,<<>>},
        {multipart,undefined},
        {resp_compress,false},
        {resp_state,waiting},
        {resp_headers,[]},
        {resp_body,<<>>},
        {onresponse,undefined}]},
  {state,{state}}],
 [{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,442}]}]}

=ERROR REPORT==== 20-Oct-2016::17:17:25 ===
Ranch listener my_http_listener had connection process started with cowboy_protocol:start_link/4 at <0.512.0> exit with reason: {[{reason,{badmatch,{ok,{{"HTTP/1.1",200,"OK"},[{"cache-control","private, max-age=0"},{"date","Thu, 20 Oct 2016 17:17:24 GMT"},{"accept-ranges","none"},{"server","gws"},{"vary","Accept-Encoding"},{"content-length","45790"},{"content-type","text/html; charset=ISO-8859-1"},{"expires","-1"},{"p3p","CP=\"This is not a P3P policy! See https://www.google.com/support/accounts/answer/151657?hl=en for more info.\""},{"x-xss-protection","1; mode=block"},{"x-frame-options","SAMEORIGIN"},{"set-cookie","NID=89=BpYkTRLKZHItZ_510zhd5qTiPsxf4YG52TgEKKJgUn2y4_i1L5x0N4cLMRsE91xTzHJKrjwFgZiiA2AfQA-qnFaX6M7LGnUAXulH2B79-JFHhEBbe_IeQjAY6RQCIoYZ; expires=Fri, 21-Apr-2017 17:17:24 GMT; path=/; domain=.google.co.uk; HttpOnly"}],"<!doctype html><html itemscope=\"\" itemtype=\"http://schema.org/WebPage\" lang=\"en-GB\"><head><meta content=\"text/html; charset=UTF-8\" http-equiv=\"Content-Type\"><meta content=\"/images/branding/googleg/1x/googleg_standard_color_128dp.png\" itemprop=\"image\"><title>Google</title><script>(function(){window.google={kEI:'JPwIWJ-DN4i5swGe_63gBQ',kEXPI:'18168,1351634,1351901,3700289,3700400,4029815,4031109,4032678,4036527,4038012,4039268,4043492,4045841,4048347,4052304,4058720,4063220,4065787,4067939,4068550,4069838,4069840,4070142,4070329,4071230,4071842,4072289,4072364,4072602,4072705,4072773,4073111,4073405,4073959,4074684,4074809,4076096,4076930,4076999,4077221,4077298,4078407,4078430,4078438,4078457,4078760,4079105,4079155,4079199,4079388,4079553,4079810,4079872,4080104,4080167,4080230,4080479,4080513,4080640,4081016,4081037,4081038,4081253,4081264,4081371,4081423,4081460,4081798,4082183,4082290,4082471,4082538,4082618,4083021,8300096,8300273,8300441,8502184,8503209,8503585,8504110,8504846,8505150,8505152,8505258,8506251,8506255,8506340,8506615,8506977,8507019,8507080,8507125,8507336,8507380,10200083,13500016,19000912',authuser:0,kscs:'c9c918f0_24'};google.kHL='en-GB';})();(function(){google.lc=[];google.li=0;google.getEI=function(a){for(var b;a&&(!a.getAttribute||!(b=a.getAttribute(\"eid\")));)a=a.parentNode;return b||google.kEI};google.getLEI=function(a){for(var b=null;a&&(!a.getAttribute||!(b=a.getAttribute(\"leid\")));)a=a.parentNode;return b};google.https=function(){return\"https:\"==window.location.protocol};google.ml=function(){return null};google.wl=function(a,b){try{google.ml(Error(a),!1,b)}catch(c){}};google.time=function(){return(new Date).getTime()};google.log=function(a,b,c,e,g){a=google.logUrl(a,b,c,e,g);if(\"\"!=a){b=new Image;var d=google.lc,f=google.li;d[f]=b;b.onerror=b.onload=b.onabort=function(){delete d[f]};window.google&&window.google.vel&&window.google.vel.lu&&window.google.vel.lu(a);b.src=a;google.li=f+1}};google.logUrl=function(a,b,c,e,g){var d=\"\",f=google.ls||\"\";if(!c&&-1==b.search(\"&ei=\")){var h=google.getEI(e),d=\"&ei=\"+h;-1==b.search(\"&lei=\")&&((e=google.getLEI(e))?d+=\"&lei=\"+e:h!=google.kEI&&(d+=\"&lei=\"+google.kEI))}a=c||\"/\"+(g||\"gen_204\")+\"?atyp=i&ct=\"+a+\"&cad=\"+b+d+f+\"&zx=\"+google.time();/^http:/i.test(a)&&google.https()&&(google.ml(Error(\"a\"),!1,{src:a,glmm:1}),a=\"\");return a};google.y={};google.x=function(a,b){google.y[a.id]=[a,b];return!1};google.lq=[];google.load=function(a,b,c){google.lq.push([[a],b,c])};google.loadAll=function(a,b){google.lq.push([a,b])};})();var a=window.location,b=a.href.indexOf(\"#\");if(0<=b){var c=a.href.substring(b+1);/(^|&)q=/.test(c)&&-1==c.indexOf(\"#\")&&a.replace(\"/search?\"+c.replace(/(^|&)fp=[^&]*/g,\"\")+\"&cad=h\")};</script><style>#gb{font:13px/27px Arial,sans-serif;height:30px}#gbz,#gbg{position:absolute;white-space:nowrap;top:0;height:30px;z-index:1000}#gbz{left:0;padding-left:4px}#gbg{right:0;padding-right:5px}#gbs{background:transparent;position:absolute;top:-999px;visibility:hidden;z-index:998;right:0}.gbto #gbs{background:#fff}#gbx3,#gbx4{background-color:#2d2d2d;background-image:none;_background-image:none;background-position:0 -138px;background-repeat:repeat-x;border-bottom:1px solid #000;font-size:24px;height:29px;_height:30px;opacity:1;filter:alpha(opacity=100);position:absolute;top:0;width:100%;z-index:990}#gbx3{left:0}#gbx4{right:0}#gbb{position:relative}#gbbw{left:0;position:absolute;top:30px;width:100%}.gbtcb{position:absolute;visibility:hidden}#gbz .gbtcb{right:0}#gbg .gbtcb{left:0}.gbxx{display:none !important}.gbxo{opacity:0 !important;filter:alpha(opacity=0) !important}.gbm{position:absolute;z-index:999;top:-999px;visibility:hidden;text-align:left;border:1px solid #bebebe;background:#fff;-moz-box-shadow:-1px 1px 1px rgba(0,0,0,.2);-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2);box-shadow:0 2px 4px rgba(0,0,0,.2)}.gbrtl .gbm{-moz-box-shadow:1px 1px 1px rgba(0,0,0,.2)}.gbto .gbm,.gbto #gbs{top:29px;visibility:visible}#gbz .gbm{left:0}#gbg .gbm{right:0}.gbxms{background-color:#ccc;display:block;position:absolute;z-index:1;top:-1px;left:-2px;right:-2px;bottom:-2px;opacity:.4;-moz-border-radius:3px;filter:progid:DXImageTransform.Microsoft.Blur(pixelradius=5);*opacity:1;*top:-2px;*left:-5px;*right:5px;*bottom:4px;-ms-filter:\"progid:DXImageTransform.Microsoft.Blur(pixelradius=5)\";opacity:1\\0/;top:-4px\\0/;left:-6px\\0/;right:5px\\0/;bottom:4px\\0/}.gbma{position:relative;top:-1px;border-style:solid dashed dashed;border-color:transparent;border-top-color:#c0c0c0;display:-moz-inline-box;display:inline-block;font-size:0;height:0;line-height:0;width:0;border-width:3px 3px 0;padding-top:1px;left:4px}#gbztms1,#gbi4m1,#gbi4s,#gbi4t{zoom:1}.gbtc,.gbmc,.gbmcc{display:block;list-style:none;margin:0;padding:0}.gbmc{background:#fff;padding:10px 0;position:relative;z-index:2;zoom:1}.gbt{position:relative;display:-moz-inline-box;display:inline-block;line-height:27px;padding:0;vertical-align:top}.gbt{*display:inline}.gbto{box-shadow:0 2px 4px rgba(0,0,0,.2);-moz-box-shadow:0 2px 4px rgba(0,0,0,.2);-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2)}.gbzt,.gbgt{cursor:pointer;display:block;text-decoration:none !important}span#gbg6,span#gbg4{cursor:default}.gbts{border-left:1px solid transparent;border-right:1px solid transparent;display:block;*display:inline-block;padding:0 5px;position:relative;z-index:1000}.gbts{*display:inline}.gbzt .gbts{display:inline;zoom:1}.gbto .gbts{background:#fff;border-color:#bebebe;color:#36c;padding-bottom:1px;padding-top:2px}.gbz0l .gbts{color:#fff;font-weight:bold}.gbtsa{padding-right:9px}#gbz .gbzt,#gbz .gbgt,#gbg .gbgt{color:#ccc!important}.gbtb2{display:block;border-top:2px solid transparent}.gbto .gbzt .gbtb2,.gbto .gbgt .gbtb2{border-top-width:0}.gbtb .gbts{background:url(//ssl.gstatic.com/gb/images/b_8d5afc09.png);_background:url(//ssl.gstatic.com/gb/images/b8_3615d64d.png);background-position:-27px -22px;border:0;font-size:0;padding:29px 0 0;*padding:27px 0 0;width:1px}.gbzt:hover,.gbzt:focus,.gbgt-hvr,.gbgt:focus{background-color:#4c4c4c;background-image:none;_background-image:none;background-position:0 -102px;background-repeat:repeat-x;outline:none;text-decoration:none !important}.gbpdjs .gbto .gbm{min-width:99%}.gbz0l .gbtb2{border-top-color:#dd4b39!important}#gbi4s,#gbi4s1{font-weight:bold}#gbg6.gbgt-hvr,#gbg6.gbgt:focus{background-color:transparent;background-image:none}.gbg4a{font-size:0;line-height:0}.gbg4a .gbts{padding:27px 5px 0;*padding:25px 5px 0}.gbto .gbg4a .gbts{padding:29px 5px 1px;*padding:27px 5px 1px}#gbi4i,#gbi4id{left:5px;border:0;height:24px;position:absolute;top:1px;width:24px}.gbto #gbi4i,.gbto #gbi4id{top:3px}.gbi4p{display:block;width:24px}#gbi4id{background-position:-44px -101px}#gbmpid{background-position:0 0}#gbmpi,#gbmpid{border:none;display:inline-block;height:48px;width:48px}#gbmpiw{display:inline-block;line-height:9px;padding-left:20px;margin-top:10px;position:relative}#gbmpi,#gbmpid,#gbmpiw{*display:inline}#gbg5{font-size:0}#gbgs5{padding:5px !important}.gbto #gbgs5{padding:7px 5px 6px !important}#gbi5{background:url(//ssl.gstatic.com/gb/images/b_8d5afc09.png);_background:url(//ssl.gstatic.com/gb/images/b8_3615d64d.png);background-position:0 0;display:block;font-size:0;height:17px;width:16px}.gbto #gbi5{background-position:-6px -22px}.gbn .gbmt,.gbn .gbmt:visited,.gbnd .gbmt,.gbnd .gbmt:visited{color:#dd8e27 !important}.gbf .gbmt,.gbf .gbmt:visited{color:#900 !important}.gbmt,.gbml1,.gbmlb,.gbmt:visited,.gbml1:visited,.gbmlb:visited{color:#36c !important;text-decoration:none !important}.gbmt,.gbmt:visited{display:block}.gbml1,.gbmlb,.gbml1:visited,.gbmlb:visited{display:inline-block;margin:0 10px}.gbml1,.gbmlb,.gbml1:visited,.gbmlb:visited{*display:inline}.gbml1,.gbml1:visited{padding:0 10px}.gbml1-hvr,.gbml1:focus{outline:none;text-decoration:underline !important}#gbpm .gbml1{display:inline;margin:0;padding:0;white-space:nowrap}.gbmlb,.gbmlb:visited{line-height:27px}.gbmlb-hvr,.gbmlb:focus{outline:none;text-decoration:underline !important}.gbmlbw{color:#ccc;margin:0 10px}.gbmt{padding:0 20px}.gbmt:hover,.gbmt:focus{background:#eee;cursor:pointer;outline:0 solid black;text-decoration:none !important}.gbm0l,.gbm0l:visited{color:#000 !important;font-weight:bold}.gbmh{border-top:1px solid #bebebe;font-size:0;margin:10px 0}#gbd4 .gbmc{background:#f5f5f5;padding-top:0}#gbd4 .gbsbic::-webkit-scrollbar-track:vertical{background-color:#f5f5f5;margin-top:2px}#gbmpdv{background:#fff;border-bottom:1px solid #bebebe;-moz-box-shadow:0 2px 4px rgba(0,0,0,.12);-o-box-shadow:0 2px 4px rgba(0,0,0,.12);-webkit-box-shadow:0 2px 4px rgba(0,0,0,.12);box-shadow:0 2px 4px rgba(0,0,0,.12);position:relative;z-index:1}#gbd4 .gbmh{margin:0}.gbmtc{padding:0;margin:0;line-height:27px}.GBMCC:last-child:after,#GBMPAL:last-child:after{content:'\\0A\\0A';white-space:pre;position:absolute}#gbmps{*zoom:1}#gbd4 .gbpc,#gbmpas .gbmt{line-height:17px}#gbd4 .gbpgs .gbmtc{line-height:27px}#gbd4 .gbmtc{border-bottom:1px solid #bebebe}#gbd4 .gbpc{display:inline-block;margin:16px 0 10px;padding-right:50px;vertical-align:top}#gbd4 .gbpc{*display:inline}.gbpc .gbps,.gbpc .gbps2{display:block;margin:0 20px}#gbmplp.gbps{margin:0 10px}.gbpc .gbps{color:#000;font-weight:bold}.gbpc .gbpd{margin-bottom:5px}.gbpd .gbmt,.gbpd .gbps{color:#666 !important}.gbpd .gbmt{opacity:.4;filter:alpha(opacity=40)}.gbps2{color:#666;display:block}.gbp0{display:none}.gbp0 .gbps2{font-weight:bold}#gbd4 .gbmcc{margin-top:5px}.gbpmc{background:#fef9db}.gbpmc .gbpmtc{padding:10px 20px}#gbpm{border:0;*border-collapse:collapse;border-spacing:0;margin:0;white-space:normal}#gbpm .gbpmtc{border-top:none;color:#000 !important;font:11px Arial,sans-serif}#gbpms{*white-space:nowrap}.gbpms2{font-weight:bold;white-space:nowrap}#gbmpal{*border-collapse:collapse;border-spacing:0;border:0;margin:0;white-space:nowrap;width:100%}.gbmpala,.gbmpalb{font:13px Arial,sans-serif;line-height:27px;padding:10px 20px 0;white-space:nowrap}.gbmpala{padding-left:0;text-align:left}.gbmpalb{padding-right:0;text-align:right}#gbmpasb .gbps{color:#000}#gbmpal .gbqfbb{margin:0 20px}.gbp0 .gbps{*display:inline}a.gbiba{margin:8px 20px 10px}.gbmpiaw{display:inline-block;padding-right:10px;margin-bottom:6px;margin-top:10px}.gbxv{visibility:hidden}.gbmpiaa{display:block;margin-top:10px}.gbmpia{border:none;display:block;height:48px;width:48px}.gbmpnw{display:inline-block;height:auto;margin:10px 0;vertical-align:top}\n.gbqfb,.gbqfba,.gbqfbb{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;cursor:default !important;display:inline-block;font-weight:bold;height:29px;line-height:29px;min-width:54px;*min-width:70px;padding:0 8px;text-align:center;text-decoration:none !important;-moz-user-select:none;-webkit-user-select:none}.gbqfb:focus,.gbqfba:focus,.gbqfbb:focus{border:1px solid #4d90fe;-moz-box-shadow:inset 0 0 0 1px rgba(255, 255, 255, 0.5);-webkit-box-shadow:inset 0 0 0 1px rgba(255, 255, 255, 0.5);box-shadow:inset 0 0 0 1px rgba(255, 255, 255, 0.5);outline:none}.gbqfb-hvr:focus,.gbqfba-hvr:focus,.gbqfbb-hvr:focus{-webkit-box-shadow:inset 0 0 0 1px #fff,0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:inset 0 0 0 1px #fff,0 1px 1px rgba(0,0,0,.1);box-shadow:inset 0 0 0 1px #fff,0 1px 1px rgba(0,0,0,.1)}.gbqfb-no-focus:focus{border:1px solid #3079ed;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}.gbqfb-hvr,.gbqfba-hvr,.gbqfbb-hvr{-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1)}.gbqfb::-moz-focus-inner,.gbqfba::-moz-focus-inner,.gbqfbb::-moz-focus-inner{border:0}.gbqfba,.gbqfbb{border:1px solid #dcdcdc;border-color:rgba(0,0,0,.1);color:#444 !important;font-size:11px}.gbqfb{background-color:#4d90fe;background-image:-webkit-gradient(linear,left top,left bottom,from(#4d90fe),to(#4787ed));background-image:-webkit-linear-gradient(top,#4d90fe,#4787ed);background-image:-moz-linear-gradient(top,#4d90fe,#4787ed);background-image:-ms-linear-gradient(top,#4d90fe,#4787ed);background-image:-o-linear-gradient(top,#4d90fe,#4787ed);background-image:linear-gradient(top,#4d90fe,#4787ed);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#4d90fe',EndColorStr='#4787ed');border:1px solid #3079ed;color:#fff!important;margin:0 0}.gbqfb-hvr{border-color:#2f5bb7}.gbqfb-hvr:focus{border-color:#2f5bb7}.gbqfb-hvr,.gbqfb-hvr:focus{background-color:#357ae8;background-image:-webkit-gradient(linear,left top,left bottom,from(#4d90fe),to(#357ae8));background-image:-webkit-linear-gradient(top,#4d90fe,#357ae8);background-image:-moz-linear-gradient(top,#4d90fe,#357ae8);background-image:-ms-linear-gradient(top,#4d90fe,#357ae8);background-image:-o-linear-gradient(top,#4d90fe,#357ae8);background-image:linear-gradient(top,#4d90fe,#357ae8)}.gbqfb:active{background-color:inherit;-webkit-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.3);-moz-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.3);box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.3)}.gbqfba{background-color:#f5f5f5;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#f1f1f1));background-image:-webkit-linear-gradient(top,#f5f5f5,#f1f1f1);background-image:-moz-linear-gradient(top,#f5f5f5,#f1f1f1);background-image:-ms-linear-gradient(top,#f5f5f5,#f1f1f1);background-image:-o-linear-gradient(top,#f5f5f5,#f1f1f1);background-image:linear-gradient(top,#f5f5f5,#f1f1f1);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#f5f5f5',EndColorStr='#f1f1f1')}.gbqfba-hvr,.gbqfba-hvr:active{background-color:#f8f8f8;background-image:-webkit-gradient(linear,left top,left bottom,from(#f8f8f8),to(#f1f1f1));background-image:-webkit-linear-gradient(top,#f8f8f8,#f1f1f1);background-image:-moz-linear-gradient(top,#f8f8f8,#f1f1f1);background-image:-ms-linear-gradient(top,#f8f8f8,#f1f1f1);background-image:-o-linear-gradient(top,#f8f8f8,#f1f1f1);background-image:linear-gradient(top,#f8f8f8,#f1f1f1);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#f8f8f8',EndColorStr='#f1f1f1')}.gbqfbb{background-color:#fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#fbfbfb));background-image:-webkit-linear-gradient(top,#fff,#fbfbfb);background-image:-moz-linear-gradient(top,#fff,#fbfbfb);background-image:-ms-linear-gradient(top,#fff,#fbfbfb);background-image:-o-linear-gradient(top,#fff,#fbfbfb);background-image:linear-gradient(top,#fff,#fbfbfb);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff',EndColorStr='#fbfbfb')}.gbqfbb-hvr,.gbqfbb-hvr:active{background-color:#fff;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:-webkit-linear-gradient(top,#fff,#f8f8f8);background-image:-moz-linear-gradient(top,#fff,#f8f8f8);background-image:-ms-linear-gradient(top,#fff,#f8f8f8);background-image:-o-linear-gradient(top,#fff,#f8f8f8);background-image:linear-gradient(top,#fff,#f8f8f8);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff',EndColorStr='#f8f8f8')}.gbqfba-hvr,.gbqfba-hvr:active,.gbqfbb-hvr,.gbqfbb-hvr:active{border-color:#c6c6c6;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1);color:#222 !important}.gbqfba:active,.gbqfbb:active{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}\n#gbmpas{max-height:220px}#gbmm{max-height:530px}.gbsb{-webkit-box-sizing:border-box;display:block;position:relative;*zoom:1}.gbsbic{overflow:auto}.gbsbis .gbsbt,.gbsbis .gbsbb{-webkit-mask-box-image:-webkit-gradient(linear,left top,right top,color-stop(0,rgba(0,0,0,.1)),color-stop(.5,rgba(0,0,0,.8)),color-stop(1,rgba(0,0,0,.1)));left:0;margin-right:0;opacity:0;position:absolute;width:100%}.gbsb .gbsbt:after,.gbsb .gbsbb:after{content:\"\";display:block;height:0;left:0;position:absolute;width:100%}.gbsbis .gbsbt{background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.2)),to(rgba(0,0,0,0)));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:-moz-linear-gradient(top,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:-ms-linear-gradient(top,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:-o-linear-gradient(top,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:linear-gradient(top,rgba(0,0,0,.2),rgba(0,0,0,0));height:6px;top:0}.gbsb .gbsbt:after{border-top:1px solid #ebebeb;border-color:rgba(0,0,0,.3);top:0}.gbsb .gbsbb{-webkit-mask-box-image:-webkit-gradient(linear,left top,right top,color-stop(0,rgba(0,0,0,.1)),color-stop(.5,rgba(0,0,0,.8)),color-stop(1,rgba(0,0,0,.1)));background:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.2)),to(rgba(0,0,0,0)));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:-moz-linear-gradient(bottom,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:-ms-linear-gradient(bottom,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:-o-linear-gradient(bottom,rgba(0,0,0,.2),rgba(0,0,0,0));background-image:linear-gradient(bottom,rgba(0,0,0,.2),rgba(0,0,0,0));bottom:0;height:4px}.gbsb .gbsbb:after{border-bottom:1px solid #ebebeb;border-color:rgba(0,0,0,.3);bottom:0}\n</style><style>body,td,a,p,.h{font-family:arial,sans-serif}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}.h{color:#36c}.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{display: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}.lsbb{display:block}.ftl,#fll a{display:inline-block;margin:0 12px}.lsb{background:url(/images/nav_logo229.png) 0 -261px 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}</style><script>(function(){try{var e=this;var aa=function(a,b,c,d){d=d||{};d._sn=[\"cfg\",b,c].join(\".\");window.gbar.logger.ml(a,d)};var h=window.gbar=window.gbar||{},k=window.gbar.i=window.gbar.i||{},ba;function _tvn(a,b){var c=parseInt(a,10);return isNaN(c)?b:c}function _tvf(a,b){var c=parseFloat(a);return isNaN(c)?b:c}function _tvv(a){return!!a}function p(a,b,c){(c||h)[a]=b}h.bv={n:_tvn(\"2\",0),r:\"\",f:\".66.41.\",e:\"1300102,3700289,3700400\",m:_tvn(\"1\",1)};\nfunction ca(a,b,c){var d=\"on\"+b;if(a.addEventListener)a.addEventListener(b,c,!1);else if(a.attachEvent)a.attachEvent(d,c);else{var f=a[d];a[d]=function(){var a=f.apply(this,arguments),b=c.apply(this,arguments);return void 0==a?b:void 0==b?a:b&&a}}}var da=function(a){return function(){return h.bv.m==a}},ea=da(1),fa=da(2);p(\"sb\",ea);p(\"kn\",fa);k.a=_tvv;k.b=_tvf;k.c=_tvn;k.i=aa;var q=window.gbar.i.i;var t=function(){},u=function(){},ia=function(a){var b=new Image,c=ga;b.onerror=b.onload=b.onabort=function(){try{delete ha[c]}catch(d){}};ha[c]=b;b.src=a;ga=c+1},ha=[],ga=0;p(\"logger\",{il:u,ml:t,log:ia});var v=window.gbar.logger;var y={},ja={},A=[],ka=k.b(\"0.1\",.1),la=k.a(\"1\",!0),ma=function(a,b){A.push([a,b])},na=function(a,b){y[a]=b},oa=function(a){return a in y},B={},C=function(a,b){B[a]||(B[a]=[]);B[a].push(b)},D=function(a){C(\"m\",a)},pa=function(a,b){var c=document.createElement(\"script\");c.src=a;c.async=la;Math.random()<ka&&(c.onerror=function(){c.onerror=null;t(Error(\"Bundle load failed: name=\"+(b||\"UNK\")+\" url=\"+a))});(document.getElementById(\"xjsc\")||document.getElementsByTagName(\"body\")[0]||\ndocument.getElementsByTagName(\"head\")[0]).appendChild(c)},F=function(a){for(var b=0,c;(c=A[b])&&c[0]!=a;++b);!c||c[1].l||c[1].s||(c[1].s=!0,qa(2,a),c[1].url&&pa(c[1].url,a),c[1].libs&&E&&E(c[1].libs))},ra=function(a){C(\"gc\",a)},sa=null,ta=function(a){sa=a},qa=function(a,b,c){if(sa){a={t:a,b:b};if(c)for(var d in c)a[d]=c[d];try{sa(a)}catch(f){}}};p(\"mdc\",y);p(\"mdi\",ja);p(\"bnc\",A);p(\"qGC\",ra);p(\"qm\",D);p(\"qd\",B);p(\"lb\",F);p(\"mcf\",na);p(\"bcf\",ma);p(\"aq\",C);p(\"mdd\",\"\");\np(\"has\",oa);p(\"trh\",ta);p(\"tev\",qa);if(k.a(\"1\")){var ua=k.a(\"1\"),va=k.a(\"\"),wa=k.a(\"\"),xa=window.gapi={},ya=function(a,b){var c=function(){h.dgl(a,b)};ua?D(c):(C(\"gl\",c),F(\"gl\"))},za={},Aa=function(a){a=a.split(\":\");for(var b;(b=a.pop())&&za[b];);return!b},E=function(a){function b(){for(var b=a.split(\":\"),d=0,f;f=b[d];++d)za[f]=1;for(b=0;d=A[b];++b)d=d[1],(f=d.libs)&&!d.l&&d.i&&Aa(f)&&d.i()}h.dgl(a,b)},H=window.___jsl={};H.h=\"m;/_/scs/abc-static/_/js/k=gapi.gapi.en.vDZ5fWV2Wn4.O/m=__features__/rt=j/d=1/rs=AHpOoo_3e5RFIZgALJe_c8WXopU_RyULxg\";H.ms=\"https://apis.google.com\";\nH.m=\"\";H.l=[];ua||A.push([\"gl\",{url:\"//ssl.gstatic.com/gb/js/abc/glm_e7bb39a7e1a24581ff4f8d199678b1b9.js\"}]);var Ba={pu:va,sh:\"\",si:wa,hl:\"en\"};y.gl=Ba;p(\"load\",ya,xa);p(\"dgl\",ya);p(\"agl\",Aa);k.o=ua};var Ca=k.b(\"0.1\",.001),Da=0;\nfunction _mlToken(a,b){try{if(1>Da){Da++;var c,d=a,f=b||{},g=encodeURIComponent,l=[\"//www.google.com/gen_204?atyp=i&zx=\",(new Date).getTime(),\"&jexpid=\",g(\"28834\"),\"&srcpg=\",g(\"prop=1\"),\"&jsr=\",Math.round(1/Ca),\"&ogev=\",g(\"JPwIWP3tN4uOsgGT1Y6QCg\"),\"&ogf=\",h.bv.f,\"&ogrp=\",g(\"\"),\"&ogv=\",g(\"1476411960.0\"),\"&oggv=\"+g(\"es_plusone_gc_20161013.0_p0\"),\"&ogd=\",g(\"co.uk\"),\"&ogc=\",g(\"GBR\"),\"&ogl=\",g(\"en\")];f._sn&&(f._sn=\n\"og.\"+f._sn);for(var n in f)l.push(\"&\"),l.push(g(n)),l.push(\"=\"),l.push(g(f[n]));l.push(\"&emsg=\");l.push(g(d.name+\":\"+d.message));var m=l.join(\"\");Ea(m)&&(m=m.substr(0,2E3));c=m;var r=window.gbar.logger._aem(a,c);ia(r)}}catch(z){}}var Ea=function(a){return 2E3<=a.length},Fa=function(a,b){return b};function Ga(a){t=a;p(\"_itl\",Ea,v);p(\"_aem\",Fa,v);p(\"ml\",t,v);a={};y.er=a}k.a(\"\")?Ga(function(a){throw a;}):k.a(\"1\")&&Math.random()<Ca&&Ga(_mlToken);var _E=\"left\",Ha=k.a(\"\"),J=function(a,b){var c=a.className;I(a,b)||(a.className+=(\"\"!=c?\" \":\"\")+b)},K=function(a,b){var c=a.className,d=new RegExp(\"\\\\s?\\\\b\"+b+\"\\\\b\");c&&c.match(d)&&(a.className=c.replace(d,\"\"))},I=function(a,b){var c=new RegExp(\"\\\\b\"+b+\"\\\\b\"),d=a.className;return!(!d||!d.match(c))},Ia=function(a,b){I(a,b)?K(a,b):J(a,b)},Ja=function(a,b){a[b]=function(c){var d=arguments;h.qm(function(){a[b].apply(this,d)})}},Ka=function(a){a=[\"//www.gstatic.com\",\n\"/og/_/js/d=1/k=\",\"og.og2.en_US.1ClIDIY4zJw.O\",\"/rt=j/m=\",a,\"/rs=\",\"AA2YrTv5zYh5FMM6GOq1YveoQlMzLAxYeA\"];Ha&&a.push(\"?host=www.gstatic.com&bust=og.og2.en_US._M6MGXFwfr4.DU\");a=a.join(\"\");pa(a)};p(\"ca\",J);p(\"cr\",K);p(\"cc\",I);k.k=J;k.l=K;k.m=I;k.n=Ia;k.p=Ka;k.q=Ja;var La=[\"gb_71\",\"gb_155\"],Ma;function Na(a){Ma=a}function Oa(a){var b=Ma&&!a.href.match(/.*\\/accounts\\/ClearSID[?]/)&&encodeURIComponent(Ma());b&&(a.href=a.href.replace(/([?&]continue=)[^&]*/,\"$1\"+b))}function Pa(a){window.gApplication&&(a.href=window.gApplication.getTabUrl(a.href))}function Qa(a){try{var b=(document.forms[0].q||\"\").value;b&&(a.href=a.href.replace(/([?&])q=[^&]*|$/,function(a,d){return(d||\"&\")+\"q=\"+encodeURIComponent(b)}))}catch(c){q(c,\"sb\",\"pq\")}}\nvar Ra=function(){for(var a=[],b=0,c;c=La[b];++b)(c=document.getElementById(c))&&a.push(c);return a},Sa=function(){var a=Ra();return 0<a.length?a[0]:null},Ta=function(){return document.getElementById(\"gb_70\")},L={},M={},Ua={},N={},O=void 0,Za=function(a,b){try{var c=document.getElementById(\"gb\");J(c,\"gbpdjs\");P();Va(document.getElementById(\"gb\"))&&J(c,\"gbrtl\");if(b&&b.getAttribute){var d=b.getAttribute(\"aria-owns\");if(d.length){var f=document.getElementById(d);if(f){var g=b.parentNode;if(O==d)O=void 0,\nK(g,\"gbto\");else{if(O){var l=document.getElementById(O);if(l&&l.getAttribute){var n=l.getAttribute(\"aria-owner\");if(n.length){var m=document.getElementById(n);m&&m.parentNode&&K(m.parentNode,\"gbto\")}}}Wa(f)&&Xa(f);O=d;J(g,\"gbto\")}}}}D(function(){h.tg(a,b,!0)});Ya(a)}catch(r){q(r,\"sb\",\"tg\")}},$a=function(a){D(function(){h.close(a)})},ab=function(a){D(function(){h.rdd(a)})},Va=function(a){var b,c=document.defaultView;c&&c.getComputedStyle?(a=c.getComputedStyle(a,\"\"))&&(b=a.direction):b=a.currentStyle?\na.currentStyle.direction:a.style.direction;return\"rtl\"==b},cb=function(a,b,c){if(a)try{var d=document.getElementById(\"gbd5\");if(d){var f=d.firstChild,g=f.firstChild,l=document.createElement(\"li\");l.className=b+\" gbmtc\";l.id=c;a.className=\"gbmt\";l.appendChild(a);if(g.hasChildNodes()){c=[[\"gbkc\"],[\"gbf\",\"gbe\",\"gbn\"],[\"gbkp\"],[\"gbnd\"]];for(var d=0,n=g.childNodes.length,f=!1,m=-1,r=0,z;z=c[r];r++){for(var T=0,G;G=z[T];T++){for(;d<n&&I(g.childNodes[d],G);)d++;if(G==b){g.insertBefore(l,g.childNodes[d]||\nnull);f=!0;break}}if(f){if(d+1<g.childNodes.length){var U=g.childNodes[d+1];I(U.firstChild,\"gbmh\")||bb(U,z)||(m=d+1)}else if(0<=d-1){var V=g.childNodes[d-1];I(V.firstChild,\"gbmh\")||bb(V,z)||(m=d)}break}0<d&&d+1<n&&d++}if(0<=m){var w=document.createElement(\"li\"),x=document.createElement(\"div\");w.className=\"gbmtc\";x.className=\"gbmt gbmh\";w.appendChild(x);g.insertBefore(w,g.childNodes[m])}h.addHover&&h.addHover(a)}else g.appendChild(l)}}catch(Ab){q(Ab,\"sb\",\"al\")}},bb=function(a,b){for(var c=b.length,\nd=0;d<c;d++)if(I(a,b[d]))return!0;return!1},db=function(a,b,c){cb(a,b,c)},eb=function(a,b){cb(a,\"gbe\",b)},fb=function(){D(function(){h.pcm&&h.pcm()})},gb=function(){D(function(){h.pca&&h.pca()})},hb=function(a,b,c,d,f,g,l,n,m,r){D(function(){h.paa&&h.paa(a,b,c,d,f,g,l,n,m,r)})},ib=function(a,b){L[a]||(L[a]=[]);L[a].push(b)},jb=function(a,b){M[a]||(M[a]=[]);M[a].push(b)},kb=function(a,b){Ua[a]=b},lb=function(a,b){N[a]||(N[a]=[]);N[a].push(b)},Ya=function(a){a.preventDefault&&a.preventDefault();a.returnValue=\n!1;a.cancelBubble=!0},mb=null,Xa=function(a,b){P();if(a){nb(a,\"Opening&hellip;\");Q(a,!0);var c=\"undefined\"!=typeof b?b:1E4,d=function(){ob(a)};mb=window.setTimeout(d,c)}},pb=function(a){P();a&&(Q(a,!1),nb(a,\"\"))},ob=function(a){try{P();var b=a||document.getElementById(O);b&&(nb(b,\"This service is currently unavailable.%1$sPlease try again later.\",\"%1$s\"),Q(b,!0))}catch(c){q(c,\"sb\",\"sdhe\")}},nb=function(a,b,c){if(a&&b){var d=Wa(a);if(d){if(c){d.innerHTML=\"\";b=b.split(c);c=0;for(var f;f=b[c];c++){var g=document.createElement(\"div\");\ng.innerHTML=f;d.appendChild(g)}}else d.innerHTML=b;Q(a,!0)}}},Q=function(a,b){var c=void 0!==b?b:!0;c?J(a,\"gbmsgo\"):K(a,\"gbmsgo\")},Wa=function(a){for(var b=0,c;c=a.childNodes[b];b++)if(I(c,\"gbmsg\"))return c},P=function(){mb&&window.clearTimeout(mb)},qb=function(a){var b=\"inner\"+a;a=\"offset\"+a;return window[b]?window[b]:document.documentElement&&document.documentElement[a]?document.documentElement[a]:0},rb=function(){return!1},sb=function(){return!!O};p(\"so\",Sa);p(\"sos\",Ra);p(\"si\",Ta);p(\"tg\",Za);\np(\"close\",$a);p(\"rdd\",ab);p(\"addLink\",db);p(\"addExtraLink\",eb);p(\"pcm\",fb);p(\"pca\",gb);p(\"paa\",hb);p(\"ddld\",Xa);p(\"ddrd\",pb);p(\"dderr\",ob);p(\"rtl\",Va);p(\"op\",sb);p(\"bh\",L);p(\"abh\",ib);p(\"dh\",M);p(\"adh\",jb);p(\"ch\",N);p(\"ach\",lb);p(\"eh\",Ua);p(\"aeh\",kb);ba=k.a(\"\")?Pa:Qa;p(\"qs\",ba);p(\"setContinueCb\",Na);p(\"pc\",Oa);p(\"bsy\",rb);k.d=Ya;k.j=qb;var tb={};y.base=tb;A.push([\"m\",{url:\"//ssl.gstatic.com/gb/js/sem_28ccd69532c2390ae661f0e31ef881fd.js\"}]);h.sg={c:\"1\"};p(\"wg\",{rg:{}});var ub={tiw:k.c(\"15000\",0),tie:k.c(\"30000\",0)};y.wg=ub;var vb={thi:k.c(\"10000\",0),thp:k.c(\"180000\",0),tho:k.c(\"5000\",0),tet:k.b(\"0.5\",0)};y.wm=vb;if(k.a(\"1\")){var wb=k.a(\"\");A.push([\"gc\",{auto:wb,url:\"//ssl.gstatic.com/gb/js/abc/gci_91f30755d6a6b787dcc2a4062e6e9824.js\",libs:\"googleapis.client:plusone:gapi.iframes\"}]);var xb={version:\"gci_91f30755d6a6b787dcc2a4062e6e9824.js\",index:\"\",lang:\"en\"};y.gc=xb;var yb=function(a){window.googleapis&&window.iframes?a&&a():(a&&ra(a),F(\"gc\"))};p(\"lGC\",yb);k.a(\"1\")&&p(\"lPWF\",yb)};window.__PVT=\"\";if(k.a(\"1\")&&k.a(\"1\")){var zb=function(a){yb(function(){C(\"pw\",a);F(\"pw\")})};p(\"lPW\",zb);A.push([\"pw\",{url:\"//ssl.gstatic.com/gb/js/abc/pwm_45f73e4df07a0e388b0fa1f3d30e7280.js\"}]);var Bb=[],Cb=function(a){Bb[0]=a},Db=function(a,b){var c=b||{};c._sn=\"pw\";t(a,c)},Eb={signed:Bb,elog:Db,base:\"https://plusone.google.com/u/0\",loadTime:(new Date).getTime()};y.pw=Eb;var Fb=function(a,b){for(var c=b.split(\".\"),d=function(){var b=arguments;a(function(){for(var a=h,d=0,f=c.length-1;d<f;++d)a=a[c[d]];a[c[d]].apply(a,b)})},f=h,g=0,l=c.length-1;g<\nl;++g)f=f[c[g]]=f[c[g]]||{};return f[c[g]]=d};Fb(zb,\"pw.clk\");Fb(zb,\"pw.hvr\");p(\"su\",Cb,h.pw)};var Gb=[1,2,3,4,5,6,9,10,11,13,14,28,29,30,34,35,37,38,39,40,41,42,43,48,49,500];var Hb=k.b(\"0.001\",1E-4),Ib=k.b(\"1\",1),Jb=!1,Kb=!1;if(k.a(\"1\")){var Lb=Math.random();Lb<Hb&&(Jb=!0);Lb<Ib&&(Kb=!0)}var R=null;\nfunction Mb(a,b){var c=Hb,d=Jb,f;f=a;if(!R){R={};for(var g=0;g<Gb.length;g++){var l=Gb[g];R[l]=!0}}if(f=!!R[f])c=Ib,d=Kb;if(d){var d=encodeURIComponent,n=\"es_plusone_gc_20161013.0_p0\",m;h.rp?(m=h.rp(),m=\"-1\"!=m?m:\"\"):m=\"\";f=(new Date).getTime();var g=d(\"28834\"),l=d(\"JPwIWP3tN4uOsgGT1Y6QCg\"),r=h.bv.f,z=d(\"1\");m=d(m);var c=Math.round(1/c),T=d(\"1476411960.0\"),n=n?\"&oggv=\"+d(n):\"\",G=d(\"co.uk\"),U=d(\"en\"),\nV=d(\"GBR\"),w;w=0;k.a(\"\")&&(w|=1);k.a(\"\")&&(w|=2);k.a(\"\")&&(w|=4);f=[\"//www.google.com/gen_204?atyp=i&zx=\",f,\"&oge=\",a,\"&ogex=\",g,\"&ogev=\",l,\"&ogf=\",r,\"&ogp=\",z,\"&ogrp=\",m,\"&ogsr=\",c,\"&ogv=\",T,n,\"&ogd=\",G,\"&ogl=\",U,\"&ogc=\",V,\"&ogus=\",w];if(b){\"ogw\"in b&&(f.push(\"&ogw=\"+b.ogw),delete b.ogw);var x,g=b,l=[];for(x in g)0!=l.length&&l.push(\",\"),l.push(Nb(x)),l.push(\".\"),l.push(Nb(g[x]));x=l.join(\"\");\"\"!=x&&(f.push(\"&ogad=\"),f.push(d(x)))}ia(f.join(\"\"))}}\nfunction Nb(a){\"number\"==typeof a&&(a+=\"\");return\"string\"==typeof a?a.replace(\".\",\"%2E\").replace(\",\",\"%2C\"):a}u=Mb;p(\"il\",u,v);var Ob={};y.il=Ob;var Pb=function(a,b,c,d,f,g,l,n,m,r){D(function(){h.paa(a,b,c,d,f,g,l,n,m,r)})},Qb=function(){D(function(){h.prm()})},Rb=function(a){D(function(){h.spn(a)})},Sb=function(a){D(function(){h.sps(a)})},Tb=function(a){D(function(){h.spp(a)})},Ub={\"27\":\"//ssl.gstatic.com/gb/images/silhouette_24.png\",\"27\":\"//ssl.gstatic.com/gb/images/silhouette_24.png\",\"27\":\"//ssl.gstatic.com/gb/images/silhouette_24.png\"},Vb=function(a){return(a=Ub[a])||\"//ssl.gstatic.com/gb/images/silhouette_24.png\"},\nWb=function(){D(function(){h.spd()})};p(\"spn\",Rb);p(\"spp\",Tb);p(\"sps\",Sb);p(\"spd\",Wb);p(\"paa\",Pb);p(\"prm\",Qb);ib(\"gbd4\",Qb);\nif(k.a(\"\")){var Xb={d:k.a(\"\"),e:\"\",sanw:k.a(\"\"),p:\"//ssl.gstatic.com/gb/images/silhouette_96.png\",cp:\"1\",xp:k.a(\"1\"),mg:\"%1$s (delegated)\",md:\"%1$s (default)\",mh:\"220\",s:\"1\",pp:Vb,ppl:k.a(\"\"),ppa:k.a(\"\"),\nppm:\"Google+ page\"};y.prf=Xb};var S,Yb,W,Zb,X=0,$b=function(a,b,c){if(a.indexOf)return a.indexOf(b,c);if(Array.indexOf)return Array.indexOf(a,b,c);for(c=null==c?0:0>c?Math.max(0,a.length+c):c;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1},Y=function(a,b){return-1==$b(a,X)?(q(Error(X+\"_\"+b),\"up\",\"caa\"),!1):!0},bc=function(a,b){Y([1,2],\"r\")&&(S[a]=S[a]||[],S[a].push(b),2==X&&window.setTimeout(function(){b(ac(a))},0))},cc=function(a,b,c){if(Y([1],\"nap\")&&c){for(var d=0;d<c.length;d++)Yb[c[d]]=!0;h.up.spl(a,b,\"nap\",c)}},dc=\nfunction(a,b,c){if(Y([1],\"aop\")&&c){if(W)for(var d in W)W[d]=W[d]&&-1!=$b(c,d);else for(W={},d=0;d<c.length;d++)W[c[d]]=!0;h.up.spl(a,b,\"aop\",c)}},ec=function(){try{if(X=2,!Zb){Zb=!0;for(var a in S)for(var b=S[a],c=0;c<b.length;c++)try{b[c](ac(a))}catch(d){q(d,\"up\",\"tp\")}}}catch(d){q(d,\"up\",\"mtp\")}},ac=function(a){if(Y([2],\"ssp\")){var b=!Yb[a];W&&(b=b&&!!W[a]);return b}};Zb=!1;S={};Yb={};W=null;\nvar X=1,fc=function(a){var b=!1;try{b=a.cookie&&a.cookie.match(\"PREF\")}catch(c){}return!b},gc=function(){try{return!!e.localStorage&&\"object\"==typeof e.localStorage}catch(a){return!1}},hc=function(a){return a&&a.style&&a.style.behavior&&\"undefined\"!=typeof a.load},ic=function(a,b,c,d){try{fc(document)||(d||(b=\"og-up-\"+b),gc()?e.localStorage.setItem(b,c):hc(a)&&(a.setAttribute(b,c),a.save(a.id)))}catch(f){f.code!=DOMException.QUOTA_EXCEEDED_ERR&&q(f,\"up\",\"spd\")}},jc=function(a,b,c){try{if(fc(document))return\"\";\nc||(b=\"og-up-\"+b);if(gc())return e.localStorage.getItem(b);if(hc(a))return a.load(a.id),a.getAttribute(b)}catch(d){d.code!=DOMException.QUOTA_EXCEEDED_ERR&&q(d,\"up\",\"gpd\")}return\"\"},kc=function(a,b,c){a.addEventListener?a.addEventListener(b,c,!1):a.attachEvent&&a.attachEvent(\"on\"+b,c)},lc=function(a){for(var b=0,c;c=a[b];b++){var d=h.up;c=c in d&&d[c];if(!c)return!1}return!0},mc=function(a,b){try{if(fc(a))return-1;var c=a.cookie.match(/OGPC=([^;]*)/);if(c&&c[1]){var d=c[1].match(new RegExp(\"\\\\b\"+\nb+\"-([0-9]+):\"));if(d&&d[1])return parseInt(d[1],10)}}catch(f){f.code!=DOMException.QUOTA_EXCEEDED_ERR&&q(f,\"up\",\"gcc\")}return-1};p(\"up\",{r:bc,nap:cc,aop:dc,tp:ec,ssp:ac,spd:ic,gpd:jc,aeh:kc,aal:lc,gcc:mc});var Z=function(a,b){a[b]=function(c){var d=arguments;h.qm(function(){a[b].apply(this,d)})}};Z(h.up,\"sl\");Z(h.up,\"si\");Z(h.up,\"spl\");Z(h.up,\"dpc\");Z(h.up,\"iic\");h.mcf(\"up\",{sp:k.b(\"0.01\",1),tld:\"co.uk\",prid:\"1\"});function nc(){function a(){for(var b;(b=g[l++])&&\"m\"!=b[0]&&!b[1].auto;);b&&(qa(2,b[0]),b[1].url&&pa(b[1].url,b[0]),b[1].libs&&E&&E(b[1].libs));l<g.length&&setTimeout(a,0)}function b(){0<f--?setTimeout(b,0):a()}var c=k.a(\"1\"),d=k.a(\"\"),f=3,g=A,l=0,n=window.gbarOnReady;if(n)try{n()}catch(m){q(m,\"ml\",\"or\")}d?p(\"ldb\",a):c?ca(window,\"load\",b):b()}p(\"rdl\",nc);}catch(e){window.gbar&&gbar.logger&&gbar.logger.ml(e,{\"_sn\":\"cfg.init\"});}})();\n(function(){try{var a=window.gbar;a.mcf(\"pm\",{p:\"\"});}catch(e){window.gbar&&gbar.logger&&gbar.logger.ml(e,{\"_sn\":\"cfg.init\"});}})();\n(function(){try{var a=window.gbar;a.mcf(\"mm\",{s:\"1\"});}catch(e){window.gbar&&gbar.logger&&gbar.logger.ml(e,{\"_sn\":\"cfg.init\"});}})();\n(function(){try{var d=window.gbar.i.i;var e=window.gbar;var f=e.i;var g=f.c(\"1\",0),h=/\\bgbmt\\b/,k=function(a){try{var b=document.getElementById(\"gb_\"+g),c=document.getElementById(\"gb_\"+a);b&&f.l(b,h.test(b.className)?\"gbm0l\":\"gbz0l\");c&&f.k(c,h.test(c.className)?\"gbm0l\":\"gbz0l\")}catch(l){d(l,\"sj\",\"ssp\")}g=a},m=e.qs,n=function(a){var b;b=a.href;var c=window.location.href.match(/.*?:\\/\\/[^\\/]*/)[0],c=new RegExp(\"^\"+c+\"/search\\\\?\");(b=c.test(b))&&!/(^|\\\\?|&)ei=/.test(a.href)&&(b=window.google)&&b.kEXPI&&(a.href+=\"&ei=\"+b.kEI)},p=function(a){m(a);\nn(a)},q=function(){if(window.google&&window.google.sn){var a=/.*hp$/;return a.test(window.google.sn)?\"\":\"1\"}return\"-1\"};e.rp=q;e.slp=k;e.qs=p;e.qsi=n;}catch(e){window.gbar&&gbar.logger&&gbar.logger.ml(e,{\"_sn\":\"cfg.init\"});}})();\n(function(){try{var a=this;var b=window.gbar;var c=b.i;var d=c.a,e=c.c,f={cty:\"GBR\",cv:\"1476411960\",dbg:d(\"\"),ecv:\"0\",ei:e(\"JPwIWP3tN4uOsgGT1Y6QCg\"),ele:d(\"1\"),esr:e(\"0.1\"),evts:[\"mousedown\",\"touchstart\",\"touchmove\",\"wheel\",\"keydown\"],gbl:\"es_plusone_gc_20161013.0_p0\",hd:\"co.uk\",hl:\"en\",irp:d(\"\"),pid:e(\"1\"),\nsnid:e(\"28834\"),to:e(\"300000\"),u:e(\"\"),vf:\".66.41.\"},g=f,h=[\"bndcfg\"],k=a;h[0]in k||!k.execScript||k.execScript(\"var \"+h[0]);for(var l;h.length&&(l=h.shift());)h.length||void 0===g?k=k[l]?k[l]:k[l]={}:k[l]=g;}catch(e){window.gbar&&gbar.logger&&gbar.logger.ml(e,{\"_sn\":\"cfg.init\"});}})();\n(function(){try{window.gbar.rdl();}catch(e){window.gbar&&gbar.logger&&gbar.logger.ml(e,{\"_sn\":\"cfg.init\"});}})();\n</script><link href=\"/images/branding/product/ico/googleg_lodp.ico\" rel=\"shortcut icon\"></head><body bgcolor=\"#fff\"><script>(function(){var src='/images/nav_logo229.png';var iesg=false;document.body.onload = function(){window.n && window.n();if (document.images){new Image().src=src;}\nif (!iesg){document.f&&document.f.q.focus();document.gbqf&&document.gbqf.q.focus();}\n}\n})();</script><div id=\"mngb\"> <div id=gb><script>window.gbar&&gbar.eli&&gbar.eli()</script><div id=gbw><div id=gbz><span class=gbtcb></span><ol id=gbzc class=gbtc><li class=gbt><a onclick=gbar.logger.il(1,{t:1}); class=\"gbzt gbz0l gbp1\" id=gb_1 href=\"https://www.google.co.uk/webhp?tab=ww\"><span class=gbtb2></span><span class=gbts>Search</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:2}); class=gbzt id=gb_2 href=\"http://www.google.co.uk/imghp?hl=en&tab=wi\"><span class=gbtb2></span><span class=gbts>Images</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:8}); class=gbzt id=gb_8 href=\"http://maps.google.co.uk/maps?hl=en&tab=wl\"><span class=gbtb2></span><span class=gbts>Maps</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:78}); class=gbzt id=gb_78 href=\"https://play.google.com/?hl=en&tab=w8\"><span class=gbtb2></span><span class=gbts>Play</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:36}); class=gbzt id=gb_36 href=\"http://www.youtube.com/?gl=GB&tab=w1\"><span class=gbtb2></span><span class=gbts>YouTube</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:5}); class=gbzt id=gb_5 href=\"http://news.google.co.uk/nwshp?hl=en&tab=wn\"><span class=gbtb2></span><span class=gbts>News</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:23}); class=gbzt id=gb_23 href=\"https://mail.google.com/mail/?tab=wm\"><span class=gbtb2></span><span class=gbts>Gmail</span></a></li><li class=gbt><a onclick=gbar.logger.il(1,{t:49}); class=gbzt id=gb_49 href=\"https://drive.google.com/?tab=wo\"><span class=gbtb2></span><span class=gbts>Drive</span></a></li><li class=gbt><a class=gbgt id=gbztm href=\"https://www.google.co.uk/intl/en/options/\" onclick=\"gbar.tg(event,this)\" aria-haspopup=true aria-owns=gbd><span class=gbtb2></span><span id=gbztms class=\"gbts gbtsa\"><span id=gbztms1>More</span><span class=gbma></span></span></a><div class=gbm id=gbd aria-owner=gbztm><div id=gbmmb class=\"gbmc gbsb gbsbis\"><ol id=gbmm class=\"gbmcc gbsbic\"><li class=gbmtc><a onclick=gbar.logger.il(1,{t:24}); class=gbmt id=gb_24 href=\"https://www.google.com/calendar?tab=wc\">Calendar</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:51}); class=gbmt id=gb_51 href=\"http://translate.google.co.uk/?hl=en&tab=wT\">Translate</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:10}); class=gbmt id=gb_10 href=\"https://books.google.co.uk/bkshp?hl=en&tab=wp\">Books</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:6}); class=gbmt id=gb_6 href=\"http://www.google.co.uk/shopping?hl=en&tab=wf\">Shopping</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:30}); class=gbmt id=gb_30 href=\"http://www.blogger.com/?tab=wj\">Blogger</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:27}); class=gbmt id=gb_27 href=\"http://www.google.co.uk/finance?tab=we\">Finance</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:31}); class=gbmt id=gb_31 href=\"https://photos.google.com/?tab=wq&pageId=none\">Photos</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:12}); class=gbmt id=gb_12 href=\"http://video.google.co.uk/?hl=en&tab=wv\">Videos</a></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:25}); class=gbmt id=gb_25 href=\"https://docs.google.com/document/?usp=docs_alc\">Docs</a></li><li class=gbmtc><div class=\"gbmt gbmh\"></div></li><li class=gbmtc><a onclick=gbar.logger.il(1,{t:66}); href=\"https://www.google.co.uk/intl/en/options/\" class=gbmt>Even more &raquo;</a></li></ol><div class=gbsbt></div><div class=gbsbb></div></div></div></li></ol></div><div id=gbg><h2 class=gbxx>Account Options</h2><span class=gbtcb></span><ol class=gbtc><li class=gbt><a target=_top href=\"https://accounts.google.com/ServiceLogin?hl=en&passive=true&continue=http://www.google.co.uk/\" onclick=\"gbar.logger.il(9,{l:'i'})\" id=gb_70 class=gbgt><span class=gbtb2></span><span id=gbgs4 class=gbts><span id=gbi4s1>Sign in</span></span></a></li><li class=\"gbt gbtb\"><span class=gbts></span></li><li class=gbt><a class=gbgt id=gbg5 href=\"http://www.google.co.uk/preferences?hl=en\" title=\"Options\" onclick=\"gbar.tg(event,this)\" aria-haspopup=true aria-owns=gbd5><span class=gbtb2></span><span id=gbgs5 class=gbts><span id=gbi5></span></span></a><div class=gbm id=gbd5 aria-owner=gbg5><div class=gbmc><ol id=gbom class=gbmcc><li class=\"gbkc gbmtc\"><a  class=gbmt href=\"/preferences?hl=en\">Search settings</a></li><li class=gbmtc><div class=\"gbmt gbmh\"></div></li><li class=\"gbkp gbmtc\"><a class=gbmt href=\"http://www.google.co.uk/history/optout?hl=en\">Web History</a></li></ol></div></div></li></ol></div></div><div id=gbx3></div><div id=gbx4></div><script>window.gbar&&gbar.elp&&gbar.elp()</script></div> </div><center><br clear=\"all\" id=\"lgpd\"><div id=\"lga\"><div style=\"padding:28px 0 3px\"><div style=\"height:110px;width:276px;background:url(/images/branding/googlelogo/1x/googlelogo_white_background_color_272x92dp.png) no-repeat\" title=\"Google\" align=\"left\" id=\"hplogo\" onload=\"window.lol&&lol()\"><div style=\"color:#777;font-size:16px;font-weight:bold;position:relative;top:70px;left:218px\" nowrap=\"\">UK</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=\"ie\" value=\"ISO-8859-1\" type=\"hidden\"><input value=\"en-GB\" name=\"hl\" type=\"hidden\"><input name=\"source\" type=\"hidden\" value=\"hp\"><input name=\"biw\" type=\"hidden\"><input name=\"bih\" type=\"hidden\"><div class=\"ds\" style=\"height:32px;margin:4px 0\"><input style=\"color:#000;margin:0;padding:5px 8px 0 6px;vertical-align:top\" autocomplete=\"off\" class=\"lst\" value=\"\" title=\"Google Search\" maxlength=\"2048\" name=\"q\" size=\"57\"></div><br style=\"line-height:0\"><span class=\"ds\"><span class=\"lsbb\"><input class=\"lsb\" value=\"Google Search\" name=\"btnG\" type=\"submit\"></span></span><span class=\"ds\"><span class=\"lsbb\"><input class=\"lsb\" value=\"I'm Feeling Lucky\" name=\"btnI\" onclick=\"if(this.form.q.value)this.checked=1; else top.location='/doodles/'\" type=\"submit\"></span></span></td><td class=\"fl sblc\" align=\"left\" nowrap=\"\" width=\"25%\"><a href=\"/advanced_search?hl=en-GB&amp;authuser=0\">Advanced search</a><a href=\"/language_tools?hl=en-GB&amp;authuser=0\">Language tools</a></td></tr></table><input id=\"gbv\" name=\"gbv\" type=\"hidden\" value=\"1\"><script>(function(){var a,b=\"1\";if(document&&document.getElementById)if(\"undefined\"!=typeof XMLHttpRequest)b=\"2\";else if(\"undefined\"!=typeof ActiveXObject){var c,d,e=[\"MSXML2.XMLHTTP.6.0\",\"MSXML2.XMLHTTP.3.0\",\"MSXML2.XMLHTTP\",\"Microsoft.XMLHTTP\"];for(c=0;d=e[c++];)try{new ActiveXObject(d),b=\"2\"}catch(h){}}a=b;if(\"2\"==a&&-1==location.search.indexOf(\"&gbv=2\")){var f=google.gbvu,g=document.getElementById(\"gbv\");g&&(g.value=a);f&&window.setTimeout(function(){location.href=f},0)};})();</script></form><div id=\"gac_scont\"></div><div style=\"font-size:83%;min-height:3.5em\"><br><div id=\"prm\"><style>.szppmdbYutt__middle-slot-promo{font-size:small;margin-bottom:32px}.szppmdbYutt__middle-slot-promo a._uFi{display:inline-block;text-decoration:none}.szppmdbYutt__middle-slot-promo img{border:none;margin-right:5px;vertical-align:middle}.szppmdbYutt__middle-slot-promo ._vFi{color:red}</style><div class=\"szppmdbYutt__middle-slot-promo r-izohXAhqfqNg\" jsl=\"$t t-Gza07Ho9En4;$x 0;\" data-ved=\"0ahUKEwifpajL8enPAhWI3CwKHZ5_C1wQnIcBCAQ\">Introducing <a class=\"_XIi\" href=\"https://www.google.com/url?q=https://madeby.google.com/intl/en_uk/phone/%3Futm_source%3Dhp%26utm_medium%3DHPP_link%26utm_term%3Dall%26utm_campaign%3Doo_ph_pmos:os_enuk&amp;source=hpp&amp;id=19000912&amp;ct=3&amp;usg=AFQjCNGAvQDYYz7vptZmk983-wOMtgKHiA&amp;sa=X&amp;ved=0ahUKEwifpajL8enPAhWI3CwKHZ5_C1wQ8IcBCAU\" rel=\"nofollow\">Pixel, phone by Google</a>. Available now.</div></div></div><span id=\"footer\"><div style=\"font-size:10pt\"><div style=\"margin:19px auto;text-align:center\" id=\"fll\"><a href=\"/intl/en/ads/\">Advertising Programmes</a><a href=\"/services/\">Business Solutions</a><a href=\"https://plus.google.com/103583604759580854844\" rel=\"publisher\">+Google</a><a href=\"/intl/en/about.html\">About Google</a><a href=\"http://www.google.co.uk/setprefdomain?prefdom=US&amp;sig=__JvsH1okuD18vmRzOKzlArWmJYk4%3D\" id=\"fehl\">Google.com</a></div></div><p style=\"color:#767676;font-size:8pt\">&copy; 2016 - <a href=\"/intl/en/policies/privacy/\">Privacy</a> - <a href=\"/intl/en/policies/terms/\">Terms</a></p></span></center><script>(function(){window.google.cdo={height:0,width:0};(function(){var a=window.innerWidth,b=window.innerHeight;if(!a||!b)var c=window.document,d=\"CSS1Compat\"==c.compatMode?c.documentElement:c.body,a=d.clientWidth,b=d.clientHeight;a&&b&&(a!=google.cdo.width||b!=google.cdo.height)&&google.log(\"\",\"\",\"/client_204?&atyp=i&biw=\"+a+\"&bih=\"+b+\"&ei=\"+google.kEI);})();})();</script><div id=\"xjsd\"></div><div id=\"xjsi\"><script>(function(){function c(b){window.setTimeout(function(){var a=document.createElement(\"script\");a.src=b;document.getElementById(\"xjsd\").appendChild(a)},0)}google.dljp=function(b,a){google.xjsu=b;c(a)};google.dlj=c;})();(function(){window.google.xjsrm=['mids'];})();if(google.y)google.y.first=[];if(!google.xjs){window._=window._||{};window._._DumpException=function(e){throw e};if(google.timers&&google.timers.load.t){google.timers.load.t.xjsls=new Date().getTime();}google.dljp('/xjs/_/js/k\\x3dxjs.hp.en_US.e4-85eyk8Bs.O/m\\x3dsb_he,d/rt\\x3dj/d\\x3d1/t\\x3dzcms/rs\\x3dACT90oGwhtLZKDuRRfajPNxXQ_iRSPiqWw','/xjs/_/js/k\\x3dxjs.hp.en_US.e4-85eyk8Bs.O/m\\x3dsb_he,d/rt\\x3dj/d\\x3d1/t\\x3dzcms/rs\\x3dACT90oGwhtLZKDuRRfajPNxXQ_iRSPiqWw');google.xjs=1;}google.pmc={\"sb_he\":{\"agen\":true,\"cgen\":true,\"client\":\"heirloom-hp\",\"dh\":true,\"dhqt\":true,\"ds\":\"\",\"fl\":true,\"host\":\"google.co.uk\",\"isbh\":28,\"jam\":0,\"jsonp\":true,\"msgs\":{\"cibl\":\"Clear Search\",\"dym\":\"Did you mean:\",\"lcky\":\"I\\u0026#39;m Feeling Lucky\",\"lml\":\"Learn more\",\"oskt\":\"Input tools\",\"psrc\":\"This search was removed from your \\u003Ca href=\\\"/history\\\"\\u003EWeb History\\u003C/a\\u003E\",\"psrl\":\"Remove\",\"sbit\":\"Search by image\",\"srch\":\"Google Search\"},\"nds\":true,\"ovr\":{},\"pq\":\"\",\"refpd\":true,\"rfs\":[],\"scd\":10,\"sce\":5,\"stok\":\"BVRNqq8GcGwwMDzu7UsYzXvJrP4\"},\"d\":{}};google.y.first.push(function(){if(google.med){google.med('init');google.initHistory();google.med('history');}});if(google.j&&google.j.en&&google.j.xi){window.setTimeout(google.j.xi,0);}\n</script></div></body></html>"}}}},{mfa,{hello_handler,handle,2}},{stacktrace,[{hello_handler,handle,2,[{file,"src/hello_handler.erl"},{line,24}]},{cowboy_handler,handler_handle,4,[{file,"src/cowboy_handler.erl"},{line,111}]},{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,442}]}]},{req,[{socket,#Port<0.406>},{transport,ranch_tcp},{connection,keepalive},{pid,<0.512.0>},{method,<<"POST">>},{version,'HTTP/1.1'},{peer,{{10,0,0,1},47451}},{host,<<"10.0.0.103">>},{host_info,undefined},{port,8080},{path,<<"/">>},{path_info,undefined},{qs,<<>>},{qs_vals,undefined},{bindings,[]},{headers,[{<<"host">>,<<"10.0.0.103:8080">>},{<<"connection">>,<<"keep-alive">>},{<<"content-length">>,<<"0">>},{<<"user-agent">>,<<"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/39.0.2171.65 Chrome/39.0.2171.65 Safari/537.36">>},{<<"cache-control">>,<<"no-cache">>},{<<"origin">>,<<"chrome-extension://fdmmgilgnpjigdojojpjoooidkmcomcm">>},{<<"accept">>,<<"*/*">>},{<<"accept-encoding">>,<<"gzip, deflate">>},{<<"accept-language">>,<<"en-GB,en-US;q=0.8,en;q=0.6">>}]},{p_headers,[{<<"connection">>,[<<"keep-alive">>]}]},{cookies,undefined},{meta,[]},{body_state,waiting},{buffer,<<>>},{multipart,undefined},{resp_compress,false},{resp_state,waiting},{resp_headers,[]},{resp_body,<<>>},{onresponse,undefined}]},{state,{state}}],[{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol.erl"},{line,442}]}]}
essen commented 7 years ago

It's a badmatch, that's basic Erlang. It means the right side and left side of = don't match. I don't know what your handler is doing exactly but I'm guessing one of the variable on the left side was already bound and has a different value. Time to go back to the basics for you. :-)

JamesArthurHolland commented 7 years ago

Yes, that was it, variable was already bound. I'm still learning the basics lol. I wrote my first line of Erlang yesterday. I like to jump in at the deep end. Thanks very much for your help, hopefully one day I'll be good enough to contribute to this great project.