Topic: auto return proposal
Author: Andrew Tomazos <andrewtomazos@gmail.com>
Date: Sun, 17 Dec 2017 01:50:57 -0600
Raw View
--f40304361ce87b90200560847edd
Content-Type: text/plain; charset="UTF-8"
It is a common pattern to write a function that:
1. declares a local variable of the return type of the function
2. modifies the local variable
3. returns the local variable
In such cases, the return type must be specified to declare the return type
of the function, and then again to declare the type of the local variable.
Further, a return statement must be provided that names the local variable:
ReturnType f() {
ReturnType result_var;
...
return result_var;
}
I propose introducing a new kind of local variable declaration called an
auto return variable as follows:
ReturnType f() {
auto return result_var;
...
}
Informal specification:
* An auto return variable declaration is equivalent to a variable
declaration that has the same type as the return type of its enclosing
function.
* A function may contain at most one auto return variable, and it may only
appear as a direct substatement of the outermost scope of its function-body.
* A function that contains an auto return variable shall behave as if an
additional return statement (that returns the auto return variable) is
appended to the end of its function-body.
Roughly summarizing: an auto return variable has a type that is deduced
from the return type of the function and is automatically returned at the
end of the function.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAB%2B4KHJCie_iwSm5OQVaHfsutdVJVbBo3ALecvn1ibsKg4uDTQ%40mail.gmail.com.
--f40304361ce87b90200560847edd
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">It is a common pattern to write a function that:<div><br><=
div>1. declares a local variable of the return type of the function</div></=
div><div>2. modifies the local variable</div><div>3. returns the local vari=
able</div><div><br></div><div>In such cases, the return type must be specif=
ied to declare the return type of the function, and then again to declare t=
he type of the local variable.=C2=A0 Further, a return statement must be pr=
ovided that names the local variable:<br></div><div><br></div><div>=C2=A0 =
=C2=A0 ReturnType f() {</div><div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 ReturnType re=
sult_var;</div><div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 ...</div><div>=C2=A0 =C2=A0=
=C2=A0 =C2=A0 return result_var;</div><div>=C2=A0 =C2=A0 }</div><div><br><=
/div><div>I propose introducing a new kind of local variable declaration ca=
lled an auto return variable as follows:</div><div><br></div><div>=C2=A0 =
=C2=A0 ReturnType f() {</div><div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 auto return r=
esult_var;</div><div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 ...</div><div>=C2=A0 =C2=
=A0 }</div><div><br></div><div>Informal specification:</div><div><br></div>=
<div>* An auto return variable declaration is equivalent to a variable decl=
aration that has the same type as the return type of its enclosing function=
..</div><div><br></div><div>* A function may contain at most one auto return=
variable, and it may only appear as a direct substatement of the outermost=
scope of its function-body.</div><div><br></div><div>* A function that con=
tains an auto return variable shall behave as if an additional return state=
ment (that returns the auto return variable) is appended to the end of its =
function-body.</div><div><br></div><div>Roughly summarizing: an auto return=
variable has a type that is deduced from the return type of the function a=
nd is automatically returned at the end of the function.</div><div><br></di=
v></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAB%2B4KHJCie_iwSm5OQVaHfsutdVJVbBo3A=
Lecvn1ibsKg4uDTQ%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">h=
ttps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAB%2B4KHJCie_i=
wSm5OQVaHfsutdVJVbBo3ALecvn1ibsKg4uDTQ%40mail.gmail.com</a>.<br />
--f40304361ce87b90200560847edd--
.
Author: =?UTF-8?Q?Jos=C3=A9_Rodrigo?= <rodrigojose690@gmail.com>
Date: Sun, 17 Dec 2017 00:53:18 -0800 (PST)
Raw View
------=_Part_4016_137356390.1513500798785
Content-Type: text/plain; charset="UTF-8"
I think os better define it as an attribute.
Jabuticaba fun()
{
[[return]] auto j;
}
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/feeb3bb2-7eb4-405a-9aaa-8f09ed7f35aa%40isocpp.org.
------=_Part_4016_137356390.1513500798785--
.
Author: =?UTF-8?Q?Jos=C3=A9_Rodrigo?= <rodrigojose690@gmail.com>
Date: Sun, 17 Dec 2017 00:53:44 -0800 (PST)
Raw View
------=_Part_4169_1004355790.1513500824863
Content-Type: text/plain; charset="UTF-8"
I think os better define it as an attribute.
Jabuticaba fun()
{
[[return]] auto j;
}
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/bb202a4c-dfb1-413e-acd9-83e09f9923f3%40isocpp.org.
------=_Part_4169_1004355790.1513500824863--
.
Author: Nicolas Lesser <blitzrakete@gmail.com>
Date: Sun, 17 Dec 2017 04:46:19 -0800 (PST)
Raw View
------=_Part_4590_528174059.1513514779808
Content-Type: multipart/alternative;
boundary="----=_Part_4591_2122767273.1513514779808"
------=_Part_4591_2122767273.1513514779808
Content-Type: text/plain; charset="UTF-8"
I don't really say what benefits this proposal will get us. Sure, we will
save one line of code, but this will also affect readability. Instead of
looking at the bottom of the function definition, I'd have to look at the
whole definition to find out which variable the function is returning.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/30242172-642a-4803-a7bd-bfeb95b2868a%40isocpp.org.
------=_Part_4591_2122767273.1513514779808
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><div>I don't really say what benefits this proposal wi=
ll get us. Sure, we will save one line of code, but this will also affect r=
eadability. Instead of looking at the bottom of the function definition, I&=
#39;d have to look at the whole definition to find out which variable the f=
unction is returning.</div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/30242172-642a-4803-a7bd-bfeb95b2868a%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/30242172-642a-4803-a7bd-bfeb95b2868a=
%40isocpp.org</a>.<br />
------=_Part_4591_2122767273.1513514779808--
------=_Part_4590_528174059.1513514779808--
.
Author: Sarfaraz Nawaz <nawazzz@gmail.com>
Date: Sun, 17 Dec 2017 19:11:43 +0530
Raw View
--089e082560acefe15205608964ac
Content-Type: text/plain; charset="UTF-8"
Since C++14, the return-type of a function can be inferred from the
return-expression (and that has few use cases). Now you want the opposite:
inferring the return-variable from the return-type? What is the advantage
in doing so, other than you can save few keystrokes?
On Sun, Dec 17, 2017 at 6:16 PM, Nicolas Lesser <blitzrakete@gmail.com>
wrote:
> I don't really say what benefits this proposal will get us. Sure, we will
> save one line of code, but this will also affect readability. Instead of
> looking at the bottom of the function definition, I'd have to look at the
> whole definition to find out which variable the function is returning.
>
> --
> You received this message because you are subscribed to the Google Groups
> "ISO C++ Standard - Future Proposals" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to std-proposals+unsubscribe@isocpp.org.
> To post to this group, send email to std-proposals@isocpp.org.
> To view this discussion on the web visit https://groups.google.com/a/
> isocpp.org/d/msgid/std-proposals/30242172-642a-4803-
> a7bd-bfeb95b2868a%40isocpp.org
> <https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/30242172-642a-4803-a7bd-bfeb95b2868a%40isocpp.org?utm_medium=email&utm_source=footer>
> .
>
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAJ2mQS1dQUrZosPV-WoVeLgMUQhrw%3D0Z3VGS1724j7pjkMGUQw%40mail.gmail.com.
--089e082560acefe15205608964ac
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">Since C++14, the return-type of a function can be inferred=
from the return-expression (and that has few use cases). Now you want the =
opposite: inferring the return-variable from the return-type? What is the a=
dvantage in doing so, other than you can save few keystrokes?</div><div cla=
ss=3D"gmail_extra"><br><div class=3D"gmail_quote">On Sun, Dec 17, 2017 at 6=
:16 PM, Nicolas Lesser <span dir=3D"ltr"><<a href=3D"mailto:blitzrakete@=
gmail.com" target=3D"_blank">blitzrakete@gmail.com</a>></span> wrote:<br=
><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1=
px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div>I don't really sa=
y what benefits this proposal will get us. Sure, we will save one line of c=
ode, but this will also affect readability. Instead of looking at the botto=
m of the function definition, I'd have to look at the whole definition =
to find out which variable the function is returning.</div></div><span clas=
s=3D"">
<p></p>
-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org" target=3D"_=
blank">std-proposals+unsubscribe@<wbr>isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" target=3D"_blank">std-proposals@isocpp.org</a>.<br></span>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/30242172-642a-4803-a7bd-bfeb95b2868a%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter" target=3D"_blank">=
https://groups.google.com/a/<wbr>isocpp.org/d/msgid/std-<wbr>proposals/3024=
2172-642a-4803-<wbr>a7bd-bfeb95b2868a%40isocpp.org</a><wbr>.<br>
</blockquote></div><br></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAJ2mQS1dQUrZosPV-WoVeLgMUQhrw%3D0Z3V=
GS1724j7pjkMGUQw%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">h=
ttps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAJ2mQS1dQUrZos=
PV-WoVeLgMUQhrw%3D0Z3VGS1724j7pjkMGUQw%40mail.gmail.com</a>.<br />
--089e082560acefe15205608964ac--
.
Author: Nicol Bolas <jmckesson@gmail.com>
Date: Sun, 17 Dec 2017 07:13:11 -0800 (PST)
Raw View
------=_Part_12268_1019651839.1513523591632
Content-Type: multipart/alternative;
boundary="----=_Part_12269_1182471584.1513523591632"
------=_Part_12269_1182471584.1513523591632
Content-Type: text/plain; charset="UTF-8"
On Sunday, December 17, 2017 at 8:41:46 AM UTC-5, Sarfaraz Nawaz wrote:
>
> Since C++14, the return-type of a function can be inferred from the
> return-expression (and that has few use cases). Now you want the opposite:
> inferring the return-variable from the return-type? What is the advantage
> in doing so, other than you can save few keystrokes?
>
In two words? Guaranteed elision.
As it currently stands, a function that returns a stack variable in a
return prvalue of the same type *may* elide the copy/move. But it is not
required to do so. We can get guaranteed elision for `return
Typename(...);`, but not for `return some_var;`.
This proposal (though I *really* don't agree with the syntax) can achieve
this.
>
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/74fb3c11-770c-4cfa-8133-5dfdde334a60%40isocpp.org.
------=_Part_12269_1182471584.1513523591632
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">On Sunday, December 17, 2017 at 8:41:46 AM UTC-5, Sarfaraz=
Nawaz wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0;margin-le=
ft: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div dir=3D"ltr">=
Since C++14, the return-type of a function can be inferred from the return-=
expression (and that has few use cases). Now you want the opposite: inferri=
ng the return-variable from the return-type? What is the advantage in doing=
so, other than you can save few keystrokes?</div></blockquote><div><br></d=
iv><div>In two words? Guaranteed elision.</div><div><br></div><div>As it cu=
rrently stands, a function that returns a stack variable in a return prvalu=
e of the same type <i>may</i> elide the copy/move. But it is not required t=
o do so. We can get guaranteed elision for `return Typename(...);`, but not=
for `return some_var;`.</div><div><br></div><div>This proposal (though I <=
i>really</i> don't agree with the syntax) can achieve this.<br></div><b=
lockquote class=3D"gmail_quote" style=3D"margin: 0;margin-left: 0.8ex;borde=
r-left: 1px #ccc solid;padding-left: 1ex;">
</blockquote></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/74fb3c11-770c-4cfa-8133-5dfdde334a60%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/74fb3c11-770c-4cfa-8133-5dfdde334a60=
%40isocpp.org</a>.<br />
------=_Part_12269_1182471584.1513523591632--
------=_Part_12268_1019651839.1513523591632--
.
Author: Nicol Bolas <jmckesson@gmail.com>
Date: Sun, 17 Dec 2017 07:14:29 -0800 (PST)
Raw View
------=_Part_12218_81903264.1513523669859
Content-Type: multipart/alternative;
boundary="----=_Part_12219_394829314.1513523669859"
------=_Part_12219_394829314.1513523669859
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
On Sunday, December 17, 2017 at 3:53:19 AM UTC-5, Jos=C3=A9 Rodrigo wrote:
>
> I think os better define it as an attribute.
>
> Jabuticaba fun()
> {
> [[return]] auto j;
> }
>
No. A program should be able to execute with essentially the same behavior=
=20
if an attribute is removed. That would not be the case here; this is real=
=20
semantics, so it needs to have real syntax to it.
--=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/1c22e46b-8c8a-4710-91c8-547506598923%40isocpp.or=
g.
------=_Part_12219_394829314.1513523669859
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">On Sunday, December 17, 2017 at 3:53:19 AM UTC-5, Jos=C3=
=A9 Rodrigo wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0;marg=
in-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">I think os b=
etter define it as an attribute.<p>Jabuticaba fun()<br>{<br>=C2=A0 =C2=A0 [=
[return]] auto j;<br>}</p></blockquote><div><br></div><div>No. A program sh=
ould be able to execute with essentially the same behavior if an attribute =
is removed. That would not be the case here; this is real semantics, so it =
needs to have real syntax to it.</div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/1c22e46b-8c8a-4710-91c8-547506598923%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/1c22e46b-8c8a-4710-91c8-547506598923=
%40isocpp.org</a>.<br />
------=_Part_12219_394829314.1513523669859--
------=_Part_12218_81903264.1513523669859--
.
Author: Barry Revzin <barry.revzin@gmail.com>
Date: Sun, 17 Dec 2017 07:39:35 -0800 (PST)
Raw View
------=_Part_12331_1722022952.1513525175914
Content-Type: text/plain; charset="UTF-8"
Somebody should just write a proposal already? I'm not sure if anyone from either of the previous threads has?
https://groups.google.com/a/isocpp.org/forum/m/#!msg/std-proposals/sfeZ_rR2BvQ/SqTs4wyeCQAJ
https://groups.google.com/a/isocpp.org/forum/m/#!topic/std-proposals/wdX31-nWSnc/discussion
Fwiw, I think decltype(return) is the right spelling - you need a way to get the type that isn't just a variable declaration.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/4aa30101-b940-4424-b9cc-2e2a508cee8d%40isocpp.org.
------=_Part_12331_1722022952.1513525175914--
.
Author: Nicol Bolas <jmckesson@gmail.com>
Date: Sun, 17 Dec 2017 08:03:32 -0800 (PST)
Raw View
------=_Part_12500_594040957.1513526612282
Content-Type: multipart/alternative;
boundary="----=_Part_12501_251163838.1513526612282"
------=_Part_12501_251163838.1513526612282
Content-Type: text/plain; charset="UTF-8"
On Sunday, December 17, 2017 at 10:39:36 AM UTC-5, Barry Revzin wrote:
>
> Somebody should just write a proposal already? I'm not sure if anyone from
> either of the previous threads has?
>
>
> https://groups.google.com/a/isocpp.org/forum/m/#!msg/std-proposals/sfeZ_rR2BvQ/SqTs4wyeCQAJ
>
>
> https://groups.google.com/a/isocpp.org/forum/m/#!topic/std-proposals/wdX31-nWSnc/discussion
>
> Fwiw, I think decltype(return) is the right spelling - you need a way to
> get the type that isn't just a variable declaration.
>
Off-topic, but wow. Is it me, or is the mobile site not *infinitely*
preferable to the desktop one?
Back on topic, `decltype(return)` is different from what the user here is
asking. `decltype(return)` is merely a means of detecting the type of the
functions return value. What he's doing here has nothing to do with that.
This proposal is about creating a named value that represents the return
value object itself, then being able to manipulate it like any object and
ultimately having it automatically be returned to the user at the end of
the function. `decltype(return)` doesn't do that.
I know that some of those other threads touched on this ability (to name
the return value object), but those were basically side discussions.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/43354b54-1310-4dc6-a575-8c715460985b%40isocpp.org.
------=_Part_12501_251163838.1513526612282
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">On Sunday, December 17, 2017 at 10:39:36 AM UTC-5, Barry R=
evzin wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0;margin-lef=
t: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">Somebody should ju=
st write a proposal already? I'm not sure if anyone from either of the =
previous threads has?<p><a onmousedown=3D"this.href=3D'https://groups.g=
oogle.com/a/isocpp.org/forum/m/#!msg/std-proposals/sfeZ_rR2BvQ/SqTs4wyeCQAJ=
';return true;" onclick=3D"this.href=3D'https://groups.google.com/a=
/isocpp.org/forum/m/#!msg/std-proposals/sfeZ_rR2BvQ/SqTs4wyeCQAJ';retur=
n true;" href=3D"https://groups.google.com/a/isocpp.org/forum/m/#!msg/std-p=
roposals/sfeZ_rR2BvQ/SqTs4wyeCQAJ" target=3D"_blank" rel=3D"nofollow">https=
://groups.google.com/a/<wbr>isocpp.org/forum/m/#!msg/std-<wbr>proposals/sfe=
Z_rR2BvQ/<wbr>SqTs4wyeCQAJ</a></p><p><a onmousedown=3D"this.href=3D'htt=
ps://groups.google.com/a/isocpp.org/forum/m/#!topic/std-proposals/wdX31-nWS=
nc/discussion';return true;" onclick=3D"this.href=3D'https://groups=
..google.com/a/isocpp.org/forum/m/#!topic/std-proposals/wdX31-nWSnc/discussi=
on';return true;" href=3D"https://groups.google.com/a/isocpp.org/forum/=
m/#!topic/std-proposals/wdX31-nWSnc/discussion" target=3D"_blank" rel=3D"no=
follow">https://groups.google.com/a/<wbr>isocpp.org/forum/m/#!topic/<wbr>st=
d-proposals/wdX31-nWSnc/<wbr>discussion</a></p><p>Fwiw, I think decltype(re=
turn) is the right spelling - you need a way to get the type that isn't=
just a variable declaration. </p></blockquote><div><br></div><div>Off-topi=
c, but wow. Is it me, or is the mobile site not <i>infinitely</i> preferabl=
e to the desktop one?</div><div><br></div><div>Back on topic, `decltype(ret=
urn)` is different from what the user here is asking. `decltype(return)` is=
merely a means of detecting the type of the functions return value. What h=
e's doing here has nothing to do with that.</div><div><br></div><div>Th=
is proposal is about creating a named value that represents the return valu=
e object itself, then being able to manipulate it like any object and ultim=
ately having it automatically be returned to the user at the end of the fun=
ction. `decltype(return)` doesn't do that.</div><div><br></div><div>I k=
now that some of those other threads touched on this ability (to name the r=
eturn value object), but those were basically side discussions.</div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/43354b54-1310-4dc6-a575-8c715460985b%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/43354b54-1310-4dc6-a575-8c715460985b=
%40isocpp.org</a>.<br />
------=_Part_12501_251163838.1513526612282--
------=_Part_12500_594040957.1513526612282--
.
Author: "dgutson ." <danielgutson@gmail.com>
Date: Sun, 17 Dec 2017 13:08:26 -0300
Raw View
--001a114794e0ada80d05608b714d
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
El dic. 17, 2017 13:03, "Nicol Bolas" <jmckesson@gmail.com> escribi=C3=B3:
On Sunday, December 17, 2017 at 10:39:36 AM UTC-5, Barry Revzin wrote:
>
> Somebody should just write a proposal already? I'm not sure if anyone fro=
m
> either of the previous threads has?
>
> https://groups.google.com/a/isocpp.org/forum/m/#!msg/std-pro
> posals/sfeZ_rR2BvQ/SqTs4wyeCQAJ
>
> https://groups.google.com/a/isocpp.org/forum/m/#!topic/std-
> proposals/wdX31-nWSnc/discussion
>
> Fwiw, I think decltype(return) is the right spelling - you need a way to
> get the type that isn't just a variable declaration.
>
Off-topic, but wow. Is it me, or is the mobile site not *infinitely*
preferable to the desktop one?
Back on topic, `decltype(return)` is different from what the user here is
asking. `decltype(return)` is merely a means of detecting the type of the
functions return value. What he's doing here has nothing to do with that.
This proposal is about creating a named value that represents the return
value object itself, then being able to manipulate it like any object and
ultimately having it automatically be returned to the user at the end of
the function. `decltype(return)` doesn't do that.
I know that some of those other threads touched on this ability (to name
the return value object), but those were basically side discussions.
Hcc has this long long ago as an extension:
http://gcc.gnu.org/onlinedocs/gcc-2.95.3/gcc_5.html#SEC106
Knowing why it was removed could be useful.
--=20
You received this message because you are subscribed to the Google Groups
"ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/
isocpp.org/d/msgid/std-proposals/43354b54-1310-4dc6-
a575-8c715460985b%40isocpp.org
<https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/43354b54-1310=
-4dc6-a575-8c715460985b%40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter=
>
..
--=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/CAFdMc-3eWsDOtpSiLb5daXVBs085gymnWdJ1un7eXg4tFce=
ieQ%40mail.gmail.com.
--001a114794e0ada80d05608b714d
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"auto"><div><br><div class=3D"gmail_extra"><br><div class=3D"gma=
il_quote">El dic. 17, 2017 13:03, "Nicol Bolas" <<a href=3D"ma=
ilto:jmckesson@gmail.com">jmckesson@gmail.com</a>> escribi=C3=B3:<br typ=
e=3D"attribution"><blockquote class=3D"quote" style=3D"margin:0 0 0 .8ex;bo=
rder-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div class=3D"q=
uoted-text">On Sunday, December 17, 2017 at 10:39:36 AM UTC-5, Barry Revzin=
wrote:<blockquote class=3D"gmail_quote" style=3D"margin:0;margin-left:0.8e=
x;border-left:1px #ccc solid;padding-left:1ex">Somebody should just write a=
proposal already? I'm not sure if anyone from either of the previous t=
hreads has?<p><a href=3D"https://groups.google.com/a/isocpp.org/forum/m/#!m=
sg/std-proposals/sfeZ_rR2BvQ/SqTs4wyeCQAJ" rel=3D"nofollow" target=3D"_blan=
k">https://groups.google.com/a/is<wbr>ocpp.org/forum/m/#!msg/std-pro<wbr>po=
sals/sfeZ_rR2BvQ/SqTs4wyeCQA<wbr>J</a></p><p><a href=3D"https://groups.goog=
le.com/a/isocpp.org/forum/m/#!topic/std-proposals/wdX31-nWSnc/discussion" r=
el=3D"nofollow" target=3D"_blank">https://groups.google.com/a/is<wbr>ocpp.o=
rg/forum/m/#!topic/std-<wbr>proposals/wdX31-nWSnc/discussi<wbr>on</a></p><p=
>Fwiw, I think decltype(return) is the right spelling - you need a way to g=
et the type that isn't just a variable declaration. </p></blockquote><d=
iv><br></div></div><div>Off-topic, but wow. Is it me, or is the mobile site=
not <i>infinitely</i> preferable to the desktop one?</div><div><br></div><=
div>Back on topic, `decltype(return)` is different from what the user here =
is asking. `decltype(return)` is merely a means of detecting the type of th=
e functions return value. What he's doing here has nothing to do with t=
hat.</div><div><br></div><div>This proposal is about creating a named value=
that represents the return value object itself, then being able to manipul=
ate it like any object and ultimately having it automatically be returned t=
o the user at the end of the function. `decltype(return)` doesn't do th=
at.</div><div><br></div><div>I know that some of those other threads touche=
d on this ability (to name the return value object), but those were basical=
ly side discussions.</div></div></blockquote></div></div></div><div dir=3D"=
auto"><br></div><div dir=3D"auto">Hcc has this long long ago as an extensio=
n:=C2=A0<a href=3D"http://gcc.gnu.org/onlinedocs/gcc-2.95.3/gcc_5.html#SEC1=
06">http://gcc.gnu.org/onlinedocs/gcc-2.95.3/gcc_5.html#SEC106</a></div><di=
v dir=3D"auto"><br></div><div dir=3D"auto">Knowing why it was removed could=
be useful.</div><div dir=3D"auto"><br></div><div dir=3D"auto"><br></div><d=
iv dir=3D"auto"><div class=3D"gmail_extra"><div class=3D"gmail_quote"><bloc=
kquote class=3D"quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc soli=
d;padding-left:1ex"><div class=3D"quoted-text">
<p></p>
-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org" target=3D"_=
blank">std-proposals+unsubscribe@<wbr>isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" target=3D"_blank">std-proposals@isocpp.org</a>.<br></div>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/43354b54-1310-4dc6-a575-8c715460985b%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter" target=3D"_blank">=
https://groups.google.com/a/<wbr>isocpp.org/d/msgid/std-<wbr>proposals/4335=
4b54-1310-4dc6-<wbr>a575-8c715460985b%40isocpp.org</a><wbr>.<br>
</blockquote></div><br></div></div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAFdMc-3eWsDOtpSiLb5daXVBs085gymnWdJ1=
un7eXg4tFceieQ%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">htt=
ps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAFdMc-3eWsDOtpSi=
Lb5daXVBs085gymnWdJ1un7eXg4tFceieQ%40mail.gmail.com</a>.<br />
--001a114794e0ada80d05608b714d--
.
Author: Nicol Bolas <jmckesson@gmail.com>
Date: Sun, 17 Dec 2017 08:24:40 -0800 (PST)
Raw View
------=_Part_12481_1414933727.1513527880817
Content-Type: multipart/alternative;
boundary="----=_Part_12482_1746157203.1513527880818"
------=_Part_12482_1746157203.1513527880818
Content-Type: text/plain; charset="UTF-8"
On Sunday, December 17, 2017 at 2:51:00 AM UTC-5, Andrew Tomazos wrote:
>
> It is a common pattern to write a function that:
>
> 1. declares a local variable of the return type of the function
> 2. modifies the local variable
> 3. returns the local variable
>
> In such cases, the return type must be specified to declare the return
> type of the function, and then again to declare the type of the local
> variable. Further, a return statement must be provided that names the
> local variable:
>
> ReturnType f() {
> ReturnType result_var;
> ...
> return result_var;
> }
>
> I propose introducing a new kind of local variable declaration called an
> auto return variable as follows:
>
> ReturnType f() {
> auto return result_var;
> ...
> }
>
> Informal specification:
>
> * An auto return variable declaration is equivalent to a variable
> declaration that has the same type as the return type of its enclosing
> function.
>
> * A function may contain at most one auto return variable, and it may only
> appear as a direct substatement of the outermost scope of its function-body.
>
> * A function that contains an auto return variable shall behave as if an
> additional return statement (that returns the auto return variable) is
> appended to the end of its function-body.
>
> Roughly summarizing: an auto return variable has a type that is deduced
> from the return type of the function and is automatically returned at the
> end of the function.
>
I am completely against the idea of having a function automatically return*
anything*. If I see a function with a non-`void/auto` return type that ends
without returning or throwing, I should be able to assume that it is
*broken* (unless there is an `[[unreachable]]` attribute) without having to
look any further. Changing that, just to make the language* slightly* more
convenient in a few cases?
No thanks.
Furthermore, what if you want to return early? What if you want to do a
conditional return of the value you created? That's not possible with your
syntax. What about `constexpr if` and its ability to return different types?
To me, the fundamental foundation of this feature, the primary reason for
it to exist, is to support named return value elision directly in the
language, with all of the semantic guarantees that returning a prvalue
directly has in C++17. So that's what this proposal should be focused on,
not this imposing of an automatic return.
Here's the general idea. Note that this is a pure strawman syntax; I'm not
saying this should add keywords or whatever.
You can declare a variable as the function's return value:
return_value Typename var_name;
You can only declare a variable as the function's return value if the
function returns a value type (you cannot create return value variables for
references). Such a declaration counts as a `return` statement for return
type deduction.
If you declare multiple variables in the same function's block as the
return value, the program is ill-formed.
If a variable declared as the return value is destroyed by exiting the
block's scope by any means* other than* a return or throw statement, then
the program has undefined behavior. In effect, by declaring a variable to
be a return value, you are making the hard statement that this object is
what you are returning in this block. Or you're throwing out of it. This
also means you cannot create `return_value`s within a loop, unless the loop
instance you create one in actually returns.
But these rules do allow you to have conditional return variables:
auto foo(int param)
{
if(param > 0)
{
return_value vector<int> ret;
generate_data(ret);
return ret;
}
return {}; //Deduced from `return_value` statement
}
The statement `return auto;` returns the current return value variable in
scope. If no such variable is in the function's scope, the program is
ill-formed. This shall be exactly equivalent to `return var_name;`, where
`var_name` is the name of the return value variable.
If you are in the scope of a return value variable, and you issue a
`return` statement that is anything* other than* `return auto;` or `return
var_name;`, the program is ill-formed.
Issuing a `return var_name;` for a return value variable does not copy or
move the value into the function's return value object.
In terms of interaction with the Coroutines TS... I have no idea. I'm not
knowledgeable enough to know how that should work. The simplest solution is
to just make it ill-formed to use `return_value` in a coroutine.
In all other ways, return value variables should be like regular stack
variables.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/efd8b147-9992-4c1d-8248-86c5bba73016%40isocpp.org.
------=_Part_12482_1746157203.1513527880818
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><br><br>On Sunday, December 17, 2017 at 2:51:00 AM UTC-5, =
Andrew Tomazos wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0;m=
argin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div dir=
=3D"ltr">It is a common pattern to write a function that:<div><br><div>1. d=
eclares a local variable of the return type of the function</div></div><div=
>2. modifies the local variable</div><div>3. returns the local variable</di=
v><div><br></div><div>In such cases, the return type must be specified to d=
eclare the return type of the function, and then again to declare the type =
of the local variable.=C2=A0 Further, a return statement must be provided t=
hat names the local variable:<br></div><div><br></div><div>=C2=A0 =C2=A0 Re=
turnType f() {</div><div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 ReturnType result_var;=
</div><div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 ...</div><div>=C2=A0 =C2=A0 =C2=A0 =
=C2=A0 return result_var;</div><div>=C2=A0 =C2=A0 }</div><div><br></div><di=
v>I propose introducing a new kind of local variable declaration called an =
auto return variable as follows:</div><div><br></div><div>=C2=A0 =C2=A0 Ret=
urnType f() {</div><div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 auto return result_var;=
</div><div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 ...</div><div>=C2=A0 =C2=A0 }</div><=
div><br></div><div>Informal specification:</div><div><br></div><div>* An au=
to return variable declaration is equivalent to a variable declaration that=
has the same type as the return type of its enclosing function.</div><div>=
<br></div><div>* A function may contain at most one auto return variable, a=
nd it may only appear as a direct substatement of the outermost scope of it=
s function-body.</div><div><br></div><div>* A function that contains an aut=
o return variable shall behave as if an additional return statement (that r=
eturns the auto return variable) is appended to the end of its function-bod=
y.</div><div><br></div><div>Roughly summarizing: an auto return variable ha=
s a type that is deduced from the return type of the function and is automa=
tically returned at the end of the function.</div></div></blockquote><div><=
br></div><div>I am completely against the idea of having a function automat=
ically return<i> anything</i>. If I see a function with a non-`void/auto` r=
eturn type that ends without returning or throwing, I should be able to ass=
ume that it is <i>broken</i> (unless there is an `[[unreachable]]` attribut=
e) without having to look any further. Changing that, just to make the lang=
uage<i> slightly</i> more convenient in a few cases?</div><div><br></div><d=
iv>No thanks.</div><div><i><br></i></div><div>Furthermore, what if you want=
to return early? What if you want to do a conditional return of the value =
you created? That's not possible with your syntax. What about `constexp=
r if` and its ability to return different types?</div><div><br></div><div>T=
o me, the fundamental foundation of this feature, the primary reason for it=
to exist, is to support named return value elision directly in the languag=
e, with all of the semantic guarantees that returning a prvalue directly ha=
s in C++17. So that's what this proposal should be focused on, not this=
imposing of an automatic return.</div><div><br></div><div>Here's the g=
eneral idea. Note that this is a pure strawman syntax; I'm not saying t=
his should add keywords or whatever.</div><div><br></div><div>You can decla=
re a variable as the function's return value:</div><div><br></div><div =
class=3D"prettyprint" style=3D"border: 1px solid rgb(187, 187, 187); word-w=
rap: break-word; background-color: rgb(250, 250, 250);"><code class=3D"pret=
typrint"><div class=3D"subprettyprint"><span class=3D"styled-by-prettify" s=
tyle=3D"color: #000;">return_value </span><span class=3D"styled-by-prettify=
" style=3D"color: #606;">Typename</span><span class=3D"styled-by-prettify" =
style=3D"color: #000;"> var_name</span><span class=3D"styled-by-prettify" s=
tyle=3D"color: #660;">;</span></div></code></div><div><br></div><div>You ca=
n only declare a variable as the function's return value if the functio=
n returns a value type (you cannot create return value variables for refere=
nces). Such a declaration counts as a `return` statement for return type de=
duction.</div><div><br></div><div>If you declare multiple variables in the =
same function's block as the return value, the program is ill-formed.</=
div><div><br></div><div>If a variable declared as the return value is destr=
oyed by exiting the block's scope by any means<i> other than</i> a retu=
rn or throw statement, then the program has undefined behavior. In effect, =
by declaring a variable to be a return value, you are making the hard state=
ment that this object is what you are returning in this block. Or you'r=
e throwing out of it. This also means you cannot create `return_value`s wit=
hin a loop, unless the loop instance you create one in actually returns.</d=
iv><div><br></div><div>But these rules do allow you to have conditional ret=
urn variables:</div><div><br></div><div class=3D"prettyprint" style=3D"bord=
er: 1px solid rgb(187, 187, 187); word-wrap: break-word; background-color: =
rgb(250, 250, 250);"><code class=3D"prettyprint"><div class=3D"subprettypri=
nt"><span class=3D"styled-by-prettify" style=3D"color: #008;">auto</span><s=
pan class=3D"styled-by-prettify" style=3D"color: #000;"> foo</span><span cl=
ass=3D"styled-by-prettify" style=3D"color: #660;">(</span><span class=3D"st=
yled-by-prettify" style=3D"color: #008;">int</span><span class=3D"styled-by=
-prettify" style=3D"color: #000;"> param</span><span class=3D"styled-by-pre=
ttify" style=3D"color: #660;">)</span><span class=3D"styled-by-prettify" st=
yle=3D"color: #000;"><br></span><span class=3D"styled-by-prettify" style=3D=
"color: #660;">{</span><span class=3D"styled-by-prettify" style=3D"color: #=
000;"><br>=C2=A0 </span><span class=3D"styled-by-prettify" style=3D"color: =
#008;">if</span><span class=3D"styled-by-prettify" style=3D"color: #660;">(=
</span><span class=3D"styled-by-prettify" style=3D"color: #000;">param </sp=
an><span class=3D"styled-by-prettify" style=3D"color: #660;">></span><sp=
an class=3D"styled-by-prettify" style=3D"color: #000;"> </span><span class=
=3D"styled-by-prettify" style=3D"color: #066;">0</span><span class=3D"style=
d-by-prettify" style=3D"color: #660;">)</span><span class=3D"styled-by-pret=
tify" style=3D"color: #000;"><br>=C2=A0 </span><span class=3D"styled-by-pre=
ttify" style=3D"color: #660;">{</span><span class=3D"styled-by-prettify" st=
yle=3D"color: #000;"><br>=C2=A0 =C2=A0 return_value vector</span><span clas=
s=3D"styled-by-prettify" style=3D"color: #080;"><int></span><span cla=
ss=3D"styled-by-prettify" style=3D"color: #000;"> ret</span><span class=3D"=
styled-by-prettify" style=3D"color: #660;">;</span><span class=3D"styled-by=
-prettify" style=3D"color: #000;"><br>=C2=A0 =C2=A0 generate_data</span><sp=
an class=3D"styled-by-prettify" style=3D"color: #660;">(</span><span class=
=3D"styled-by-prettify" style=3D"color: #000;">ret</span><span class=3D"sty=
led-by-prettify" style=3D"color: #660;">);</span><span class=3D"styled-by-p=
rettify" style=3D"color: #000;"><br>=C2=A0 =C2=A0 </span><span class=3D"sty=
led-by-prettify" style=3D"color: #008;">return</span><span class=3D"styled-=
by-prettify" style=3D"color: #000;"> ret</span><span class=3D"styled-by-pre=
ttify" style=3D"color: #660;">;</span><span class=3D"styled-by-prettify" st=
yle=3D"color: #000;"><br>=C2=A0 </span><span class=3D"styled-by-prettify" s=
tyle=3D"color: #660;">}</span><span class=3D"styled-by-prettify" style=3D"c=
olor: #000;"><br><br>=C2=A0 </span><span class=3D"styled-by-prettify" style=
=3D"color: #008;">return</span><span class=3D"styled-by-prettify" style=3D"=
color: #000;"> </span><span class=3D"styled-by-prettify" style=3D"color: #6=
60;">{};</span><span class=3D"styled-by-prettify" style=3D"color: #000;"> <=
/span><span class=3D"styled-by-prettify" style=3D"color: #800;">//Deduced f=
rom `return_value` statement</span><span class=3D"styled-by-prettify" style=
=3D"color: #000;"><br></span><span class=3D"styled-by-prettify" style=3D"co=
lor: #660;">}</span></div></code></div><div><br></div><div>The statement `r=
eturn auto;` returns the current return value variable in scope. If no such=
variable is in the function's scope, the program is ill-formed. This s=
hall be exactly equivalent to `return var_name;`, where `var_name` is the n=
ame of the return value variable.</div><div><br></div><div>If you are in th=
e scope of a return value variable, and you issue a `return` statement that=
is anything<i> other than</i> `return auto;` or `return var_name;`, the pr=
ogram is ill-formed.</div><div><br></div><div>Issuing a `return var_name;` =
for a return value variable does not copy or move the value into the functi=
on's return value object.</div><div><br></div><div>In terms of interact=
ion with the Coroutines TS... I have no idea. I'm not knowledgeable eno=
ugh to know how that should work. The simplest solution is to just make it =
ill-formed to use `return_value` in a coroutine.</div><div><br></div><div>I=
n all other ways, return value variables should be like regular stack varia=
bles.</div><div><br></div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/efd8b147-9992-4c1d-8248-86c5bba73016%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/efd8b147-9992-4c1d-8248-86c5bba73016=
%40isocpp.org</a>.<br />
------=_Part_12482_1746157203.1513527880818--
------=_Part_12481_1414933727.1513527880817--
.
Author: Jake Arkinstall <jake.arkinstall@gmail.com>
Date: Sun, 17 Dec 2017 17:24:29 +0000
Raw View
--001a113dd1549fdc2605608c8175
Content-Type: text/plain; charset="UTF-8"
On 17 Dec 2017 16:24, "Nicol Bolas" <jmckesson@gmail.com> wrote:
I am completely against the idea of having a function automatically return*
anything*. If I see a function with a non-`void/auto` return type that ends
without returning or throwing, I should be able to assume that it is
*broken* (unless there is an `[[unreachable]]` attribute) without having to
look any further. Changing that, just to make the language* slightly* more
convenient in a few cases?
Actually, you raise an interesting point here. It's less to do with
standards and more to do with the murky void where standards dare not enter
- the world of undefined behaviour. Sure the code is broken, but it still
compiles.
For] example, in clang, a function with a missing return in one branch
definitely goes down the other one when optimisation comes along:
https://godbolt.org/g/MmFX3D . It's something that can trip people up for a
while before they see what's going on.
Perhaps this proposal could prevent confusion in certain situations -
somehow strictly enforce a return. I don't know how smart that is though -
especially in objects that are expensive to construct, and I'm not
convinced that this is the best approach. Instead I think it'd make
considerably more sense to make non-returning branches a compilation error
rather than allowing the undefined behavior to go ahead - especially as we
are moving towards giving compilers more and more "intuition" as the
standards progress.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAC%2B0CCPdXyd%2BvSP0wpv-g66DHxBsRg06hdmwAPDQR0XXaYKVyg%40mail.gmail.com.
--001a113dd1549fdc2605608c8175
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"auto"><br><div class=3D"gmail_extra" dir=3D"auto"><br><div clas=
s=3D"gmail_quote">On 17 Dec 2017 16:24, "Nicol Bolas" <<a href=
=3D"mailto:jmckesson@gmail.com">jmckesson@gmail.com</a>> wrote:<br type=
=3D"attribution"><blockquote class=3D"quote" style=3D"margin:0 0 0 .8ex;bor=
der-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div class=3D"qu=
oted-text"><div>I am completely against the idea of having a function autom=
atically return<i> anything</i>. If I see a function with a non-`void/auto`=
return type that ends without returning or throwing, I should be able to a=
ssume that it is <i>broken</i> (unless there is an `[[unreachable]]` attrib=
ute) without having to look any further. Changing that, just to make the la=
nguage<i> slightly</i> more convenient in a few cases?<br></div></div></div=
></blockquote></div></div><div dir=3D"auto"><br></div><div dir=3D"auto">Act=
ually, you raise an interesting point here. It's less to do with standa=
rds and more to do with the murky void where standards dare not enter - the=
world of undefined behaviour. Sure the code is broken, but it still compil=
es.</div><div dir=3D"auto"><br></div><div dir=3D"auto">For] example, in cla=
ng, a function with a missing return in one branch definitely goes down the=
other one when optimisation comes along:=C2=A0<a href=3D"https://godbolt.o=
rg/g/MmFX3D">https://godbolt.org/g/MmFX3D</a> . It's something that can=
trip people up for a while before they see what's going on.</div><div =
dir=3D"auto"><br></div><div dir=3D"auto">Perhaps this proposal could preven=
t confusion in certain situations - somehow strictly enforce a return. I do=
n't know how smart that is though - especially in objects that are expe=
nsive to construct, and I'm not convinced that this is the best approac=
h. Instead I think it'd make considerably more sense to make non-return=
ing branches a compilation error rather than allowing the undefined behavio=
r to go ahead - especially as we are moving towards giving compilers more a=
nd more "intuition" as the standards progress.</div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAC%2B0CCPdXyd%2BvSP0wpv-g66DHxBsRg06=
hdmwAPDQR0XXaYKVyg%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter"=
>https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAC%2B0CCPdXy=
d%2BvSP0wpv-g66DHxBsRg06hdmwAPDQR0XXaYKVyg%40mail.gmail.com</a>.<br />
--001a113dd1549fdc2605608c8175--
.
Author: Nicol Bolas <jmckesson@gmail.com>
Date: Sun, 17 Dec 2017 10:09:43 -0800 (PST)
Raw View
------=_Part_12910_406044708.1513534183825
Content-Type: multipart/alternative;
boundary="----=_Part_12911_1172621035.1513534183825"
------=_Part_12911_1172621035.1513534183825
Content-Type: text/plain; charset="UTF-8"
On Sunday, December 17, 2017 at 12:24:32 PM UTC-5, Jake Arkinstall wrote:
>
>
>
> On 17 Dec 2017 16:24, "Nicol Bolas" <jmck...@gmail.com <javascript:>>
> wrote:
>
> I am completely against the idea of having a function automatically return*
> anything*. If I see a function with a non-`void/auto` return type that
> ends without returning or throwing, I should be able to assume that it is
> *broken* (unless there is an `[[unreachable]]` attribute) without having
> to look any further. Changing that, just to make the language* slightly*
> more convenient in a few cases?
>
>
> Actually, you raise an interesting point here. It's less to do with
> standards and more to do with the murky void where standards dare not enter
> - the world of undefined behaviour. Sure the code is broken, but it still
> compiles.
>
> For] example, in clang, a function with a missing return in one branch
> definitely goes down the other one when optimisation comes along:
> https://godbolt.org/g/MmFX3D . It's something that can trip people up for
> a while before they see what's going on.
>
> Perhaps this proposal could prevent confusion in certain situations -
> somehow strictly enforce a return.
>
The problem there has to do with things where you know that the normal end
of the block cannot be reached, but you cannot communicate that to the
compiler.
T foo(int value)
{
for(int ix : crange(value))
{
if(is_in_sequence(ix))
return generate_value(ix);
}
}
The code around `foo` has set up a contract such that `is_in_sequence(ix)`
will certainly be true for some value in the half-open range [0, value). If
the user passes an inappropriate `value`, then that's on them and you want
UB to happen.
And if `T` is not default-constructible, then the only thing you can do is
`throw` (or use something like `expected`). And what if you don't want to?
What if you want the narrow contract?
No, we cannot go around enforcing `return`* statically*.
I don't know how smart that is though - especially in objects that are
> expensive to construct, and I'm not convinced that this is the best
> approach. Instead I think it'd make considerably more sense to make
> non-returning branches a compilation error rather than allowing the
> undefined behavior to go ahead - especially as we are moving towards giving
> compilers more and more "intuition" as the standards progress.
>
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/c459b643-71d1-4b77-afe1-328a760847ea%40isocpp.org.
------=_Part_12911_1172621035.1513534183825
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><br><br>On Sunday, December 17, 2017 at 12:24:32 PM UTC-5,=
Jake Arkinstall wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0=
;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div di=
r=3D"auto"><br><div dir=3D"auto"><br><div class=3D"gmail_quote">On 17 Dec 2=
017 16:24, "Nicol Bolas" <<a onmousedown=3D"this.href=3D'j=
avascript:';return true;" onclick=3D"this.href=3D'javascript:';=
return true;" href=3D"javascript:" target=3D"_blank" rel=3D"nofollow" gdf-o=
bfuscated-mailto=3D"kLheJXXOAQAJ">jmck...@gmail.com</a>> wrote:<br type=
=3D"attribution"><blockquote style=3D"margin:0 0 0 .8ex;border-left:1px #cc=
c solid;padding-left:1ex"><div dir=3D"ltr"><div><div>I am completely agains=
t the idea of having a function automatically return<i> anything</i>. If I =
see a function with a non-`void/auto` return type that ends without returni=
ng or throwing, I should be able to assume that it is <i>broken</i> (unless=
there is an `[[unreachable]]` attribute) without having to look any furthe=
r. Changing that, just to make the language<i> slightly</i> more convenient=
in a few cases?<br></div></div></div></blockquote></div></div><div dir=3D"=
auto"><br></div><div dir=3D"auto">Actually, you raise an interesting point =
here. It's less to do with standards and more to do with the murky void=
where standards dare not enter - the world of undefined behaviour. Sure th=
e code is broken, but it still compiles.</div><div dir=3D"auto"><br></div><=
div dir=3D"auto">For] example, in clang, a function with a missing return i=
n one branch definitely goes down the other one when optimisation comes alo=
ng:=C2=A0<a onmousedown=3D"this.href=3D'https://www.google.com/url?q\x3=
dhttps%3A%2F%2Fgodbolt.org%2Fg%2FMmFX3D\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dA=
FQjCNGqzIwp-K4CKv62m-rDQA7QxwN-3Q';return true;" onclick=3D"this.href=
=3D'https://www.google.com/url?q\x3dhttps%3A%2F%2Fgodbolt.org%2Fg%2FMmF=
X3D\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGqzIwp-K4CKv62m-rDQA7QxwN-3Q=
9;;return true;" href=3D"https://godbolt.org/g/MmFX3D" target=3D"_blank" re=
l=3D"nofollow">https://godbolt.org/g/<wbr>MmFX3D</a> . It's something t=
hat can trip people up for a while before they see what's going on.</di=
v><div dir=3D"auto"><br></div><div dir=3D"auto">Perhaps this proposal could=
prevent confusion in certain situations - somehow strictly enforce a retur=
n.</div></div></blockquote><div><br></div><div>The problem there has to do =
with things where you know that the normal end of the block cannot be reach=
ed, but you cannot communicate that to the compiler.</div><div><br></div><d=
iv class=3D"prettyprint" style=3D"border: 1px solid rgb(187, 187, 187); wor=
d-wrap: break-word; background-color: rgb(250, 250, 250);"><code class=3D"p=
rettyprint"><div class=3D"subprettyprint"><span class=3D"styled-by-prettify=
" style=3D"color: #000;">T foo</span><span class=3D"styled-by-prettify" sty=
le=3D"color: #660;">(</span><span class=3D"styled-by-prettify" style=3D"col=
or: #008;">int</span><span class=3D"styled-by-prettify" style=3D"color: #00=
0;"> value</span><span class=3D"styled-by-prettify" style=3D"color: #660;">=
)</span><span class=3D"styled-by-prettify" style=3D"color: #000;"><br></spa=
n><span class=3D"styled-by-prettify" style=3D"color: #660;">{</span><span c=
lass=3D"styled-by-prettify" style=3D"color: #000;"><br>=C2=A0 </span><span =
class=3D"styled-by-prettify" style=3D"color: #008;">for</span><span class=
=3D"styled-by-prettify" style=3D"color: #660;">(</span><span class=3D"style=
d-by-prettify" style=3D"color: #008;">int</span><span class=3D"styled-by-pr=
ettify" style=3D"color: #000;"> ix </span><span class=3D"styled-by-prettify=
" style=3D"color: #660;">:</span><span class=3D"styled-by-prettify" style=
=3D"color: #000;"> crange</span><span class=3D"styled-by-prettify" style=3D=
"color: #660;">(</span><span class=3D"styled-by-prettify" style=3D"color: #=
000;">value</span><span class=3D"styled-by-prettify" style=3D"color: #660;"=
>))</span><span class=3D"styled-by-prettify" style=3D"color: #000;"><br>=C2=
=A0 </span><span class=3D"styled-by-prettify" style=3D"color: #660;">{</spa=
n><span class=3D"styled-by-prettify" style=3D"color: #000;"><br>=C2=A0 =C2=
=A0 </span><span class=3D"styled-by-prettify" style=3D"color: #008;">if</sp=
an><span class=3D"styled-by-prettify" style=3D"color: #660;">(</span><span =
class=3D"styled-by-prettify" style=3D"color: #000;">is_in_sequence</span><s=
pan class=3D"styled-by-prettify" style=3D"color: #660;">(</span><span class=
=3D"styled-by-prettify" style=3D"color: #000;">ix</span><span class=3D"styl=
ed-by-prettify" style=3D"color: #660;">))</span><span class=3D"styled-by-pr=
ettify" style=3D"color: #000;"><br>=C2=A0 =C2=A0 =C2=A0 </span><span class=
=3D"styled-by-prettify" style=3D"color: #008;">return</span><span class=3D"=
styled-by-prettify" style=3D"color: #000;"> generate_value</span><span clas=
s=3D"styled-by-prettify" style=3D"color: #660;">(</span><span class=3D"styl=
ed-by-prettify" style=3D"color: #000;">ix</span><span class=3D"styled-by-pr=
ettify" style=3D"color: #660;">);</span><span class=3D"styled-by-prettify" =
style=3D"color: #000;"><br>=C2=A0 </span><span class=3D"styled-by-prettify"=
style=3D"color: #660;">}</span><span class=3D"styled-by-prettify" style=3D=
"color: #000;"><br></span><span class=3D"styled-by-prettify" style=3D"color=
: #660;">}</span></div></code></div><div><br></div><div>The code around `fo=
o` has set up a contract such that `is_in_sequence(ix)` will certainly be t=
rue for some value in the half-open range [0, value). If the user passes an=
inappropriate `value`, then that's on them and you want UB to happen.<=
/div><div><br></div><div>And if `T` is not default-constructible, then the =
only thing you can do is `throw` (or use something like `expected`). And wh=
at if you don't want to? What if you want the narrow contract?</div><di=
v><br></div><div>No, we cannot go around enforcing `return`<i> statically</=
i>.</div><div><i><br></i></div><blockquote class=3D"gmail_quote" style=3D"m=
argin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"=
><div dir=3D"auto"><div dir=3D"auto">I don't know how smart that is tho=
ugh - especially in objects that are expensive to construct, and I'm no=
t convinced that this is the best approach. Instead I think it'd make c=
onsiderably more sense to make non-returning branches a compilation error r=
ather than allowing the undefined behavior to go ahead - especially as we a=
re moving towards giving compilers more and more "intuition" as t=
he standards progress.</div></div>
</blockquote></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/c459b643-71d1-4b77-afe1-328a760847ea%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/c459b643-71d1-4b77-afe1-328a760847ea=
%40isocpp.org</a>.<br />
------=_Part_12911_1172621035.1513534183825--
------=_Part_12910_406044708.1513534183825--
.
Author: Jake Arkinstall <jake.arkinstall@gmail.com>
Date: Sun, 17 Dec 2017 19:54:41 +0000
Raw View
--001a113adaa4c98ae805608e9a8d
Content-Type: text/plain; charset="UTF-8"
On 17 Dec 2017 18:09, "Nicol Bolas" <jmckesson@gmail.com> wrote:
If the user passes an inappropriate `value`, then that's on them and you
want UB to happen.
I'm not sure on that. It almost seems like a perfect place for a Maybe
monad.
And if `T` is not default-constructible, then the only thing you can do is
`throw` (or use something like `expected`). And what if you don't want to?
What if you want the narrow contract?
If you want a function that does return something useful iff the argument
makes sense, that's THE use case of std::invalid_argument. This is a
function that works all the time, 99% of the time.
Perhaps a definite return or throw is one option. I can't see how your
example is in any way made worse by adding a throw at the end, and at least
the user finds out what they did wrong. Providing them with a program that
seems to be running fine before it goes crazy at a later point isn't
helpful to anyone.
I certainly agree that giving the programmer the flexibility of making
assumptions is useful, though, and I'm wondering if a keyword to allow
non-returning branches would make sense. I don't have a particularly strong
position on this, though. It makes sense to leave this to the discretion of
the compiler writers if it's too controversial.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAC%2B0CCN7mFF1hiPPyUetL0mNaOkrjkhpsSv2QxXBfUfLzVqK8g%40mail.gmail.com.
--001a113adaa4c98ae805608e9a8d
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"auto"><div><div class=3D"gmail_extra"><div class=3D"gmail_quote=
">On 17 Dec 2017 18:09, "Nicol Bolas" <<a href=3D"mailto:jmcke=
sson@gmail.com">jmckesson@gmail.com</a>> wrote:<br type=3D"attribution">=
<blockquote class=3D"quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc=
solid;padding-left:1ex"><div dir=3D"ltr"><div>If the user passes an inappr=
opriate `value`, then that's on them and you want UB to happen.</div><d=
iv></div></div></blockquote></div></div></div><div dir=3D"auto"><br></div><=
div dir=3D"auto">I'm not sure on that. It almost seems like a perfect p=
lace for a Maybe monad.</div><div dir=3D"auto"><br></div><div dir=3D"auto">=
<div class=3D"gmail_extra"><div class=3D"gmail_quote"><blockquote class=3D"=
quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1=
ex"><div dir=3D"ltr"><div>And if `T` is not default-constructible, then the=
only thing you can do is `throw` (or use something like `expected`). And w=
hat if you don't want to? What if you want the narrow contract?<br></di=
v></div></blockquote></div></div></div><div dir=3D"auto"><br></div><div dir=
=3D"auto">If you want a function that does return something useful iff the =
argument makes sense, that's THE use case of std::invalid_argument. Thi=
s is a function that works all the time, 99% of the time.</div><div dir=3D"=
auto"><br></div><div dir=3D"auto">Perhaps a definite return or throw is one=
option. I can't see how your example is in any way made worse by addin=
g a throw at the end, and at least the user finds out what they did wrong. =
Providing them with a program that seems to be running fine before it goes =
crazy at a later point isn't helpful to anyone.</div><div dir=3D"auto">=
<br></div><div dir=3D"auto">I certainly agree that giving the programmer th=
e flexibility of making assumptions is useful, though, and I'm wonderin=
g if a keyword to allow non-returning branches would make sense. I don'=
t have a particularly strong position on this, though. It makes sense to le=
ave this to the discretion of the compiler writers if it's too controve=
rsial.</div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAC%2B0CCN7mFF1hiPPyUetL0mNaOkrjkhpsS=
v2QxXBfUfLzVqK8g%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">h=
ttps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAC%2B0CCN7mFF1=
hiPPyUetL0mNaOkrjkhpsSv2QxXBfUfLzVqK8g%40mail.gmail.com</a>.<br />
--001a113adaa4c98ae805608e9a8d--
.
Author: Nicol Bolas <jmckesson@gmail.com>
Date: Sun, 17 Dec 2017 12:06:13 -0800 (PST)
Raw View
------=_Part_13653_492803820.1513541173892
Content-Type: multipart/alternative;
boundary="----=_Part_13654_819260961.1513541173892"
------=_Part_13654_819260961.1513541173892
Content-Type: text/plain; charset="UTF-8"
On Sunday, December 17, 2017 at 2:54:44 PM UTC-5, Jake Arkinstall wrote:
>
> On 17 Dec 2017 18:09, "Nicol Bolas" <jmck...@gmail.com <javascript:>>
> wrote:
>
> If the user passes an inappropriate `value`, then that's on them and you
> want UB to happen.
>
>
> I'm not sure on that. It almost seems like a perfect place for a Maybe
> monad.
>
That's a question of the function's contract. It's perfectly fine to have a
contract that states "pass the right things or badness occurs"; that's how
`vector::operator[]` works. It's also fine to have a contract that states
"pass the right things or get an exception/error/whatever"; that's how
`vector::at` works.
What's not fine is having the language* force* you into a particular
contract.
> And if `T` is not default-constructible, then the only thing you can do is
> `throw` (or use something like `expected`). And what if you don't want to?
> What if you want the narrow contract?
>
> If you want a function that does return something useful iff the argument
> makes sense, that's THE use case of std::invalid_argument. This is a
> function that works all the time, 99% of the time.
>
Unless you want this function to be `noexcept` of course.
>
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/9392d77f-7601-4998-96f0-65ddd48faf9a%40isocpp.org.
------=_Part_13654_819260961.1513541173892
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">On Sunday, December 17, 2017 at 2:54:44 PM UTC-5, Jake Ark=
install wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0;margin-l=
eft: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div dir=3D"auto=
"><div><div><div class=3D"gmail_quote">On 17 Dec 2017 18:09, "Nicol Bo=
las" <<a onmousedown=3D"this.href=3D'javascript:';return tr=
ue;" onclick=3D"this.href=3D'javascript:';return true;" href=3D"jav=
ascript:" target=3D"_blank" rel=3D"nofollow" gdf-obfuscated-mailto=3D"m7M9W=
afWAQAJ">jmck...@gmail.com</a>> wrote:<br type=3D"attribution"><blockquo=
te style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">=
<div dir=3D"ltr"><div>If the user passes an inappropriate `value`, then tha=
t's on them and you want UB to happen.</div><div></div></div></blockquo=
te></div></div></div><div dir=3D"auto"><br></div><div dir=3D"auto">I'm =
not sure on that. It almost seems like a perfect place for a Maybe monad.</=
div></div></blockquote><div><br></div><div>That's a question of the fun=
ction's contract. It's perfectly fine to have a contract that state=
s "pass the right things or badness occurs"; that's how `vect=
or::operator[]` works. It's also fine to have a contract that states &q=
uot;pass the right things or get an exception/error/whatever"; that=
9;s how `vector::at` works.</div><div><br></div><div>What's not fine is=
having the language<i> force</i> you into a particular contract.</div><div=
><i></i>=C2=A0</div><blockquote class=3D"gmail_quote" style=3D"margin: 0;ma=
rgin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div dir=
=3D"auto"><div dir=3D"auto">And if `T` is not default-constructible, then t=
he only thing you can do is `throw` (or use something like `expected`). And=
what if you don't want to? What if you want the narrow contract?<br></=
div><div dir=3D"auto"><br></div><div dir=3D"auto">If you want a function th=
at does return something useful iff the argument makes sense, that's TH=
E use case of std::invalid_argument. This is a function that works all the =
time, 99% of the time.</div></div></blockquote><div><br></div><div>Unless y=
ou want this function to be `noexcept` of course.</div><blockquote class=3D=
"gmail_quote" style=3D"margin: 0;margin-left: 0.8ex;border-left: 1px #ccc s=
olid;padding-left: 1ex;">
</blockquote></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/9392d77f-7601-4998-96f0-65ddd48faf9a%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/9392d77f-7601-4998-96f0-65ddd48faf9a=
%40isocpp.org</a>.<br />
------=_Part_13654_819260961.1513541173892--
------=_Part_13653_492803820.1513541173892--
.
Author: Jake Arkinstall <jake.arkinstall@gmail.com>
Date: Sun, 17 Dec 2017 20:23:30 +0000
Raw View
--001a113adaa4d90bdb05608f014b
Content-Type: text/plain; charset="UTF-8"
On 17 Dec 2017 20:06, "Nicol Bolas" <jmckesson@gmail.com> wrote:
Unless you want this function to be `noexcept` of course.
This seems like putting the cart before the horse to me. If a function
can't handle all inputs then is noexcept really appropri...
Nevermind. Signed overflow is undefined behaviour in C++, and as such
demanding a function be able to handle all inputs would make C++ a
nightmare.
Consider this as point taken.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAC%2B0CCOnYDK%2BnWT8nwDcrxqD%2B2K6tiaSksv%2B4LEW4-JHFjgZwg%40mail.gmail.com.
--001a113adaa4d90bdb05608f014b
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"auto"><div><br><div class=3D"gmail_extra"><br><div class=3D"gma=
il_quote">On 17 Dec 2017 20:06, "Nicol Bolas" <<a href=3D"mail=
to:jmckesson@gmail.com">jmckesson@gmail.com</a>> wrote:<br type=3D"attri=
bution"><blockquote class=3D"quote" style=3D"margin:0 0 0 .8ex;border-left:=
1px #ccc solid;padding-left:1ex"><div dir=3D"ltr">Unless you want this func=
tion to be `noexcept` of course.</div></blockquote></div></div></div><div d=
ir=3D"auto"><br></div><div dir=3D"auto">This seems like putting the cart be=
fore the horse to me. If a function can't handle all inputs then is noe=
xcept really appropri...</div><div dir=3D"auto"><br></div><div dir=3D"auto"=
>Nevermind. Signed overflow is undefined behaviour in C++, and as such dema=
nding a function be able to handle all inputs would make C++ a nightmare.</=
div><div dir=3D"auto"><br></div><div dir=3D"auto">Consider this as point ta=
ken.</div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CAC%2B0CCOnYDK%2BnWT8nwDcrxqD%2B2K6ti=
aSksv%2B4LEW4-JHFjgZwg%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfoo=
ter">https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAC%2B0CC=
OnYDK%2BnWT8nwDcrxqD%2B2K6tiaSksv%2B4LEW4-JHFjgZwg%40mail.gmail.com</a>.<br=
/>
--001a113adaa4d90bdb05608f014b--
.
Author: Giovanni Piero Deretta <gpderetta@gmail.com>
Date: Tue, 19 Dec 2017 04:34:35 -0800 (PST)
Raw View
------=_Part_7418_64454008.1513686875303
Content-Type: multipart/alternative;
boundary="----=_Part_7419_1508121032.1513686875303"
------=_Part_7419_1508121032.1513686875303
Content-Type: text/plain; charset="UTF-8"
On Sunday, December 17, 2017 at 7:51:00 AM UTC, Andrew Tomazos wrote:
>
> It is a common pattern to write a function that:
>
> 1. declares a local variable of the return type of the function
> 2. modifies the local variable
> 3. returns the local variable
>
> In such cases, the return type must be specified to declare the return
> type of the function, and then again to declare the type of the local
> variable. Further, a return statement must be provided that names the
> local variable:
>
> ReturnType f() {
> ReturnType result_var;
> ...
> return result_var;
> }
>
> I propose introducing a new kind of local variable declaration called an
> auto return variable as follows:
>
> ReturnType f() {
> auto return result_var;
> ...
> }
>
>
>
Semi-serious proposal: allow inference of auto variable types from any use
not just initialization:
void foo(int& out);
double bar() {
auto i; // i is int
auto j; //j is string
auto r; // r is double
foo(i);
j = "hello"s;
...
return r;
}
Semi-serious because full Hindley-Milner (or variants) inference is
probably not workable in C++, but some restricted variant still might.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/7a3b438a-ec7f-4827-a24c-5466fe57410c%40isocpp.org.
------=_Part_7419_1508121032.1513686875303
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">On Sunday, December 17, 2017 at 7:51:00 AM UTC, Andrew Tom=
azos wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0;margin-left=
: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div dir=3D"ltr">It=
is a common pattern to write a function that:<div><br><div>1. declares a l=
ocal variable of the return type of the function</div></div><div>2. modifie=
s the local variable</div><div>3. returns the local variable</div><div><br>=
</div><div>In such cases, the return type must be specified to declare the =
return type of the function, and then again to declare the type of the loca=
l variable.=C2=A0 Further, a return statement must be provided that names t=
he local variable:<br></div><div><br></div><div>=C2=A0 =C2=A0 ReturnType f(=
) {</div><div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 ReturnType result_var;</div><div>=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 ...</div><div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 retur=
n result_var;</div><div>=C2=A0 =C2=A0 }</div><div><br></div><div>I propose =
introducing a new kind of local variable declaration called an auto return =
variable as follows:</div><div><br></div><div>=C2=A0 =C2=A0 ReturnType f() =
{</div><div>=C2=A0 =C2=A0 =C2=A0 =C2=A0 auto return result_var;</div><div>=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 ...</div><div>=C2=A0 =C2=A0 }</div><div><br></d=
iv><br></div></blockquote><div><br>Semi-serious proposal: allow inference o=
f auto variable types from any use not just initialization:<br><br>=C2=A0 v=
oid foo(int& out);<br>=C2=A0 <br>=C2=A0 double bar() {<br>=C2=A0 auto i=
; // i is int<br>=C2=A0 auto j; //j is string<br>=C2=A0 auto r; // r is dou=
ble<br>=C2=A0 foo(i);<br>=C2=A0 j =3D "hello"s;<br>=C2=A0 ...<br>=
=C2=A0 return r;<br>}<br><br>Semi-serious because full Hindley-Milner=C2=A0=
(or variants) inference is probably not workable in C++, but some restrict=
ed variant still might.<br><br><br>=C2=A0</div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/7a3b438a-ec7f-4827-a24c-5466fe57410c%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/7a3b438a-ec7f-4827-a24c-5466fe57410c=
%40isocpp.org</a>.<br />
------=_Part_7419_1508121032.1513686875303--
------=_Part_7418_64454008.1513686875303--
.
Author: Jan Wilmans <janwilmans@gmail.com>
Date: Tue, 19 Dec 2017 13:54:42 +0100
Raw View
--001a11448c12ac9d340560b0f9f4
Content-Type: text/plain; charset="UTF-8"
>
> Semi-serious proposal: allow inference of auto variable types from any use
> not just initialization:
>
> void foo(int& out);
>
> double bar() {
> auto i; // i is int
> auto j; //j is string
> auto r; // r is double
> foo(i);
> j = "hello"s;
> ...
> return r;
> }
>
> Semi-serious because full Hindley-Milner (or variants) inference is
> probably not workable in C++, but some restricted variant still might.
>
Please provide a rationale why such a terrible looking idea would be good?
I think this would promote uninitialised variables, so effectively drain
auto of one of its best qualities.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CADtNNhjciHtmn2vS9OTzPsFkyPDsGhTqS_132pJg6eDEFoSA_w%40mail.gmail.com.
--001a11448c12ac9d340560b0f9f4
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><div class=3D"gmail_extra"><div class=3D"gmail_quote"><blo=
ckquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #c=
cc solid;padding-left:1ex"><div dir=3D"ltr"><div>Semi-serious proposal: all=
ow inference of auto variable types from any use not just initialization:<b=
r><br>=C2=A0 void foo(int& out);<br>=C2=A0 <br>=C2=A0 double bar() {<br=
>=C2=A0 auto i; // i is int<br>=C2=A0 auto j; //j is string<br>=C2=A0 auto =
r; // r is double<br>=C2=A0 foo(i);<br>=C2=A0 j =3D "hello"s;<br>=
=C2=A0 ...<br>=C2=A0 return r;<br>}<br><br>Semi-serious because full Hindle=
y-Milner=C2=A0 (or variants) inference is probably not workable in C++, but=
some restricted variant still might.<br></div></div></blockquote></div><br=
>
</div><div class=3D"gmail_extra">Please provide a rationale why such a terr=
ible looking idea would be good? I think this would promote uninitialised v=
ariables, so effectively drain auto of one of its best qualities.</div><div=
class=3D"gmail_extra"><br></div><div class=3D"gmail_extra"><br></div></div=
>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CADtNNhjciHtmn2vS9OTzPsFkyPDsGhTqS_13=
2pJg6eDEFoSA_w%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">htt=
ps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CADtNNhjciHtmn2vS=
9OTzPsFkyPDsGhTqS_132pJg6eDEFoSA_w%40mail.gmail.com</a>.<br />
--001a11448c12ac9d340560b0f9f4--
.
Author: David Brown <david@westcontrol.com>
Date: Tue, 19 Dec 2017 14:27:58 +0100
Raw View
On 19/12/17 13:54, Jan Wilmans wrote:
> Semi-serious proposal: allow inference of auto variable types from
> any use not just initialization:
>
> void foo(int& out);
>
> double bar() {
> auto i; // i is int
> auto j; //j is string
> auto r; // r is double
> foo(i);
> j = "hello"s;
> ...
> return r;
> }
>
> Semi-serious because full Hindley-Milner (or variants) inference is
> probably not workable in C++, but some restricted variant still might.
>
>
> Please provide a rationale why such a terrible looking idea would be
> good? I think this would promote uninitialised variables, so effectively
> drain auto of one of its best qualities.
>
>
I would say it could be useful in cases like this:
auto number(int x) {
auto s;
if (x == 0) {
s = "zero"s;
} else if (x == 1) {
s = "one"s;
} else {
s = "not a nice number"s;
}
return s;
}
i.e., you don't have a suitable initial value to use.
But you can eliminated cases where you have a simple constructor that
the compiler can optimise away, cases that are easily expressed with
conditional operator, cases where you could return the result directly
without using a local variable, and cases where it's not particularly
hard to give the type directly. I don't think the remaining use-cases
are enough to warrant such a feature in the language.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/p1b413%2455t%241%40blaine.gmane.org.
.
Author: Nicol Bolas <jmckesson@gmail.com>
Date: Tue, 19 Dec 2017 05:36:08 -0800 (PST)
Raw View
------=_Part_28217_1555127302.1513690568687
Content-Type: multipart/alternative;
boundary="----=_Part_28218_350715386.1513690568688"
------=_Part_28218_350715386.1513690568688
Content-Type: text/plain; charset="UTF-8"
On Tuesday, December 19, 2017 at 8:28:13 AM UTC-5, David Brown wrote:
>
> I would say it could be useful in cases like this:
>
> auto number(int x) {
> auto s;
> if (x == 0) {
> s = "zero"s;
> } else if (x == 1) {
> s = "one"s;
> } else {
> s = "not a nice number"s;
> }
> return s;
> }
>
> i.e., you don't have a suitable initial value to use.
>
A problem that can be solved with lambdas:
auto s = [&]{
if (x == 0) {
return "zero"s;
} else if (x == 1) {
return "one"s;
} else {
return "not a nice number"s;
}
}();
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/ad5aad19-9e96-4f55-9ea1-8e908f56d625%40isocpp.org.
------=_Part_28218_350715386.1513690568688
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><br><br>On Tuesday, December 19, 2017 at 8:28:13 AM UTC-5,=
David Brown wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0;mar=
gin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">I would say=
it could be useful in cases like this:
<br>
<br>auto number(int x) {
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0auto s;
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0if (x =3D=3D 0) {
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0s =3D "zero"s;
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0} else if (x =3D=3D 1) =
{
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0s =3D "one"s;
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0} else {
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0s =3D "not a nice number"s;
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0}
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0return s;
<br>}
<br>
<br>i.e., you don't have a suitable initial value to use.
<br></blockquote><div><br></div><div>A problem that can be solved with lamb=
das:</div><div><br></div><div class=3D"prettyprint" style=3D"border: 1px so=
lid rgb(187, 187, 187); word-wrap: break-word; background-color: rgb(250, 2=
50, 250);"><code class=3D"prettyprint"><div class=3D"subprettyprint"><span =
class=3D"styled-by-prettify" style=3D"color: #008;">auto</span><span class=
=3D"styled-by-prettify" style=3D"color: #000;"> s </span><span class=3D"sty=
led-by-prettify" style=3D"color: #660;">=3D</span><span class=3D"styled-by-=
prettify" style=3D"color: #000;"> </span><span class=3D"styled-by-prettify"=
style=3D"color: #660;">[&]{</span><span class=3D"styled-by-prettify" s=
tyle=3D"color: #000;"><br>=C2=A0 =C2=A0 </span><span class=3D"styled-by-pre=
ttify" style=3D"color: #008;">if</span><span class=3D"styled-by-prettify" s=
tyle=3D"color: #000;"> </span><span class=3D"styled-by-prettify" style=3D"c=
olor: #660;">(</span><span class=3D"styled-by-prettify" style=3D"color: #00=
0;">x </span><span class=3D"styled-by-prettify" style=3D"color: #660;">=3D=
=3D</span><span class=3D"styled-by-prettify" style=3D"color: #000;"> </span=
><span class=3D"styled-by-prettify" style=3D"color: #066;">0</span><span cl=
ass=3D"styled-by-prettify" style=3D"color: #660;">)</span><span class=3D"st=
yled-by-prettify" style=3D"color: #000;"> </span><span class=3D"styled-by-p=
rettify" style=3D"color: #660;">{</span><span class=3D"styled-by-prettify" =
style=3D"color: #000;"> <br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 </span><span class=
=3D"styled-by-prettify" style=3D"color: #008;">return</span><span class=3D"=
styled-by-prettify" style=3D"color: #000;"> </span><span class=3D"styled-by=
-prettify" style=3D"color: #080;">"zero"</span><span class=3D"sty=
led-by-prettify" style=3D"color: #000;">s</span><span class=3D"styled-by-pr=
ettify" style=3D"color: #660;">;</span><span class=3D"styled-by-prettify" s=
tyle=3D"color: #000;"> <br>=C2=A0 =C2=A0 </span><span class=3D"styled-by-pr=
ettify" style=3D"color: #660;">}</span><span class=3D"styled-by-prettify" s=
tyle=3D"color: #000;"> </span><span class=3D"styled-by-prettify" style=3D"c=
olor: #008;">else</span><span class=3D"styled-by-prettify" style=3D"color: =
#000;"> </span><span class=3D"styled-by-prettify" style=3D"color: #008;">if=
</span><span class=3D"styled-by-prettify" style=3D"color: #000;"> </span><s=
pan class=3D"styled-by-prettify" style=3D"color: #660;">(</span><span class=
=3D"styled-by-prettify" style=3D"color: #000;">x </span><span class=3D"styl=
ed-by-prettify" style=3D"color: #660;">=3D=3D</span><span class=3D"styled-b=
y-prettify" style=3D"color: #000;"> </span><span class=3D"styled-by-prettif=
y" style=3D"color: #066;">1</span><span class=3D"styled-by-prettify" style=
=3D"color: #660;">)</span><span class=3D"styled-by-prettify" style=3D"color=
: #000;"> </span><span class=3D"styled-by-prettify" style=3D"color: #660;">=
{</span><span class=3D"styled-by-prettify" style=3D"color: #000;"> <br>=C2=
=A0 =C2=A0 =C2=A0 =C2=A0 </span><span class=3D"styled-by-prettify" style=3D=
"color: #008;">return</span><span class=3D"styled-by-prettify" style=3D"col=
or: #000;"> </span><span class=3D"styled-by-prettify" style=3D"color: #080;=
">"one"</span><span class=3D"styled-by-prettify" style=3D"color: =
#000;">s</span><span class=3D"styled-by-prettify" style=3D"color: #660;">;<=
/span><span class=3D"styled-by-prettify" style=3D"color: #000;"> <br>=C2=A0=
=C2=A0 </span><span class=3D"styled-by-prettify" style=3D"color: #660;">}<=
/span><span class=3D"styled-by-prettify" style=3D"color: #000;"> </span><sp=
an class=3D"styled-by-prettify" style=3D"color: #008;">else</span><span cla=
ss=3D"styled-by-prettify" style=3D"color: #000;"> </span><span class=3D"sty=
led-by-prettify" style=3D"color: #660;">{</span><span class=3D"styled-by-pr=
ettify" style=3D"color: #000;"> <br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 </span><spa=
n class=3D"styled-by-prettify" style=3D"color: #008;">return</span><span cl=
ass=3D"styled-by-prettify" style=3D"color: #000;"> </span><span class=3D"st=
yled-by-prettify" style=3D"color: #080;">"not a nice number"</spa=
n><span class=3D"styled-by-prettify" style=3D"color: #000;">s</span><span c=
lass=3D"styled-by-prettify" style=3D"color: #660;">;</span><span class=3D"s=
tyled-by-prettify" style=3D"color: #000;"> <br>=C2=A0 =C2=A0 </span><span c=
lass=3D"styled-by-prettify" style=3D"color: #660;">}</span><span class=3D"s=
tyled-by-prettify" style=3D"color: #000;"> <br></span><span class=3D"styled=
-by-prettify" style=3D"color: #660;">}();</span><span class=3D"styled-by-pr=
ettify" style=3D"color: #000;"><br></span></div></code></div><br><div><br><=
/div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/ad5aad19-9e96-4f55-9ea1-8e908f56d625%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/ad5aad19-9e96-4f55-9ea1-8e908f56d625=
%40isocpp.org</a>.<br />
------=_Part_28218_350715386.1513690568688--
------=_Part_28217_1555127302.1513690568687--
.
Author: Giovanni Piero Deretta <gpderetta@gmail.com>
Date: Tue, 19 Dec 2017 06:05:52 -0800 (PST)
Raw View
------=_Part_7776_511986900.1513692352179
Content-Type: multipart/alternative;
boundary="----=_Part_7777_2146366543.1513692352179"
------=_Part_7777_2146366543.1513692352179
Content-Type: text/plain; charset="UTF-8"
On Tuesday, December 19, 2017 at 1:36:08 PM UTC, Nicol Bolas wrote:
>
>
>
> On Tuesday, December 19, 2017 at 8:28:13 AM UTC-5, David Brown wrote:
>>
>> I would say it could be useful in cases like this:
>>
>> auto number(int x) {
>> auto s;
>> if (x == 0) {
>> s = "zero"s;
>> } else if (x == 1) {
>> s = "one"s;
>> } else {
>> s = "not a nice number"s;
>> }
>> return s;
>> }
>>
>> i.e., you don't have a suitable initial value to use.
>>
>
> A problem that can be solved with lambdas:
>
> auto s = [&]{
> if (x == 0) {
> return "zero"s;
> } else if (x == 1) {
> return "one"s;
> } else {
> return "not a nice number"s;
> }
> }();
>
>
>
a more interesting use case for full inference:
std::vector x: // x is vector<int>
...
x.push_back(0);
Again, the proposal is semi-serious, because the language type system need
to be designed with inference in mind. I'm not qualified to say, but I
doubt that it would be possible to usefully retrofit it into C++.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/736952c4-26e4-47fe-b65c-ea24878fbe3b%40isocpp.org.
------=_Part_7777_2146366543.1513692352179
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">On Tuesday, December 19, 2017 at 1:36:08 PM UTC, Nicol Bol=
as wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0;margin-left: =
0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div dir=3D"ltr"><br>=
<br>On Tuesday, December 19, 2017 at 8:28:13 AM UTC-5, David Brown wrote:<b=
lockquote class=3D"gmail_quote" style=3D"margin:0;margin-left:0.8ex;border-=
left:1px #ccc solid;padding-left:1ex">I would say it could be useful in cas=
es like this:
<br>
<br>auto number(int x) {
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0auto s;
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0if (x =3D=3D 0) {
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0s =3D "zero"s;
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0} else if (x =3D=3D 1) =
{
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0s =3D "one"s;
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0} else {
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0s =3D "not a nice number"s;
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0}
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0return s;
<br>}
<br>
<br>i.e., you don't have a suitable initial value to use.
<br></blockquote><div><br></div><div>A problem that can be solved with lamb=
das:</div><div><br></div><div style=3D"border:1px solid rgb(187,187,187);wo=
rd-wrap:break-word;background-color:rgb(250,250,250)"><code><div><span styl=
e=3D"color:#008">auto</span><span style=3D"color:#000"> s </span><span styl=
e=3D"color:#660">=3D</span><span style=3D"color:#000"> </span><span style=
=3D"color:#660">[&]{</span><span style=3D"color:#000"><br>=C2=A0 =C2=A0=
</span><span style=3D"color:#008">if</span><span style=3D"color:#000"> </s=
pan><span style=3D"color:#660">(</span><span style=3D"color:#000">x </span>=
<span style=3D"color:#660">=3D=3D</span><span style=3D"color:#000"> </span>=
<span style=3D"color:#066">0</span><span style=3D"color:#660">)</span><span=
style=3D"color:#000"> </span><span style=3D"color:#660">{</span><span styl=
e=3D"color:#000"> <br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 </span><span style=3D"col=
or:#008">return</span><span style=3D"color:#000"> </span><span style=3D"col=
or:#080">"zero"</span><span style=3D"color:#000">s</span><span st=
yle=3D"color:#660">;</span><span style=3D"color:#000"> <br>=C2=A0 =C2=A0 </=
span><span style=3D"color:#660">}</span><span style=3D"color:#000"> </span>=
<span style=3D"color:#008">else</span><span style=3D"color:#000"> </span><s=
pan style=3D"color:#008">if</span><span style=3D"color:#000"> </span><span =
style=3D"color:#660">(</span><span style=3D"color:#000">x </span><span styl=
e=3D"color:#660">=3D=3D</span><span style=3D"color:#000"> </span><span styl=
e=3D"color:#066">1</span><span style=3D"color:#660">)</span><span style=3D"=
color:#000"> </span><span style=3D"color:#660">{</span><span style=3D"color=
:#000"> <br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 </span><span style=3D"color:#008">r=
eturn</span><span style=3D"color:#000"> </span><span style=3D"color:#080">&=
quot;one"</span><span style=3D"color:#000">s</span><span style=3D"colo=
r:#660">;</span><span style=3D"color:#000"> <br>=C2=A0 =C2=A0 </span><span =
style=3D"color:#660">}</span><span style=3D"color:#000"> </span><span style=
=3D"color:#008">else</span><span style=3D"color:#000"> </span><span style=
=3D"color:#660">{</span><span style=3D"color:#000"> <br>=C2=A0 =C2=A0 =C2=
=A0 =C2=A0 </span><span style=3D"color:#008">return</span><span style=3D"co=
lor:#000"> </span><span style=3D"color:#080">"not a nice number"<=
/span><span style=3D"color:#000">s</span><span style=3D"color:#660">;</span=
><span style=3D"color:#000"> <br>=C2=A0 =C2=A0 </span><span style=3D"color:=
#660">}</span><span style=3D"color:#000"> <br></span><span style=3D"color:#=
660">}();</span><span style=3D"color:#000"><br></span></div></code></div><b=
r><div><br></div></div></blockquote><div><br>a more interesting use case fo=
r full inference:<br><br>=C2=A0 std::vector x: // x is vector<int><br=
>=C2=A0 ...<br>=C2=A0 x.push_back(0);<br><br>Again, the proposal is semi-se=
rious, because the language type system need to be designed with inference =
in mind. I'm not qualified to say, but I doubt that it would be possibl=
e to usefully retrofit it into C++.<br><br><br><br><br><br>=C2=A0</div></di=
v>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/736952c4-26e4-47fe-b65c-ea24878fbe3b%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/736952c4-26e4-47fe-b65c-ea24878fbe3b=
%40isocpp.org</a>.<br />
------=_Part_7777_2146366543.1513692352179--
------=_Part_7776_511986900.1513692352179--
.
Author: Nicol Bolas <jmckesson@gmail.com>
Date: Tue, 19 Dec 2017 06:16:59 -0800 (PST)
Raw View
------=_Part_28072_1678495051.1513693019425
Content-Type: multipart/alternative;
boundary="----=_Part_28073_777092529.1513693019459"
------=_Part_28073_777092529.1513693019459
Content-Type: text/plain; charset="UTF-8"
On Tuesday, December 19, 2017 at 9:05:52 AM UTC-5, Giovanni Piero Deretta
wrote:
>
> On Tuesday, December 19, 2017 at 1:36:08 PM UTC, Nicol Bolas wrote:
>>
>>
>>
>> On Tuesday, December 19, 2017 at 8:28:13 AM UTC-5, David Brown wrote:
>>>
>>> I would say it could be useful in cases like this:
>>>
>>> auto number(int x) {
>>> auto s;
>>> if (x == 0) {
>>> s = "zero"s;
>>> } else if (x == 1) {
>>> s = "one"s;
>>> } else {
>>> s = "not a nice number"s;
>>> }
>>> return s;
>>> }
>>>
>>> i.e., you don't have a suitable initial value to use.
>>>
>>
>> A problem that can be solved with lambdas:
>>
>> auto s = [&]{
>> if (x == 0) {
>> return "zero"s;
>> } else if (x == 1) {
>> return "one"s;
>> } else {
>> return "not a nice number"s;
>> }
>> }();
>>
>>
>>
> a more interesting use case for full inference:
>
> std::vector x: // x is vector<int>
> ...
> x.push_back(0);
>
> Again, the proposal is semi-serious, because the language type system need
> to be designed with inference in mind.
>
It's more than just that. I'm personally of the opinion that a statement
should be comprehensible based on itself and any prior statements upon
which it clearly depends (ie: naming variables/functions previously
declared/used). The only thing remotely like this in C++ as it currently
stands is return type deduction. And even that is something you can track
down by looking for a specific keyword. All other forms of deduction are
self-contained within the statement where they are used.
To have a statement be semantic nonsense until some *subsequent* statement
is executed? A subsequent statement which cannot be searched for easily?
Not to mention the increased fragility due to the possibility of misusing
it (using `x` in a way that doesn't require a type).
Compactness of code has diminishing returns. And code clarity for such
statements suffer greatly.
>
>
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/8a08f9d6-283a-49da-9428-a38dde03e654%40isocpp.org.
------=_Part_28073_777092529.1513693019459
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><br><br>On Tuesday, December 19, 2017 at 9:05:52 AM UTC-5,=
Giovanni Piero Deretta wrote:<blockquote class=3D"gmail_quote" style=3D"ma=
rgin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">=
<div dir=3D"ltr">On Tuesday, December 19, 2017 at 1:36:08 PM UTC, Nicol Bol=
as wrote:<blockquote class=3D"gmail_quote" style=3D"margin:0;margin-left:0.=
8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><br><br>O=
n Tuesday, December 19, 2017 at 8:28:13 AM UTC-5, David Brown wrote:<blockq=
uote class=3D"gmail_quote" style=3D"margin:0;margin-left:0.8ex;border-left:=
1px #ccc solid;padding-left:1ex">I would say it could be useful in cases li=
ke this:
<br>
<br>auto number(int x) {
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0auto s;
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0if (x =3D=3D 0) {
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0s =3D "zero"s;
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0} else if (x =3D=3D 1) =
{
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0s =3D "one"s;
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0} else {
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0s =3D "not a nice number"s;
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0}
<br>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0return s;
<br>}
<br>
<br>i.e., you don't have a suitable initial value to use.
<br></blockquote><div><br></div><div>A problem that can be solved with lamb=
das:</div><div><br></div><div style=3D"border:1px solid rgb(187,187,187);wo=
rd-wrap:break-word;background-color:rgb(250,250,250)"><code><div><span styl=
e=3D"color:#008">auto</span><span style=3D"color:#000"> s </span><span styl=
e=3D"color:#660">=3D</span><span style=3D"color:#000"> </span><span style=
=3D"color:#660">[&]{</span><span style=3D"color:#000"><br>=C2=A0 =C2=A0=
</span><span style=3D"color:#008">if</span><span style=3D"color:#000"> </s=
pan><span style=3D"color:#660">(</span><span style=3D"color:#000">x </span>=
<span style=3D"color:#660">=3D=3D</span><span style=3D"color:#000"> </span>=
<span style=3D"color:#066">0</span><span style=3D"color:#660">)</span><span=
style=3D"color:#000"> </span><span style=3D"color:#660">{</span><span styl=
e=3D"color:#000"> <br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 </span><span style=3D"col=
or:#008">return</span><span style=3D"color:#000"> </span><span style=3D"col=
or:#080">"zero"</span><span style=3D"color:#000">s</span><span st=
yle=3D"color:#660">;</span><span style=3D"color:#000"> <br>=C2=A0 =C2=A0 </=
span><span style=3D"color:#660">}</span><span style=3D"color:#000"> </span>=
<span style=3D"color:#008">else</span><span style=3D"color:#000"> </span><s=
pan style=3D"color:#008">if</span><span style=3D"color:#000"> </span><span =
style=3D"color:#660">(</span><span style=3D"color:#000">x </span><span styl=
e=3D"color:#660">=3D=3D</span><span style=3D"color:#000"> </span><span styl=
e=3D"color:#066">1</span><span style=3D"color:#660">)</span><span style=3D"=
color:#000"> </span><span style=3D"color:#660">{</span><span style=3D"color=
:#000"> <br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 </span><span style=3D"color:#008">r=
eturn</span><span style=3D"color:#000"> </span><span style=3D"color:#080">&=
quot;one"</span><span style=3D"color:#000">s</span><span style=3D"colo=
r:#660">;</span><span style=3D"color:#000"> <br>=C2=A0 =C2=A0 </span><span =
style=3D"color:#660">}</span><span style=3D"color:#000"> </span><span style=
=3D"color:#008">else</span><span style=3D"color:#000"> </span><span style=
=3D"color:#660">{</span><span style=3D"color:#000"> <br>=C2=A0 =C2=A0 =C2=
=A0 =C2=A0 </span><span style=3D"color:#008">return</span><span style=3D"co=
lor:#000"> </span><span style=3D"color:#080">"not a nice number"<=
/span><span style=3D"color:#000">s</span><span style=3D"color:#660">;</span=
><span style=3D"color:#000"> <br>=C2=A0 =C2=A0 </span><span style=3D"color:=
#660">}</span><span style=3D"color:#000"> <br></span><span style=3D"color:#=
660">}();</span><span style=3D"color:#000"><br></span></div></code></div><b=
r><div><br></div></div></blockquote><div><br>a more interesting use case fo=
r full inference:<br><br>=C2=A0 std::vector x: // x is vector<int><br=
>=C2=A0 ...<br>=C2=A0 x.push_back(0);<br><br>Again, the proposal is semi-se=
rious, because the language type system need to be designed with inference =
in mind.</div></div></blockquote><div><br></div><div>It's more than jus=
t that. I'm personally of the opinion that a statement should be compre=
hensible based on itself and any prior statements upon which it clearly dep=
ends (ie: naming variables/functions previously declared/used). The only th=
ing remotely like this in C++ as it currently stands is return type deducti=
on. And even that is something you can track down by looking for a specific=
keyword. All other forms of deduction are self-contained within the statem=
ent where they are used.<br></div><div><br></div><div>To have a statement b=
e semantic nonsense until some <i>subsequent</i> statement is executed? A s=
ubsequent statement which cannot be searched for easily? Not to mention the=
increased fragility due to the possibility of misusing it (using `x` in a =
way that doesn't require a type).<br></div><div><br></div><div>Compactn=
ess of code has diminishing returns. And code clarity for such statements s=
uffer greatly.<br></div><div><br></div><br><blockquote class=3D"gmail_quote=
" style=3D"margin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding=
-left: 1ex;"><div dir=3D"ltr"><div><br>=C2=A0</div></div></blockquote><styl=
e>HTML {margin: 0px !important; border: medium none !important;}
..dragdrop-handle {cursor: move; -moz-user-select: none;}
..dragdrop-draggable { }
..dragdrop-dragging { }
..dragdrop-positioner {border: 1px dashed rgb(30, 144, 255); margin: 0px !im=
portant; z-index: 100;}
..dragdrop-flow-panel-positioner {color: rgb(30, 144, 255); display: inline;=
text-align: center; vertical-align: middle;}
..dragdrop-proxy {background-color: rgb(119, 170, 255);}
..dragdrop-selected ,.dragdrop-dragging ,.dragdrop-proxy {opacity: 0.3;}
..dragdrop-movable-panel {z-index: 200; margin: 0px !important; border: medi=
um none !important;}
..gb_8a {display: none !important;}
..gb_9a {visibility: hidden;}
..gb_5c {display: inline-block; padding: 0px 0px 0px 15px; vertical-align: m=
iddle;}
..gb_5c:first-child ,#gbsfw:first-child + .gb_5c {padding-left: 0px;}
..gb_Mc {position: relative;}
..gb_b {display: inline-block; outline: medium none; vertical-align: middle;=
border-radius: 2px; box-sizing: border-box; height: 30px; width: 30px; col=
or: rgb(0, 0, 0); cursor: pointer; text-decoration: none;}
#gb#gb a.gb_b {color: rgb(0, 0, 0); cursor: pointer; text-decoration: none;=
}
..gb_pb {border-color: transparent transparent rgb(255, 255, 255); border-st=
yle: dashed dashed solid; border-width: 0px 8.5px 8.5px; display: none; pos=
ition: absolute; left: 6.5px; top: 37px; z-index: 1; height: 0px; width: 0p=
x; animation: 0.2s ease 0s normal none 1 running gb__a;}
..gb_qb {border-color: transparent transparent rgba(0, 0, 0, 0.2); border-st=
yle: dashed dashed solid; border-width: 0px 8.5px 8.5px; display: none; pos=
ition: absolute; left: 6.5px; z-index: 1; height: 0px; width: 0px; animatio=
n: 0.2s ease 0s normal none 1 running gb__a; top: 36px;}
..gb_fa {background: rgb(255, 255, 255) none repeat scroll 0% 0%; border: 1p=
x solid rgba(0, 0, 0, 0.2); color: rgb(0, 0, 0); box-shadow: 0px 2px 10px r=
gba(0, 0, 0, 0.2); display: none; outline: medium none; overflow: hidden; p=
osition: absolute; right: 0px; top: 44px; animation: 0.2s ease 0s normal no=
ne 1 running gb__a; border-radius: 2px; -moz-user-select: text;}
..gb_5c.gb_g .gb_pb ,.gb_5c.gb_g .gb_qb ,.gb_5c.gb_g .gb_fa ,.gb_g.gb_fa {di=
splay: block;}
..gb_5c.gb_g.gb_uf .gb_pb ,.gb_5c.gb_g.gb_uf .gb_qb {display: none;}
..gb_vf {position: absolute; right: 0px; top: 44px; z-index: -1;}
..gb_cb .gb_pb ,.gb_cb .gb_qb ,.gb_cb .gb_fa {margin-top: -10px;}
..gb_Ob .gb_qb {border-width: 1px 0px 0px 1px; border-style: solid none none=
solid; border-color: rgba(0, 0, 0, 0.2) currentcolor currentcolor rgba(0, =
0, 0, 0.2); -moz-border-top-colors: none; -moz-border-right-colors: none; -=
moz-border-bottom-colors: none; -moz-border-left-colors: none; border-image=
: none; height: 14px; width: 14px; transform: rotate(45deg);}
..gb_Ob .gb_pb {border-width: 1px 0px 0px 1px; border-style: solid none none=
solid; -moz-border-top-colors: none; -moz-border-right-colors: none; -moz-=
border-bottom-colors: none; -moz-border-left-colors: none; border-image: no=
ne; height: 14px; width: 14px; transform: rotate(45deg); border-color: rgb(=
255, 255, 255); background: rgb(255, 255, 255) none repeat scroll 0% 0%;}
..gb_da .gb_b {background-position: 0px -894px; opacity: 0.55;}
..gb_ea .gb_da .gb_b {background-position: 0px -894px;}
..gb_X .gb_da .gb_b {background-position: 0px -2180px; opacity: 1;}
..gb_fa.gb_ga {min-height: 196px; overflow-y: auto; width: 320px;}
..gb_ha {transition: height 0.2s ease-in-out 0s;}
..gb_ia {background: rgb(255, 255, 255) none repeat scroll 0% 0%; margin: 0p=
x; min-height: 100px; padding: 28px 27px 28px 28px; text-align: left; white=
-space: normal; width: 265px;}
..gb_ja {background: rgb(245, 245, 245) none repeat scroll 0% 0%; cursor: po=
inter; height: 40px; overflow: hidden;}
..gb_ka {position: relative;}
..gb_ja {display: block; line-height: 40px; text-align: center; width: 320px=
;}
..gb_ka {display: block; line-height: 40px; text-align: center;}
..gb_ka.gb_la {line-height: 0;}
..gb_ja ,.gb_ja:visited ,.gb_ja:active ,.gb_ka ,.gb_ka:visited {color: rgba(=
0, 0, 0, 0.87); text-decoration: none;}
..gb_ka:active {color: rgba(0, 0, 0, 0.87);}
#gb a.gb_ja ,#gb a.gb_ja:visited ,#gb a.gb_ja:active ,#gb a.gb_ka ,#gb a.gb=
_ka:visited {color: rgba(0, 0, 0, 0.87); text-decoration: none;}
#gb a.gb_ka:active {color: rgba(0, 0, 0, 0.87);}
..gb_ka ,.gb_ia {display: none;}
..gb_ba ,.gb_ba + .gb_ka ,.gb_ma .gb_ka ,.gb_ma .gb_ia {display: block;}
..gb_ka:hover ,.gb_ka:active ,#gb a.gb_ka:hover ,#gb a.gb_ka:active {text-de=
coration: underline;}
..gb_ka {border-bottom: 1px solid rgb(235, 235, 235); left: 28px; width: 264=
px;}
..gb_ma .gb_ja {display: none;}
..gb_ka:last-child {border-bottom-width: 0px;}
..gb_na .gb_O {display: initial;}
..gb_na.gb_oa {height: 100px; text-align: center;}
..gb_na.gb_oa img {padding: 34px 0px; height: 32px; width: 32px;}
..gb_na .gb_2 {background-image: url("//ssl.gstatic.com/gb/images/v1_da9d8cf=
f.png"); background-size: 92px 2835px; background-position: 0px -828px;}
..gb_na .gb_2 + img {border: 0px none; margin: 8px; height: 48px; width: 48p=
x;}
..gb_na div.gb_pa {background: rgb(255, 255, 170) none repeat scroll 0% 0%; =
border-radius: 5px; padding: 5px; text-align: center;}
..gb_na.gb_qa ,.gb_na.gb_ra {padding-bottom: 0px;}
..gb_na.gb_sa ,.gb_na.gb_ra {padding-top: 0px;}
..gb_na.gb_ra a ,.gb_na.gb_sa a {top: 0px;}
..gb_ta .gb_ja {margin-top: 0px; position: static;}
..gb_ua {display: inline-block;}
..gb_va {margin: -12px 28px 28px; position: relative; width: 264px; border-r=
adius: 2px; box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1), 0px 0px 1px rgba(0,=
0, 0, 0.1);}
..gb_4 {background-image: url("//ssl.gstatic.com/gb/images/v1_da9d8cff.png")=
; background-size: 92px 2835px; display: inline-block; margin: 8px; vertica=
l-align: middle; height: 64px; width: 64px;}
..gb_wa {color: rgb(38, 38, 38); display: inline-block; font: 13px/18px Aria=
l,sans-serif; margin-right: 80px; padding: 10px 10px 10px 0px; vertical-ali=
gn: middle; white-space: normal;}
..gb_xa {font: 16px/24px Arial,sans-serif;}
..gb_ya ,#gb#gb .gb_ya {color: rgb(66, 127, 237); text-decoration: none;}
..gb_ya:hover ,#gb#gb .gb_ya:hover {text-decoration: underline;}
..gb_za .gb_ia {position: relative;}
..gb_za .gb_O {position: absolute; top: 28px; left: 28px;}
..gb_ja.gb_Aa {display: none; height: 0px;}
..gb_N .gb_da .gb_b::before ,.gb_N.gb_ea .gb_da .gb_b::before {left: 0px; to=
p: -894px;}
..gb_N.gb_X .gb_da .gb_b::before {left: 0px; top: -2180px;}
..gb_Ob .gb_ja {position: relative;}
..gb_da .gb_b:hover ,.gb_da .gb_b:focus {opacity: 0.85;}
..gb_X .gb_da .gb_b:hover ,.gb_X .gb_da .gb_b:focus {opacity: 1;}
#gb#gb a.gb_O ,#gb#gb a.gb_P ,#gb#gb span.gb_P {color: rgba(0, 0, 0, 0.87);=
text-decoration: none;}
#gb#gb a.gb_P:hover ,#gb#gb a.gb_P:focus {opacity: 0.85; text-decoration: u=
nderline;}
..gb_Q.gb_R {display: none; padding-left: 15px; vertical-align: middle;}
..gb_Q.gb_R:first-child {padding-left: 0px;}
..gb_S.gb_R {display: inline-block;}
..gb_Q span {opacity: 0.55; -moz-user-select: text;}
..gb_T .gb_S.gb_R {flex: 0 1 auto; display: flex;}
..gb_U .gb_S.gb_R {display: none;}
..gb_Q .gb_P {display: inline-block; line-height: 24px; outline: medium none=
; vertical-align: middle;}
..gb_S .gb_P {display: none;}
..gb_V .gb_S .gb_P {min-width: 0px;}
..gb_W .gb_S .gb_P {width: 0px !important;}
#gb#gb.gb_X a.gb_P ,#gb#gb.gb_X span.gb_P ,#gb#gb .gb_X a.gb_P ,#gb#gb .gb_=
X span.gb_P {color: rgb(255, 255, 255);}
#gb#gb.gb_X span.gb_P ,#gb#gb .gb_X span.gb_P {opacity: 0.7;}
..gb_M.gb_M {background-size: 64px 64px;}
#gb2 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/3a1e625196=
..png");}
..gb_N #gb2 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/3a1e6=
25196.png");}
#gb22 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/3daf4c1f8=
8.png");}
..gb_N #gb22 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/3daf=
4c1f88.png");}
#gb45 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/f420d06f6=
6.png");}
..gb_N #gb45 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/f420=
d06f66.png");}
#gb72 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/78b3d46de=
1.png");}
..gb_N #gb72 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/78b3=
d46de1.png");}
#gb117 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/142da275=
78.png");}
..gb_N #gb117 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/142=
da27578.png");}
#gb136 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/911e3628=
e6.png");}
..gb_N #gb136 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/911=
e3628e6.png");}
#gb166 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/41679a9e=
c5.png");}
..gb_N #gb166 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/416=
79a9ec5.png");}
#gb171 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/4244245d=
7e.png");}
..gb_N #gb171 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/424=
4245d7e.png");}
#gb177 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/4653513b=
7d.png");}
..gb_N #gb177 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/465=
3513b7d.png");}
#gb206 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/ad330d84=
59.png");}
..gb_N #gb206 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/ad3=
30d8459.png");}
#gb207 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/2c21041e=
16.png");}
..gb_N #gb207 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/2c2=
1041e16.png");}
#gb211 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/c03dda0b=
34.png");}
..gb_N #gb211 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/c03=
dda0b34.png");}
#gb217 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/71060be5=
b3.png");}
..gb_N #gb217 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/710=
60be5b3.png");}
#gb228 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/74aa55e0=
c2.png");}
..gb_N #gb228 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/74a=
a55e0c2.png");}
#gb249 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/afa40f6e=
42.png");}
..gb_N #gb249 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/afa=
40f6e42.png");}
#gb260 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/ea554714=
e7.png");}
..gb_N #gb260 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/ea5=
54714e7.png");}
#gb261 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/0b26f6f8=
e4.png");}
..gb_N #gb261 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/0b2=
6f6f8e4.png");}
#gb108 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/dfbeb247=
85.png");}
..gb_N #gb108 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/dfb=
eb24785.png");}
#gb60 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/85bb99a34=
1.png");}
..gb_N #gb60 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/85bb=
99a341.png");}
#gb175 .gb_M {background-image: url("//ssl.gstatic.com/gb/images/a/eacd033c=
28.png");}
..gb_N #gb175 .gb_M::before {content: url("//ssl.gstatic.com/gb/images/a/eac=
d033c28.png");}
..gb_Z {padding: 1px; display: inline-block; vertical-align: top; color: bla=
ck; z-index: 999; height: 98px; width: 86px;}
..gb_Z a {text-decoration: none;}
..gb_Z[aria-grabbed=3D"true"] {visibility: hidden;}
..gb_Z:hover {z-index: 1001;}
..gb_Z:hover a {border: 1px solid rgb(229, 229, 229); border-radius: 2px; ma=
rgin: 7px 1px;}
..gb_Z.gb_0 a {border: 1px solid rgb(229, 229, 229); box-shadow: 0px 1px 2px=
rgba(0, 0, 0, 0.1); background: rgb(255, 255, 255) none repeat scroll 0% 0=
%; cursor: grabbing; margin: -1px; visibility: visible; z-index: 1001;}
..gb_1 {opacity: 0.5;}
..gb_Z.gb_0 a {color: rgba(0, 0, 0, 0.87) !important; cursor: grabbing; font=
: 13px/27px Arial,sans-serif; text-decoration: none !important;}
..gb_O {color: rgba(0, 0, 0, 0.87); display: inline-block; font-size: 13px; =
margin: 8px 2px; text-align: center; outline: medium none;}
..gb_O .gb_2 ,.gb_O .gb_M {display: inline-block; vertical-align: top; heigh=
t: 64px; width: 64px;}
..gb_3 {display: block; line-height: 20px; overflow: hidden; white-space: no=
wrap; width: 84px; text-overflow: ellipsis;}
..gb_Z:hover .gb_O {z-index: 1;}
..gb_Z:hover .gb_3 {background: rgba(255, 255, 255, 0.9) none repeat scroll =
0% 0%; white-space: normal; overflow-wrap: break-word;}
..gb_O .gb_2 {background-image: url("//ssl.gstatic.com/gb/images/v1_da9d8cff=
..png"); background-size: 92px 2835px;}
..gb_N .gb_O .gb_2 ,.gb_N .gb_4.gb_2 {background-image: none; overflow: hidd=
en; position: relative;}
..gb_N .gb_O .gb_2::before ,.gb_N .gb_4.gb_2::before {content: url("//ssl.gs=
tatic.com/gb/images/v1_da9d8cff.png"); position: absolute;}
..gb_N .gb_M {background-image: none !important; position: relative;}
..gb_N .gb_M::before {left: 0px; position: absolute; top: 0px;}
..gb_5 .gb_O:focus ,#gb#gb .gb_5 a.gb_O:focus {text-decoration: underline;}
..gb_Z.gb_6[aria-grabbed=3D"true"] {visibility: visible;}
..gb_7 ,.gb_8 {position: relative; top: 27px; visibility: hidden;}
..gb_9 ,.gb_aa {left: 37px; visibility: hidden;}
..gb_7 {float: left; width: 0px; height: 0px; border-top: 5px solid transpar=
ent; border-bottom: 5px solid transparent; border-right: 5px solid rgb(66, =
115, 219);}
..gb_8 {float: right; width: 0px; height: 0px; border-top: 5px solid transpa=
rent; border-bottom: 5px solid transparent; border-left: 5px solid rgb(66, =
115, 219);}
..gb_9 {position: absolute; top: 0px; width: 0px; height: 0px; border-left: =
5px solid transparent; border-right: 5px solid transparent; border-bottom: =
5px solid rgb(66, 115, 219);}
..gb_aa {position: absolute; top: 59px; width: 0px; height: 0px; border-left=
: 5px solid transparent; border-right: 5px solid transparent; border-top: 5=
px solid rgb(66, 115, 219);}
ul.gb_ba li.gb_6:not(:first-child) .gb_7 ,ul.gb_ba li.gb_6:not(:nth-child(-=
n+3)) .gb_9 ,ul.gb_ba li.gb_6 .gb_8 ,ul.gb_ba li.gb_6 .gb_aa ,ul.gb_ca li.g=
b_6 .gb_7 ,ul.gb_ca li.gb_6 .gb_9 ,ul.gb_ca li.gb_6:not(:last-child) .gb_8 =
,ul.gb_ca li.gb_6:not(:nth-last-child(-n+3)) .gb_aa {visibility: visible;}
a.gb_Ba {border: medium none; color: rgb(66, 133, 244); cursor: default; fo=
nt-weight: bold; outline: medium none; position: relative; text-align: cent=
er; text-decoration: none; text-transform: uppercase; white-space: nowrap; =
-moz-user-select: none;}
a.gb_Ba:hover::after ,a.gb_Ba:focus::after {background-color: rgba(0, 0, 0,=
0.12); content: ""; height: 100%; left: 0px; position: absolute; top: 0px;=
width: 100%;}
a.gb_Ba:hover ,a.gb_Ba:focus {text-decoration: none;}
a.gb_Ba:active {background-color: rgba(153, 153, 153, 0.4); text-decoration=
: none;}
a.gb_Ca {background-color: rgb(66, 133, 244); color: rgb(255, 255, 255);}
a.gb_Ca:active {background-color: rgb(0, 67, 178);}
..gb_Da {box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.16);}
..gb_Ba ,.gb_Ca ,.gb_Ea ,.gb_Fa {display: inline-block; line-height: 28px; p=
adding: 0px 12px; border-radius: 2px;}
..gb_Ea {background: rgb(248, 248, 248) none repeat scroll 0% 0%; border: 1p=
x solid rgb(198, 198, 198);}
..gb_Fa {background: rgb(248, 248, 248) none repeat scroll 0% 0%;}
..gb_Ea ,#gb a.gb_Ea.gb_Ea ,.gb_Fa {color: rgb(102, 102, 102); cursor: defau=
lt; text-decoration: none;}
#gb a.gb_Fa.gb_Fa {cursor: default; text-decoration: none;}
..gb_Fa {border: 1px solid rgb(66, 133, 244); font-weight: bold; outline: me=
dium none; background: rgba(0, 0, 0, 0) -moz-linear-gradient(center top , r=
gb(67, 135, 253), rgb(70, 131, 234)) repeat scroll 0% 0%;}
#gb a.gb_Fa.gb_Fa {color: rgb(255, 255, 255);}
..gb_Fa:hover {box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.15);}
..gb_Fa:active {box-shadow: 0px 2px 0px rgba(0, 0, 0, 0.15) inset; backgroun=
d: rgba(0, 0, 0, 0) -moz-linear-gradient(center top , rgb(60, 122, 228), rg=
b(63, 118, 211)) repeat scroll 0% 0%;}
..gb_wf {display: inline-block; line-height: normal; position: relative; z-i=
ndex: 987;}
..gb_ab {background-size: 32px 32px; border-radius: 50%; display: block; mar=
gin: -1px; overflow: hidden; position: relative; height: 32px; width: 32px;=
z-index: 0;}
..gb_ab:hover ,.gb_ab:focus {box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.15);}
..gb_ab:active {box-shadow: 0px 2px 0px rgba(0, 0, 0, 0.15) inset;}
..gb_ab:active::after {background: rgba(0, 0, 0, 0.1) none repeat scroll 0% =
0%; border-radius: 50%; content: ""; display: block; height: 100%;}
..gb_bb {cursor: pointer; line-height: 30px; min-width: 30px; opacity: 0.75;=
overflow: hidden; vertical-align: middle; text-overflow: ellipsis;}
..gb_b.gb_bb {width: auto;}
..gb_bb:hover ,.gb_bb:focus {opacity: 0.85;}
..gb_cb .gb_bb ,.gb_cb .gb_db {line-height: 26px;}
#gb#gb.gb_cb a.gb_bb ,.gb_cb .gb_db {font-size: 11px; height: auto;}
..gb_eb {border-top: 4px solid rgb(0, 0, 0); border-left: 4px dashed transpa=
rent; border-right: 4px dashed transparent; display: inline-block; margin-l=
eft: 6px; opacity: 0.75; vertical-align: middle;}
..gb_fb:hover .gb_eb {opacity: 0.85;}
..gb_X .gb_bb ,.gb_X .gb_eb {opacity: 1;}
#gb#gb.gb_X.gb_X a.gb_bb ,#gb#gb .gb_X.gb_X a.gb_bb {color: rgb(255, 255, 2=
55);}
..gb_X.gb_X .gb_eb {border-top-color: rgb(255, 255, 255); opacity: 1;}
..gb_ea .gb_ab:hover ,.gb_X .gb_ab:hover ,.gb_ea .gb_ab:focus ,.gb_X .gb_ab:=
focus {box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.15), 0px 1px 2px rgba(0, 0, =
0, 0.2);}
..gb_gb .gb_hb ,.gb_ib .gb_hb {position: absolute; right: 1px;}
..gb_hb.gb_R ,.gb_jb.gb_R ,.gb_fb.gb_R {flex: 0 1 auto;}
..gb_kb.gb_W .gb_bb {width: 30px !important;}
..gb_lb.gb_9a {display: none;}
..gb_mb.gb_8a {display: none;}
..gb_mb {background-color: rgb(204, 204, 204); height: 3px; overflow: hidden=
;}
..gb_nb {background-color: rgb(244, 180, 0); height: 100%; width: 50%; anima=
tion: 1.5s linear 0s normal none infinite running progressmove;}
..gb_bb ~ .gb_pb ,.gb_bb ~ .gb_qb {left: auto; right: 6.5px;}
..gb_rb {outline: medium none;}
..gb_rb.gb_sb {width: 320px;}
..gb_tb ,#gb a.gb_tb.gb_tb ,.gb_ub a ,#gb .gb_ub.gb_ub a {color: rgb(51, 102=
, 204); text-decoration: none;}
..gb_tb:active ,#gb a.gb_tb:active ,.gb_tb:hover ,#gb a.gb_tb:hover ,.gb_ub =
a:active ,#gb .gb_ub a:active ,.gb_ub a:hover ,#gb .gb_ub a:hover {text-dec=
oration: underline;}
..gb_vb {margin: 20px; white-space: nowrap;}
..gb_wb ,.gb_xb {display: inline-block; vertical-align: top;}
..gb_rb.gb_sb .gb_xb {max-width: 164px;}
..gb_wb {margin-right: 20px; position: relative;}
..gb_yb {border-radius: 50%; overflow: hidden;}
..gb_zb {background-size: 96px 96px; border: medium none; vertical-align: to=
p; height: 96px; width: 96px;}
..gb_lb {background: rgba(78, 144, 254, 0.7) none repeat scroll 0% 0%; botto=
m: 0px; color: rgb(255, 255, 255); font-size: 9px; font-weight: bold; left:=
0px; line-height: 9px; position: absolute; padding: 7px 0px; text-align: c=
enter; width: 96px;}
..gb_yb .gb_lb {background: rgba(0, 0, 0, 0.54) none repeat scroll 0% 0%;}
..gb_Ab {font-weight: bold; margin: -4px 0px 1px; text-overflow: ellipsis; o=
verflow: hidden;}
..gb_Cb {color: rgb(102, 102, 102); text-overflow: ellipsis; overflow: hidde=
n;}
..gb_ub {color: rgb(204, 204, 204); margin: 6px 0px;}
..gb_ub a {margin: 0px 10px;}
..gb_ub a:first-child {margin-left: 0px;}
..gb_ub a:last-child {margin-right: 0px;}
..gb_xb .gb_Db {background: rgb(77, 144, 254) none repeat scroll 0% 0%; bord=
er-color: rgb(48, 121, 237); font-weight: bold; margin: 10px 0px 0px; color=
: rgb(255, 255, 255);}
#gb .gb_xb a.gb_Db.gb_Db {color: rgb(255, 255, 255);}
..gb_xb .gb_Db:hover {background: rgb(53, 122, 232) none repeat scroll 0% 0%=
; border-color: rgb(47, 91, 183);}
..gb_Eb.gb_oa {border-top: medium none;}
..gb_Eb {background: rgb(245, 245, 245) none repeat scroll 0% 0%; border-top=
: 1px solid rgba(0, 0, 0, 0.2); border-color: rgba(0, 0, 0, 0.2); padding: =
10px 0px; width: 100%; display: table;}
..gb_Eb .gb_Db {margin: 0px 20px; white-space: nowrap;}
..gb_Eb > div {display: table-cell; text-align: right;}
..gb_Eb > div:first-child {text-align: left;}
..gb_Eb .gb_Fb {display: block; text-align: center;}
..gb_Hb .gb_pb {border-bottom-color: rgb(254, 249, 219);}
..gb_Ib {background: rgb(254, 249, 219) none repeat scroll 0% 0%; font-size:=
11px; padding: 10px 20px; white-space: normal;}
..gb_Ib b ,.gb_tb {white-space: nowrap;}
..gb_Lb {background: rgb(245, 245, 245) none repeat scroll 0% 0%; border-top=
: 1px solid rgba(0, 0, 0, 0.2); max-height: 230px; overflow: auto;}
..gb_Lb.gb_sb {max-height: 170px;}
..gb_Lb.gb_sb.gb_Mb {max-height: 124px;}
..gb_Nb {border-top: 1px solid rgba(0, 0, 0, 0.2); display: block; padding: =
10px 20px; position: relative; white-space: nowrap;}
..gb_Ob .gb_Nb:focus .gb_Pb {outline: 1px dotted rgb(255, 255, 255);}
..gb_Nb:hover {background: rgb(238, 238, 238) none repeat scroll 0% 0%;}
..gb_Nb[selected=3D"true"] {overflow: hidden;}
..gb_Nb[selected=3D"true"] > .gb_Qb {background-color: rgba(117, 117, 117, 0=
..9);}
..gb_Nb[selected=3D"true"] > .gb_Rb {display: block; position: absolute; z-i=
ndex: 2;}
..gb_Rb::-moz-focus-inner {border: 0px none;}
..gb_Rb {background-color: transparent; border: medium none; color: rgb(255,=
255, 255); display: none; font-family: Roboto,Arial,sans-serif; font-weigh=
t: 400; font-size: 14px; height: 36px; min-width: 86px; text-align: center;=
top: 16px; width: auto;}
..gb_Nb[selected=3D"true"] > .gb_Rb:focus {background-color: rgba(0, 0, 0, 0=
..24); border-radius: 2px; outline: 0px none;}
..gb_Nb[selected=3D"true"] > .gb_Rb:hover ,.gb_Nb[selected=3D"true"] > .gb_R=
b:focus:hover {background-color: rgb(86, 86, 86); border-radius: 2px;}
..gb_Nb[selected=3D"true"] > .gb_Rb:active {border-radius: 2px; background-c=
olor: rgb(33, 33, 33);}
..gb_Sb {left: 0px; margin-left: 5%;}
..gb_Tb {margin-right: 5%; right: 0px;}
..gb_Nb:first-child ,.gb_Ub:first-child + .gb_Nb {border-top: 0px none;}
..gb_Ub {display: none;}
..gb_Vb {cursor: default;}
..gb_Vb:hover {background: transparent none repeat scroll 0% 0%;}
..gb_Wb {border: medium none; vertical-align: top; height: 48px; width: 48px=
;}
..gb_Pb {display: inline-block; margin: 6px 0px 0px 10px;}
..gb_rb.gb_sb .gb_Pb {max-width: 222px;}
..gb_Vb .gb_Wb ,.gb_Vb .gb_Pb {opacity: 0.4;}
..gb_Xb {color: rgb(0, 0, 0); text-overflow: ellipsis; overflow: hidden;}
..gb_Vb .gb_Xb {color: rgb(102, 102, 102);}
..gb_Zb {color: rgb(102, 102, 102); text-overflow: ellipsis; overflow: hidde=
n;}
..gb_0b {color: rgb(102, 102, 102); font-style: italic;}
..gb_Qb {background-color: transparent; height: 100%; left: 0px; position: a=
bsolute; text-align: center; top: 0px; width: 100%; z-index: 1;}
..gb_Rb:hover {background-color: rgba(100, 100, 100, 0.4);}
..gb_1b {background: rgb(245, 245, 245) none repeat scroll 0% 0%; border-top=
: 1px solid rgba(0, 0, 0, 0.2); display: block; padding: 10px 20px;}
..gb_2b {background-position: -35px -242px; display: inline-block; margin: 1=
px 0px; vertical-align: middle; height: 25px; width: 25px;}
..gb_N .gb_2b::before {left: -35px; top: -242px;}
..gb_3b {color: rgb(66, 127, 237); display: inline-block; padding: 0px 25px =
0px 10px; vertical-align: middle; white-space: normal;}
..gb_1b:hover .gb_3b {text-decoration: underline;}
..gb_Eb .gb_Db:hover {box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1); border-col=
or: rgb(198, 198, 198); color: rgb(34, 34, 34); background-color: rgb(255, =
255, 255); background-image: -moz-linear-gradient(center top , rgb(255, 255=
, 255), rgb(248, 248, 248));}
#gbsfw {min-width: 400px; overflow: visible;}
..gb_4b ,#gbsfw.gb_g {display: block; outline: medium none;}
#gbsfw.gb_pa iframe {display: none;}
..gb_5b {padding: 118px 0px; text-align: center;}
..gb_6b {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/gb/images/a/f5c=
dd88b65.png") no-repeat scroll center 0px; color: rgb(170, 170, 170); font-=
size: 13px; line-height: 20px; padding-top: 76px;}
..gb_6b a {color: rgb(66, 133, 244); text-decoration: none;}
..gb_kb:not(.gb_N) .gb_ab::before ,.gb_kb:not(.gb_N) .gb_zb::before {content=
: none;}
..gb_N .gb_ac .gb_cc::before {left: 0px; top: -1451px;}
..gb_N.gb_X .gb_ac .gb_cc::before {left: 0px; top: -2560px;}
..gb_N.gb_ea .gb_ac .gb_cc::before {left: 0px; top: -1206px;}
..gb_N .gb_Wa {background-image: none !important;}
..gb_N .gb_dc {visibility: visible;}
..gb_Ob .gb_fe span {background: transparent none repeat scroll 0% 0%;}
..gb_7b {min-width: 152px; overflow: hidden; position: relative; z-index: 98=
7;}
..gb_8b {position: absolute; padding: 0px 30px;}
..gb_9b .gb_8b {right: 100%; margin-right: -152px;}
..gb_ac {display: inline-block; outline: medium none; vertical-align: middle=
;}
..gb_bc .gb_ac {position: relative; top: 2px;}
..gb_ac .gb_cc ,.gb_Wa {display: block;}
..gb_dc {border: medium none; display: block; visibility: hidden;}
..gb_ac .gb_cc {background-position: 0px -1451px; height: 33px; width: 92px;=
}
..gb_Wa {background-repeat: no-repeat;}
..gb_X .gb_ac .gb_cc {background-position: 0px -2560px;}
..gb_ea .gb_ac .gb_cc {background-position: 0px -1206px; opacity: 0.54;}
..gb_Cc {background-position: -35px -1171px; opacity: 0.55; height: 100%; wi=
dth: 100%;}
..gb_b:hover .gb_Cc ,.gb_b:focus .gb_Cc {opacity: 0.85;}
..gb_Dc .gb_Cc {background-position: -35px -2180px;}
..gb_Ec {background-color: rgb(203, 68, 55); border-radius: 8px; font: bold =
11px/16px Arial; color: rgb(255, 255, 255); min-width: 14px; padding: 0px 1=
px; position: absolute; right: 0px; text-align: center; text-shadow: 0px 1p=
x 0px rgba(0, 0, 0, 0.1); top: 0px; visibility: hidden; z-index: 990;}
..gb_Fc .gb_Ec ,.gb_Fc .gb_Hc ,.gb_Fc .gb_Hc.gb_Ic {visibility: visible;}
..gb_Hc {padding: 0px 2px; visibility: hidden;}
..gb_Jc:not(.gb_Kc) .gb_qb ,.gb_Jc:not(.gb_Kc) .gb_pb {left: 3px;}
..gb_Ec.gb_Lc {animation: 0.6s ease-in-out 1s normal both 1 running gb__nb; =
perspective-origin: right top; transform: scale(1, 1); transform-origin: ri=
ght top 0px;}
..gb_Lc .gb_Hc {visibility: visible;}
..gb_ea .gb_b .gb_Cc {background-position: -21px -1731px; opacity: 0.7;}
..gb_ea .gb_Dc .gb_Cc {background-position: 0px -1558px;}
..gb_ea .gb_b:hover .gb_Cc ,.gb_ea .gb_b:focus .gb_Cc {opacity: 0.85;}
..gb_X .gb_b .gb_Cc {background-position: 0px -207px; opacity: 1;}
..gb_X .gb_Dc .gb_Cc {background-position: -35px -207px;}
..gb_ea .gb_Ec ,.gb_X .gb_Ec {border: medium none;}
..gb_Jc .gb_Mc {font-size: 14px; font-weight: bold; top: 0px; right: 0px;}
..gb_Jc .gb_b {display: inline-block; vertical-align: middle; box-sizing: bo=
rder-box; height: 30px; width: 30px;}
..gb_Jc .gb_pb {border-bottom-color: rgb(229, 229, 229);}
..gb_Nc {background-color: rgba(0, 0, 0, 0.55); color: rgb(255, 255, 255); f=
ont-size: 12px; font-weight: bold; line-height: 20px; margin: 5px; padding:=
0px 2px; text-align: center; box-sizing: border-box; border-radius: 50%; h=
eight: 20px; width: 20px;}
..gb_Nc.gb_Oc {background-position: -70px -1171px;}
..gb_Nc.gb_Pc {background-position: 0px -1835px;}
..gb_b:hover .gb_Nc ,.gb_b:focus .gb_Nc {background-color: rgba(0, 0, 0, 0.8=
5);}
#gbsfw.gb_Qc {background: rgb(229, 229, 229) none repeat scroll 0% 0%; bord=
er-color: rgb(204, 204, 204);}
..gb_ea .gb_Nc {background-color: rgba(0, 0, 0, 0.7);}
..gb_X .gb_Nc.gb_Nc ,.gb_X .gb_Fc .gb_Nc.gb_Nc ,.gb_X .gb_Fc .gb_b:hover .gb=
_Nc ,.gb_X .gb_Fc .gb_b:focus .gb_Nc {background-color: rgb(255, 255, 255);=
color: rgb(64, 64, 64);}
..gb_X .gb_Nc.gb_Oc {background-position: 0px -600px;}
..gb_X .gb_Nc.gb_Pc {background-position: -35px -479px;}
..gb_Fc .gb_Nc.gb_Nc {background-color: rgb(219, 68, 55); color: rgb(255, 25=
5, 255);}
..gb_Fc .gb_b:hover .gb_Nc ,.gb_Fc .gb_b:focus .gb_Nc {background-color: rgb=
(165, 39, 20);}
..gb_N .gb_Cc::before {left: -35px; top: -1171px;}
..gb_N .gb_Dc .gb_Cc::before {left: -35px; top: -2180px;}
..gb_N.gb_ea .gb_b .gb_Cc::before {left: -21px; top: -1731px;}
..gb_N.gb_ea .gb_Dc .gb_Cc::before {left: 0px; top: -1558px;}
..gb_N.gb_X .gb_b .gb_Cc::before {left: 0px; top: -207px;}
..gb_N.gb_X .gb_Dc .gb_Cc::before {left: -35px; top: -207px;}
..gb_Ob .gb_Nc {border: 1px solid rgb(255, 255, 255); color: rgb(255, 255, 2=
55);}
..gb_Ob.gb_ea .gb_Nc {border-color: rgb(0, 0, 0); color: rgb(0, 0, 0);}
..gb_N .gb_Nc.gb_Oc::before ,.gb_Ob.gb_N.gb_X .gb_Nc.gb_Oc::before {left: -7=
0px; top: -1171px;}
..gb_N .gb_Nc.gb_Pc::before ,.gb_Ob.gb_N.gb_X .gb_Nc.gb_Pc::before {left: 0p=
x; top: -1835px;}
..gb_N.gb_X .gb_Nc.gb_Oc::before ,.gb_Ob.gb_N.gb_ea .gb_Nc.gb_Oc::before {le=
ft: 0px; top: -600px;}
..gb_N.gb_X .gb_Nc.gb_Pc::before ,.gb_Ob.gb_N.gb_ea .gb_Nc.gb_Pc::before {le=
ft: -35px; top: -479px;}
..gb_ud {color: rgb(255, 255, 255); font-size: 13px; font-weight: bold; heig=
ht: 25px; line-height: 19px; padding-top: 5px; padding-left: 12px; position=
: relative; background-color: rgb(77, 144, 254);}
..gb_ud .gb_vd {color: rgb(255, 255, 255); cursor: default; font-size: 22px;=
font-weight: normal; position: absolute; right: 12px; top: 5px;}
..gb_ud .gb_ed ,.gb_ud .gb_wd {color: rgb(255, 255, 255); display: inline-bl=
ock; font-size: 11px; margin-left: 16px; padding: 0px 8px; white-space: now=
rap;}
..gb_xd {background: rgba(0, 0, 0, 0) -moz-linear-gradient(center top , rgba=
(0, 0, 0, 0.16), rgba(0, 0, 0, 0.2)) repeat scroll 0% 0%; border-radius: 2p=
x; border: 1px solid rgba(0, 0, 0, 0.1); cursor: default !important; text-d=
ecoration: none !important;}
..gb_xd:hover {background: rgba(0, 0, 0, 0) -moz-linear-gradient(center top =
, rgba(0, 0, 0, 0.14), rgba(0, 0, 0, 0.2)) repeat scroll 0% 0%; border: 1px=
solid rgba(0, 0, 0, 0.2); box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1);}
..gb_xd:active {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3) inset;}
..gb_5c.gb_6c {padding: 0px;}
..gb_6c .gb_fa {padding: 26px 26px 22px 13px; background: rgb(255, 255, 255)=
none repeat scroll 0% 0%;}
..gb_7c.gb_6c .gb_fa {background: rgb(77, 144, 254) none repeat scroll 0% 0%=
;}
a.gb_8c {color: rgb(102, 102, 102) !important; font-size: 22px; height: 9px=
; opacity: 0.8; position: absolute; right: 14px; top: 4px; text-decoration:=
none !important; width: 9px;}
..gb_7c a.gb_8c {color: rgb(193, 209, 244) !important;}
a.gb_8c:hover ,a.gb_8c:active {opacity: 1;}
..gb_9c {padding: 0px; width: 258px; white-space: normal; display: table;}
..gb_ad .gb_fa {top: 36px; border: 0px none; padding: 16px; box-shadow: 4px =
4px 12px rgba(0, 0, 0, 0.4);}
..gb_ad .gb_9c {width: 328px;}
..gb_ad .gb_Fa ,.gb_ad .gb_bd ,.gb_ad .gb_4c ,.gb_ad .gb_Ba ,.gb_cd {line-he=
ight: normal; font-family: Roboto,RobotoDraft,Helvetica,Arial,sans-serif;}
..gb_ad .gb_Fa ,.gb_ad .gb_bd ,.gb_ad .gb_Ba {font-weight: 500;}
..gb_ad .gb_Fa ,.gb_ad .gb_Ba {border: 0px none; padding: 10px 8px;}
..gb_6c .gb_Fa:active {outline: medium none; box-shadow: 0px 4px 5px rgba(0,=
0, 0, 0.16);}
..gb_ad .gb_bd {color: rgb(34, 34, 34); margin-bottom: 8px;}
..gb_ad .gb_4c {color: rgb(128, 128, 128); font-size: 14px;}
..gb_dd {text-align: right; font-size: 14px; padding-bottom: 0px; white-spac=
e: nowrap;}
..gb_dd .gb_ed {margin-left: 8px;}
..gb_dd .gb_fd.gb_ed img {background-color: inherit; border-radius: initial;=
height: 1.5em; margin: -0.25em 10px -0.25em 2px; vertical-align: text-top;=
width: 1.5em;}
..gb_ad .gb_9c .gb_gd .gb_fd {border: 2px solid transparent;}
..gb_ad .gb_9c .gb_gd .gb_fd:focus {border-color: rgb(187, 204, 255);}
..gb_ad .gb_9c .gb_gd .gb_fd:focus::after ,.gb_ad .gb_9c .gb_gd .gb_fd:hover=
::after {background-color: transparent;}
..gb_cd {background-color: rgb(64, 64, 64); color: rgb(255, 255, 255); paddi=
ng: 16px; position: absolute; top: 36px; min-width: 328px; max-width: 650px=
; right: 0px; border-radius: 2px; box-shadow: 4px 4px 12px rgba(0, 0, 0, 0.=
4);}
..gb_cd a ,.gb_cd a:visited {color: rgb(94, 151, 246); text-decoration: none=
;}
..gb_hd {text-transform: uppercase;}
..gb_id {padding-left: 50px;}
..gb_7c .gb_9c {width: 200px;}
..gb_bd {color: rgb(51, 51, 51); font-size: 16px; line-height: 20px; margin:=
0px 0px 16px;}
..gb_7c .gb_bd {color: rgb(255, 255, 255);}
..gb_4c {color: rgb(102, 102, 102); line-height: 17px; margin: 0px 0px 5px;}
..gb_7c .gb_4c {color: rgb(255, 255, 255);}
..gb_kd {text-decoration: none; color: rgb(94, 151, 246);}
..gb_kd:visited {color: rgb(94, 151, 246);}
..gb_kd:hover ,.gb_kd:active {text-decoration: underline;}
..gb_ld {position: absolute; background: transparent none repeat scroll 0% 0=
%; top: -999px; z-index: -1; visibility: hidden; margin-top: 1px; margin-le=
ft: 1px;}
#gb .gb_6c {margin: 0px;}
..gb_6c .gb_Db {background: rgb(77, 144, 254) none repeat scroll 0% 0%; bord=
er-color: rgb(48, 121, 237); margin-top: 15px;}
..gb_ad .gb_Fa {background: rgb(66, 133, 244) none repeat scroll 0% 0%;}
#gb .gb_6c a.gb_Db.gb_Db {color: rgb(255, 255, 255);}
..gb_6c .gb_Db:hover {background: rgb(53, 122, 232) none repeat scroll 0% 0%=
; border-color: rgb(47, 91, 183);}
..gb_md .gb_Mc .gb_pb {border-bottom-color: rgb(255, 255, 255); display: blo=
ck;}
..gb_nd .gb_Mc .gb_pb {border-bottom-color: rgb(77, 144, 254); display: bloc=
k;}
..gb_md .gb_Mc .gb_qb ,.gb_nd .gb_Mc .gb_qb {display: block;}
..gb_od ,.gb_gd {display: table-cell;}
..gb_od {vertical-align: middle;}
..gb_ad .gb_od {vertical-align: top;}
..gb_gd {padding-left: 13px; width: 100%;}
..gb_ad .gb_gd {padding-left: 20px;}
..gb_pd {display: inline-block; padding: 1em 0px 0px; position: relative; wi=
dth: 100%;}
..gb_qd {color: rgb(255, 0, 0); font-style: italic; margin: 0px; padding-lef=
t: 46px;}
..gb_pd .gb_rd {float: right; margin: -20px 0px; width: calc(100% - 46px);}
..gb_sd svg {fill: grey;}
..gb_sd.gb_td svg {fill: rgb(66, 133, 244);}
..gb_pd .gb_rd label::after {background-color: rgb(66, 133, 244);}
..gb_sd {display: inline; float: right; margin-right: 22px; position: relati=
ve; top: -4px;}
..gb_xf {margin-bottom: 32px; font-size: small;}
..gb_xf .gb_yf {margin-right: 5px;}
..gb_xf .gb_zf {color: red;}
..gb_Tc {display: none;}
..gb_Tc.gb_g {display: block;}
..gb_Uc {background-color: rgb(255, 255, 255); box-shadow: 0px 1px 0px rgba(=
0, 0, 0, 0.08); color: rgb(0, 0, 0); position: relative; z-index: 986;}
..gb_Vc {height: 40px; padding: 16px 24px; white-space: nowrap;}
..gb_Wc {position: fixed; bottom: 16px; padding: 16px; right: 16px; white-sp=
ace: normal; width: 328px; transition: width 0.2s ease 0s, bottom 0.2s ease=
0s, right 0.2s ease 0s; border-radius: 2px; box-shadow: 0px 5px 5px -3px r=
gba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px r=
gba(0, 0, 0, 0.12);}
..gb_Uc .gb_Db {border: 0px none; font-weight: 500; font-size: 14px; line-he=
ight: 36px; min-width: 32px; padding: 0px 16px; vertical-align: middle;}
..gb_Uc .gb_Db::before {content: ""; height: 6px; left: 0px; position: absol=
ute; top: -6px; width: 100%;}
..gb_Uc .gb_Db::after {bottom: -6px; content: ""; height: 6px; left: 0px; po=
sition: absolute; width: 100%;}
..gb_Uc .gb_Db + .gb_Db {margin-left: 8px;}
..gb_Xc {height: 48px; padding: 4px; margin: -8px 0px 0px -8px;}
..gb_Wc .gb_Xc {float: left; margin: -4px;}
..gb_Zc {font-family: Roboto,RobotoDraft,Helvetica,Arial,sans-serif; overflo=
w: hidden; vertical-align: top;}
..gb_Vc .gb_Zc {display: inline-block; padding-left: 8px; width: 640px;}
..gb_Wc .gb_Zc {display: block; margin-left: 56px; padding-bottom: 16px;}
..gb_0c {background-color: inherit;}
..gb_Vc .gb_0c {display: inline-block; position: absolute; top: 18px; right:=
24px;}
..gb_Wc .gb_0c {text-align: right; padding-right: 24px; padding-top: 6px;}
..gb_0c .gb_1c {height: 1.5em; margin: -0.25em 10px -0.25em 0px; vertical-al=
ign: text-top; width: 1.5em;}
..gb_2c {line-height: 20px; font-size: 16px; font-weight: 700; color: rgba(0=
, 0, 0, 0.87);}
..gb_Wc .gb_2c {color: rgba(0, 0, 0, 0.87); font-size: 16px; line-height: 20=
px; padding-top: 8px;}
..gb_Vc .gb_2c ,.gb_Vc .gb_3c {width: 640px;}
..gb_3c .gb_4c ,.gb_3c {line-height: 20px; font-size: 13px; font-weight: 400=
; color: rgba(0, 0, 0, 0.54);}
..gb_Wc .gb_3c .gb_4c {font-size: 14px;}
..gb_Wc .gb_3c {padding-top: 12px;}
..gb_Wc .gb_3c a {color: rgb(66, 133, 244);}
..gb_Af {position: relative; width: 650px; z-index: 986;}
#gbq2 {padding-top: 15px;}
..gb_T .gb_Af {min-width: 200px; flex: 0 2 auto;}
..gb_V ~ .gb_Af {min-width: 0px;}
..gb_T #gbqf {margin-right: 0px; display: flex;}
..gb_T .gbqff {min-width: 0px; flex: 1 1 auto;}
..gb_N .gbqfi::before {left: 0px; top: -479px;}
..gb_Ob .gbqfb:focus .gbqfi {outline: 1px dotted rgb(255, 255, 255);}
#gbq2 {display: block;}
#gbqf {display: block; margin: 0px 60px 0px 0px; white-space: nowrap;}
..gbqff {border: medium none; display: inline-block; margin: 0px; padding: 0=
px; vertical-align: top; width: 100%;}
..gbqfqw ,#gbqfb ,.gbqfwa {vertical-align: top;}
#gbqfaa ,#gbqfab ,#gbqfqwb {position: absolute;}
#gbqfaa {left: 0px;}
#gbqfab {right: 0px;}
..gbqfqwb ,.gbqfqwc {right: 0px; left: 0px; height: 100%;}
..gbqfqwb {padding: 0px 8px;}
#gbqfbw {display: inline-block; vertical-align: top;}
#gbqfb {border: 1px solid transparent; border-bottom-left-radius: 0px; bord=
er-top-left-radius: 0px; height: 30px; margin: 0px; outline: medium none; p=
adding: 0px; width: 60px; box-shadow: none; box-sizing: border-box; backgro=
und: rgba(0, 0, 0, 0) -moz-linear-gradient(center top , rgb(67, 135, 253), =
rgb(70, 131, 234)) repeat scroll 0% 0%;}
#gbqfb:hover {box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1);}
#gbqfb:focus {box-shadow: 0px 0px 0px 1px rgba(255, 255, 255, 0.5) inset;}
#gbqfb:hover:focus {box-shadow: 0px 0px 0px 1px rgb(255, 255, 255) inset, 0=
px 1px 1px rgba(0, 0, 0, 0.1);}
#gbqfb:active:active {border: 1px solid transparent; box-shadow: 0px 2px 0p=
x rgba(0, 0, 0, 0.15) inset; background: rgba(0, 0, 0, 0) -moz-linear-gradi=
ent(center top , rgb(60, 122, 228), rgb(63, 118, 211)) repeat scroll 0% 0%;=
}
..gbqfi {background-position: 0px -479px; display: inline-block; margin: -1p=
x; height: 30px; width: 30px;}
..gbqfqw {background: rgb(255, 255, 255) none repeat scroll 0% 0% padding-bo=
x; border-width: 1px 0px 1px 1px; border-style: solid; -moz-border-top-colo=
rs: none; -moz-border-right-colors: none; -moz-border-bottom-colors: none; =
-moz-border-left-colors: none; border-image: none; border-color: rgba(0, 0,=
0, 0.15); height: 30px; box-sizing: border-box;}
#gbfwc .gbqfqw {border-right-width: 1px;}
#gbqfqw {position: relative;}
..gbqfqw.gbqfqw:hover {border-color: rgba(0, 0, 0, 0.3);}
..gbqfwa {display: inline-block; width: 100%;}
..gbqfwb {width: 40%;}
..gbqfwc {width: 60%;}
..gbqfwb .gbqfqw {margin-left: 10px;}
..gbqfqw.gbqfqw:active ,.gbqfqw.gbqfqwf.gbqfqwf {border-color: rgb(66, 133, =
244);}
#gbqfq ,#gbqfqb ,#gbqfqc {background: transparent none repeat scroll 0% 0%;=
border: medium none; height: 20px; margin-top: 4px; padding: 0px; vertical=
-align: top; width: 100%;}
#gbqfq:focus ,#gbqfqb:focus ,#gbqfqc:focus {outline: medium none;}
..gbqfif ,.gbqfsf {color: rgb(34, 34, 34); font: 16px arial,sans-serif;}
#gbqfbwa {display: none; text-align: center; height: 0px;}
#gbqfbwa .gbqfba {margin: 16px 8px;}
#gbqfsa ,#gbqfsb {font: bold 11px/27px Arial,sans-serif !important; vertica=
l-align: top;}
..gb_ea .gbqfqw.gbqfqw ,.gb_X .gbqfqw.gbqfqw {border-color: rgb(255, 255, 25=
5); box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);}
..gb_ea #gbqfb ,.gb_X #gbqfb {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);}
..gb_ea #gbqfb:hover ,.gb_X #gbqfb:hover {box-shadow: 0px 1px 1px rgba(0, 0,=
0, 0.1), 0px 1px 2px rgba(0, 0, 0, 0.2);}
..gb_ea #gbqfb:active ,.gb_X #gbqfb:active {box-shadow: 0px 2px 0px rgba(0, =
0, 0, 0.15) inset, 0px 1px 2px rgba(0, 0, 0, 0.2);}
..gbqfb ,.gbqfba ,.gbqfbb {cursor: default !important; display: inline-block=
; font-weight: bold; height: 29px; line-height: 29px; min-width: 54px; padd=
ing: 0px 8px; text-align: center; text-decoration: none !important; border-=
radius: 2px; -moz-user-select: none;}
..gbqfba:focus {border: 1px solid rgb(77, 144, 254); outline: medium none; b=
ox-shadow: 0px 0px 0px 1px rgba(255, 255, 255, 0.5) inset;}
..gbqfba:hover {border-color: rgb(198, 198, 198); color: rgb(34, 34, 34) !im=
portant; box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1); background: rgba(0, 0,=
0, 0) -moz-linear-gradient(center top , rgb(248, 248, 248), rgb(241, 241, =
241)) repeat scroll 0% 0%;}
..gbqfba:hover:focus {box-shadow: 0px 0px 0px 1px rgb(255, 255, 255) inset, =
0px 1px 1px rgba(0, 0, 0, 0.1);}
..gbqfb::-moz-focus-inner {border: 0px none;}
..gbqfba::-moz-focus-inner {border: 0px none;}
..gbqfba {border: 1px solid rgba(0, 0, 0, 0.1); color: rgb(68, 68, 68) !impo=
rtant; font-size: 11px; background: rgba(0, 0, 0, 0) -moz-linear-gradient(c=
enter top , rgb(245, 245, 245), rgb(241, 241, 241)) repeat scroll 0% 0%;}
..gbqfba:active {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1) inset;}
..gb_Bf .gb_b {background-position: -35px -2805px; opacity: 0.55; height: 30=
px; width: 30px;}
..gb_Bf .gb_b:hover ,.gb_Bf .gb_b:focus {opacity: 0.85;}
..gb_Bf .gb_pb {border-bottom-color: rgb(245, 245, 245);}
#gbsfw.gb_Cf {background: rgb(245, 245, 245) none repeat scroll 0% 0%; bord=
er-color: rgb(204, 204, 204);}
..gb_X .gb_Bf .gb_b {background-position: 0px -1171px; opacity: 1;}
..gb_ea .gb_Bf .gb_b {background-position: -52px -859px; opacity: 0.7;}
..gb_ea .gb_Bf .gb_b:hover ,.gb_ea .gb_Bf .gb_b:focus {opacity: 0.85;}
..gb_N .gb_Bf .gb_b::before {left: -35px; top: -2805px;}
..gb_N.gb_ea .gb_Bf .gb_b::before {left: -52px; top: -859px;}
..gb_N.gb_X .gb_Bf .gb_b::before {left: 0px; top: -1171px;}
..gb_3f {width: 480px;}
..gb_4f {background: rgba(0, 0, 0, 0.04) none repeat scroll 0% 0%; border-bo=
ttom-right-radius: 0px; line-height: 30px; position: relative; text-align: =
center; width: 100%;}
..gb_4f:hover {background: rgba(0, 0, 0, 0.08) none repeat scroll 0% 0%;}
..gb_4f .gb_5f {margin: 0px 10px;}
..gb_6f {position: relative; z-index: 1;}
..gb_7f {background: rgb(238, 238, 238) none repeat scroll 0% 0%; border-bot=
tom: 1px solid rgb(227, 227, 227); border-left: 1px solid rgb(227, 227, 227=
); display: inline-block; line-height: 32px; text-align: center; width: 160=
px;}
..gb_6f .gb_7f:first-child {border-left: medium none;}
..gb_6f .gb_g {background: rgb(255, 255, 255) none repeat scroll 0% 0%; bord=
er-bottom: medium none;}
..gb_8f {display: none; text-align: center;}
..gb_8f.gb_g {display: block;}
..gb_9f {color: inherit; display: inline-block; padding: 15px; text-decorati=
on: none;}
..gb_ag {background-clip: content-box; background-origin: content-box; displ=
ay: inherit; height: 64px; width: 64px;}
..gb_bg {display: block; text-align: center;}
..gb_cg {border-top: medium none; top: 78px; z-index: 1; border-radius: 0px =
0px 2px 2px;}
..gb_dg {display: inline-block; vertical-align: middle;}
..gb_eg {display: inline-block; vertical-align: middle; background-size: 100=
% auto; height: 20px; width: 20px;}
..gb_fg {background-image: url("//ssl.gstatic.com/gb/images/a/5a1c013d3d.png=
");}
..gb_gg {background-image: url("//ssl.gstatic.com/gb/images/a/de580e5330.png=
");}
..gb_hg {background-image: url("//ssl.gstatic.com/gb/images/a/451603daf6.png=
");}
..gb_dg {margin-left: 4px;}
..gb_ig {margin: 5px; width: 470px;}
..gb_jg {border: medium none; display: block; margin: 0px 5px; outline: medi=
um none; padding: 0px 5px; height: 30px; width: 450px;}
..gb_kg {border-width: 1px medium medium; border-style: solid none none; bor=
der-color: rgb(227, 227, 227) currentcolor currentcolor; -moz-border-top-co=
lors: none; -moz-border-right-colors: none; -moz-border-bottom-colors: none=
; -moz-border-left-colors: none; border-image: none; display: block; margin=
: 0px 5px; outline: medium none; padding: 0px 5px; height: 30px; width: 450=
px;}
..gb_lg {border-color: rgb(227, 227, 227); display: block; font: inherit; ma=
rgin: 0px 5px; outline: medium none; padding: 5px; text-align: left; height=
: 320px; width: 450px;}
..gb_mg ,.gb_ng {border: 1px solid rgb(227, 227, 227); border-radius: 2px; c=
ursor: pointer; line-height: 27px; margin: 5px; padding: 0px 8px; width: 54=
px;}
..gb_mg {float: left;}
..gb_ng {float: right;}
..gb_yg {color: rgb(0, 0, 0); font: 13px/27px Arial,sans-serif; left: 0px; m=
in-width: 1117px; position: absolute; top: 0px; -moz-user-select: none; wid=
th: 100%;}
..gb_Ef {font: 13px/27px Arial,sans-serif; position: relative; height: 60px;=
width: 100%;}
..gb_cb .gb_Ef {height: 28px;}
#gba {height: 60px;}
#gba.gb_cb {height: 28px;}
#gba.gb_zg {height: 90px;}
#gba.gb_Ag {height: 132px;}
#gba.gb_zg.gb_cb {height: 58px;}
..gb_Ef > .gb_R {height: 60px; line-height: 58px; vertical-align: middle;}
..gb_cb .gb_Ef > .gb_R {height: 28px; line-height: 26px;}
..gb_Ef::before {background: rgb(229, 229, 229) none repeat scroll 0% 0%; bo=
ttom: 0px; content: ""; display: none; height: 1px; left: 0px; position: ab=
solute; right: 0px;}
..gb_Ef {background: rgb(241, 241, 241) none repeat scroll 0% 0%;}
..gb_Bg .gb_Ef {background: rgb(255, 255, 255) none repeat scroll 0% 0%;}
..gb_Bg .gb_Ef::before ,.gb_cb .gb_Ef::before {display: none;}
..gb_ea .gb_Ef ,.gb_X .gb_Ef ,.gb_cb .gb_Ef {background: transparent none re=
peat scroll 0% 0%;}
..gb_ea .gb_Ef::before {background: rgba(0, 0, 0, 0.12) none repeat scroll 0=
% 0%;}
..gb_X .gb_Ef::before {background: rgba(255, 255, 255, 0.2) none repeat scro=
ll 0% 0%;}
..gb_R {display: inline-block; flex: 0 0 auto;}
..gb_R.gb_Cg {float: right; order: 1;}
..gb_Dg {white-space: nowrap;}
..gb_T .gb_Dg {display: flex;}
..gb_Dg ,.gb_R {margin-left: 0px !important; margin-right: 0px !important;}
..gb_cc {background-image: url("//ssl.gstatic.com/gb/images/v1_da9d8cff.png"=
); background-size: 92px 2835px;}
..gb_kb {min-width: 255px; padding-left: 30px; padding-right: 30px; position=
: relative; text-align: right; z-index: 986; align-items: center; justify-c=
ontent: flex-end; -moz-user-select: none;}
..gb_cb .gb_kb {min-width: 0px;}
..gb_kb.gb_R {flex: 1 1 auto;}
..gb_Ac {line-height: normal; position: relative; text-align: left;}
..gb_Ac.gb_R ,.gb_je.gb_R ,.gb_db.gb_R {flex: 0 1 auto;}
..gb_og ,.gb_pg {display: inline-block; padding: 0px 0px 0px 15px; position:=
relative; vertical-align: middle;}
..gb_je {line-height: normal; padding-right: 15px;}
..gb_kb .gb_je.gb_U {padding-right: 0px;}
..gb_db {color: rgb(64, 64, 64); line-height: 30px; min-width: 30px; overflo=
w: hidden; vertical-align: middle; text-overflow: ellipsis;}
#gb.gb_cb.gb_cb .gb_Vf ,#gb.gb_cb.gb_cb .gb_Ac > .gb_pg .gb_Wf {background:=
rgba(0, 0, 0, 0) none repeat scroll 0% 0%; border: medium none; color: rgb=
(51, 102, 204); cursor: pointer; filter: none; font-size: 11px; line-height=
: 26px; padding: 0px; box-shadow: none;}
#gb.gb_cb.gb_X .gb_Vf ,#gb.gb_cb.gb_X .gb_Ac > .gb_pg .gb_Wf {color: rgb(25=
5, 255, 255);}
..gb_cb .gb_Vf {text-transform: uppercase;}
..gb_kb.gb_V {padding-left: 0px; padding-right: 29px;}
..gb_kb.gb_qg {max-width: 400px;}
..gb_rg {background-clip: content-box; background-origin: content-box; opaci=
ty: 0.27; padding: 22px; height: 16px; width: 16px;}
..gb_rg.gb_R {display: none;}
..gb_rg:hover ,.gb_rg:focus {opacity: 0.55;}
..gb_sg {background-position: 0px -1313px;}
..gb_tg {background-position: 0px -1731px; padding-left: 30px; padding-right=
: 14px; position: absolute; right: 0px; top: 0px; z-index: 990;}
..gb_gb:not(.gb_ib) .gb_tg ,.gb_V .gb_sg {display: inline-block;}
..gb_gb .gb_sg {padding-left: 30px; padding-right: 0px; width: 0px;}
..gb_gb:not(.gb_ib) .gb_ug {display: none;}
..gb_kb.gb_R.gb_V ,.gb_V:not(.gb_ib) .gb_Ac {flex: 0 0 auto;}
..gb_rg ,.gb_V .gb_je ,.gb_ib .gb_Ac {overflow: hidden;}
..gb_gb .gb_je {padding-right: 0px;}
..gb_V .gb_Ac {padding: 1px 1px 1px 0px;}
..gb_gb .gb_Ac {width: 75px;}
..gb_kb.gb_vg ,.gb_kb.gb_vg .gb_sg ,.gb_kb.gb_vg .gb_sg::before ,.gb_kb.gb_v=
g .gb_je ,.gb_kb.gb_vg .gb_Ac {transition: width 0.5s ease-in-out 0s, min-w=
idth 0.5s ease-in-out 0s, max-width 0.5s ease-in-out 0s, padding 0.5s ease-=
in-out 0s, left 0.5s ease-in-out 0s;}
..gb_T .gb_kb {min-width: 0px;}
..gb_kb.gb_W ,.gb_kb.gb_W .gb_Ac ,.gb_kb.gb_wg ,.gb_kb.gb_wg .gb_Ac {min-wid=
th: 0px !important;}
..gb_kb.gb_W ,.gb_kb.gb_W .gb_R {flex: 0 0 auto !important;}
..gb_kb.gb_W .gb_db {width: 30px !important;}
..gb_xg {margin-right: 32px;}
..gb_9a {display: none;}
..gb_N .gb_sg::before {clip: rect(1313px, 16px, 1329px, 0px); left: 22px; to=
p: -1291px;}
..gb_N .gb_cc.gb_tg {position: absolute;}
..gb_N .gb_tg::before {clip: rect(1731px, 16px, 1747px, 0px); left: 30px; to=
p: -1709px;}
..gb_N .gb_gb .gb_sg::before {left: 30px;}
..gb_N .gb_cc ,.gb_N .gbii ,.gb_N .gbip {background-image: none; overflow: h=
idden; position: relative;}
..gb_N .gb_cc::before {content: url("//ssl.gstatic.com/gb/images/v1_da9d8cff=
..png"); position: absolute;}
..gb_Ob a:focus {outline: 1px dotted rgb(255, 255, 255) !important;}
sentinel { }
#gbq .gbgt-hvr ,#gbq .gbgt:focus {background-color: transparent; background=
-image: none;}
#gbq1.gbqfh {display: none;}
..gbxx {display: none !important;}
#gbq {line-height: normal; position: relative; top: 0px; white-space: nowra=
p;}
#gbq {left: 0px; width: 100%;}
#gbq2 {top: 0px; z-index: 986;}
#gbq4 {display: inline-block; max-height: 29px; overflow: hidden; position:=
relative;}
#gbq2.gbqfh {z-index: 985;}
#gbq2.gbqfh {margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin=
-left: 0px !important; padding-top: 0px; position: relative; top: 310px;}
..gbqfh #gbqf {margin: auto; min-width: 534px; padding: 0px !important;}
..gbqfh #gbqfbw {display: none;}
..gbqfh #gbqfbwa {display: block;}
..gbqfh #gbqf {max-width: 512px; min-width: 200px;}
..gbqfh .gbqfqw {border-right-width: 1px;}
..gbii::before {content: url("https://lh3.googleusercontent.com/-D_q2LHjgmDw=
/AAAAAAAAAAI/AAAAAAAAAAA/AFiYof0TQAS8681YLD-G8eHGnINuCxGv7g/s32-c-mo/photo.=
jpg");}
..gbip::before {content: url("https://lh3.googleusercontent.com/-D_q2LHjgmDw=
/AAAAAAAAAAI/AAAAAAAAAAA/AFiYof0TQAS8681YLD-G8eHGnINuCxGv7g/s96-c-mo/photo.=
jpg");}
..gbii {background-image: url("https://lh3.googleusercontent.com/-D_q2LHjgmD=
w/AAAAAAAAAAI/AAAAAAAAAAA/AFiYof0TQAS8681YLD-G8eHGnINuCxGv7g/s32-c-mo/photo=
..jpg");}
..gbip {background-image: url("https://lh3.googleusercontent.com/-D_q2LHjgmD=
w/AAAAAAAAAAI/AAAAAAAAAAA/AFiYof0TQAS8681YLD-G8eHGnINuCxGv7g/s96-c-mo/photo=
..jpg");}
..gb_va .gb_2::before {left: 0px; top: -790px;}
#gb192 .gb_2::before {left: 0px; top: -1593px;}
#gb1 .gb_2::before {left: 0px; top: -341px;}
#gb8 .gb_2::before {left: 0px; top: -2215px;}
#gb36 .gb_2::before {left: 0px; top: -2491px;}
#gb78 .gb_2::before {left: 0px; top: -2284px;}
#gb5 .gb_2::before {left: 0px; top: -2667px;}
#gb23 .gb_2::before {left: 0px; top: -2422px;}
#gb49 .gb_2::before {left: 0px; top: -69px;}
#gb24 .gb_2::before {left: 0px; top: -1766px;}
#gb119 .gb_2::before {left: 0px; top: -721px;}
#gb51 .gb_2::before {left: 0px; top: -1382px;}
#gb31 .gb_2::before {left: 0px; top: -1244px;}
#gb6 .gb_2::before {left: 0px; top: -1973px;}
#gb212 .gb_2::before {left: -21px; top: -1313px;}
#gb27 .gb_2::before {left: 0px; top: -514px;}
#gb25 .gb_2::before {left: 0px; top: -2111px;}
#gb10 .gb_2::before {left: 0px; top: -138px;}
#gb30 .gb_2::before {left: 0px; top: 0px;}
#gb53 .gb_2::before {left: -25px; top: -1835px;}
#gb300 .gb_2::before {left: 0px; top: -272px;}
#gb265 .gb_2::before {left: 0px; top: -2598px;}
..F0XO1GC-e-b {bottom: 24px; left: 24px; position: fixed; z-index: 2000;}
..F0XO1GC-e-b .F0XO1GC-e-a {background: rgb(50, 50, 50) none repeat scroll 0=
% 0%; border-radius: 2px; color: white; display: inline-block; font-size: 1=
4px; max-width: 568px; min-width: 288px; padding: 16px 24px 12px; will-chan=
ge: transform;}
..F0XO1GC-e-b .F0XO1GC-e-a > div {vertical-align: middle; display: inline-bl=
ock; max-width: 450px;}
..F0XO1GC-e-b .F0XO1GC-e-a > div > div {overflow: hidden; text-overflow: ell=
ipsis;}
..F0XO1GC-e-b .F0XO1GC-e-a .F0XO1GC-e-i {color: rgb(161, 194, 250); text-tra=
nsform: uppercase;}
..F0XO1GC-e-b.F0XO1GC-e-d .F0XO1GC-e-c {float: right; opacity: 0.8; padding-=
left: 10px;}
..F0XO1GC-e-b.F0XO1GC-e-d .F0XO1GC-e-c:hover {opacity: 1;}
..F0XO1GC-e-g {transition: opacity 4s ease 0s;}
..F0XO1GC-e-j {transition: opacity 6s ease 0s;}
..F0XO1GC-e-e {opacity: 0;}
body.F0XO1GC-e-m .F0XO1GC-e-b.F0XO1GC-e-f {display: none;}
..F0XO1GC-g-b {background-color: rgb(235, 238, 248); padding: 4px; color: rg=
b(34, 34, 34); box-shadow: 0px 4px 10px rgb(139, 139, 139);}
..F0XO1GC-g-a {height: 14px; width: 6px; overflow: hidden; background: rgba(=
0, 0, 0, 0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAOCAYA=
AAAMn20lAAAAH0lEQVR4XmNYsGDBahBmgAI4H6cE6QBd63C0Yyc2CQCkTVFv9KQgxwAAAABJRU5=
ErkJggg=3D=3D") no-repeat scroll 0px 0px; display: inline-block;}
..gux-dropdown-c {background-color: rgb(249, 249, 249); border-width: 1px; b=
order-style: solid; border-color: rgb(229, 229, 229) rgb(229, 229, 229) rgb=
(179, 179, 179);}
..gux-dropdown-b {border-bottom: 1px solid rgb(229, 229, 229); margin-left: =
2px;}
..gux-combo-item {color: rgb(51, 51, 51); cursor: pointer; padding: 3px 8px;=
}
..gux-combo-item-disabled {color: rgb(102, 102, 102);}
..gux-combo-item-selected ,.gux-combo-item-selection {background-color: rgb(=
221, 221, 221);}
..gux-combo-item-current {background-color: rgb(238, 238, 238); font-weight:=
bold;}
..gux-combo-item-has-child {background-image: url("data:image/png;base64,iVB=
ORw0KGgoAAAANSUhEUgAAAAcAAAAHAQMAAAD+nMWQAAAABlBMVEX///9mZmaO7mygAAAAAXRSTl=
MAQObYZgAAABxJREFUeF4FwTEBAAAMAiCiGMHTY/1zDUTNmcoDCSIBTWrzi7sAAAAASUVORK5CY=
II=3D");}
..gux-combo-item-has-child {background-repeat: no-repeat; background-positio=
n: 97% 50%; padding-right: 20px;}
..gux-combo-item-separator {margin: 3px 0px; border-top: 1px solid rgb(207, =
207, 207);}
..F0XO1GC-l-a {overflow: auto; max-height: 400px; min-width: 150px;}
html ,body ,div ,span ,applet ,object ,body {margin: 0px; padding: 0px; bor=
der: 0px none;}
iframe {margin: 0px; padding: 0px;}
h1 ,h2 ,h3 ,h4 ,h5 ,h6 ,p ,pre ,a ,abbr ,acronym ,address ,big ,cite ,code =
,del ,dfn ,em ,font ,img ,ins ,kbd ,q ,s ,samp ,small ,strike ,strong ,sub =
,sup ,tt ,var ,dl ,dt ,dd ,fieldset ,form ,label ,legend ,table ,caption ,t=
body ,tfoot ,thead ,tr ,th ,td {margin: 0px; padding: 0px; border: 0px none=
;}
body {background: white none repeat scroll 0% 0%;}
table {border-collapse: separate; border-spacing: 0px;}
caption ,th ,td {font-weight: normal;}
input::-moz-focus-inner {border: 0px none;}
body {font-family: "Arial","Helvetica",sans-serif; color: rgb(34, 34, 34); =
font-size: 13px; height: 100%; background-color: rgb(255, 255, 255);}
html {height: 100%; background-color: rgb(255, 255, 255);}
body {overflow-y: hidden; overflow-x: auto;}
..F0XO1GC-b-q {position: fixed; overflow: hidden; width: 100%; height: 100%;=
}
h1 ,h2 ,h3 ,h4 ,h5 {font-size: 16px; line-height: 24px; font-weight: normal=
; color: rgb(34, 34, 34);}
li {line-height: 17px;}
a {text-decoration: none; color: rgb(17, 85, 204); cursor: pointer;}
a:visited {color: rgb(102, 17, 204);}
a:active {color: rgb(209, 72, 54);}
iframe {border: 0px none;}
strong {font-weight: bold; color: rgb(34, 34, 34);}
em {font-style: italic;}
input[type=3D"text"] ,input[type=3D"password"] ,textarea ,.editable ,body {=
border-width: 1px; border-style: solid; border-color: rgb(192, 192, 192) rg=
b(217, 217, 217) rgb(217, 217, 217); -moz-border-top-colors: none; -moz-bor=
der-right-colors: none; -moz-border-bottom-colors: none; -moz-border-left-c=
olors: none; border-image: none; vertical-align: top; box-sizing: border-bo=
x; border-radius: 1px;}
input[type=3D"text"] ,input[type=3D"password"] {background-color: rgb(255, =
255, 255); color: rgb(34, 34, 34); display: inline-block; height: 29px; lin=
e-height: 27px; padding-left: 8px;}
textarea ,.editable ,body {padding: 5px;}
input[type=3D"text"]:hover ,input[type=3D"password"]:hover ,textarea:hover =
,.editable:hover {border-width: 1px; border-style: solid; border-color: rgb=
(160, 160, 160) rgb(185, 185, 185) rgb(185, 185, 185); -moz-border-top-colo=
rs: none; -moz-border-right-colors: none; -moz-border-bottom-colors: none; =
-moz-border-left-colors: none; border-image: none; box-shadow: 0px 1px 2px =
rgba(0, 0, 0, 0.1) inset;}
input[type=3D"text"]:focus ,input[type=3D"password"]:focus ,textarea:focus =
,.editable:focus {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3) inset; outline=
: medium none; border: 1px solid rgb(77, 144, 254);}
input[disabled] ,input[disabled]:hover ,textarea[disabled] ,textarea[disabl=
ed]:hover {border-width: 1px; border-style: solid; border-color: rgb(192, 1=
92, 192) rgb(217, 217, 217) rgb(217, 217, 217); -moz-border-top-colors: non=
e; -moz-border-right-colors: none; -moz-border-bottom-colors: none; -moz-bo=
rder-left-colors: none; border-image: none; box-shadow: none;}
..F0XO1GC-b-V ,.F0XO1GC-b-V:hover ,.F0XO1GC-b-V:focus {border: 1px solid rgb=
(221, 75, 57) !important;}
..F0XO1GC-b-R {color: rgb(221, 75, 57);}
..F0XO1GC-b-Hb textarea ,.F0XO1GC-b-Hb input[type=3D"text"] {width: 100%; ma=
x-width: 600px;}
..F0XO1GC-b-Hb textarea {height: 100px;}
..F0XO1GC-b-Jb:first-child {border-top: medium none;}
..F0XO1GC-b-Jb:last-child {border-bottom: 1px solid rgb(235, 235, 235);}
..F0XO1GC-b-Jb {border-top: 1px solid rgb(235, 235, 235); padding: 20px 0px;=
clear: both;}
..F0XO1GC-b-N .F0XO1GC-b-Jb {padding: 12px 0px;}
..F0XO1GC-b-O .F0XO1GC-b-Jb ,body .F0XO1GC-b-Jb {padding: 7px 0px;}
..F0XO1GC-b-Jb p {line-height: 13px;}
..F0XO1GC-b-Ib {padding-bottom: 0px; border: medium none;}
..F0XO1GC-b-Fb {display: block; float: left; width: 185px; font-weight: bold=
;}
..F0XO1GC-b-Fb a {font-size: 11px;}
..F0XO1GC-b-Gb {font-size: 11px; color: rgb(102, 102, 102); font-weight: nor=
mal;}
..F0XO1GC-b-Eb {margin-left: 210px;}
#gbqfq {border: medium none !important; box-shadow: none !important; line-h=
eight: normal !important;}
..F0XO1GC-b-w {position: absolute; width: 100%; text-align: center; height: =
0px;}
..F0XO1GC-b-w .gux-confirm-panel-c {display: inline-block; box-shadow: 0px 2=
px 4px rgba(0, 0, 0, 0.2);}
..gux-confirm-panel-r1 ,.gux-confirm-panel-r2 ,.gux-confirm-panel-r3 ,.gux-c=
onfirm-panel-r4 {display: none;}
..gux-confirm-panel-c {padding: 7px 16px !important; background: rgb(249, 23=
7, 190) none repeat scroll 0% 0% !important; border: 1px solid rgb(240, 195=
, 109); border-radius: 2px; line-height: 16px; font-size: 11px; position: r=
elative;}
..gux-confirm-panel-c a ,.gux-confirm-panel-c a:visited {color: rgb(51, 51, =
51); text-decoration: underline;}
..gux-confirm-panel-c a:hover {color: rgb(32, 32, 32);}
..gux-confirm-panel-message {color: inherit !important; font-weight: inherit=
!important;}
..F0XO1GC-b-y {text-align: center; padding: 16px;}
..F0XO1GC-b-y .gux-confirm-panel-c {display: inline-block;}
..F0XO1GC-b-o {position: relative; overflow: hidden; height: 58px; border-bo=
ttom: 1px solid rgb(235, 235, 235);}
..F0XO1GC-b-O .F0XO1GC-b-o ,body .F0XO1GC-b-o {min-height: 44px; height: 44p=
x;}
..F0XO1GC-b-p {font-size: 20px; position: absolute; left: 44px; top: 18px;}
..F0XO1GC-b-N .F0XO1GC-b-p {left: 28px;}
..F0XO1GC-b-O .F0XO1GC-b-p ,body .F0XO1GC-b-p {font-size: 16px; left: 16px; =
top: 11px;}
..F0XO1GC-b-dc .F0XO1GC-b-p ,body .F0XO1GC-b-p {left: 30px;}
..F0XO1GC-b-p ,.F0XO1GC-b-p a ,.F0XO1GC-b-p a:hover ,.F0XO1GC-b-p a:visited =
{color: rgb(221, 75, 57);}
..F0XO1GC-b-n {position: relative; font-size: 20px; font-weight: normal; col=
or: rgb(34, 34, 34); white-space: nowrap; overflow: hidden; margin-top: 14p=
x; min-height: 30px; margin-right: 44px;}
..F0XO1GC-b-N .F0XO1GC-b-n {margin-right: 28px;}
..F0XO1GC-b-O .F0XO1GC-b-n ,body .F0XO1GC-b-n {margin-top: 8px; margin-right=
: 16px;}
..F0XO1GC-b-dc .F0XO1GC-b-n ,body .F0XO1GC-b-n {margin-right: 30px;}
..F0XO1GC-b-m {position: absolute; left: 50px; top: 40px; font-size: 10px; p=
adding: 1px;}
..F0XO1GC-b-X {color: rgb(102, 102, 102);}
..F0XO1GC-b-W {background-color: rgb(249, 237, 190); border-radius: 6px;}
..F0XO1GC-b-W a {color: rgb(34, 34, 34); padding: 7px;}
..F0XO1GC-b-N .F0XO1GC-b-m {left: 34px;}
..F0XO1GC-b-O .F0XO1GC-b-m ,body .F0XO1GC-b-m {font-size: 8px; left: 21px; t=
op: 31px;}
..F0XO1GC-b-dc .F0XO1GC-b-m ,body .F0XO1GC-b-m {left: 36px;}
..F0XO1GC-b-Yb {display: inline-block; font-size: 16px; line-height: 24px; f=
ont-weight: normal; color: rgb(34, 34, 34);}
..F0XO1GC-b-Yb:focus {outline: medium none;}
..F0XO1GC-b-xb {height: 16px; margin-top: 4px;}
..F0XO1GC-b-yb {margin-right: 10px;}
..F0XO1GC-b-Rb {height: 32px; position: relative;}
..F0XO1GC-b-E {padding: 16px 44px 16px 0px;}
..F0XO1GC-b-N .F0XO1GC-b-E {padding: 16px 28px 16px 0px;}
..F0XO1GC-b-O .F0XO1GC-b-E ,body .F0XO1GC-b-E {padding: 7px 16px 7px 0px;}
..F0XO1GC-b-dc .F0XO1GC-b-E ,body .F0XO1GC-b-E {padding-right: 30px;}
..F0XO1GC-b-t {font-weight: bold; white-space: nowrap; margin-right: 4px; ve=
rtical-align: middle;}
..F0XO1GC-b-Zb {display: inline-block; width: 17px; z-index: 10; cursor: poi=
nter; text-align: center; position: relative;}
..F0XO1GC-b-j {display: inline-block;}
..F0XO1GC-b-Y {cursor: pointer; position: absolute; right: 5px; top: 5px;}
..F0XO1GC-b-Bb {font-size: 11px; color: rgb(102, 102, 102);}
..F0XO1GC-b-Cb {color: rgb(102, 102, 102);}
..F0XO1GC-b-jb ,.F0XO1GC-b-Mb ,.F0XO1GC-b-sb {color: rgb(17, 85, 204); text-=
decoration: none; cursor: pointer; white-space: nowrap;}
..F0XO1GC-b-Mb {font-size: 11px;}
..F0XO1GC-b-sb {padding-left: 8px;}
..F0XO1GC-b-wb[role=3D"listbox"] {z-index: 10000;}
..F0XO1GC-b-k {padding-right: 18px;}
..F0XO1GC-b-nb {font-weight: bold; cursor: pointer;}
#gbar ,#guser {padding-top: 4px !important;}
#gbar {padding-left: 8px;}
#guser {padding-right: 5px;}
..gwt-PopupGlass ,.gwt-PopupPanelGlass ,.modal-dialog-bg {background-color: =
rgb(255, 255, 255); opacity: 0.75; z-index: 1020; position: absolute; top: =
0px; bottom: 0px; left: 0px; right: 0px;}
..gwt-PopupPanel ,.gwt-SuggestBoxPopup ,.modal-dialog ,.F0XO1GC-b-i {z-index=
: 1021;}
..gwt-SuggestBoxPopup ,.gwt-PopupPanel ,.modal-dialog {background: rgb(255, =
255, 255) none repeat scroll 0% 0%; transition: opacity 0.218s ease 0s;}
..gwt-SuggestBoxPopup ,.F0XO1GC-b-i {min-width: 384px; padding: 0px; box-sha=
dow: 0px 2px 4px rgba(0, 0, 0, 0.2);}
..gwt-PopupPanel ,.modal-dialog {box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.2)=
;}
..gwt-SuggestBoxPopup ,.gwt-PopupPanel ,.modal-dialog ,.F0XO1GC-b-i {outline=
: medium none; border: 1px solid rgb(204, 204, 204);}
..gwt-SuggestBoxPopup table {width: 100%;}
..gwt-SuggestBoxPopup .item {font-size: 13px; line-height: 30px; color: rgb(=
51, 51, 51); padding: 2px 44px 2px 16px;}
..gwt-SuggestBoxPopup .item-selected {background-color: rgb(238, 238, 238);}
..gwt-SuggestBoxPopup .menuSeparatorInner {height: 1px; background-color: rg=
b(235, 235, 235);}
..gux-comboPopup {z-index: 1022;}
..F0XO1GC-b-a {margin-right: 1em; cursor: pointer; padding: 4px 5px 4px 0px;=
display: inline-block; vertical-align: middle; color: rgb(102, 102, 102);}
..F0XO1GC-b-e {cursor: pointer; padding: 4px 5px 4px 0px; display: inline-bl=
ock; vertical-align: middle; color: rgb(102, 102, 102);}
..F0XO1GC-b-a:hover ,.F0XO1GC-b-e:hover {color: rgb(51, 51, 51);}
..F0XO1GC-b-a span ,.F0XO1GC-b-e span {white-space: nowrap; vertical-align: =
middle;}
..F0XO1GC-b-c {vertical-align: middle; margin-right: 2px; float: left; posit=
ion: relative; top: -2px; opacity: 0.667;}
..F0XO1GC-b-a:hover .F0XO1GC-b-c ,.F0XO1GC-b-e:hover .F0XO1GC-b-c {opacity: =
1;}
..F0XO1GC-b-d {padding-right: 1em;}
..F0XO1GC-b-b ,.F0XO1GC-b-b span {text-decoration: none; color: rgb(119, 119=
, 119);}
..F0XO1GC-b-Lb {height: 16px; width: 14px; overflow: hidden; background: rgb=
a(0, 0, 0, 0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAQCA=
YAAAAmlE46AAAAnklEQVR4XmNQVFRcoKik+J8kDNTDgCFIJKaaxgtKSkoNIAxkfwBhJP4FnBpBC=
higAKYBmU99jcDQ2qCgouCgoKBgAHMeGh+HRgj+AFIIMgSNjxJtGBoVlBUCFJQUClD4ygoJ6Oow=
NBKLydcIdoay4gFFSLyhKgCJY8EgPbDQZoBqhmtCkcQHkDR+AAUIujxOAHMuKOjR5fACcOSToAk=
Alg7ZcpKQZvMAAAAASUVORK5CYII=3D") no-repeat scroll 0px 0px;}
..F0XO1GC-b-Db > a .F0XO1GC-b-Lb ,body > a .F0XO1GC-b-Lb {height: 16px; widt=
h: 14px; overflow: hidden; background: rgba(0, 0, 0, 0) url("data:image/png=
;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAQCAYAAAAmlE46AAAAmUlEQVR4XmO4722xAIj=
/k4gXMGARJApTTeOF+z4WDWDsbfEBjBH8C7g1AhUwQAFMAwqf+hq9LTcAFTjc97IygDsPlY9LIx=
h/ACsEGYLCR402TI2+lgFATQUofC+LBHR1mBqJxBRoBDnDy+LAfUi8oSoAiWPHCbDQBhkA0oysC=
SGJDyBp/AAKEHR5nADuXGDQo8vhBeB4I0ETADumhjt9vOGeAAAAAElFTkSuQmCC") no-repeat=
scroll 0px 0px;}
..F0XO1GC-b-T {height: 13px; width: 13px; overflow: hidden; background: rgba=
(0, 0, 0, 0) url("data:image/gif;base64,R0lGODlhDQANAKIAAP///+/v7+vr68rKyr6=
+vpqammVlZQAAACH5BAEHAAMALAAAAAANAA0AAAM2ODpU/oWsUQK4N5RZrvkGsC0d9onNYwKhY4=
le7GBdiIml+GLCfKWQSO42UgxpnN2lNwFCJIsEADs=3D") no-repeat scroll 0px 0px; di=
splay: inline-block; margin-left: 4px;}
..gwt-HintingTextBox-hinting {color: rgb(136, 136, 136);}
..F0XO1GC-b-ab {color: rgb(170, 170, 170) !important;}
..F0XO1GC-b-tb {white-space: nowrap; display: inline;}
..F0XO1GC-b-U {color: red; vertical-align: baseline; font-size: 0.83em; posi=
tion: relative; top: -0.4em;}
..F0XO1GC-b-Kb {border: 0px none; overflow: hidden;}
..F0XO1GC-b-K {position: relative; top: -1px; border-style: solid dashed das=
hed; border-color: rgb(51, 102, 204) transparent transparent; display: inli=
ne-block; font-size: 0px; height: 0px; line-height: 0; width: 0px; border-w=
idth: 3px 3px 0px; padding-top: 1px; left: 4px;}
..F0XO1GC-b-x {text-align: center;}
..F0XO1GC-b-bc {width: 90%; left: 5% !important; z-index: 1020;}
..F0XO1GC-b-cc {color: rgb(255, 255, 255); background-color: rgb(0, 0, 0); o=
pacity: 0.9; border-radius: 10px; padding: 1em; width: 100%;}
..F0XO1GC-b-Qb {white-space: nowrap; padding: 0px 2px; font-size: 11px;}
..F0XO1GC-b-Qb img {position: relative; top: 1px; right: 2px; vertical-align=
: bottom;}
..F0XO1GC-b-l ,.F0XO1GC-b-qb {color: rgb(64, 178, 91);}
..F0XO1GC-b-L {color: rgb(238, 68, 68);}
..F0XO1GC-b-r {color: rgb(238, 68, 68); font-size: 13px;}
..F0XO1GC-b-s {font-size: 13px; padding-left: 2em;}
..F0XO1GC-b-S ,.F0XO1GC-b-fb ,.F0XO1GC-b-mb {color: rgb(238, 68, 68);}
..F0XO1GC-b-lb {display: inline-block;}
..F0XO1GC-b-lb img {vertical-align: bottom;}
..F0XO1GC-b-eb {border-top: 1px solid rgb(235, 235, 235); margin-top: 9px; m=
argin-bottom: 10px;}
..gux-comboPopup ,.ac-renderer {transition: opacity 0.218s ease 0s; box-shad=
ow: 0px 2px 4px rgba(0, 0, 0, 0.2);}
..gux-dropdown-c ,.ac-renderer {background-color: rgb(255, 255, 255); outlin=
e: 1px solid rgba(0, 0, 0, 0.2); padding: 6px 0px; white-space: nowrap;}
..gux-dropdown-c {box-shadow: none;}
..ac-renderer {position: absolute;}
..F0XO1GC-b-gb {padding-left: 32px !important;}
..gux-dropdown-c ,.ac-renderer {border: 1px solid rgb(204, 204, 204);}
..gux-combo-item ,.ac-renderer > div {display: block; padding: 6px 44px 6px =
16px; position: relative; color: rgb(51, 51, 51); font-size: 13px; font-wei=
ght: normal; cursor: pointer; line-height: 17px; transition: background 0.1=
3s ease 0s;}
..F0XO1GC-b-N .gux-combo-item ,.F0XO1GC-b-N .ac-renderer > div {padding: 4px=
28px 4px 16px;}
..F0XO1GC-b-O .gux-combo-item ,.F0XO1GC-b-O .ac-renderer > div ,body .gux-co=
mbo-item ,body .ac-renderer > div {padding: 2px 16px;}
..F0XO1GC-b-dc .gux-combo-item ,.F0XO1GC-b-dc .ac-render > div ,body .gux-co=
mbo-item ,body .ac-render > div {padding-right: 30px;}
..gux-combo-item:focus {outline: medium none !important;}
..gux-combo-item img {opacity: 0.667;}
..gux-combo-item:hover img {opacity: 1;}
..gux-combo-item-selected ,.gux-combo-item-selection ,.ac-active {background=
-color: rgb(241, 241, 241); color: rgb(34, 34, 34); outline: medium none !i=
mportant;}
..gux-combo-item-separator {border-top: 1px solid rgb(235, 235, 235); margin=
-top: 6px; margin-bottom: 6px;}
..gux-combo-item-disabled {color: rgb(153, 153, 153);}
..gux-combo-item-disabled img {opacity: 0.667;}
..F0XO1GC-b-J {overflow: hidden; background: rgba(0, 0, 0, 0) url("data:imag=
e/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAHCAYAAAAvZezQAAAAI0lEQVR4XmOIjI=
z8z4AMQAIogjABuCCyAFgQpwoUM+AcIAAA2BAgobr+lh4AAAAASUVORK5CYII=3D") no-repea=
t scroll 0px 0px; display: inline-block; width: 5px; height: 7px; transitio=
n: all 0.218s ease 0s; transform: rotate(90deg); opacity: 0.8;}
..F0XO1GC-b-Db .F0XO1GC-b-J ,body .F0XO1GC-b-J {height: 7px; width: 4px; ove=
rflow: hidden; background: rgba(0, 0, 0, 0) url("data:image/png;base64,iVBO=
Rw0KGgoAAAANSUhEUgAAAAQAAAAHCAYAAAAvZezQAAAAI0lEQVR4XmO46235nwEZgARQBGECcEF=
kAbAgThUoZsA5QAAAMl4mARgGem4AAAAASUVORK5CYII=3D") no-repeat scroll 0px 0px;=
}
..F0XO1GC-b-C .F0XO1GC-b-J {transform: rotate(0deg);}
..F0XO1GC-b-C .F0XO1GC-b-J {transform: rotate(0deg);}
..F0XO1GC-b-C .F0XO1GC-b-J {transform: rotate(0deg);}
..F0XO1GC-b-C .F0XO1GC-b-J { }
..F0XO1GC-b-F {overflow-y: scroll !important;}
..F0XO1GC-b-G {padding-right: 28px;}
..F0XO1GC-b-N .F0XO1GC-b-G {padding-right: 12px;}
..F0XO1GC-b-O .F0XO1GC-b-G ,body .F0XO1GC-b-G {padding-right: 0px;}
..F0XO1GC-b-dc .F0XO1GC-b-G ,body .F0XO1GC-b-G {padding-right: 14px;}
..F0XO1GC-b-ob {padding: 16px 28px 16px 0px;}
..F0XO1GC-b-N .F0XO1GC-b-ob {padding: 16px 12px 16px 0px;}
..F0XO1GC-b-O .F0XO1GC-b-ob ,body .F0XO1GC-b-ob {padding: 7px 0px;}
..F0XO1GC-b-v {position: absolute; right: 44px; top: 3px; font-size: 11px; c=
olor: rgb(136, 136, 136);}
..F0XO1GC-b-v a ,.F0XO1GC-b-v a:visited {color: rgb(136, 170, 238);}
..F0XO1GC-b-v a:hover {color: rgb(17, 85, 204);}
..F0XO1GC-b-Ab {position: relative;}
..F0XO1GC-b-Nb ,.F0XO1GC-b-Nb .F0XO1GC-b-q {background-color: rgb(245, 245, =
245);}
..gwt-TabBar {border-bottom: 1px solid rgb(204, 204, 204);}
..gwt-TabBarItem {min-width: 54px; text-align: center; color: rgb(102, 102, =
102); font-size: 11px; font-weight: bold; height: 27px; padding: 0px 8px; l=
ine-height: 27px; margin-bottom: -1px; border: 1px solid transparent; curso=
r: default; border-top-left-radius: 2px; border-top-right-radius: 2px;}
..gwt-TabBarItem:hover {color: rgb(34, 34, 34);}
..gwt-TabBarItem:focus {outline: medium none; color: rgb(51, 51, 51);}
..gwt-TabBarItem:active {color: rgb(51, 51, 51);}
..gwt-TabBarItem-selected {color: rgb(32, 32, 32); background-color: rgb(255=
, 255, 255); border-width: 1px; border-style: solid; border-color: rgb(204,=
204, 204) rgb(204, 204, 204) rgb(255, 255, 255); -moz-border-top-colors: n=
one; -moz-border-right-colors: none; -moz-border-bottom-colors: none; -moz-=
border-left-colors: none; border-image: none;}
..gwt-TabBarFirst-wrapper {display: none;}
..gwt-ScrollTable td {height: 40px; line-height: 40px; padding: 0px 8px; bor=
der-bottom: 1px solid rgb(235, 235, 234); overflow: hidden; text-overflow: =
ellipsis; white-space: nowrap;}
..F0XO1GC-b-N .gwt-ScrollTable td {height: 34px; line-height: 34px;}
..F0XO1GC-b-O .gwt-ScrollTable td ,body .gwt-ScrollTable td {height: 30px; l=
ine-height: 30px;}
..gwt-ScrollTable .headerTable td {color: rgb(102, 102, 102); cursor: defaul=
t; border-bottom: 1px solid rgb(204, 204, 204);}
..gwt-ScrollTable .headerTable td:hover {color: rgb(34, 34, 34);}
..gwt-ScrollTable .headerTable td:active {color: rgb(51, 51, 51);}
..F0XO1GC-b-P {padding: 12px;}
..F0XO1GC-b-zb {position: absolute; left: -10000px;}
..F0XO1GC-b-u {display: block;}
..F0XO1GC-b-kb {height: 16px; width: 16px; overflow: hidden; background: rgb=
a(0, 0, 0, 0) url("data:image/gif;base64,R0lGODlhEAAQAPeQANHR0fX19aampvDw8O=
/v7+zs7CgoKGBgYPf395iYmMPDw4CAgDMzM8LCwtbW1vv7+4SEhIWFhbe3t6Ojo25ubltbW+vr6=
+fn51paWjs7O0VFRXx8fKKiopubm7m5uUNDQ97e3pKSkqqqqvHx8W1tbc3NzTk5OYyMjEtLS4+P=
jzAwMKSkpO3t7ebm5ri4uG9vb5qamlhYWAkJCcjIyMzMzBgYGAUFBUpKStPT0zExMWRkZLq6ur6=
+vq+vr09PTzY2NgEBAfr6+vT09BkZGR0dHUdHR1ZWVmdnZ8/Pz9nZ2RYWFlNTU7a2tpmZma2trZ=
GRkUZGRsTExOPj4729vaioqAICAk1NTeDg4KmpqaGhoenp6SkpKcXFxR4eHtzc3EhISKCgoO7u7=
rKysl5eXp6eni8vL7W1tSMjI1JSUsfHx3p6eioqKiEhIeHh4T09PVBQUOXl5bOzs0lJSc7OzsrK=
ymZmZvPz88vLy2hoaEFBQT8/P3t7e9/f3z4+PpeXlx8fHxAQEAgICMbGxqysrOrq6jo6OvLy8tv=
b20BAQFVVVdTU1OLi4qurq8HBwf39/QAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAACQACwAAAAA=
EAAQAAAIfgAhCRzogYGJBgMTQoqy4A4kA48eZVAoUFCZR3kOqYioAZKjAY4GRogoI4GCDyhKQAo=
ggMBABz6GjGlBMUDIgYR6FKCoEEGHCQ94KkwRkYNQSAAaQRr5KMHRpJAKnAgx4qjVq44CCLWZkI=
AArQpZuhz48SYAAALLHm2k9OrVgAAh+QQJAACQACwAAAAAEAAQAAAIfgAhCRzoAMMBEAMTKqzw6=
BGFIGCWCAgyMA0FGoZINNzwRMkjJVgGxnj0RsKFBRAsGGj46MBAMVDMWEiYZQ2QLRIGXsBSQCEk=
EVZ2+BzqsxEAogIBNBJoFCkkpU6jShXoKADRAI4SEhBgVWEAAQQSOhqQ9elRSGPLDm20dCrSgAA=
h+QQJAACQACwAAAAAEAAQAAAIfQAhCRyIoMOEBwMTKkzx6BEHSA0WzEnoaIAjSBEaJqDz41EhRQ=
MJCAgAqcCJECP2VGkIY6Ajkgq9GKmBgY/Cm5C09GCBE6cHBiYaQGoEoCckAw0zDC3aU0VDDUYHK=
viAokTUni97BrgYcuTNAAIIULQoEADTilxxNmp0tW1AACH5BAkAAJAALAAAAAAQABAAAAh+ACEJ=
HEiwoEGBjRodFOhogCOBAABAYqHgBRKCBAQEKLiizyM8BB1tLCiFSpEpCwu2EFEgZUEHGA6AgNR=
I4sIKjx5RoGnzIImcG1wKvLAAggWhMHKsCDmS4BM2j7qIGJixqUADOR8dGNjwIaSIkLIQeXRGws=
KEAgcdceFVKMGAACH5BAkAAJAALAAAAAAQABAAAAh9ACEJHEiwoEGBjRodFOhogCOBAAAwdEiQg=
IAABgMIIEDQEcaDAR4uHElSIIIOEx5AaiRxYYpHjzisbHkwAswEJSEVOBFiRMkoL3B0/Ehwhp5A=
iIQKtIjRAwMTDdRUgdlkYMOHBmBmuILGRqJFB1XA1ADpihM4CxV8QFHCYEAAIfkECQAAkAAsAAA=
AABAAEAAACHsAIQkcSLCgQYGNGh0U6GiAI4EAADB0SJCAgAAGAwggQNARxoMBHi4cSfJgI4kjAS=
iEdJKkypILE+RYYdDODiEDYQx5ZEAAwTA8YtAYeOORUSgOMBwAMcHNozoDBdR4tEVCBaMUWsTRo=
WDgA0ZHJEAiYXQDzAsLIFgwGBAAIfkECQAAkAAsAAAAABAAEAAACH0AIQkcSLCgQYGNGh0U6GiA=
I4EAADB0SJCAgAAGAwggQNARxoMBHi4c6YGBiQYjBxp49CjDSAAKVbDU8FKhgg8oSqQkOOMFkp2=
QuPyQ8SVJRpGQILCU4QdBhwkPIGnkKDCJHBsVtKRgyQFSQ6SQ2jiRAikCywRAC5wIMcJgQAAh+Q=
QFAACQACwAAAAAEAAQAAAIfAAhCRxIsKBABGSWUHEEqVEjgwKbAHpERAAkAAAEOhrAUOCNRyCLF=
AwggMBAAX+AMHBhMEBHgSKsMIFI0AGGAyBoEqwAkoJOAA9JgNzw8+GFBRAs6Cw4wAWCpQMbGZkh=
pOVLSDEe+ZhJkKTJgVN08GBxMSOkjVcLOoTKNiAAOw=3D=3D") no-repeat scroll 0px 0px=
;}
..F0XO1GC-b-A {padding-left: 8px;}
..gux-combo-item .F0XO1GC-b-A {padding-left: 21px;}
..F0XO1GC-b-z {height: 21px; width: 21px; overflow: hidden; background: rgba=
(0, 0, 0, 0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAVCAY=
AAACpF6WWAAAAoUlEQVR4XmNgGAWDFUgCMTu6ICXAHIgnAbEzugS5wB6IlwBxFLoEuSAQiGcCcR=
kQM6HJkQxYgTidAWJgDpocWYAbiCsZIAaWMkAsIAlMAWJ/IGaB8sWAuJkBYmAdEHNCxUkCjgwQA=
6qA2AKI+6B8kMG8SOpIBqkMEINguBOIhVBUkAFAXmxigBjYA8TSqNLkA1kGiIEKaOIUA7IiZRQM=
cgAAWowSHyS3HFUAAAAASUVORK5CYII=3D") no-repeat scroll 0px 0px; position: re=
lative; display: inline-block; top: 5px; left: 3px;}
..gux-combo-item .F0XO1GC-b-z {top: -4px; left: -8px; vertical-align: bottom=
; height: 15px;}
..F0XO1GC-b-B {overflow-y: hidden !important;}
..F0XO1GC-b-B:hover {overflow-y: auto;}
input.F0XO1GC-b-hb {border: 1px solid rgb(221, 75, 57) !important; color: r=
gb(221, 75, 57) !important;}
..F0XO1GC-b-Q ,.F0XO1GC-b-Q strong {color: rgb(221, 75, 57);}
..F0XO1GC-b-f {cursor: pointer;}
..F0XO1GC-b-f img {opacity: 0.667; margin: 12px 6px 11px;}
..F0XO1GC-b-f:hover img {opacity: 1;}
..F0XO1GC-b-i .popupContent {margin: 12px;}
..F0XO1GC-b-i label {display: block; margin-bottom: 4px; color: rgb(102, 102=
, 102);}
..F0XO1GC-b-i input[type=3D"text"] {height: 24px; line-height: 24px; width: =
99%;}
..F0XO1GC-b-g {position: absolute; right: 14px; bottom: 18px;}
..F0XO1GC-b-h {margin-bottom: 8px;}
..datePicker {padding: 16px; outline: 1px solid rgba(0, 0, 0, 0.2); opacity:=
0; width: 144px; position: absolute; left: -9999px; top: 6px; z-index: 3; =
background: rgb(255, 255, 255) none repeat scroll 0% 0%; box-shadow: 0px 2p=
x 4px rgba(0, 0, 0, 0.2); border-radius: 2px; transition: all 0.13s linear =
0s;}
..dateBoxPopup {background-color: white; z-index: 1023;}
..gwt-DatePicker {border: 1px solid rgb(162, 187, 221); cursor: default;}
..gwt-DatePicker td ,.datePickerMonthSelector td:focus {outline: medium none=
;}
..datePickerDays {width: 100%; background: white none repeat scroll 0% 0%;}
..datePickerWeekendLabel ,.datePickerWeekdayLabel {min-width: 20px; width: 2=
0px; height: 20px; line-height: 20px; padding-left: 3px; padding-right: 3px=
; font-size: 11px; text-align: center; color: rgb(102, 102, 102); cursor: d=
efault;}
..datePickerDay {min-width: 20px; width: 20px; height: 20px; line-height: 20=
px; padding-left: 3px; padding-right: 3px; font-size: 11px; text-align: cen=
ter; color: rgb(102, 102, 102); cursor: pointer;}
..datePickerDayIsToday {border: 1px solid black;}
..datePickerDayIsFiller {color: rgb(204, 204, 204);}
..datePickerDayIsValue {background: rgb(170, 204, 238) none repeat scroll 0%=
0%;}
..datePickerDayIsDisabled {color: rgb(170, 170, 170); font-style: italic;}
..datePickerDayIsHighlighted ,.datePickerPreviousButton-up-hovering ,.datePi=
ckerNextButton-up-hovering {background: rgb(238, 238, 238) none repeat scro=
ll 0% 0%; color: rgb(51, 51, 51);}
..datePickerDayIsValueAndHighlighted {background: rgb(187, 221, 217) none re=
peat scroll 0% 0%;}
..datePickerMonthSelector {width: 100%;}
td.datePickerMonth {text-align: center; white-space: nowrap; font-size: 13p=
x; color: rgb(102, 102, 102); padding-left: 4px;}
..datePickerPreviousButton ,.datePickerNextButton {font-size: 120%; line-hei=
ght: 1em; cursor: pointer; padding: 0px 4px;}
..F0XO1GC-b-pb { }
..F0XO1GC-b-rb {position: absolute; left: -10000px; top: auto; width: 1px; h=
eight: 1px; overflow: hidden;}
..iph-dialog {z-index: 1010 !important;}
..F0XO1GC-b-H {background-color: rgb(255, 255, 255);}
..F0XO1GC-b-Vb {z-index: 1999;}
..F0XO1GC-b-Vb > div {background-color: rgb(125, 164, 253) !important; borde=
r: 1px solid rgb(125, 164, 253) !important;}
..F0XO1GC-b-bb {height: 16px; width: 16px; overflow: hidden; background: rgb=
a(0, 0, 0, 0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCA=
IAAACQkWg2AAAAqklEQVQoz2P4TyJgoIKGCZu2IyN8GiAqfqICNG0MyKohKp5+Q0FAcPXlW7ged=
A1AFXuuPU2YsB2Cbr37AhQ5+fAxuga4aiACqlt+/BaQUb/8GJANETx46w5ED0LDvbfvkV0CNBtZ=
w6azF9E13HjxElk1xElwESwaTtx/BJdGU41dw56rN9HCB58GqKvevMNqA1w1ugagBBBhmo1dAzy=
mISrgCGdMk5OWiAEA3zqvClm2uDoAAAAASUVORK5CYII=3D") no-repeat scroll 0px 0px;=
display: inline-block; position: relative; top: 3px; left: 3px;}
..F0XO1GC-b-db {background-color: rgba(255, 255, 255, 0); outline-style: non=
e; box-shadow: 0px 0px rgba(255, 255, 255, 0);}
..F0XO1GC-b-cb {overflow: hidden; padding: 10px; background-color: rgb(249, =
237, 190); border: 1px solid rgb(240, 195, 109); border-radius: 10px;}
..F0XO1GC-b-vb {margin-right: 15px;}
..F0XO1GC-b-Ub {font-weight: bold; color: rgb(119, 119, 119); margin: 10px;}
..F0XO1GC-b-ub {font-style: italic;}
..F0XO1GC-d-C {cursor: pointer; font-size: 13px; display: block;}
..F0XO1GC-d-x {position: relative; margin: 0px;}
..F0XO1GC-d-y {padding: 16px 0px 16px 28px;}
..F0XO1GC-b-N .F0XO1GC-d-y {padding: 16px 0px 16px 12px;}
..F0XO1GC-b-O .F0XO1GC-d-y ,body .F0XO1GC-d-y {padding: 7px 0px;}
..F0XO1GC-b-dc .F0XO1GC-d-y ,body .F0XO1GC-d-y {padding-left: 14px;}
..F0XO1GC-d-w {font-size: 13px; padding: 0px; margin: 0px; position: relativ=
e;}
..F0XO1GC-d-b {padding-bottom: 5px;}
..F0XO1GC-d-w div a {display: block; overflow: hidden; white-space: nowrap; =
text-decoration: none; color: rgb(51, 51, 51); cursor: pointer; font-size: =
13px; line-height: 30px; padding-left: 16px;}
..F0XO1GC-d-C a ,.F0XO1GC-d-C a:visited {display: block; overflow: hidden; p=
osition: relative; white-space: nowrap; text-decoration: none; color: rgb(5=
1, 51, 51); cursor: pointer; font-size: 13px; line-height: 30px; padding-le=
ft: 16px;}
..F0XO1GC-b-N .F0XO1GC-d-w div a ,.F0XO1GC-b-N .F0XO1GC-d-C a {line-height: =
24px;}
..F0XO1GC-b-O .F0XO1GC-d-w div a ,.F0XO1GC-b-O .F0XO1GC-d-C a ,body .F0XO1GC=
-d-w div a ,body .F0XO1GC-d-C a {line-height: 20px;}
..F0XO1GC-d-B ,.F0XO1GC-d-B .F0XO1GC-d-B {margin-left: 12px;}
..F0XO1GC-d-B .F0XO1GC-d-m a {padding-left: 4px;}
..F0XO1GC-d-w div a {position: relative;}
..F0XO1GC-d-d {position: absolute; top: 5px; bottom: 5px; left: 0px; right: =
0px;}
..F0XO1GC-d-w div.F0XO1GC-d-m a:hover ,.F0XO1GC-d-w div.F0XO1GC-d-c a:hover =
{color: rgb(34, 34, 34); background-color: rgb(238, 238, 238);}
..F0XO1GC-b-Db > div > a span ,.F0XO1GC-b-Db > a span ,body > div > a span ,=
body > a span {color: rgb(209, 72, 54);}
..F0XO1GC-b-Z {background-color: rgb(238, 238, 238);}
..F0XO1GC-d-w div.F0XO1GC-d-c {cursor: default;}
..F0XO1GC-b-C .F0XO1GC-d-B {display: none;}
..F0XO1GC-d-p {display: block; overflow: hidden; text-overflow: ellipsis; pa=
dding-left: 12px;}
..F0XO1GC-d-p > h3 {display: inline;}
..F0XO1GC-d-p > * {font-size: 13px;}
..F0XO1GC-d-c > a .F0XO1GC-d-p {cursor: default;}
..F0XO1GC-d-w div.F0XO1GC-d-t > a .F0XO1GC-d-p {padding-left: 0px;}
..F0XO1GC-d-B div.F0XO1GC-d-t > a .F0XO1GC-d-p {padding-left: 4px;}
..F0XO1GC-d-g {vertical-align: middle; line-height: 1px; cursor: default;}
..F0XO1GC-d-g span {cursor: default;}
..F0XO1GC-d-D {display: inline-block; width: 17px; height: 20px; position: a=
bsolute; top: 4px; left: 0px; margin-left: -1px; z-index: 10; cursor: point=
er; text-align: center;}
..F0XO1GC-d-D:hover {background-color: rgb(238, 238, 238);}
..F0XO1GC-b-N .F0XO1GC-d-D {top: 2px;}
..F0XO1GC-b-O .F0XO1GC-d-D ,body .F0XO1GC-d-D {top: 0px;}
..F0XO1GC-d-e {height: 16px; width: 16px; overflow: hidden; background: rgba=
(0, 0, 0, 0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAY=
AAAAf8/9hAAAALElEQVR4XmNgoBQoKin+x4HfKygoGKCrxwBYNJJmCBZNJOFRA0YNGC4GUAoAAJ=
wgHbDiRLwAAAAASUVORK5CYII=3D") no-repeat scroll 0px 0px;}
..F0XO1GC-b-Db .F0XO1GC-d-e ,body .F0XO1GC-d-e {height: 16px; width: 16px; o=
verflow: hidden; background: rgba(0, 0, 0, 0) url("data:image/png;base64,iV=
BORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAALUlEQVR4XmNgoBTc97b4jx2bv7/vZ=
WWArh4DYGok0RBMTaThUQNGDRguBlAKAIrl74P/KoO/AAAAAElFTkSuQmCC") no-repeat scr=
oll 0px 0px;}
..F0XO1GC-d-t .F0XO1GC-d-e {display: none;}
..F0XO1GC-d-t > div > a .F0XO1GC-d-p {padding-left: 0px;}
..F0XO1GC-d-z {height: 15px; width: 15px; overflow: hidden; background: rgba=
(0, 0, 0, 0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAY=
AAAA71pVKAAAAtklEQVR4Xq1RURXDIAxEwiQkdEImoRImZRImYRIqYRIqAQk4oBxLHjSvlI/u3s=
srJNzlmjh3ACK62dwpvPcv9hxzJImI3FAoP1yVwMyfEp6D5NaugHRMPPG3fYSziCR8G0qFWI09d=
XVg8wWnyq46ozs9bO0yGbbDyPZhPSu/e92HAytTrasKsClWdVUgLzTRbLkFu7W08dv5ovcs8LTc=
HTCYEvKP6NgKDgUsQPirgK0PoQLYEO4bRktk6roSAYoAAAAASUVORK5CYII=3D") no-repeat =
scroll 0px 0px;}
..F0XO1GC-b-Db .F0XO1GC-d-z ,body .F0XO1GC-d-z {height: 15px; width: 15px; o=
verflow: hidden; background: rgba(0, 0, 0, 0) url("data:image/png;base64,iV=
BORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAuElEQVR4Xq1RwQ2DMAzMCIzj/HgHK=
jFCR2GEjpARGKEjsIEzQjagsetAsAh5tCedROzc+YiNuQBOfadrt8ARZhwgJm7CyLWWUbq47oIB=
vDBIba0ayMQNHbzLS/QtJmTgC8kBmRZr7jmBrjNunU2RbIRe934WU+zQin3ZR2dftelUq/UY8qp=
5VYFjfqPmVSXaBR920lqGWktJz8J8dvDU2hPoYZjyjzTxZNgy0CDBXw10v4ndIG2Izh+5ScL343=
KOmQAAAABJRU5ErkJggg=3D=3D") no-repeat scroll 0px 0px;}
..F0XO1GC-d-i {position: absolute; top: 7px; opacity: 0.7; left: 4px;}
..F0XO1GC-b-N .F0XO1GC-d-i {top: 4px;}
..F0XO1GC-b-O .F0XO1GC-d-i ,body .F0XO1GC-d-i {top: 2px;}
..F0XO1GC-d-w div.F0XO1GC-d-m a:hover .F0XO1GC-d-i ,.F0XO1GC-d-f:hover .F0XO=
1GC-d-i ,.F0XO1GC-b-Db .F0XO1GC-d-i ,body .F0XO1GC-d-i {opacity: 1;}
..F0XO1GC-d-f .F0XO1GC-d-i {left: 16px;}
..F0XO1GC-d-m ,.F0XO1GC-d-c {position: relative;}
..F0XO1GC-d-q {padding-right: 20px;}
..F0XO1GC-d-n {display: block; float: right; position: relative; top: 7px; m=
argin-left: 3px; font-size: 11px; color: rgb(102, 102, 102) !important; bac=
kground-color: rgb(238, 238, 238); padding: 2px 3px; line-height: 12px; fon=
t-weight: normal;}
..F0XO1GC-b-N .F0XO1GC-d-n {top: 5px;}
..F0XO1GC-b-O .F0XO1GC-d-n ,body .F0XO1GC-d-n {top: 2px;}
..F0XO1GC-d-m a:hover .F0XO1GC-d-n ,.F0XO1GC-d-c a:hover .F0XO1GC-d-n {backg=
round-color: rgb(204, 204, 204); color: rgb(51, 51, 51) !important;}
..F0XO1GC-d-j {display: none;}
..F0XO1GC-d-m:hover .F0XO1GC-d-j ,.F0XO1GC-d-f:hover .F0XO1GC-d-j ,.F0XO1GC-=
d-a {display: inline;}
..F0XO1GC-d-m .F0XO1GC-d-v ,.F0XO1GC-d-c .F0XO1GC-d-v {top: 8px; right: 3px;=
z-index: 2; position: absolute; height: 13px; width: 13px; overflow: hidde=
n;}
..F0XO1GC-b-N .F0XO1GC-d-m .F0XO1GC-d-v ,.F0XO1GC-b-N .F0XO1GC-d-c .F0XO1GC-=
d-v {top: 6px;}
..F0XO1GC-b-O .F0XO1GC-d-m .F0XO1GC-d-v ,.F0XO1GC-b-O .F0XO1GC-d-c .F0XO1GC-=
d-v ,body .F0XO1GC-d-m .F0XO1GC-d-v ,body .F0XO1GC-d-c .F0XO1GC-d-v {top: 4=
px;}
..F0XO1GC-d-v input {border: 0px none; padding: 0px; outline: medium none;}
a.F0XO1GC-d-u {height: 13px; width: 13px; overflow: hidden; background: rgb=
a(0, 0, 0, 0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAANCA=
YAAABy6+R8AAAARUlEQVR4XmN49+7d/6dPnxKNQeoZQAxSAEj9UNJ05swZnBinJhBAV4ysAQSwa=
gIBXBpAAKcmEMCmAQTwasIF6KyJnLQHABO3ibexFooiAAAAAElFTkSuQmCC") no-repeat scr=
oll 0px 0px;}
a.F0XO1GC-d-u:hover ,.F0XO1GC-d-a a.F0XO1GC-d-u {height: 13px; width: 13px;=
overflow: hidden; background: rgba(0, 0, 0, 0) url("data:image/png;base64,=
iVBORw0KGgoAAAANSUhEUgAAAA0AAAANCAYAAABy6+R8AAAAQUlEQVR4XmO4fv36/2PHjhGNQeo=
ZQIx3794RjUHqh5KmyMhInBinJlwa8dqETSO6HE5NMI3oYgQ14cJ01kRO2gMAVulOLFDgg5kAAA=
AASUVORK5CYII=3D") no-repeat scroll 0px 0px;}
a.F0XO1GC-d-u {display: inline-block; padding: 0px !important;}
..F0XO1GC-d-E {font-weight: bold;}
..F0XO1GC-d-r {padding: 4px 8px;}
..F0XO1GC-d-r div {background-color: rgb(249, 237, 190); border: 2px solid r=
gb(249, 237, 190); color: rgb(34, 34, 34); padding: 4px; line-height: 16px;=
border-radius: 6px; text-align: center;}
div.dragdrop-dropTarget-engage .F0XO1GC-d-g {border: 1px solid red;}
..dragdrop-flow-panel-positioner {display: block; height: 2px; background-co=
lor: rgb(34, 34, 34); vertical-align: baseline !important;}
..F0XO1GC-d-f {position: relative; outline-style: none;}
..dragdrop-dropTarget-engage > .F0XO1GC-d-f a {background-color: rgb(136, 13=
6, 136);}
..F0XO1GC-d-s div.dragdrop-dropTarget-engage {border: 2px solid rgb(34, 34, =
34);}
..F0XO1GC-d-l {outline-style: none; margin-bottom: 9px;}
..F0XO1GC-d-h {font-size: 11px; color: rgb(68, 68, 68); text-align: center; =
padding: 16px 0px 20px 16px;}
..F0XO1GC-d-h a {white-space: nowrap;}
..F0XO1GC-d-h a:visited {color: rgb(17, 85, 204);}
..F0XO1GC-d-F {background-color: rgb(250, 250, 210) !important;}
..F0XO1GC-d-k {border-top: 1px solid rgb(235, 235, 235); margin-top: 4px; ma=
rgin-bottom: 10px;}
..F0XO1GC-c-d {color: rgb(184, 184, 184);}
..F0XO1GC-c-a {color: rgb(17, 85, 204); text-decoration: none; cursor: point=
er; white-space: nowrap;}
..F0XO1GC-c-b ,.F0XO1GC-c-b:visited ,.F0XO1GC-c-b:focus {color: rgb(184, 184=
, 184); text-decoration: none; cursor: text; outline: medium none;}
..F0XO1GC-A-a {position: relative; top: 3px; height: 15px; width: 15px;}
..F0XO1GC-w-a {width: 100%; margin-right: 0px; height: 8px; position: absolu=
te; top: 0px; left: 0px; opacity: 0; border-top: 1px solid rgb(235, 235, 23=
5);}
..F0XO1GC-m-c {text-align: left; border-bottom: 1px solid rgb(153, 153, 153)=
; font-size: 150%; padding-bottom: 4px;}
..F0XO1GC-m-g .F0XO1GC-m-d {width: 100%;}
..F0XO1GC-m-d th {text-align: left; padding-top: 16px;}
..F0XO1GC-m-d .F0XO1GC-m-a {vertical-align: top;}
..F0XO1GC-m-d .F0XO1GC-m-e {text-align: right; font-weight: bold; white-spac=
e: nowrap; padding-right: 0.3em;}
..F0XO1GC-m-d .F0XO1GC-m-b {font-size: 70%;}
..F0XO1GC-m-d .F0XO1GC-m-f {text-align: left;}
..F0XO1GC-m-g .F0XO1GC-m-a {width: 50%;}
..F0XO1GC-m-g .F0XO1GC-m-e ,.F0XO1GC-m-g th {color: rgb(221, 221, 0);}
..F0XO1GC-m-g .F0XO1GC-m-b ,.F0XO1GC-m-g td {color: rgb(255, 255, 255);}
..F0XO1GC-m-g th {font-weight: bold; padding: 16px 4px 4px;}
..F0XO1GC-m-g td {padding: 4px;}
..F0XO1GC-n-a {cursor: pointer; font-size: 11px; font-weight: bold; text-ali=
gn: center; margin-right: 16px; white-space: nowrap; height: 27px; line-hei=
ght: 27px; min-width: 54px; outline: 0px none; padding: 0px 8px; border-rad=
ius: 2px; display: inline-block;}
..F0XO1GC-c-c .F0XO1GC-n-a {min-width: 26px !important; margin-right: 10px;}
..chrome-theme .F0XO1GC-n-a {border-radius: 3px; font-size: 12px; font-weigh=
t: 700; padding: 0px 17px; text-align: center; text-decoration: none !impor=
tant;}
..F0XO1GC-n-a:hover {border: 1px solid rgb(198, 198, 198); box-shadow: 0px 1=
px 1px rgba(0, 0, 0, 0.1);}
..chrome-theme .F0XO1GC-n-a:hover {box-shadow: none;}
..F0XO1GC-n-j {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1) inset;}
..F0XO1GC-n-a img.F0XO1GC-n-d {vertical-align: middle; margin-top: -2px; opa=
city: 0.667;}
..F0XO1GC-n-j img.F0XO1GC-n-d ,.F0XO1GC-n-c img.F0XO1GC-n-d ,.F0XO1GC-n-a:ho=
ver img.F0XO1GC-n-d {opacity: 1;}
..F0XO1GC-n-h {min-width: 34px; padding: 0px 4px;}
..F0XO1GC-n-b {cursor: default; opacity: 0.5; pointer-events: none;}
..F0XO1GC-n-f {border-right-color: transparent; margin-right: 0px;}
..F0XO1GC-n-g {border-radius: 0px; margin-left: -1px; margin-right: -1px;}
..F0XO1GC-n-i {border-left-color: transparent; margin-left: 0px;}
..F0XO1GC-n-f {border-radius: 2px 0px 0px 2px;}
..F0XO1GC-n-f { }
..F0XO1GC-n-f {border-radius: 2px 0px 0px 2px;}
..F0XO1GC-n-i {border-radius: 0px 2px 2px 0px;}
..F0XO1GC-n-i { }
..F0XO1GC-n-i {border-radius: 0px 2px 2px 0px;}
..F0XO1GC-n-i {margin-left: -1px;}
..chrome-theme .F0XO1GC-n-f {border-radius: 3px 0px 0px 3px;}
..chrome-theme .F0XO1GC-n-f { }
..chrome-theme .F0XO1GC-n-f {border-radius: 3px 0px 0px 3px;}
..chrome-theme .F0XO1GC-n-i {border-radius: 0px 3px 3px 0px;}
..chrome-theme .F0XO1GC-n-i { }
..chrome-theme .F0XO1GC-n-i {border-radius: 0px 3px 3px 0px;}
..chrome-theme .F0XO1GC-n-i {margin-left: -1px;}
..jfk-button-standard {color: rgb(102, 102, 102); border: 1px solid rgba(0, =
0, 0, 0.1); background-color: rgb(245, 245, 245); background-image: -moz-li=
near-gradient(center top , rgb(245, 245, 245), rgb(241, 241, 241));}
..jfk-button-standard:hover {border: 1px solid rgb(198, 198, 198); color: rg=
b(51, 51, 51); background-color: rgb(248, 248, 248); background-image: -moz=
-linear-gradient(center top , rgb(248, 248, 248), rgb(241, 241, 241));}
..jfk-button-standard:active {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3) ins=
et;}
..jfk-button-standard:focus {outline: medium none; border: 1px solid rgb(77,=
144, 254); z-index: 4;}
..chrome-theme .jfk-button-standard:focus {border: 1px solid rgb(170, 170, 1=
70);}
..jfk-button-standard.F0XO1GC-n-j {background-color: rgb(238, 238, 238); bor=
der: 1px solid rgb(204, 204, 204); color: rgb(51, 51, 51); background-image=
: -moz-linear-gradient(center top , rgb(238, 238, 238), rgb(224, 224, 224))=
;}
..jfk-button-standard.F0XO1GC-n-b {background: rgb(255, 255, 255) none repea=
t scroll 0% 0%; border: 1px solid rgba(0, 0, 0, 0.05); color: rgb(184, 184,=
184);}
..F0XO1GC-k-b {height: 4px; width: 7px; overflow: hidden; background: rgba(0=
, 0, 0, 0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAECAYAA=
ABCxiV9AAAAHElEQVR4XmOIjIz8jwszgAC6IFwCBnBKwAC6BACk/yChPTGdaAAAAABJRU5ErkJg=
gg=3D=3D") no-repeat scroll 0px 0px; display: inline-block; margin-left: 7p=
x; margin-bottom: 1px; opacity: 0.8;}
..F0XO1GC-k-c:hover .F0XO1GC-k-b {opacity: 1;}
..F0XO1GC-f-F ,.F0XO1GC-f-x {position: relative;}
..F0XO1GC-f-q {height: 68px; background-color: rgb(245, 245, 245); padding: =
0px 44px; vertical-align: middle; border-top: 1px solid rgb(229, 229, 229);=
border-bottom: 1px solid rgb(229, 229, 229); position: relative;}
..F0XO1GC-b-N .F0XO1GC-f-q {padding: 0px 28px;}
..F0XO1GC-b-O .F0XO1GC-f-q ,body .F0XO1GC-f-q {height: 44px; padding: 0px 16=
px;}
..F0XO1GC-b-dc .F0XO1GC-f-q ,body .F0XO1GC-f-q {padding-right: 30px; padding=
-left: 30px;}
..F0XO1GC-f-p {position: absolute; left: 44px;}
..F0XO1GC-b-N .F0XO1GC-f-p {left: 28px;}
..F0XO1GC-b-O .F0XO1GC-f-p ,body .F0XO1GC-f-p {left: 16px; height: 60px; top=
: -7px;}
..F0XO1GC-b-dc .F0XO1GC-f-p ,body .F0XO1GC-f-p {left: 30px;}
..F0XO1GC-f-D {height: 68px; position: absolute; left: 220px; right: 0px;}
..F0XO1GC-b-N .F0XO1GC-f-D {left: 204px;}
..F0XO1GC-b-O .F0XO1GC-f-D ,body .F0XO1GC-f-D {left: 176px; height: 44px;}
..F0XO1GC-b-dc .F0XO1GC-f-D ,body .F0XO1GC-f-D {left: 204px;}
..F0XO1GC-f-E {padding: 12px 8px;}
..F0XO1GC-f-G ,.F0XO1GC-f-G > * ,body > * {outline: medium none !important;}
..F0XO1GC-f-v {width: 198px; position: absolute; left: 0px;}
..F0XO1GC-f-l {margin-left: 220px;}
..F0XO1GC-f-l:focus {outline: medium none;}
..F0XO1GC-f-f {position: absolute; top: 7px; left: 244px; cursor: pointer; z=
-index: 2;}
..F0XO1GC-f-j .F0XO1GC-f-v {display: none;}
..F0XO1GC-f-j .F0XO1GC-f-e {margin-left: 24px !important;}
..F0XO1GC-f-j .F0XO1GC-f-d {margin-left: 220px !important;}
..F0XO1GC-f-j .F0XO1GC-f-f {left: 0px;}
..F0XO1GC-f-o .F0XO1GC-f-q ,.F0XO1GC-f-o .F0XO1GC-f-v ,.F0XO1GC-f-o .F0XO1GC=
-b-p {display: none;}
..F0XO1GC-f-o .F0XO1GC-f-l {margin-left: 24px !important;}
..F0XO1GC-f-o .F0XO1GC-b-o ,.F0XO1GC-f-o .F0XO1GC-b-G {padding-right: 8px;}
..F0XO1GC-f-o .F0XO1GC-f-x {position: relative;}
..F0XO1GC-f-o .F0XO1GC-f-x .F0XO1GC-f-l {margin-left: 0px !important; positi=
on: absolute; top: 0px; bottom: 0px; right: 0px; left: 24px !important;}
..F0XO1GC-f-o .F0XO1GC-b-D {position: relative;}
..F0XO1GC-f-o .F0XO1GC-f-n {display: none !important;}
#gb.F0XO1GC-f-o ,#gba.F0XO1GC-f-o {display: none;}
..F0XO1GC-f-y {padding: 5px;}
..F0XO1GC-f-z {outline: medium none; border: medium none;}
..F0XO1GC-f-z img {outline: medium none; border: medium none; margin-top: 8p=
x;}
..F0XO1GC-f-A {position: absolute; width: 8px; top: 0px; bottom: 0px; right:=
-20px; cursor: col-resize;}
..F0XO1GC-f-A .F0XO1GC-f-C {display: block; position: absolute; left: 5px; t=
op: 0px; bottom: 0px; border-left: 1px solid rgb(235, 235, 235);}
..F0XO1GC-f-B .F0XO1GC-f-C {border-left: 1px solid rgb(235, 235, 235);}
..F0XO1GC-f-A .F0XO1GC-f-i {visibility: visible !important;}
..F0XO1GC-b-w {top: -15px;}
..F0XO1GC-f-q .F0XO1GC-b-w {top: 54px;}
html ,body ,#gb ,#gbx1 {min-width: 700px;}
html {overflow-x: auto; overflow-y: hidden;}
body {overflow: visible;}
..F0XO1GC-f-b {overflow: hidden; min-height: 30px;}
..F0XO1GC-f-w {position: absolute; right: 0px; top: 0px; padding-left: 16px;=
}
..F0XO1GC-f-w > div > div {display: inline-block; margin-right: 0px; margin-=
left: 16px;}
..F0XO1GC-c-c .F0XO1GC-f-w > div > div {margin-left: 10px; margin-right: 0px=
;}
..F0XO1GC-f-w > div > div:first-child {margin-left: 0px;}
..F0XO1GC-f-g {transform: rotate(180deg); vertical-align: middle;}
..F0XO1GC-f-m {transform: rotate(0deg); vertical-align: middle;}
..F0XO1GC-f-h {border: 1px solid rgb(235, 235, 235); padding: 4px; cursor: p=
ointer !important;}
..F0XO1GC-b-O .F0XO1GC-f-h ,body .F0XO1GC-f-h {padding: 3px 3px 4px;}
..F0XO1GC-f-h:hover {background-color: rgb(238, 238, 238);}
..F0XO1GC-f-i:hover {visibility: visible;}
..F0XO1GC-f-i {visibility: hidden; position: absolute; right: 2px; top: 0px;=
bottom: 0px; padding: 8px 0px 8px 8px;}
..F0XO1GC-f-n {display: none; position: absolute; padding: 8px 0px;}
..F0XO1GC-f-j .F0XO1GC-f-n {display: block;}
..F0XO1GC-b-N .F0XO1GC-f-i {padding: 7px 0px 7px 7px;}
..F0XO1GC-b-O .F0XO1GC-f-i ,body .F0XO1GC-f-i {padding: 6px 0px 6px 6px;}
..F0XO1GC-b-N .F0XO1GC-f-n {padding: 7px 0px;}
..F0XO1GC-b-O .F0XO1GC-f-n ,body .F0XO1GC-f-n {padding: 6px 0px;}
..F0XO1GC-r-d {padding-right: 144px; white-space: nowrap;}
..F0XO1GC-r-e {margin: 19px 16px 0px 0px; white-space: nowrap; min-width: 38=
4px; max-width: 512px; width: 100%; display: inline-block; position: relati=
ve; height: 29px; line-height: 27px; vertical-align: top;}
..F0XO1GC-b-O .F0XO1GC-r-e ,body .F0XO1GC-r-e {margin-top: 7px;}
..F0XO1GC-r-e input[type=3D"text"] {position: absolute; left: 0px; right: 0p=
x; width: 100%;}
..F0XO1GC-r-b {max-height: 250px; overflow-y: auto; overflow-x: hidden; whit=
e-space: nowrap;}
..F0XO1GC-r-b .F0XO1GC-r-c {padding-left: 20px;}
..suggestPopupContent {cursor: pointer;}
..suggestPopupContent .F0XO1GC-r-g {margin-left: 5px; color: rgb(0, 0, 0);}
..F0XO1GC-r-i {position: relative;}
..F0XO1GC-r-h {position: relative; float: left; margin: 8px 6px 0px 0px;}
..F0XO1GC-r-f {margin-top: 19px; vertical-align: top;}
..F0XO1GC-b-O .F0XO1GC-r-f ,body .F0XO1GC-r-f {margin-top: 7px;}
..F0XO1GC-r-f img {opacity: 1 !important;}
..F0XO1GC-r-a {cursor: pointer; position: absolute; right: 2px; text-align: =
center;}
..F0XO1GC-r-a img {opacity: 0.667; margin: 0px 6px 2px;}
..F0XO1GC-r-a:hover img {opacity: 1;}
..F0XO1GC-j-t {background-color: white; border: medium none; outline: medium=
none; padding: 0px;}
..F0XO1GC-j-m {font-size: 16px; line-height: 24px; color: rgb(34, 34, 34); f=
ont-weight: normal; margin-bottom: 8px;}
..F0XO1GC-b-wb .F0XO1GC-j-m ,.F0XO1GC-j-t .F0XO1GC-j-m ,.F0XO1GC-b-O .F0XO1G=
C-b-wb .F0XO1GC-j-m ,.F0XO1GC-b-N .F0XO1GC-b-wb .F0XO1GC-j-m ,.F0XO1GC-b-M =
..F0XO1GC-b-wb .F0XO1GC-j-m ,body .F0XO1GC-b-wb .F0XO1GC-j-m {background-col=
or: rgb(66, 133, 244); color: rgb(255, 255, 255); height: 36px; padding: 0p=
x; margin: 0px;}
..F0XO1GC-b-O .F0XO1GC-j-m ,body .F0XO1GC-j-m {padding: 20px 16px 0px;}
..F0XO1GC-j-e {overflow-y: auto; overflow-x: hidden; position: relative; max=
-width: 600px; min-width: 250px; font-size: 13px; line-height: 17px;}
..F0XO1GC-b-O .F0XO1GC-b-wb .F0XO1GC-j-f ,.F0XO1GC-b-N .F0XO1GC-b-wb .F0XO1G=
C-j-f ,.F0XO1GC-b-M .F0XO1GC-b-wb .F0XO1GC-j-f ,.F0XO1GC-b-wb .F0XO1GC-j-f =
,body .F0XO1GC-b-wb .F0XO1GC-j-f {margin: 0px;}
..F0XO1GC-j-f {margin: 24px;}
..F0XO1GC-b-O .F0XO1GC-j-f ,body .F0XO1GC-j-f {margin: 12px;}
..F0XO1GC-j-f .F0XO1GC-j-q {font-weight: bold;}
..F0XO1GC-j-f .F0XO1GC-j-n {color: rgb(102, 102, 102); margin-bottom: 12px; =
margin-left: 22px;}
..F0XO1GC-j-f .F0XO1GC-j-o {margin-top: 12px;}
..F0XO1GC-j-r {height: 24px; width: 24px;}
..F0XO1GC-j-j ,.F0XO1GC-j-h {display: table-cell;}
..F0XO1GC-j-i {margin: 24px;}
..F0XO1GC-j-g {margin-top: 24px; text-align: left;}
..F0XO1GC-j-h > .F0XO1GC-j-g {margin: 48px 24px 24px;}
..F0XO1GC-j-y.F0XO1GC-j-w .F0XO1GC-j-g {margin-top: 24px;}
..F0XO1GC-j-x .F0XO1GC-j-f {margin-top: 0px;}
..F0XO1GC-j-w .F0XO1GC-j-f {margin-bottom: 0px;}
..F0XO1GC-j-p .F0XO1GC-j-e {overflow: visible; max-width: none; padding: 0px=
;}
..F0XO1GC-j-u .F0XO1GC-j-c {display: none;}
..F0XO1GC-j-c {cursor: pointer; right: 10px; position: absolute; top: 6px;}
..F0XO1GC-b-wb .F0XO1GC-j-c ,.F0XO1GC-j-s .F0XO1GC-j-c {line-height: 36px; t=
op: 8px; vertical-align: text-bottom;}
..F0XO1GC-j-c img:hover {background-color: rgb(123, 170, 247);}
..F0XO1GC-j-s {background-color: rgb(66, 133, 244); bottom: 0px; height: 36p=
x; position: fixed; right: 25px; width: 260px; z-index: 1;}
..F0XO1GC-j-t .F0XO1GC-j-l ,.F0XO1GC-b-wb .F0XO1GC-j-l ,.F0XO1GC-j-s .F0XO1G=
C-j-l {color: rgb(255, 255, 255); font-family: "Roboto",Arial,sans-serif; f=
ont-size: 16px; font-weight: normal; line-height: 36px; padding-left: 15px;=
text-align: left;}
..F0XO1GC-b-i .F0XO1GC-j-c {top: 5px; right: 5px;}
..F0XO1GC-b-i .F0XO1GC-j-c img {display: block;}
..F0XO1GC-j-f .F0XO1GC-k-c ,.F0XO1GC-j-f .F0XO1GC-k-c:focus {background-imag=
e: none; background-repeat: repeat; background-attachment: scroll; backgrou=
nd-clip: border-box; background-origin: padding-box; background-position: 0=
% 0%; background-size: auto auto; background-color: inherit; border: 1px so=
lid rgba(0, 0, 0, 0); box-shadow: none; color: inherit; font-size: 13px; pa=
dding: 0px 3px; opacity: 0.6;}
..F0XO1GC-j-f .F0XO1GC-k-c:hover {background-color: lightgray;}
..F0XO1GC-v-a {height: 21px; width: 21px; overflow: hidden; background: rgba=
(0, 0, 0, 0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAVCAY=
AAACpF6WWAAAAoUlEQVR4XmNgGAWDFUgCMTu6ICXAHIgnAbEzugS5wB6IlwBxFLoEuSAQiGcCcR=
kQM6HJkQxYgTidAWJgDpocWYAbiCsZIAaWMkAsIAlMAWJ/IGaB8sWAuJkBYmAdEHNCxUkCjgwQA=
6qA2AKI+6B8kMG8SOpIBqkMEINguBOIhVBUkAFAXmxigBjYA8TSqNLkA1kGiIEKaOIUA7IiZRQM=
cgAAWowSHyS3HFUAAAAASUVORK5CYII=3D") no-repeat scroll 0px 0px; position: ab=
solute; left: 3px;}
..gux-combo-item.F0XO1GC-v-b {padding-left: 28px;}
..goog-button-base {cursor: default; font: 0.846em/1 Arial,sans-serif; lette=
r-spacing: normal; margin: 0px 1px; outline: medium none; text-align: cente=
r; text-indent: 0px; text-transform: none; vertical-align: baseline; white-=
space: nowrap; word-spacing: normal;}
..goog-button-base-outer-box {border-top: 1px solid rgb(187, 187, 187); bord=
er-bottom: 1px solid rgb(170, 170, 170);}
..goog-button-base-inner-box {background: rgb(227, 227, 227) none repeat scr=
oll 0% 0%; border-left: 1px solid rgb(187, 187, 187); border-right: 1px sol=
id rgb(170, 170, 170); margin: 0px -1px;}
..goog-button-base-pos {height: 100%; position: relative;}
..goog-button-base-top-shadow {background: rgb(249, 249, 249) none repeat sc=
roll 0% 0%; border-bottom: 0.23em solid rgb(238, 238, 238); height: 0.692em=
; left: 0px; overflow: hidden; position: absolute; right: 0px; top: 0px;}
..goog-button-base-content {color: rgb(51, 51, 51); line-height: 1.7em; posi=
tion: relative; padding: 0px 0.545em; text-align: center;}
..goog-button-base-hover .goog-button-base-content ,.goog-button-base-focuse=
d .goog-button-base-content {color: rgb(0, 0, 0);}
..goog-button-base-hover .goog-button-base-outer-box ,.goog-button-base-hove=
r .goog-button-base-inner-box ,.goog-button-base-focused .goog-button-base-=
outer-box ,.goog-button-base-focused .goog-button-base-inner-box {border-co=
lor: rgb(136, 136, 136);}
..goog-button-base-active .goog-button-base-inner-box ,.goog-button-base-ope=
n .goog-button-base-inner-box {background: rgb(249, 249, 249) none repeat s=
croll 0% 0%;}
..goog-button-base-active .goog-button-base-top-shadow ,.goog-button-base-op=
en .goog-button-base-top-shadow {background: rgb(227, 227, 227) none repeat=
scroll 0% 0%;}
..goog-button-base-active .goog-button-base-content ,.goog-button-base-open =
..goog-button-base-content {color: rgb(0, 0, 0);}
..goog-button-base-primary .goog-button-base-content {font-weight: bold; col=
or: rgb(0, 0, 0);}
..goog-button-base-disabled {cursor: default;}
..goog-button-base-disabled .goog-button-base-inner-box {background: rgb(238=
, 238, 238) none repeat scroll 0% 0%;}
..goog-button-base-disabled .goog-button-base-top-shadow {background: rgb(23=
8, 238, 238) none repeat scroll 0% 0%; border-color: rgb(238, 238, 238);}
..goog-button-base-disabled .goog-button-base-content {color: rgb(153, 153, =
153);}
..goog-button-base-collapse-right ,.goog-button-base-collapse-right .goog-bu=
tton-base-inner-box {margin-right: 0px;}
..goog-button-base-collapse-left {margin-left: 0px;}
..goog-button-base-collapse-left .goog-button-base-inner-box {margin-left: 0=
px; border-left: 1px solid rgb(255, 255, 255);}
..goog-button-base-hover.goog-button-base-collapse-left ,.goog-button-base-f=
ocused.goog-button-base-collapse-left {border-left: 1px solid rgb(136, 136,=
136); margin-left: -1px; z-index: 1;}
..goog-button-base-selected .goog-button-base-outer-box ,.goog-button-base-s=
elected .goog-button-base-inner-box {background-color: rgb(119, 119, 119); =
border-color: rgb(136, 136, 136);}
..goog-button-base-selected .goog-button-base-top-shadow {border-bottom-colo=
r: rgb(136, 136, 136); background-color: rgb(153, 153, 153);}
..goog-button-base-selected .goog-button-base-content {color: rgb(238, 238, =
238);}
..goog-button-base-collapse-left.goog-button-base-selected .goog-button-base=
-inner-box {border-left: 1px solid rgb(85, 85, 85);}
..F0XO1GC-q-e {background-color: rgb(42, 42, 42); border: 1px solid rgb(255,=
255, 255); color: rgb(255, 255, 255); display: block; position: absolute; =
padding: 5px 7px; z-index: 10; white-space: nowrap;}
..F0XO1GC-q-g {z-index: 1021;}
..F0XO1GC-q-e strong {color: rgb(255, 255, 255);}
..F0XO1GC-q-e::before ,.F0XO1GC-q-e::after {border-style: solid; content: ""=
; display: block; height: 0px; position: absolute; width: 0px;}
..F0XO1GC-q-e.F0XO1GC-q-f::before ,.F0XO1GC-q-e.F0XO1GC-q-h::before ,.F0XO1G=
C-q-e.F0XO1GC-q-i::before ,.F0XO1GC-q-e.F0XO1GC-q-d::before {bottom: auto; =
margin-top: -7px; top: 50%;}
..F0XO1GC-q-e.F0XO1GC-q-f::after ,.F0XO1GC-q-e.F0XO1GC-q-h::after ,.F0XO1GC-=
q-e.F0XO1GC-q-i::after ,.F0XO1GC-q-e.F0XO1GC-q-d::after {bottom: auto; marg=
in-top: -6px; top: 50%;}
..F0XO1GC-q-e.F0XO1GC-q-l::before ,.F0XO1GC-q-e.F0XO1GC-q-c::before ,.F0XO1G=
C-q-e.F0XO1GC-q-l::after ,.F0XO1GC-q-e.F0XO1GC-q-c::after {left: 80% !impor=
tant;}
..F0XO1GC-q-e.F0XO1GC-q-k::before ,.F0XO1GC-q-e.F0XO1GC-q-b::before ,.F0XO1G=
C-q-e.F0XO1GC-q-k::after ,.F0XO1GC-q-e.F0XO1GC-q-b::after {left: 20% !impor=
tant;}
..F0XO1GC-q-e.F0XO1GC-q-j::before ,.F0XO1GC-q-e.F0XO1GC-q-a::before {left: 5=
0%; margin-left: -7px; right: auto;}
..F0XO1GC-q-e.F0XO1GC-q-j::after ,.F0XO1GC-q-e.F0XO1GC-q-a::after {left: 50%=
; margin-left: -6px; right: auto;}
..F0XO1GC-q-e.F0XO1GC-q-j::before {border-color: rgb(255, 255, 255) transpar=
ent; border-width: 8px 7px 0px; bottom: -8px;}
..F0XO1GC-q-e.F0XO1GC-q-j::after {border-color: rgb(42, 42, 42) transparent;=
border-width: 7px 6px 0px; bottom: -7px;}
..F0XO1GC-q-e.F0XO1GC-q-a::before {border-color: rgb(255, 255, 255) transpar=
ent; border-width: 0px 7px 8px; top: -8px;}
..F0XO1GC-q-e.F0XO1GC-q-a::after {border-color: rgb(42, 42, 42) transparent;=
border-width: 0px 6px 7px; top: -7px;}
..F0XO1GC-q-e.F0XO1GC-q-f::before {border-color: transparent rgb(255, 255, 2=
55); border-width: 7px 0px 7px 8px; right: -8px;}
..F0XO1GC-q-e.F0XO1GC-q-f::after {border-color: transparent rgb(42, 42, 42);=
border-width: 6px 0px 6px 7px; right: -7px;}
..F0XO1GC-q-e.F0XO1GC-q-h::before {border-color: transparent rgb(255, 255, 2=
55); border-width: 7px 8px 7px 0px; left: -8px;}
..F0XO1GC-q-e.F0XO1GC-q-h::after {border-color: transparent rgb(42, 42, 42);=
border-width: 6px 7px 6px 0px; left: -7px;}
..F0XO1GC-q-e.F0XO1GC-q-i::before {border-color: transparent rgb(255, 255, 2=
55); border-width: 7px 0px 7px 8px; right: -8px;}
..F0XO1GC-q-e.F0XO1GC-q-i::after {border-color: transparent rgb(42, 42, 42);=
border-width: 6px 0px 6px 7px; right: -7px;}
..F0XO1GC-q-e.F0XO1GC-q-d::before {border-color: transparent rgb(255, 255, 2=
55); border-width: 7px 8px 7px 0px; left: -8px;}
..F0XO1GC-q-e.F0XO1GC-q-d::after {border-color: transparent rgb(42, 42, 42);=
border-width: 6px 7px 6px 0px; left: -7px;}
..F0XO1GC-x-a .F0XO1GC-x-d {float: left;}
..F0XO1GC-x-a .F0XO1GC-x-e {float: right;}
..F0XO1GC-x-a .F0XO1GC-x-e td:last-child div {margin-right: 0px;}
..F0XO1GC-x-b {line-height: 24px; margin-bottom: 14px;}
..F0XO1GC-b-O .F0XO1GC-x-b ,body .F0XO1GC-x-b {line-height: 17px; margin-bot=
tom: 8px;}
..F0XO1GC-o-j {width: 100%; position: relative;}
..F0XO1GC-o-j td {border-bottom: 1px solid rgb(235, 235, 235); line-height: =
17px; vertical-align: top;}
..F0XO1GC-o-j td a ,.F0XO1GC-o-j td a:hover ,.F0XO1GC-o-j td a:visited {font=
-size: 16px; font-weight: normal; color: rgb(17, 85, 204);}
..F0XO1GC-o-k {margin-right: 44px;}
..F0XO1GC-o-j .highlighted td {background-color: rgb(242, 242, 242);}
..F0XO1GC-o-o {width: 20px; min-width: 20px; padding-right: 4px; padding-lef=
t: 4px;}
..F0XO1GC-o-g {white-space: nowrap;}
..F0XO1GC-o-r {width: 14ex;}
..F0XO1GC-o-h {width: 40ex; overflow: hidden;}
..F0XO1GC-o-i {width: 16ex; overflow: hidden;}
..F0XO1GC-o-a {margin: 8px 0px;}
..F0XO1GC-o-n {float: left; margin-right: 6px; margin-top: -3px;}
..F0XO1GC-o-c {margin-top: 4px; margin-left: 30px;}
..F0XO1GC-o-s {line-height: 17px; max-height: 34px; overflow: hidden;}
..F0XO1GC-o-q {font-weight: bold;}
..F0XO1GC-o-t {border-bottom: 1px solid rgb(221, 221, 221);}
..F0XO1GC-o-e {padding: 8px 0px 0px;}
..F0XO1GC-o-l {font-size: 11px !important;}
..F0XO1GC-o-b {max-width: 10em;}
..F0XO1GC-Z-b {margin: 0px 4px; padding: 8px 0px; line-height: 50px; clear: =
both; color: rgb(34, 34, 34); vertical-align: middle; white-space: nowrap;}
..F0XO1GC-Z-c {display: inline; padding-left: 20px;}
..F0XO1GC-Z-h {padding-top: 1px; overflow: hidden; margin-right: 10px; min-w=
idth: 15em;}
..F0XO1GC-Z-g {font-weight: bold; padding-bottom: 4px;}
..F0XO1GC-Z-a {float: left; margin: 0px 8px; position: relative; top: 8px;}
..F0XO1GC-Z-d a ,.F0XO1GC-Z-d a:hover ,.F0XO1GC-Z-d a:visited {font-size: 13=
px !important;}
..F0XO1GC-Z-d {padding-left: 8px;}
..F0XO1GC-H-d {display: inline-block; height: 13px; padding: 5px; text-align=
: center; width: 13px; cursor: pointer;}
..F0XO1GC-H-d .F0XO1GC-H-c {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.=
com/ui/v1/star/star2.png") no-repeat scroll 0% 0%; height: 13px; width: 13p=
x;}
..F0XO1GC-H-b .F0XO1GC-H-c {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.=
com/ui/v1/star/star2.png") no-repeat scroll 0% 0%;}
..F0XO1GC-H-a .F0XO1GC-H-c {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.=
com/ui/v1/star/star-lit.png") no-repeat scroll 0% 0%;}
..F0XO1GC-Gb-a {color: gray; display: inline;}
..F0XO1GC-Gb-a ul {list-style-type: none; padding-left: 5px; display: inline=
;}
..F0XO1GC-Gb-a li {display: inline;}
..F0XO1GC-Gb-a li::after {content: "-"; padding: 0px 10px;}
..F0XO1GC-Gb-a li:last-child::after {content: "";}
..F0XO1GC-p-U {position: relative; margin-left: 12px;}
..F0XO1GC-p-c {width: 100%;}
..F0XO1GC-p-c .goog-button-base {margin-right: 4px;}
..F0XO1GC-p-c .goog-button-base-collapse-right {margin-right: 0px;}
..F0XO1GC-p-c .goog-button-base {vertical-align: middle;}
..F0XO1GC-p-q {padding: 0px 0px 5px;}
..F0XO1GC-p-r {position: relative; border-bottom: 1px solid rgb(235, 235, 23=
5); line-height: 27px;}
..embed .F0XO1GC-p-r.F0XO1GC-p-t {margin: 16px 30px 0px 0px; padding: 0px 0p=
x 4px 12px !important;}
..F0XO1GC-p-r.F0XO1GC-p-t {margin: 16px 44px 0px 0px; padding: 0px 0px 4px !=
important;}
..chrome-theme .F0XO1GC-p-r.F0XO1GC-p-t {margin: 16px 0px 0px !important;}
..F0XO1GC-b-N .F0XO1GC-p-r.F0XO1GC-p-t {margin: 8px 28px 0px 0px;}
..F0XO1GC-b-O .F0XO1GC-p-r.F0XO1GC-p-t ,body .F0XO1GC-p-r.F0XO1GC-p-t {margi=
n: 4px 16px 0px 0px;}
..F0XO1GC-b-dc .F0XO1GC-p-r.F0XO1GC-p-t ,body .F0XO1GC-p-r.F0XO1GC-p-t {marg=
in-right: 30px;}
..F0XO1GC-p-r.F0XO1GC-p-t .jfk-button-standard ,.F0XO1GC-p-r.F0XO1GC-p-t .jf=
k-button-default {height: 19px; line-height: 19px; position: relative; vert=
ical-align: top;}
..F0XO1GC-p-r.F0XO1GC-p-t .jfk-button-action {height: 19px; line-height: 19p=
x; position: relative; vertical-align: top; top: -4px;}
..F0XO1GC-p-s {overflow: hidden;}
..F0XO1GC-p-U > img {margin: 0px 0px 0px 8px;}
..F0XO1GC-p-P ,.F0XO1GC-p-t .F0XO1GC-p-x a ,.F0XO1GC-p-t .F0XO1GC-p-x span {=
white-space: nowrap; text-align: right; color: rgb(102, 102, 102);}
..F0XO1GC-p-F {text-align: center; padding-top: 25px; display: block;}
..F0XO1GC-p-V td {height: 20px; vertical-align: middle; border-bottom: 1px s=
olid rgb(221, 221, 221); cursor: pointer;}
..F0XO1GC-p-o td {border-bottom: 1px solid rgb(221, 221, 221); cursor: point=
er;}
..F0XO1GC-p-Y .F0XO1GC-p-B {font-weight: bold;}
..F0XO1GC-p-B {text-align: right; color: rgb(51, 51, 51);}
a.F0XO1GC-p-Q ,a.F0XO1GC-p-Q:visited {color: rgb(34, 34, 34); text-decorati=
on: none;}
..F0XO1GC-p-Y a.F0XO1GC-p-Q ,.F0XO1GC-p-Y a.F0XO1GC-p-Q:visited {color: rgb(=
34, 34, 34); font-weight: bold;}
..F0XO1GC-p-V td:first-child ,.F0XO1GC-p-o td:first-child {border-left: 2px =
solid transparent;}
..F0XO1GC-p-V tr.selected td:first-child ,.F0XO1GC-p-o tr.selected td:first-=
child {border-left: 2px solid rgb(77, 144, 240);}
..F0XO1GC-p-V tr ,.F0XO1GC-p-o tr {background-color: rgba(255, 255, 255, 0.8=
);}
tr.F0XO1GC-p-M {background-color: rgba(0, 0, 0, 0.06);}
..F0XO1GC-p-X tr.F0XO1GC-p-M {background-color: rgba(0, 0, 0, 0.04);}
..F0XO1GC-p-K {text-align: left; color: rgb(51, 51, 51);}
..F0XO1GC-p-t .F0XO1GC-p-K {padding-right: 30px;}
..F0XO1GC-b-N .F0XO1GC-p-t .F0XO1GC-p-K {padding-right: 15px;}
..F0XO1GC-b-O .F0XO1GC-p-t .F0XO1GC-p-K ,body .F0XO1GC-p-t .F0XO1GC-p-K {pad=
ding-right: 5px;}
..F0XO1GC-b-dc .F0XO1GC-p-t .F0XO1GC-p-K ,body .F0XO1GC-p-t .F0XO1GC-p-K {pa=
dding-right: 15px;}
..F0XO1GC-p-V {width: 100%; border-collapse: collapse;}
..F0XO1GC-p-V td {white-space: nowrap; overflow: hidden; padding: 8px;}
..F0XO1GC-b-N .F0XO1GC-p-V td {padding: 6px;}
..F0XO1GC-b-O .F0XO1GC-p-V td ,body .F0XO1GC-p-V td {padding: 2px;}
..F0XO1GC-p-o {table-layout: fixed; width: 100%; border-collapse: collapse;}
..F0XO1GC-p-W {margin: 0px 3px; vertical-align: middle;}
td.F0XO1GC-p-k {vertical-align: middle; cursor: default;}
..F0XO1GC-p-o .F0XO1GC-p-j {margin-left: 8px;}
..F0XO1GC-p-l {width: 0px;}
..F0XO1GC-p-o .F0XO1GC-p-l {width: 32px;}
..F0XO1GC-p-R {width: 70%;}
..F0XO1GC-p-t .F0XO1GC-p-R {width: 100%;}
..F0XO1GC-p-D .F0XO1GC-p-R {width: 60%;}
..F0XO1GC-p-N {width: 25%;}
..F0XO1GC-p-L {width: 0px;}
..F0XO1GC-p-g {width: 30%;}
..F0XO1GC-p-C {width: 0px;}
..F0XO1GC-p-D .F0XO1GC-p-C {width: 15%;}
..F0XO1GC-p-V .F0XO1GC-p-O {vertical-align: middle;}
..F0XO1GC-p-o .F0XO1GC-p-O {vertical-align: top; position: relative; top: -5=
px;}
..F0XO1GC-p-r .F0XO1GC-p-O {padding: 0px 8px 2px 0px !important;}
..F0XO1GC-p-m {position: relative;}
..F0XO1GC-p-A {height: 21px; width: 21px; overflow: hidden; background: rgba=
(0, 0, 0, 0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAVCAY=
AAACpF6WWAAAASklEQVR4Xu3OMQoAIBTDUO+Ph3aVB62bIBjIIKR8x/g8ydz0fTJi5LAZMXLYvI=
uX/U0zYuSwGTFy2LyLl/1NM2LksBkxctj8vMYCmbJE6ecHDvkAAAAASUVORK5CYII=3D") no-r=
epeat scroll 0px 0px;}
..F0XO1GC-p-z {height: 21px; width: 21px; overflow: hidden; background: rgba=
(0, 0, 0, 0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAVCAY=
AAACpF6WWAAAAJ0lEQVR4Xu3DgQUAAAzAsJ3e03dEKWMhM+8kxBZiC7GF2EJsIb5rFq8dLQEuSH=
ONAAAAAElFTkSuQmCC") no-repeat scroll 0px 0px;}
..F0XO1GC-p-d {margin-right: 2px; margin-left: 4px; vertical-align: middle; =
position: relative;}
..F0XO1GC-p-d img {vertical-align: middle;}
..F0XO1GC-p-Z {border-bottom: 1px solid rgb(221, 221, 221);}
..F0XO1GC-p-a {color: rgb(102, 102, 102) !important; font-weight: normal !im=
portant;}
..F0XO1GC-p-b {margin-left: 5px; margin-right: 2px;}
..F0XO1GC-p-n {color: rgb(119, 119, 187) !important; margin-left: 4px; white=
-space: nowrap; vertical-align: middle;}
..F0XO1GC-p-y {min-width: 260px;}
..F0XO1GC-p-S {padding-top: 16px;}
..F0XO1GC-p-G {border-bottom: 1px solid rgb(235, 235, 235); text-align: cent=
er;}
..F0XO1GC-p-G > div {margin: 4px; text-align: center; padding: 7px 16px; bac=
kground-color: rgb(249, 237, 190); border: 1px solid rgb(240, 195, 109); di=
splay: inline-block; border-radius: 2px; font-size: 11px; line-height: 16px=
; cursor: pointer;}
..F0XO1GC-p-G a {text-decoration: none; cursor: pointer; color: rgb(51, 51, =
51);}
..F0XO1GC-p-G a:hover {color: rgb(32, 32, 32);}
..F0XO1GC-p-e {position: relative; min-width: 100px;}
..F0XO1GC-p-f {overflow: hidden; position: absolute; top: -9px; left: 0px; r=
ight: 8px; text-overflow: ellipsis; padding: 1px 8px; border-left: 1px dott=
ed rgb(221, 221, 221);}
..F0XO1GC-p-I {display: inline-block; color: rgb(153, 153, 153); margin-left=
: 4px;}
..F0XO1GC-p-h {margin-left: 4px;}
..F0XO1GC-p-J {display: inline-block;}
..F0XO1GC-p-i {border-top: 1px solid rgb(235, 235, 235); padding-top: 8px; m=
argin-top: 8px;}
..F0XO1GC-p-H {top: 3px; line-height: 17px; vertical-align: baseline;}
..F0XO1GC-p-H > img {opacity: 0.667;}
..F0XO1GC-p-H > img:hover {opacity: 1;}
..F0XO1GC-p-x {float: right; padding-right: 28px;}
..F0XO1GC-p-t .F0XO1GC-p-x {float: none; padding-right: 0px; display: inline=
-block;}
..F0XO1GC-p-t .F0XO1GC-p-x > div {padding-right: 8px;}
..chrome-theme .F0XO1GC-p-U {margin-left: 0px;}
..chrome-theme .F0XO1GC-p-Z {display: none;}
..F0XO1GC-p-E {border-top: 1px solid rgb(235, 235, 235); padding-top: 10px;}
..F0XO1GC-p-E h3 {padding-bottom: 10px;}
..F0XO1GC-p-E .jfk-button-action {margin-top: 10px;}
..F0XO1GC-ab-h {float: left;}
..F0XO1GC-ab-c {display: inline-block;}
..F0XO1GC-ab-a {float: right; display: inline-block;}
..F0XO1GC-ab-f {font-size: 18px;}
..F0XO1GC-ab-g {color: rgb(102, 102, 102);}
..F0XO1GC-ab-f ,.F0XO1GC-ab-g ,.F0XO1GC-ab-e {margin-right: 8px;}
..F0XO1GC-ab-a ,.F0XO1GC-ab-a:visited {color: rgb(17, 85, 204); line-height:=
27px;}
..F0XO1GC-ab-b {line-height: 27px;}
..F0XO1GC-ab-k {vertical-align: baseline; display: inline-block;}
..F0XO1GC-ab-k div {line-height: 15px !important;}
..F0XO1GC-ab-j {height: 15px; vertical-align: baseline;}
..F0XO1GC-ab-i {position: relative; top: -1px;}
..F0XO1GC-ab-l {line-height: 17px;}
..F0XO1GC-ab-m {float: right;}
..F0XO1GC-ab-n {line-height: 17px; vertical-align: baseline;}
..F0XO1GC-ab-d {clear: both;}
..F0XO1GC-G-a {border: 1px solid transparent; color: rgb(255, 255, 255); bac=
kground-color: rgb(209, 72, 54); background-image: -moz-linear-gradient(cen=
ter top , rgb(221, 75, 57), rgb(209, 72, 54)); text-shadow: 0px 1px rgba(0,=
0, 0, 0.1); text-transform: uppercase;}
..chrome-theme .F0XO1GC-G-a {background-color: rgb(3, 112, 234); background-=
image: -webkit-linear-gradient(top, rgb(0, 141, 253) 0%, rgb(3, 112, 234) 1=
00%); border: 1px solid rgb(7, 107, 210); text-shadow: 1px 1px 1px rgb(7, 1=
07, 210); text-transform: none;}
..F0XO1GC-G-a:hover {border-width: 1px; border-style: solid; border-color: r=
gb(176, 40, 26) rgb(176, 40, 26) rgb(175, 48, 31); -moz-border-top-colors: =
none; -moz-border-right-colors: none; -moz-border-bottom-colors: none; -moz=
-border-left-colors: none; border-image: none; background-color: rgb(197, 5=
5, 39); background-image: -moz-linear-gradient(center top , rgb(221, 75, 57=
), rgb(197, 55, 39)); box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);}
..F0XO1GC-G-a:focus {box-shadow: 0px 0px 0px 1px rgb(255, 255, 255) inset; o=
utline: 0px none rgba(0, 0, 0, 0);}
..chrome-theme .F0XO1GC-G-a:focus {box-shadow: none; outline: medium none !i=
mportant; border: 1px solid rgb(6, 73, 144);}
..F0XO1GC-G-a:active {background-color: rgb(176, 40, 26); border: 1px solid =
rgb(153, 42, 27); background-image: -moz-linear-gradient(center top , rgb(2=
21, 75, 57), rgb(176, 40, 26)); box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3) =
inset;}
..chrome-theme .F0XO1GC-G-a:hover ,.chrome-theme .F0XO1GC-G-a:active {backgr=
ound-color: rgb(3, 112, 234); border: 1px solid rgb(7, 107, 210); backgroun=
d-image: -webkit-linear-gradient(top, rgb(0, 141, 253) 30%, rgb(3, 112, 234=
) 100%);}
..F0XO1GC-G-a.F0XO1GC-n-b {background: rgb(209, 72, 54) none repeat scroll 0=
% 0%;}
..gux-menu-button {background: rgba(0, 0, 0, 0) url("data:image/png;base64,i=
VBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAMAAADzjKfhAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ=
bWFnZVJlYWR5ccllPAAAAwBQTFRFZmZm////AgICAwMDBAQEBQUFBgYGBwcHCAgICQkJCgoKCws=
LDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbHBwcHR0dHh=
4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4uLy8vMDAwM=
TExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUFBQkJCQ0ND=
RERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVFRUVVVVVlZ=
WV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ2dnaGhoaW=
lpampqa2trbGxsbW1tbm5ub29vcHBwcXFxcnJyc3NzdHR0dXV1dnZ2d3d3eHh4eXl5enp6e3t7f=
Hx8fX19fn5+f39/gICAgYGBgoKCg4ODhISEhYWFhoaGh4eHiIiIiYmJioqKi4uLjIyMjY2Njo6O=
j4+PkJCQkZGRkpKSk5OTlJSUlZWVlpaWl5eXmJiYmZmZmpqam5ubnJycnZ2dnp6en5+foKCgoaG=
hoqKio6OjpKSkpaWlpqamp6enqKioqampqqqqq6urrKysra2trq6ur6+vsLCwsbGxsrKys7OztL=
S0tbW1tra2t7e3uLi4ubm5urq6u7u7vLy8vb29vr6+v7+/wMDAwcHBwsLCw8PDxMTExcXFxsbGx=
8fHyMjIycnJysrKy8vLzMzMzc3Nzs7Oz8/P0NDQ0dHR0tLS09PT1NTU1dXV1tbW19fX2NjY2dnZ=
2tra29vb3Nzc3d3d3t7e39/f4ODg4eHh4uLi4+Pj5OTk5eXl5ubm5+fn6Ojo6enp6urq6+vr7Oz=
s7e3t7u7u7+/v8PDw8fHx8vLy8/Pz9PT09fX19vb29/f3+Pj4+fn5+vr6+/v7/Pz8/f39/v7+//=
//AADF2QAAAAJ0Uk5T/wDltzBKAAAAH0lEQVR42mJghAAGGJ0GAQyMYAokDqLA8mlI6gACDAC8p=
AaCn/ezogAAAABJRU5ErkJggg=3D=3D") no-repeat scroll right 50%; padding-right=
: 12px; text-align: left;}
..gux-menu-button-disabled {background: rgba(0, 0, 0, 0) url("data:image/png=
;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAMAAADzjKfhAAAAGXRFWHRTb2Z0d2FyZQB=
BZG9iZSBJbWFnZVJlYWR5ccllPAAAAwBQTFRFmZmZ////AgICAwMDBAQEBQUFBgYGBwcHCAgICQ=
kJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbH=
BwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4u=
Ly8vMDAwMTExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUF=
BQkJCQ0NDRERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVF=
RUVVVVVlZWV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ=
2dnaGhoaWlpampqa2trbGxsbW1tbm5ub29vcHBwcXFxcnJyc3NzdHR0dXV1dnZ2d3d3eHh4eXl5=
enp6e3t7fHx8fX19fn5+f39/gICAgYGBgoKCg4ODhISEhYWFhoaGh4eHiIiIiYmJioqKi4uLjIy=
MjY2Njo6Oj4+PkJCQkZGRkpKSk5OTlJSUlZWVlpaWl5eXmJiYmZmZmpqam5ubnJycnZ2dnp6en5=
+foKCgoaGhoqKio6OjpKSkpaWlpqamp6enqKioqampqqqqq6urrKysra2trq6ur6+vsLCwsbGxs=
rKys7OztLS0tbW1tra2t7e3uLi4ubm5urq6u7u7vLy8vb29vr6+v7+/wMDAwcHBwsLCw8PDxMTE=
xcXFxsbGx8fHyMjIycnJysrKy8vLzMzMzc3Nzs7Oz8/P0NDQ0dHR0tLS09PT1NTU1dXV1tbW19f=
X2NjY2dnZ2tra29vb3Nzc3d3d3t7e39/f4ODg4eHh4uLi4+Pj5OTk5eXl5ubm5+fn6Ojo6enp6u=
rq6+vr7Ozs7e3t7u7u7+/v8PDw8fHx8vLy8/Pz9PT09fX19vb29/f3+Pj4+fn5+vr6+/v7/Pz8/=
f39/v7+////uBOGsAAAAAJ0Uk5T/wDltzBKAAAAH0lEQVR42mJghAAGGD0TAhgYwRRIHESB5Wci=
qQMIMAAZIwmyA+lVoQAAAABJRU5ErkJggg=3D=3D") no-repeat scroll right 50%; padd=
ing-right: 12px;}
..gux-menu-button-selected {background: rgba(0, 0, 0, 0) url("data:image/png=
;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAMAAADzjKfhAAAAGXRFWHRTb2Z0d2FyZQB=
BZG9iZSBJbWFnZVJlYWR5ccllPAAAAwBQTFRFZmZm////AgICAwMDBAQEBQUFBgYGBwcHCAgICQ=
kJCgoKCwsLDAwMDQ0NDg4ODw8PEBAQEREREhISExMTFBQUFRUVFhYWFxcXGBgYGRkZGhoaGxsbH=
BwcHR0dHh4eHx8fICAgISEhIiIiIyMjJCQkJSUlJiYmJycnKCgoKSkpKioqKysrLCwsLS0tLi4u=
Ly8vMDAwMTExMjIyMzMzNDQ0NTU1NjY2Nzc3ODg4OTk5Ojo6Ozs7PDw8PT09Pj4+Pz8/QEBAQUF=
BQkJCQ0NDRERERUVFRkZGR0dHSEhISUlJSkpKS0tLTExMTU1NTk5OT09PUFBQUVFRUlJSU1NTVF=
RUVVVVVlZWV1dXWFhYWVlZWlpaW1tbXFxcXV1dXl5eX19fYGBgYWFhYmJiY2NjZGRkZWVlZmZmZ=
2dnaGhoaWlpampqa2trbGxsbW1tbm5ub29vcHBwcXFxcnJyc3NzdHR0dXV1dnZ2d3d3eHh4eXl5=
enp6e3t7fHx8fX19fn5+f39/gICAgYGBgoKCg4ODhISEhYWFhoaGh4eHiIiIiYmJioqKi4uLjIy=
MjY2Njo6Oj4+PkJCQkZGRkpKSk5OTlJSUlZWVlpaWl5eXmJiYmZmZmpqam5ubnJycnZ2dnp6en5=
+foKCgoaGhoqKio6OjpKSkpaWlpqamp6enqKioqampqqqqq6urrKysra2trq6ur6+vsLCwsbGxs=
rKys7OztLS0tbW1tra2t7e3uLi4ubm5urq6u7u7vLy8vb29vr6+v7+/wMDAwcHBwsLCw8PDxMTE=
xcXFxsbGx8fHyMjIycnJysrKy8vLzMzMzc3Nzs7Oz8/P0NDQ0dHR0tLS09PT1NTU1dXV1tbW19f=
X2NjY2dnZ2tra29vb3Nzc3d3d3t7e39/f4ODg4eHh4uLi4+Pj5OTk5eXl5ubm5+fn6Ojo6enp6u=
rq6+vr7Ozs7e3t7u7u7+/v8PDw8fHx8vLy8/Pz9PT09fX19vb29/f3+Pj4+fn5+vr6+/v7/Pz8/=
f39/v7+////AADF2QAAAAJ0Uk5T/wDltzBKAAAAH0lEQVR42mJghAAGGP0fAhgYwRRIHESB5f8j=
qQMIMADSAxASsJSVyQAAAABJRU5ErkJggg=3D=3D") no-repeat scroll right 50%; padd=
ing-right: 12px;}
..goog-inline-block {position: relative; display: inline-block;}
..F0XO1GC-L-f {text-indent: 32px;}
..F0XO1GC-L-d {text-indent: 17px;}
..F0XO1GC-L-e li {line-height: 19px; white-space: nowrap;}
..F0XO1GC-L-e li > div {cursor: pointer; overflow: hidden; text-overflow: el=
lipsis; padding: 4px 0px 4px 8px;}
..F0XO1GC-L-e li > div:hover {background-color: rgb(238, 238, 238);}
..F0XO1GC-L-e ul {list-style: outside none none; margin-left: -12px; margin-=
top: 0px;}
..F0XO1GC-L-e {list-style: outside none none;}
..F0XO1GC-L-e .F0XO1GC-L-g {color: rgb(66, 133, 244); font-weight: bold;}
..F0XO1GC-L-b {outline-style: none; padding: 5px; min-width: 400px;}
..F0XO1GC-L-c.F0XO1GC-L-b {padding: 0px;}
..F0XO1GC-L-c.F0XO1GC-L-b tr:first-child .gwt-Label {border-bottom: 1px soli=
d rgb(204, 204, 204); color: rgb(102, 102, 102); padding: 18px 15px 15px;}
..F0XO1GC-L-b .F0XO1GC-L-a {position: relative; left: 5px;}
..F0XO1GC-L-c.F0XO1GC-L-b .F0XO1GC-L-a {left: 0px; max-height: 400px; paddin=
g-left: 15px;}
..F0XO1GC-L-c.F0XO1GC-L-b tr:last-child .F0XO1GC-L-h {border-top: 1px solid =
rgb(204, 204, 204); padding: 15px;}
..F0XO1GC-F-a {background-color: rgba(255, 255, 255, 0.65); border: 1px soli=
d rgb(198, 198, 198); border-radius: 1px; height: 13px; margin: 0px 1px; ou=
tline: medium none; vertical-align: text-bottom; width: 13px; display: inli=
ne-block; position: relative;}
..F0XO1GC-F-h {display: block; position: absolute; width: 15px; height: 15px=
; top: -2px; left: 1px;}
..F0XO1GC-F-c .F0XO1GC-F-h {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.=
com/ui/v1/menu/checkmark.png") no-repeat scroll -5px -3px;}
..F0XO1GC-F-k .F0XO1GC-F-h {opacity: 0.3;}
..F0XO1GC-F-b {background-color: rgb(235, 235, 235);}
..F0XO1GC-F-f {border: 1px solid rgb(102, 102, 102); box-shadow: 0px 1px 1px=
rgba(0, 0, 0, 0.1) inset;}
..F0XO1GC-F-e {border: 1px solid rgb(77, 144, 254);}
..F0XO1GC-F-k .F0XO1GC-F-a {background-color: rgba(255, 255, 255, 0.45); bor=
der: 1px solid rgb(241, 241, 241);}
..F0XO1GC-F-g .F0XO1GC-F-h {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.=
com/ui/v1/menu/checkmark-partial.png") no-repeat scroll -5px -3px;}
..F0XO1GC-F-i {margin-left: 5px;}
..F0XO1GC-F-k .F0XO1GC-F-i {color: rgb(184, 184, 184);}
..F0XO1GC-F-j {cursor: default; outline: medium none; line-height: 24px;}
..F0XO1GC-cc-a {padding-bottom: 7px;}
..F0XO1GC-cc-a input[type=3D"text"] {width: 75px;}
..F0XO1GC-V-a {margin: 0px 1px; vertical-align: text-bottom; display: inline=
-block; position: relative; outline: medium none;}
..F0XO1GC-V-h {background: rgba(255, 255, 255, 0) none repeat scroll 0% 0%; =
border: 1px solid rgb(198, 198, 198); border-radius: 50%; box-sizing: borde=
r-box; height: 15px; margin: 0px; outline: medium none; text-align: left; w=
idth: 15px; display: block;}
..F0XO1GC-V-c .F0XO1GC-V-h {background: rgba(255, 255, 255, 0) none repeat s=
croll 0% 0%;}
..F0XO1GC-V-c .F0XO1GC-V-h::after {background: rgb(96, 96, 96) none repeat s=
croll 0% 0%; border-radius: 50%; content: ""; display: block; height: 7px; =
left: 3px; position: relative; top: 3px; width: 7px;}
..F0XO1GC-V-b .F0XO1GC-V-h {background: rgb(235, 235, 235) none repeat scrol=
l 0% 0%; border-color: rgb(198, 198, 198);}
..F0XO1GC-V-f .F0XO1GC-V-h {border-color: rgb(102, 102, 102); box-shadow: 0p=
x 1px 1px rgba(0, 0, 0, 0.1) inset;}
..F0XO1GC-V-e .F0XO1GC-V-h {border: 1px solid rgb(77, 144, 254); background:=
rgba(255, 255, 255, 0) none repeat scroll 0% 0%;}
..F0XO1GC-V-e.F0XO1GC-V-c .F0XO1GC-V-h {background: rgba(255, 255, 255, 0) n=
one repeat scroll 0% 0%;}
..F0XO1GC-V-k .F0XO1GC-V-h {border: 1px solid rgb(241, 241, 241); background=
: rgba(255, 255, 255, 0) none repeat scroll 0% 0%;}
..F0XO1GC-V-k.F0XO1GC-V-c .F0XO1GC-V-h {background: rgba(255, 255, 255, 0) n=
one repeat scroll 0% 0%;}
..F0XO1GC-V-i {margin-left: 5px;}
..F0XO1GC-V-k .F0XO1GC-V-i {color: rgb(184, 184, 184);}
..F0XO1GC-V-j {cursor: default; outline: medium none; line-height: 24px;}
..F0XO1GC-Ub-c > div {float: left;}
..F0XO1GC-Ub-c > div + div {margin-left: 4px;}
..F0XO1GC-Ub-a {color: rgb(153, 153, 153);}
..F0XO1GC-Ub-b {display: block; clear: both; color: rgb(153, 153, 153); font=
-size: 11px; line-height: 11px;}
..gux-confirm-panel-r1 {background-color: rgb(255, 238, 136); border-left: 1=
px solid rgb(255, 253, 240); border-right: 1px solid rgb(255, 253, 240); ma=
rgin: 0px 1px; padding-top: 1px;}
..gux-confirm-panel-r2 {background-color: rgb(255, 238, 136); border-left: 1=
px solid rgb(255, 253, 240); border-right: 1px solid rgb(255, 253, 240); pa=
dding-top: 1px;}
..gux-confirm-panel-c {background-color: rgb(255, 238, 136); padding: 2px 15=
px;}
..gux-confirm-panel-message {color: rgb(0, 0, 0); font-weight: bold;}
..F0XO1GC-rb-w {padding: 10px; position: relative; height: 34px;}
..F0XO1GC-b-N .F0XO1GC-rb-w {padding: 8px;}
..F0XO1GC-b-O .F0XO1GC-rb-w ,body .F0XO1GC-rb-w {padding: 4px;}
..F0XO1GC-rb-j .F0XO1GC-rb-w {height: 51px;}
..F0XO1GC-rb-w + .F0XO1GC-rb-w {border-top: medium none;}
..F0XO1GC-rb-h {position: absolute; top: 10px; bottom: 10px; left: 86px; rig=
ht: 114px;}
..F0XO1GC-p-w .F0XO1GC-b-Qb {font-size: 13px;}
..F0XO1GC-p-w .F0XO1GC-rb-h {right: 164px; left: 56px !important;}
..F0XO1GC-b-N .F0XO1GC-p-w .F0XO1GC-rb-h {right: 164px; left: 50px !importan=
t;}
..F0XO1GC-b-O .F0XO1GC-p-w .F0XO1GC-rb-h ,body .F0XO1GC-p-w .F0XO1GC-rb-h {r=
ight: 164px; left: 44px !important;}
..F0XO1GC-b-N .F0XO1GC-rb-h {top: 8px; bottom: 8px; left: 78px;}
..F0XO1GC-b-O .F0XO1GC-rb-h ,body .F0XO1GC-rb-h {top: 4px; bottom: 4px; left=
: 70px;}
..F0XO1GC-rb-q {position: absolute; top: 4px; left: 54px;}
..F0XO1GC-b-N .F0XO1GC-rb-q {top: 2px; left: 48px;}
..F0XO1GC-b-O .F0XO1GC-rb-q ,body .F0XO1GC-rb-q {top: 0px; left: 42px;}
..F0XO1GC-rb-e {position: absolute; left: 10px;}
..F0XO1GC-b-N .F0XO1GC-rb-e {left: 8px;}
..F0XO1GC-b-O .F0XO1GC-rb-e ,body .F0XO1GC-rb-e {left: 4px;}
..F0XO1GC-rb-p ,.F0XO1GC-rb-u ,.F0XO1GC-rb-c {position: absolute; overflow: =
hidden; left: 0px; right: 0px;}
..F0XO1GC-rb-u {top: -2px;}
..F0XO1GC-rb-c ,.F0XO1GC-rb-p {top: 17px; color: rgb(102, 102, 102); white-s=
pace: nowrap;}
..F0XO1GC-rb-j .F0XO1GC-rb-c {top: 34px;}
..F0XO1GC-rb-t {display: block; overflow: hidden; text-overflow: ellipsis; w=
hite-space: nowrap;}
..F0XO1GC-rb-s.F0XO1GC-rb-o {font-weight: normal;}
..F0XO1GC-rb-v {float: right; margin-left: 4px; margin-right: 8px;}
..F0XO1GC-p-X .F0XO1GC-rb-c {color: rgb(136, 136, 136); white-space: nowrap;=
}
..F0XO1GC-p-X .F0XO1GC-rb-u {right: 38px;}
..F0XO1GC-rb-d {overflow: hidden; text-overflow: ellipsis;}
..F0XO1GC-rb-d > span img {vertical-align: middle; position: relative; top: =
-2px;}
..F0XO1GC-rb-b {color: rgb(51, 51, 51); display: inline-block;}
..F0XO1GC-rb-n {position: absolute; top: 10px; bottom: 10px; right: 10px; wi=
dth: 90px; overflow: hidden; border-left: 1px dotted rgb(216, 216, 216); pa=
dding-left: 8px;}
..F0XO1GC-b-N .F0XO1GC-rb-n {top: 8px; bottom: 8px; right: 8px;}
..F0XO1GC-b-O .F0XO1GC-rb-n ,body .F0XO1GC-rb-n {top: 4px; bottom: 4px; righ=
t: 4px;}
..F0XO1GC-rb-f {position: absolute; top: 10px; bottom: 10px; right: 110px; o=
verflow: hidden; padding-left: 8px;}
..F0XO1GC-b-N .F0XO1GC-rb-f {top: 8px; bottom: 8px; right: 108px;}
..F0XO1GC-b-O .F0XO1GC-rb-f ,body .F0XO1GC-rb-f {top: 4px; bottom: 4px; righ=
t: 104px;}
..F0XO1GC-rb-g {position: absolute; bottom: 10px; right: 10px; padding-left:=
8px; color: rgb(136, 136, 136);}
..F0XO1GC-b-N .F0XO1GC-rb-g {bottom: 8px; right: 8px;}
..F0XO1GC-b-O .F0XO1GC-rb-g ,body .F0XO1GC-rb-g {bottom: 4px; right: 4px;}
..F0XO1GC-rb-y {width: 16px; height: 16px; overflow: hidden;}
..F0XO1GC-rb-x {width: 16px; height: 16px; overflow: hidden; position: absol=
ute; left: 58px; top: 28px;}
..F0XO1GC-b-N .F0XO1GC-rb-x {left: 52px; top: 26px;}
..F0XO1GC-b-O .F0XO1GC-rb-x ,body .F0XO1GC-rb-x {left: 46px; top: 22px;}
..F0XO1GC-rb-r::before {content: " - ";}
..F0XO1GC-rb-z {font-weight: normal; margin-left: 4px;}
..F0XO1GC-rb-k {padding: 8px; position: relative;}
..F0XO1GC-b-N .F0XO1GC-rb-k {padding: 6px;}
..F0XO1GC-b-O .F0XO1GC-rb-k ,body .F0XO1GC-rb-k {padding: 4px;}
..F0XO1GC-rb-a {display: block; position: absolute; left: 58px;}
..F0XO1GC-rb-l {color: rgb(102, 102, 102); display: inline; margin-left: 78p=
x;}
..F0XO1GC-rb-m {color: rgb(170, 170, 170); display: inline;}
..F0XO1GC-nc-b {color: rgb(119, 119, 119); text-align: center; padding: 4px;=
}
..F0XO1GC-nc-a {color: rgb(5, 71, 192);}
..F0XO1GC-jb-c {display: inline; white-space: nowrap; padding: 0px 2px;}
..F0XO1GC-jb-a {color: rgb(238, 68, 68); font-size: 13px;}
..F0XO1GC-jb-b {font-size: 13px;}
..F0XO1GC-mb-k {height: 5px; width: 100%; background-color: rgb(187, 204, 25=
5);}
..F0XO1GC-mb-q {overflow: hidden;}
..F0XO1GC-mb-J {padding: 5px; overflow: hidden;}
..F0XO1GC-mb-x {border-bottom: 1px solid rgb(235, 235, 235); padding-top: 8p=
x; padding-bottom: 8px;}
..F0XO1GC-mb-ab .F0XO1GC-mb-y ,body .F0XO1GC-mb-y {padding-right: 20px;}
..F0XO1GC-mb-z {float: right;}
..F0XO1GC-mb-Z {display: inline;}
..F0XO1GC-mb-u {white-space: nowrap; font-weight: normal; float: right; font=
-size: 13px; color: rgb(102, 102, 102);}
..F0XO1GC-mb-v ,.F0XO1GC-mb-v:hover ,.F0XO1GC-mb-v:visited {text-decoration:=
none; color: rgb(136, 136, 136); cursor: default;}
..chrome-theme .F0XO1GC-mb-u {display: none;}
..F0XO1GC-mb-M {margin-right: 16px;}
..F0XO1GC-mb-cb {font-weight: bold;}
..F0XO1GC-nb-W.F0XO1GC-mb-o {border-top: 1px solid rgb(221, 221, 221);}
..F0XO1GC-nb-W.F0XO1GC-mb-l {border-bottom: 1px solid rgb(221, 221, 221);}
..F0XO1GC-mb-N ,.F0XO1GC-mb-P {padding-bottom: 5px; min-width: 100%;}
..F0XO1GC-mb-K {padding: 5px;}
..F0XO1GC-mb-Y {font-size: 18px;}
..F0XO1GC-mb-bb {font-size: 18px; background-color: rgb(235, 238, 248);}
..F0XO1GC-mb-V {white-space: nowrap;}
..F0XO1GC-mb-ab .F0XO1GC-mb-V ,body .F0XO1GC-mb-V {display: inline-block; ve=
rtical-align: baseline; margin-top: 4px;}
..F0XO1GC-mb-n {color: rgb(34, 34, 34); font-weight: normal;}
..F0XO1GC-mb-fb {vertical-align: middle; margin-right: 1.5em;}
..F0XO1GC-mb-eb {color: black; text-decoration: none; cursor: default; font-=
weight: bold;}
..F0XO1GC-mb-gb {color: rgb(34, 0, 204); cursor: pointer; font-weight: bold;=
}
..F0XO1GC-mb-db {color: rgb(34, 0, 204); cursor: pointer; white-space: nowra=
p; display: inline-block; vertical-align: bottom;}
..F0XO1GC-mb-ab .F0XO1GC-mb-db ,body .F0XO1GC-mb-db {position: relative; top=
: 1px;}
..F0XO1GC-mb-db span {margin-right: 2px;}
..F0XO1GC-mb-db img {opacity: 0.667;}
..F0XO1GC-mb-db img:hover {opacity: 1;}
..F0XO1GC-mb-A ,.F0XO1GC-mb-E {position: relative;}
..F0XO1GC-mb-E > .F0XO1GC-nb-W {margin-top: 20px;}
..F0XO1GC-mb-E > .F0XO1GC-nb-v {margin-top: 2px;}
..F0XO1GC-mb-C {padding-left: 20px; padding-top: 0px; margin-top: 2px;}
..F0XO1GC-mb-B {position: absolute; top: 1px; left: 10px; cursor: pointer;}
..F0XO1GC-mb-W {display: inline-block; position: relative;}
..F0XO1GC-mb-W .gwt-TabBarItem {cursor: pointer; font-weight: normal; positi=
on: relative; top: 1px; padding: 5px 10px; margin: 0px 3px; outline: medium=
none; background-color: rgb(245, 245, 245); border: 1px solid rgb(245, 245=
, 245);}
..F0XO1GC-mb-W .gwt-TabBarItem-selected {color: rgb(0, 0, 0); text-decoratio=
n: none; cursor: default; font-weight: bold; background-color: rgb(255, 255=
, 255); border-width: 1px; border-style: solid; border-color: rgb(235, 235,=
235) rgb(235, 235, 235) rgb(255, 255, 255); -moz-border-top-colors: none; =
-moz-border-right-colors: none; -moz-border-bottom-colors: none; -moz-borde=
r-left-colors: none; border-image: none;}
..F0XO1GC-mb-I {width: 100%;}
..F0XO1GC-mb-Q {margin: 16px 0px; border-bottom: 1px solid rgb(235, 235, 235=
);}
..F0XO1GC-mb-L {margin: 0px 3px; vertical-align: middle;}
..F0XO1GC-mb-S {padding: 5px;}
..F0XO1GC-mb-R {padding-bottom: 10px;}
..F0XO1GC-mb-U {font-size: 14px; font-weight: bold;}
..F0XO1GC-mb-T {font-weight: bold;}
..F0XO1GC-mb-a {position: relative; border: 1px solid rgb(235, 235, 235); di=
splay: inline-block; margin: 5px; padding: 5px 0px 0px 5px;}
..F0XO1GC-mb-b {position: absolute; color: rgb(102, 102, 102); left: 5px; bo=
ttom: 5px;}
..F0XO1GC-mb-r {margin-left: 10px;}
..F0XO1GC-mb-j {font-weight: bold; text-decoration: underline; cursor: point=
er;}
..F0XO1GC-mb-i {margin: 0px 5px; position: relative; border: 2px solid rgb(2=
04, 204, 204); padding: 2px 2px 2px 8px; line-height: 1.5em; background-col=
or: rgb(255, 255, 255);}
..F0XO1GC-mb-H {margin-left: 18px; position: relative;}
..F0XO1GC-mb-G {position: relative;}
..F0XO1GC-mb-F {position: absolute; top: 0px; left: 0px; cursor: pointer;}
..F0XO1GC-mb-p {padding: 8px 16px; color: rgb(34, 0, 204); background-color:=
rgb(255, 238, 136); border: 1px solid rgb(188, 188, 188); position: absolu=
te; bottom: 4px; right: 4px;}
..F0XO1GC-mb-p .F0XO1GC-mb-h {margin-left: 4px; color: rgb(128, 128, 128); c=
ursor: pointer; text-decoration: underline;}
..F0XO1GC-mb-O ,.F0XO1GC-mb-d {border-top: 1px solid rgb(221, 221, 221); pad=
ding: 4px;}
..F0XO1GC-mb-ab .F0XO1GC-mb-O ,body .F0XO1GC-mb-O {border: 0px none; padding=
: 4px 8px; background-color: rgb(77, 144, 254); border-radius: 10px;}
..F0XO1GC-mb-ab .F0XO1GC-mb-O.F0XO1GC-mb-d ,body .F0XO1GC-mb-O.F0XO1GC-mb-d =
{border-bottom: 0px none; padding: 4px 8px; background-color: rgb(61, 148, =
0); color: white; border-radius: 10px;}
..F0XO1GC-mb-ab .F0XO1GC-mb-O span ,.F0XO1GC-mb-ab .F0XO1GC-mb-d span ,body =
..F0XO1GC-mb-O span ,body .F0XO1GC-mb-d span {font-size: 16px; font-weight: =
normal;}
..F0XO1GC-mb-O span ,.F0XO1GC-mb-d span {font-weight: bold;}
..F0XO1GC-mb-O span {color: rgb(102, 102, 102);}
..F0XO1GC-mb-d span {color: rgb(75, 195, 87);}
..F0XO1GC-mb-ab .F0XO1GC-mb-O span ,.F0XO1GC-mb-ab .F0XO1GC-mb-d span ,body =
..F0XO1GC-mb-O span ,body .F0XO1GC-mb-d span {color: white;}
..F0XO1GC-mb-g ,.F0XO1GC-mb-t ,.F0XO1GC-mb-e {display: inline-block;}
..F0XO1GC-mb-t {vertical-align: top; overflow: hidden; padding-left: 8px !im=
portant;}
..F0XO1GC-mb-ab .F0XO1GC-mb-t ,body .F0XO1GC-mb-t {position: relative; top: =
1px;}
..F0XO1GC-mb-s {text-align: right; padding-bottom: 10px;}
..F0XO1GC-mb-c {text-align: center;}
..F0XO1GC-mb-w img {height: 20px;}
..F0XO1GC-kb-c {display: inline; white-space: nowrap; padding: 0px 2px;}
..F0XO1GC-kb-b {color: rgb(238, 68, 68); font-size: 13px;}
..F0XO1GC-kb-a {font-size: 13px;}
..F0XO1GC-lb-a {color: rgb(102, 102, 102);}
..F0XO1GC-lb-e {border-radius: 2px; height: 22px;}
..F0XO1GC-lb-e > span {position: relative; top: -2px;}
..F0XO1GC-lb-d {z-index: 1021; padding: 10px; display: block; box-shadow: 0p=
x 2px 4px rgba(0, 0, 0, 0.2); outline: medium none; border: 1px solid rgb(2=
04, 204, 204);}
..F0XO1GC-lb-b {text-align: center; margin-bottom: 15px;}
..F0XO1GC-lb-c div {display: inline-block;}
..F0XO1GC-lb-c * {padding-left: 5px; padding-right: 5px;}
..F0XO1GC-nb-W {position: relative; border-top: 1px solid transparent; borde=
r-bottom: 1px solid transparent; border-left: 1px solid transparent; margin=
-right: 0px; padding-right: 0px;}
..F0XO1GC-nb-F {margin-right: 0px;}
..F0XO1GC-nb-X {border-left: 1px solid rgb(77, 144, 240);}
..F0XO1GC-nb-X:focus {outline: medium none;}
..F0XO1GC-nb-Y {padding: 4px 0px;}
..F0XO1GC-nb-V {padding-top: 4px; padding-bottom: 4px; background-position: =
0px 9px;}
..F0XO1GC-b-Nb .F0XO1GC-nb-Y ,.F0XO1GC-b-Nb .F0XO1GC-nb-V {background-color:=
rgb(255, 255, 255);}
..F0XO1GC-nb-O {width: 100%;}
..F0XO1GC-nb-P {color: rgb(34, 34, 34); line-height: normal;}
..F0XO1GC-nb-P p {line-height: normal; margin: 1em 0px;}
..F0XO1GC-nb-p {width: 34px; padding: 5px;}
..F0XO1GC-nb-kb {border-bottom: 1px solid rgb(221, 221, 221); margin-bottom:=
8px;}
..F0XO1GC-nb-lb {margin-bottom: 8px;}
..F0XO1GC-nb-v {margin-top: 0px;}
..F0XO1GC-nb-w {padding: 2px 5px;}
..F0XO1GC-nb-w .F0XO1GC-nb-O {padding-bottom: 1px;}
..F0XO1GC-nb-a {position: relative; padding: 4px 0px;}
..F0XO1GC-nb-b {padding-left: 5px; margin-left: 39px; margin-right: 0px !imp=
ortant;}
..F0XO1GC-nb-c {display: inline-block;}
..F0XO1GC-nb-a .F0XO1GC-nb-jb {margin-right: 1em;}
..F0XO1GC-nb-G {vertical-align: inherit;}
..F0XO1GC-nb-G span {line-height: 27px; vertical-align: inherit;}
..F0XO1GC-nb-G img {top: 0px; vertical-align: top;}
..F0XO1GC-nb-d {float: right; text-align: right; line-height: 27px;}
..F0XO1GC-nb-d a {text-decoration: none; color: rgb(102, 136, 221); cursor: =
pointer; vertical-align: middle;}
..F0XO1GC-nb-U {font-size: 11px; float: right; line-height: 27px;}
..F0XO1GC-nb-O table {width: 100%;}
..F0XO1GC-nb-O td {vertical-align: top;}
..F0XO1GC-nb-Q {white-space: nowrap;}
..F0XO1GC-nb-R {height: 1.5em; cursor: pointer; padding-right: 5px; padding-=
bottom: 5px; padding-left: 5px; white-space: nowrap; overflow: hidden; padd=
ing-top: 6px !important;}
..F0XO1GC-nb-T {text-align: right;}
..F0XO1GC-nb-N {padding: 5px; vertical-align: middle;}
..F0XO1GC-nb-ab {white-space: pre-wrap; margin: 0px;}
..F0XO1GC-nb-H {background-color: rgb(211, 222, 255); padding: 5px;}
..F0XO1GC-nb-H input {width: 100%; display: block; border: 1px solid rgb(102=
, 136, 238); margin: 5px 0px;}
..F0XO1GC-nb-m {color: rgb(51, 51, 51); text-decoration: none; cursor: defau=
lt;}
..F0XO1GC-nb-m img {opacity: 1;}
..F0XO1GC-nb-hb ,.F0XO1GC-nb-D {padding: 4px 5px 3px 0px; white-space: nowra=
p;}
..F0XO1GC-nb-L {display: inline-block; margin-top: 4px;}
..F0XO1GC-nb-ib {display: inline-block;}
..F0XO1GC-nb-I {margin-left: -8px;}
..F0XO1GC-nb-J {margin-right: 0px;}
..F0XO1GC-nb-M {display: inline-block;}
..F0XO1GC-nb-K {margin-left: 13px;}
..F0XO1GC-nb-o {border-top: 1px solid rgb(221, 221, 221); padding: 5px; marg=
in-top: 5px;}
..F0XO1GC-nb-eb {color: rgb(136, 136, 136); height: 1.5em; overflow: hidden;=
line-height: 1.5em;}
..F0XO1GC-nb-w .F0XO1GC-nb-Q {line-height: 1.5em;}
..F0XO1GC-nb-fb {padding: 0px 4px; vertical-align: top;}
..F0XO1GC-nb-w .F0XO1GC-nb-Q {float: right; padding-right: 2px; padding-left=
: 8px;}
..F0XO1GC-nb-w .F0XO1GC-nb-z {float: right;}
..F0XO1GC-nb-w {cursor: pointer;}
..F0XO1GC-nb-v .F0XO1GC-nb-a ,.F0XO1GC-nb-v .F0XO1GC-nb-l {display: none;}
..F0XO1GC-nb-Z .gux-confirm-panel {padding: 4px; text-align: center;}
..F0XO1GC-nb-Z .F0XO1GC-nb-eb {padding: 4px;}
..F0XO1GC-nb-C {padding: 4px; text-align: center; background-color: rgb(239,=
239, 239);}
..F0XO1GC-nb-S {border-bottom: 1px solid rgb(221, 221, 221); margin-bottom: =
8px; padding-bottom: 8px;}
..F0XO1GC-nb-t {font-weight: bold;}
..F0XO1GC-nb-r {width: 15%; font-weight: bold;}
..F0XO1GC-nb-q {width: 85%;}
..F0XO1GC-nb-s {font-size: 12px; white-space: nowrap; text-decoration: under=
line; color: rgb(119, 136, 204); cursor: pointer;}
..F0XO1GC-nb-y {margin-top: 8px; border-top: 1px solid rgb(221, 221, 221);}
..F0XO1GC-nb-n {vertical-align: middle; margin-right: 5px; float: left;}
..F0XO1GC-nb-x .F0XO1GC-nb-gb ,body .F0XO1GC-nb-gb {float: left; margin: 0px=
10px;}
..F0XO1GC-nb-w .F0XO1GC-nb-gb ,.F0XO1GC-nb-x .F0XO1GC-nb-gb ,body .F0XO1GC-n=
b-gb {position: relative; top: -4px;}
..F0XO1GC-nb-e {float: right; white-space: nowrap; margin-top: 5px !importan=
t;}
..F0XO1GC-nb-i {display: inline-block; white-space: nowrap; text-align: cent=
er; height: 27px;}
..F0XO1GC-nb-f {padding: 0px;}
..F0XO1GC-nb-k {min-width: 0px; width: 13px; height: 27px; margin-right: 0px=
;}
..F0XO1GC-nb-k .F0XO1GC-k-b {margin-left: 0px;}
..F0XO1GC-nb-g span {margin-left: 24px; margin-right: 4px;}
..F0XO1GC-nb-g img {position: absolute; top: 4px; left: 12px;}
..F0XO1GC-nb-bb {display: inline-block;}
..chrome-theme .F0XO1GC-nb-P {color: rgb(119, 119, 119);}
..chrome-theme .F0XO1GC-nb-P a ,.chrome-theme .F0XO1GC-nb-P a:visited {color=
: rgb(0, 0, 0) !important; font-weight: 600 !important; text-decoration: no=
ne !important;}
..chrome-theme .F0XO1GC-nb-P a:hover ,.chrome-theme .F0XO1GC-nb-P a:active {=
color: rgb(51, 153, 255) !important;}
..F0XO1GC-nb-A {min-width: 34px;}
..F0XO1GC-nb-E {color: rgb(119, 119, 119);}
..F0XO1GC-nb-E > img {position: relative; top: 2px; padding-right: 4px;}
..F0XO1GC-nb-E > span {padding-right: 4px;}
..F0XO1GC-nb-u {padding-right: 4px; vertical-align: top;}
..F0XO1GC-nb-E .F0XO1GC-nb-u {vertical-align: baseline;}
..F0XO1GC-nb-E .F0XO1GC-D-c {vertical-align: middle !important;}
..F0XO1GC-nb-E .F0XO1GC-D-a {vertical-align: baseline;}
..F0XO1GC-Db-a {color: rgb(153, 153, 153); cursor: pointer; font-size: 9px;}
..F0XO1GC-Db-b {color: rgb(136, 136, 136);}
..F0XO1GC-ld-d {margin-left: auto; margin-right: auto;}
..F0XO1GC-ld-c {width: 100%; min-width: 400px;}
..F0XO1GC-ld-a {resize: vertical;}
..F0XO1GC-ld-b {font-weight: bold;}
..jfk-button-action {border: 1px solid rgb(48, 121, 237); color: rgb(255, 25=
5, 255); background-color: rgb(77, 144, 254); background-image: -moz-linear=
-gradient(center top , rgb(77, 144, 254), rgb(71, 135, 237));}
..chrome-theme .jfk-button-action {background-color: rgb(3, 112, 234); backg=
round-image: -webkit-linear-gradient(top, rgb(0, 141, 253) 0%, rgb(3, 112, =
234) 100%); border: 1px solid rgb(7, 107, 210); text-shadow: 1px 1px 1px rg=
b(7, 107, 210);}
..jfk-button-action:hover {color: rgb(255, 255, 255); border: 1px solid rgb(=
47, 91, 183); background-color: rgb(53, 122, 232); background-image: -moz-l=
inear-gradient(center top , rgb(77, 144, 254), rgb(53, 122, 232));}
..chrome-theme .jfk-button-action:hover {background-color: rgb(3, 112, 234);=
background-image: -webkit-linear-gradient(top, rgb(0, 141, 253) 30%, rgb(3=
, 112, 234) 100%); border: 1px solid rgb(7, 107, 210);}
..jfk-button-action:active {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3) inset=
;}
..jfk-button-action:focus {box-shadow: 0px 0px 0px 1px rgb(255, 255, 255) in=
set; outline: 0px none rgba(0, 0, 0, 0);}
..chrome-theme .jfk-button-action:focus {box-shadow: none; outline: medium n=
one !important; border: 1px solid rgb(6, 73, 144);}
..F0XO1GC-ed-a {padding-left: 5px; margin-left: 44px;}
..F0XO1GC-D-d {vertical-align: top; padding-left: 2px;}
..F0XO1GC-D-c {padding-left: 4px; vertical-align: top;}
..F0XO1GC-D-a {font-weight: bold; white-space: nowrap; vertical-align: top; =
cursor: default;}
..F0XO1GC-D-b {color: rgb(102, 102, 102); vertical-align: top; white-space: =
nowrap; margin-left: 4px;}
..F0XO1GC-pb-d {background-color: rgb(255, 255, 255); box-shadow: 0px 2px 4p=
x 0px rgba(0, 0, 0, 0.2); padding: 10px; z-index: 1021;}
..F0XO1GC-pb-b {padding-top: 5px; padding-bottom: 5px; font-size: 11px; colo=
r: rgb(102, 102, 102);}
..F0XO1GC-pb-g {width: 100%;}
..F0XO1GC-pb-e {display: block;}
..F0XO1GC-pb-c {display: block; width: 100%;}
..F0XO1GC-pb-f {display: block;}
..gwt-SuggestBoxPopup {overflow: auto !important; max-height: 240px; z-index=
: 1021;}
..F0XO1GC-b-N .gwt-SuggestBoxPopup {line-height: 26px !important;}
..F0XO1GC-b-O .gwt-SuggestBoxPopup ,body .gwt-SuggestBoxPopup {line-height: =
20px !important;}
..item {position: relative;}
..F0XO1GC-b-N .item {line-height: 26px !important;}
..F0XO1GC-b-O .item ,body .item {line-height: 20px !important;}
..item-selected {position: relative;}
td > strong {color: orange;}
..F0XO1GC-j-f .F0XO1GC-pb-d {box-shadow: none;}
..F0XO1GC-vb-p {padding: 8px;}
..F0XO1GC-vb-r {padding-bottom: 20px;}
..F0XO1GC-vb-a {padding: 16px 0px;}
..F0XO1GC-vb-a .goog-button-base {margin-right: 1em;}
..F0XO1GC-vb-z {width: 99%; display: block; border: 1px solid rgb(102, 136, =
238); margin: 5px 0px;}
..F0XO1GC-vb-A {padding-top: 8px;}
..F0XO1GC-vb-i .gwt-CheckBox {white-space: nowrap; padding-right: 1em; displ=
ay: inline-block;}
..F0XO1GC-vb-g {width: 25px; font-weight: bold; text-align: left; padding: 1=
0px 18px 0px 0px; vertical-align: top; white-space: nowrap; color: rgb(153,=
153, 153);}
..F0XO1GC-vb-h {width: 99%; border: 1px solid rgb(102, 136, 238); margin: 3p=
x 0px 3px 3px; font-size: 13px;}
..F0XO1GC-vb-f {color: rgb(136, 136, 136); font-size: 85%; text-decoration: =
none;}
..F0XO1GC-vb-k {background-color: white; max-width: 99%;}
..F0XO1GC-vb-q ,.F0XO1GC-vb-l ,.F0XO1GC-vb-E ,.F0XO1GC-vb-F ,body {min-heigh=
t: 200px; max-width: 100%; overflow: auto; outline: medium none; margin-bot=
tom: 4px;}
..F0XO1GC-vb-q {resize: none;}
..F0XO1GC-vb-E ,.F0XO1GC-vb-F ,body {height: 200px; resize: vertical;}
..F0XO1GC-vb-q ,.F0XO1GC-vb-F {padding: 4px;}
..F0XO1GC-vb-b {margin: 8px 0px;}
..F0XO1GC-vb-b td {vertical-align: middle;}
..F0XO1GC-vb-b a {cursor: pointer; padding: 0px 4px;}
..F0XO1GC-vb-j {white-space: nowrap;}
..F0XO1GC-vb-j a {text-decoration: underline;}
..F0XO1GC-vb-v {cursor: pointer; margin-left: 4px;}
..F0XO1GC-vb-e {padding-left: 10px;}
..F0XO1GC-vb-B {font-weight: bold; margin-bottom: 8px;}
..F0XO1GC-vb-w {margin-bottom: 5px; margin-right: 5px;}
..F0XO1GC-vb-x {max-width: 99%; overflow: hidden; transition: all 0.15s ease=
-in-out 0s;}
..F0XO1GC-vb-C {margin-bottom: 8px;}
..F0XO1GC-vb-o {color: rgb(136, 136, 136); text-decoration: none;}
..F0XO1GC-vb-y {font-weight: bold;}
..F0XO1GC-vb-n {border-bottom: 1px solid rgb(235, 235, 235); padding: 14px 0=
px 8px;}
..F0XO1GC-vb-c {display: inline-block; margin-right: 8px; position: relative=
; top: 6px;}
..F0XO1GC-vb-d {display: inline-block;}
..F0XO1GC-vb-D {font-weight: bold;}
..F0XO1GC-vb-u {display: inline-block; vertical-align: middle;}
..F0XO1GC-vb-t {padding-top: 3px;}
..F0XO1GC-vb-s {padding: 0px 5px 0px 15px;}
..F0XO1GC-vb-m {margin-right: 12px;}
..F0XO1GC-Uc-a {background: white none repeat scroll 0% 0%; min-width: 140px=
; overflow: hidden; white-space: nowrap;}
..F0XO1GC-Uc-c {background-color: white; border: medium none; font-size: 11p=
x; overflow: hidden; outline: medium none; margin: 2px 0px; width: 100%;}
..F0XO1GC-Uc-d {display: inline-block; margin: 0px; padding: 0px; width: 100=
%;}
..F0XO1GC-Lc-h {width: 99%; display: block; border: 1px solid rgb(102, 136, =
238); margin: 5px 0px;}
..F0XO1GC-Lc-d {font-size: 11px; color: rgb(136, 136, 136);}
..F0XO1GC-Lc-e {font-size: 11px; text-decoration: none; white-space: nowrap;=
}
..F0XO1GC-Lc-c {white-space: nowrap; padding-bottom: 2px;}
..F0XO1GC-Lc-a {color: rgb(136, 136, 136);}
..F0XO1GC-Lc-b {color: rgb(153, 0, 0); font-size: 11px;}
..F0XO1GC-Lc-g {height: 2em; overflow: hidden; margin-right: 10px; padding-b=
ottom: 5px;}
..F0XO1GC-Lc-f {line-height: 14px;}
..F0XO1GC-vc-a {font-style: italic;}
..jfk-button-default {color: rgb(255, 255, 255); text-shadow: 0px 1px rgba(0=
, 0, 0, 0.1); border: 1px solid rgb(41, 105, 29); background-color: rgb(61,=
148, 0); background-image: -moz-linear-gradient(center top , rgb(61, 148, =
0), rgb(57, 138, 0));}
..jfk-button-default:hover {border: 1px solid rgb(45, 98, 0); text-shadow: 0=
px 1px rgba(0, 0, 0, 0.3); background-color: rgb(54, 130, 0); background-im=
age: -moz-linear-gradient(center top , rgb(61, 148, 0), rgb(54, 130, 0));}
..jfk-button-default:active {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3) inse=
t;}
..jfk-button-default:focus {box-shadow: 0px 0px 0px 1px rgb(255, 255, 255) i=
nset; outline: 0px none rgba(0, 0, 0, 0);}
..F0XO1GC-rc-c {display: inline-block; cursor: default; padding: 4px; positi=
on: relative;}
..F0XO1GC-rc-e {height: 18px; width: 18px; overflow: hidden; background: rgb=
a(0, 0, 0, 0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCA=
QAAAD8x0bcAAABG0lEQVR4AZXRP04CQRiG8ekIibFhgG4rK2WR8KfVwitAaL2BsXgCFB7AgkAoC=
SE0XsATcAJtjSWCsbIjwFCsb7JkJiEWuk/zFr9kk/nMvz/ytOmpNhYTCrPIjD3JIceUwjGK+WRD=
nyoZVWPAlhUlAqIosuBCK+KOeyKtmKXKBzRjgwjXrEnUmisMZXZMDkh6Tx8tXnkjUu+8YNQQh01=
Rm4QqWjxwg1GPOIyqk9BKUU8zg/GdseAZLbIkdH9DMd/MOfWoE35X8+iJL04Ou0FCM0UWx8CjSy=
p+j3DkhFBM2RKT7rlKV4Ud4/BOBVYsKaPNrUrJig+sR6oktGVInaxqMGIncn584DwTXDgwYywmo=
JClRZcOTXKYkOEP/QCM69uSuWj5UAAAAABJRU5ErkJggg=3D=3D") no-repeat scroll 0px =
0px;}
..F0XO1GC-rc-b {display: inline-block;}
..F0XO1GC-rc-c:hover > .F0XO1GC-rc-d ,.F0XO1GC-rc-c:focus > .F0XO1GC-rc-d {d=
isplay: block; z-index: 10;}
..F0XO1GC-rc-g .F0XO1GC-rc-d {right: 0px;}
..F0XO1GC-rc-d {background-color: white; border: 1px solid rgb(187, 187, 187=
); color: black; display: none; font-family: "Roboto",Arial,sans-serif; fon=
t-size: 13px; font-variant: normal; font-weight: normal; line-height: 17px;=
margin: 10px -10px; max-width: 300px; padding: 15px; position: absolute; w=
hite-space: normal; width: 290px;}
..F0XO1GC-rc-a {left: 9px; position: absolute; top: -9px;}
..F0XO1GC-rc-g .F0XO1GC-rc-a {left: inherit; right: 33px;}
..F0XO1GC-rc-h {border-width: 0px 9px 9px; border-style: solid; -moz-border-=
top-colors: none; -moz-border-right-colors: none; -moz-border-bottom-colors=
: none; -moz-border-left-colors: none; border-image: none; border-color: rg=
b(187, 187, 187) transparent; display: block; left: 0px; position: absolute=
; top: 0px;}
..F0XO1GC-rc-f {border-width: 0px 9px 9px; border-style: solid; -moz-border-=
top-colors: none; -moz-border-right-colors: none; -moz-border-bottom-colors=
: none; -moz-border-left-colors: none; border-image: none; border-color: wh=
ite transparent; display: block; left: 0px; position: absolute; top: 1px; z=
-index: 120;}
..F0XO1GC-Q-a {margin: 0px 0px 0px 0.8ex; border-left: 1px solid rgb(204, 20=
4, 204); padding-left: 1ex;}
..F0XO1GC-Q-b {margin: 0px 0.8ex; border-style: solid; border-color: rgb(204=
, 204, 204); -moz-border-top-colors: none; -moz-border-right-colors: none; =
-moz-border-bottom-colors: none; -moz-border-left-colors: none; border-imag=
e: none; border-width: 0px 1px; padding: 0px 1ex;}
..F0XO1GC-Q-c {position: relative; top: 5px; height: 16px; width: 16px; over=
flow: hidden; background: rgba(0, 0, 0, 0) url("data:image/png;base64,iVBOR=
w0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAyElEQVR4Xs2SzQpBURSFlzfwBEp5FIkB=
j8AAeQYDZeDh8ACERMwUA6b+1mpT2z4Z3cn96qvTXrtz7jl3A3mjRpf0Ttuu3vnUFrTq6glbWGO=
PFl1d6wF90I2rJ7zoIRYdR/qMxS8F2Aa7GDj2sB71JpRh4SwGjjmspxSDEb3QE22GzNOC9Zzp0A=
cTeoPdv+6DQAP2Dlc6/o2ACuzzpjFw6Hrq0XUTMj+iyPQbhU7XIPWRDlIXNkgatr/oAdewRj/KW=
mvjFWzcc8QbzwI0QWHWGZ4AAAAASUVORK5CYII=3D") no-repeat scroll 0px 0px;}
..picker-framepane-root {position: absolute; width: 100%; height: 100%;}
* .picker-framepane-root ,body .picker-framepane-root {overflow: hidden;}
..picker-framepane-content {position: absolute; top: 0px; left: 0px; right: =
0px; bottom: 0px; overflow: hidden;}
* html .picker-framepane-content ,body .picker-framepane-content {position:=
relative; top: 0px; left: 0px; right: 0px; bottom: 0px; width: 100%; heigh=
t: 100%;}
..picker-framepane-top ,.picker-framepane-bottom {position: absolute; left: =
0px; right: 0px;}
* html .picker-framepane-top ,* html .picker-framepane-bottom ,body .picker=
-framepane-top ,body .picker-framepane-bottom {width: 100%;}
..picker-framepane-top {top: 0px;}
..picker-framepane-bottom {bottom: 0px;}
..picker-framepane-left ,.picker-framepane-right {overflow: auto; position: =
absolute; top: 0px; bottom: 0px;}
* html .picker-framepane-left ,* html .picker-framepane-right ,body .picker=
-framepane-left ,body .picker-framepane-right {height: 100%;}
..picker-framepane-left {left: 0px;}
..picker-framepane-right {right: 0px;}
..picker-actionpane-frame {background-color: rgb(255, 255, 255); border-top:=
1px solid rgb(229, 229, 229);}
..picker-actionpane-content {overflow: hidden;}
..picker-actionpane-frame .jfk-button {margin-top: 20px;}
..picker-actionpane-icon {margin-right: 8px; font-size: 13px; vertical-align=
: middle; background-image: url("//ssl.gstatic.com/docs/picker/images/apps_=
upload_icons-v1.gif") !important; background-position: center 0px; height: =
16px; width: 16px;}
..picker-actionpane-photomove-div {padding: 4px;}
..picker-actionpane-photomove {font-size: 13px; padding-left: 6px; vertical-=
align: bottom;}
:first-child + html .picker-navhidden .picker-actionpane-root {padding-left=
: 10px;}
..picker-navhidden.picker-chrome-none .picker-actionpane-root {bottom: 0px; =
left: 0px; right: 0px;}
..picker-chrome-none .picker-actionpane-content {margin-bottom: 5px;}
..picker-chrome-none .picker-framepane-hidden .picker-actionpane-content {ma=
rgin-bottom: 0px;}
* html .picker-actionpane-content ,body .picker-actionpane-content {padding=
-right: 6px; padding-bottom: 6px;}
..picker-actionpane-float-item {-moz-user-select: none; float: left; margin:=
0px 20px; height: 100%;}
..picker-people-picker .picker-actionpane-float-item {float: right;}
..picker-actionpane-uploading-message {padding: 8px 20px 0px 0px;}
..picker-actionpane-upload-status {color: rgb(68, 68, 68); font-size: 12px; =
max-width: 320px; padding: 17px 0px; position: absolute; right: 0px; top: 0=
px;}
..picker-actionpane-upload-status .picker-progress-bar.progress-bar-horizont=
al {height: 9px; border: 1px solid rgb(153, 153, 153); margin: 1px; padding=
: 1px; background: rgb(255, 255, 255) none repeat scroll 0% 0%; width: 100%=
; vertical-align: middle;}
..picker-actionpane-attachment-label {color: rgb(85, 85, 85); display: inlin=
e-block; font-size: 12px; margin-right: 10px;}
..picker-actionpane-attachment-type-float-item {float: right; margin: 20px;}
..picker-actionpane-attachment-type-float-item .jfk-button {vertical-align: =
middle; margin: 0px;}
..picker-segmentedbuttonbar .picker-actionpane-imagebutton-icon {display: in=
line-block; float: left; margin-top: 3px;}
..picker-segmentedbuttonbar .picker-actionpane-imagebutton-text {display: in=
line-block; font-size: 11px; line-height: 21px; margin-top: 3px;}
..picker-actionpane-frame .picker-segmentedbuttonbar {display: inline-block;=
outline: medium none; position: relative; z-index: 0;}
..picker-segmentedbuttonbar .jfk-button-standard.jfk-button-selected ,.picke=
r-segmentedbuttonbar .jfk-button-standard.jfk-button-clear-outline.jfk-butt=
on-selected {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1) inset; background-c=
olor: rgb(238, 238, 238); background-image: -moz-linear-gradient(center top=
, rgb(238, 238, 238), rgb(224, 224, 224)); transition: all 0.1s ease 0s; b=
order: 1px solid rgb(204, 204, 204); color: rgb(51, 51, 51);}
..picker-actionpane-upload-status .progress-bar-horizontal .progress-bar-thu=
mb {height: 100%; background-repeat: repeat-x; background-size: 20px 10px; =
background-color: rgb(204, 204, 204); background-attachment: scroll; backgr=
ound-image: linear-gradient(315deg, transparent, transparent 33%, rgba(0, 0=
, 0, 0.12) 33%, rgba(0, 0, 0, 0.12) 66%, transparent 66%, transparent); ani=
mation-duration: 0.8s; animation-iteration-count: infinite; animation-timin=
g-function: linear;}
:first-child + html .picker-actionpane-float-item {float: right; margin: 0p=
x; padding-left: 4px;}
..picker-actionpane-frame .goog-imageless-button-content {padding: 6px 14px =
!important;}
..picker-actionpane-frame .goog-imageless-button {margin-left: 8px;}
:first-child + html .picker-actionpane-frame .goog-imageless-button {margin=
-left: 4px;}
..picker-actionpane-frame .goog-link-button {margin-top: 1px;}
..picker-actionpane-actionpanetext {float: right; font-size: 13px; margin: 2=
6px 37px 0px 0px; color: rgb(170, 170, 170);}
..picker-actionpane-upload-button-float-item {float: right;}
..picker-actionpane-upload-button {display: inline-block; float: right; marg=
in: 16px 23px;}
..picker-action-upload-button-img {margin-top: -3px; margin-right: 4px; vert=
ical-align: middle;}
..picker-main-overlay {position: absolute; background-color: rgb(255, 255, 2=
55); z-index: 2200; top: 0px; right: 0px; bottom: 0px; left: 0px; cursor: w=
ait;}
..picker-busy {opacity: 0.6; background: rgba(0, 0, 0, 0) url("//ssl.gstatic=
..com/docs/picker/images/loading-32-v1.gif") no-repeat scroll 50% 50%;}
..picker-gplus.picker-main-container {background-color: rgb(231, 231, 231);}
..picker-people-picker.picker-main-container {background-color: rgb(255, 255=
, 255);}
..picker-main-container .goog-link-button {color: rgb(17, 85, 204); text-dec=
oration: none; font-size: 13px; cursor: pointer; padding: 9px 2px; outline:=
medium none;}
..picker-main-container .goog-link-button-hover ,.picker-main-container .goo=
g-link-button-focused {text-decoration: underline;}
..picker-attributionbar-frame {background-color: rgb(255, 255, 255); border-=
top: 1px solid rgb(229, 229, 229); color: rgb(170, 170, 170); font-size: 11=
px; padding: 10px 20px; z-index: 2115;}
..picker-attributionbar-line {white-space: nowrap; overflow: hidden;}
..picker-actionpane-legal-text ,.picker-actionpane-notice {height: 100%; pad=
ding-right: 20px; cursor: default;}
..picker-actionpane-legal-text-td ,.picker-actionpane-notice-td {color: rgb(=
170, 170, 170); font-size: 13px; padding: 0px 20px 0px 10px; vertical-align=
: middle;}
..picker-actionpane-notice-link {cursor: pointer;}
..picker-actionpane-notice-error {color: rgb(204, 51, 51); font-size: 13px;}
..picker-actionpane-notice-warning {color: rgb(85, 85, 85); font-size: 11px;=
}
..picker-actionpane-notice-popup {font-size: 13px;}
..picker-actionpane-notice-popup .jfk-bubble-content-id {width: 300px;}
..picker-googlelogo-large {height: 44px; width: 120px;}
..picker-googlelogo-small {height: 20px; width: 52px;}
..picker-msgbar.jfk-butterBar {width: 75%; margin: auto; position: absolute;=
left: 0px; right: 0px; top: 10px; height: auto;}
..picker-msgbar.jfk-butterBar-shown {height: auto;}
..picker-msgbar.jfk-butterBar-warning .picker-link {color: rgb(255, 255, 255=
);}
..picker-main-container .goog-control {cursor: pointer;}
..picker-licensebar {color: rgb(68, 68, 68); font-size: 11px; margin-top: 7p=
x;}
..picker-loadingstatusbox {position: absolute; z-index: 100; padding: 2px 2p=
x 1px 4px; top: 50%; left: 50%; height: 32px; width: 32px; margin-top: -16p=
x; margin-left: -16px;}
..picker-loadingstatusbox-body {z-index: -1;}
..picker-photoupload-albumchooser-select {width: 242px; text-align: left; ma=
rgin: 0px; padding: 6px 10px;}
..picker-photoupload-albumchooser-select .goog-flat-menu-button-caption {wid=
th: 222px; padding: 0px 10px 0px 0px; overflow: hidden; text-overflow: elli=
psis; font-size: 11px; font-weight: bold; color: rgb(68, 68, 68); white-spa=
ce: nowrap; top: 1px; height: 16px;}
..picker-photoupload-albumchooser-select {height: 16px;}
..picker-photoupload-albumchooser-select .goog-flat-menu-button-caption ,.pi=
cker-photoupload-albumchooser-select .goog-flat-menu-button-dropdown ,.pick=
er-photoupload-albumchooser-select {line-height: normal;}
..picker-photoupload-albumchooser-select-menu {height: 180px; overflow: auto=
; z-index: 2200; width: 300px;}
..picker-photoupload-albumchooser-select-menu .goog-menuitem-content {text-o=
verflow: ellipsis; overflow: hidden;}
..picker-header-frame {padding: 17px 20px;}
..picker-header-content {border-top: 1px solid rgb(229, 229, 229);}
..picker-header-text {-moz-user-select: none; display: inline-block; font-si=
ze: 20px; vertical-align: top;}
..picker-header-icon {display: inline-block; margin: 0px 5px 5px 0px;}
..picker-dogfood-confidential-text {color: rgb(221, 75, 57); font-size: 13px=
; font-weight: bold; line-height: 25px; padding-left: 30px; text-transform:=
uppercase;}
..picker-header-close {line-height: 0; overflow: hidden; position: absolute;=
right: 11px; top: 20px;}
..picker-header-close .jfk-button-flat {cursor: pointer; height: inherit; ma=
rgin: 0px; width: inherit;}
..picker-debug-build-label {-moz-user-select: initial; background-color: rgb=
(255, 255, 255); color: rgb(153, 153, 153); font-size: 10px; position: abso=
lute; right: 10px; top: 0px;}
..picker-quotaview {padding: 21px; font-size: 13px;}
..picker-quotaview-div {margin-bottom: 10px;}
..picker-dropdown-menuitem {padding: 2px 7em 2px 30px; border: 0px none;}
..picker-dropdown-menuitem-header {color: rgb(153, 153, 153); cursor: defaul=
t; font-size: 11px; font-weight: bold; padding: 8px 7em 8px 30px; text-tran=
sform: uppercase;}
..picker-dropdown-menu {padding-bottom: 6px; width: 234px; z-index: 2108;}
..picker-url-input-frame {cursor: default; overflow: hidden; padding: 2px 10=
px 4px 8px; border-top: 1px solid rgb(229, 229, 229);}
..picker-url-input-text {font-size: 11px; color: rgb(68, 68, 68); margin: 5p=
x 0px 2px;}
..picker-url-input-box {border-width: 1px; border-style: solid; border-color=
: rgb(191, 191, 191) rgb(216, 216, 216) rgb(216, 216, 216); -moz-border-top=
-colors: none; -moz-border-right-colors: none; -moz-border-bottom-colors: n=
one; -moz-border-left-colors: none; border-image: none; padding: 1px 0px; m=
argin: 1px 0px; font-size: 11px; width: 100%;}
..picker-url-input-box-selected {border: 2px solid rgb(77, 144, 254);}
..picker-urlview {padding: 14px 20px !important;}
..picker-urlview-header {color: rgb(68, 68, 68); font-size: 13px; font-weigh=
t: bold;}
..picker-urlview-input {width: 200px; border-width: 1px; border-style: solid=
; border-color: rgb(191, 191, 191) rgb(216, 216, 216) rgb(216, 216, 216); -=
moz-border-top-colors: none; -moz-border-right-colors: none; -moz-border-bo=
ttom-colors: none; -moz-border-left-colors: none; border-image: none; margi=
n: 1px 1px 2px 8px; padding: 3px;}
input.picker-urlview-selected {border: 2px solid rgb(77, 144, 254); margin:=
0px 0px 1px 7px;}
..picker-urlview-loading-icon {background-image: url("//ssl.gstatic.com/docs=
/picker/images/apps_upload_icons-v1.gif") !important; background-position: =
center 0px; height: 16px; width: 16px; margin-left: 5px; margin-bottom: 2px=
; vertical-align: middle; opacity: 0.5;}
..picker-urlview-success-icon {background-image: url("//ssl.gstatic.com/docs=
/picker/images/apps_upload_icons-v1.gif") !important; width: 16px; margin-l=
eft: 5px; vertical-align: middle; opacity: 0.5;}
..picker-urlview-error-icon {background-image: url("//ssl.gstatic.com/docs/p=
icker/images/apps_upload_icons-v1.gif") !important; height: 16px; width: 16=
px; margin-left: 5px; margin-bottom: 2px; vertical-align: middle; opacity: =
0.5;}
..picker-urlview-success-icon {background-position: center -16px; height: 13=
px; margin-bottom: 0px;}
..picker-urlview-error-icon {background-position: center -30px;}
..picker-urlview-preview {position: absolute; margin-top: 8px;}
..picker-urlview-preview-td {vertical-align: middle; text-align: center; col=
or: rgb(170, 170, 170); font-size: 12px;}
..picker-urlview-preview-content {font-size: 14px; margin: 10px 0px;}
..picker-urlview-error-td {color: rgb(204, 51, 51);}
..picker-web-control {border: 6px solid rgb(255, 255, 255); cursor: pointer;=
margin: -2px 8px 4px; overflow: hidden; padding: 6px;}
..picker-web-control-hover ,.picker-web-control-focused {border: 6px solid r=
gb(243, 243, 243); background: rgb(243, 243, 243) none repeat scroll 0% 0%;=
}
..picker-web-control-checked {border: 6px solid rgb(77, 144, 254); backgroun=
d: rgb(242, 247, 255) none repeat scroll 0% 0%;}
..picker-web-control-title {font-size: small; text-decoration: underline;}
..picker-web-control-content {font-size: small; color: rgb(68, 68, 68);}
..picker-web-control-url {font-size: small; color: green;}
..picker-learnmore {position: absolute; bottom: 9px; left: 16px;}
..picker-actionpane-frame .picker-learnmore {float: right; margin-top: 16px;=
position: static;}
..picker-actionpane-frame .picker-learnmore .goog-link-button {margin-right:=
20px; width: auto;}
..picker-learnmore .goog-link-button {width: 134px; vertical-align: middle;}
..picker-spr-questionmark {display: inline-block; margin-right: 5px; vertica=
l-align: middle;}
..picker-iconview-container {height: 100%;}
..picker-iconview-img {border: 1px solid rgb(221, 221, 221); margin-right: a=
uto; margin-left: auto; display: block; position: relative; top: 5%;}
..picker-main-container .jfk-tooltip {z-index: 2103;}
..picker-main-container .jfk-textinput ,.picker-main-container .jfk-button {=
transition: all 0.218s ease 0s;}
..picker-menu-container .goog-menu {z-index: 2112;}
..picker-offscreen {position: absolute; left: -10000px; top: -10000px;}
..picker-content {position: absolute; top: 0px; bottom: 0px; left: 0px; righ=
t: 0px; overflow: hidden;}
..picker-chrome-none .picker-content {left: 0px; right: 0px; bottom: 0px; bo=
rder-top: 0px none; border-left: 0px none; border-right: 0px none;}
..picker-chrome-none .picker-framepane-hidden .picker-actionpane-content .pi=
cker-content {border: 0px none;}
* html .picker-content ,body .picker-content {position: relative; bottom: 0=
px; left: 0px; right: 0px; top: 0px; height: 100%; width: 100%;}
:first-child + html .picker-content {left: 0px; bottom: 0px; right: 0px; to=
p: 0px; overflow-x: hidden;}
:first-child + html .picker-chrome-none .picker-content {left: 0px;}
..picker-dataview {overflow-y: auto;}
..picker-dataview-message {font-size: 13px; padding: 18px 0px 0px 7px; color=
: rgb(51, 51, 51); line-height: 150%;}
..picker-messagelist .picker-dataview-message {margin-left: 13px; padding-to=
p: 5px;}
..picker-combosearchmessagelist .pickercombosearch-content {margin: 20px 0px=
0px 20px;}
..picker-combosearchmessagelist .jfk-button-flat {cursor: pointer; font-size=
: inherit; font-weight: inherit; height: auto;}
..picker-combosearchmessagelist .picker-spr-life-photo-archive-large {margin=
-left: 50px;}
..picker-combosearchmessagelist .picker-searchbar-stock-photos-large {color:=
rgb(102, 102, 102); font-size: 18px; font-weight: bold; height: 27px; marg=
in: 10px 0px 0px 50px; position: absolute; text-align: left; vertical-align=
: middle; width: auto;}
..picker-listrenderer-table {width: 100%; table-layout: fixed; border-spacin=
g: 0px;}
..picker-listrenderer-table .picker-dataview-message {padding: 20px;}
..picker-list-control-tablerow {font-size: 13px; width: 100%; cursor: pointe=
r;}
..picker-list-control-tablerow-with-checkbox {outline: medium none;}
..picker-list-control-focused .jfk-checkbox {border: 1px solid rgb(77, 144, =
254);}
..picker-list-control-unselectable .picker-list-control-cell {color: rgb(204=
, 204, 204);}
..picker-list-control-unselectable .picker-list-control-icon {opacity: 0.3;}
..picker-list-control-checked {background-color: rgb(255, 255, 204);}
..picker-list-control-checkbox-cell {width: 42px; margin: 0px; padding-left:=
20px;}
..picker-list-control-icon-cell {width: 23px; padding-left: 8px;}
..picker-list-control-icon {display: block; margin-top: 4px; padding-bottom:=
3px; width: 16px; height: 16px;}
..picker-list-control-icon-img {max-height: 16px; max-width: 16px;}
..picker-list-control-name-cell {margin-left: 5px; overflow: hidden; padding=
-left: 7px;}
..picker-list-control-lastedited-cell {margin-left: 5px; overflow: hidden; p=
adding-left: 7px; width: 115px;}
..picker-list-control-cell {white-space: nowrap; text-overflow: ellipsis; bo=
rder-bottom: 1px solid rgb(229, 229, 229); padding-top: 4px; padding-bottom=
: 4px;}
..picker-navpane-horizontal-content .picker-list-control-cell {border-color:=
rgb(221, 221, 221);}
..picker-breadcrumbs-frame {cursor: default; overflow: hidden; margin-top: 1=
9px; margin-left: 18px;}
..picker-chrome-none .picker-breadcrumbs-frame {border: 0px none; margin-lef=
t: 0px;}
:first-child + html .picker-breadcrumbs-frame ,* html .picker-breadcrumbs-f=
rame ,body .picker-breadcrumbs-frame {margin-left: 0px; margin-right: 0px;}
* html .picker-breadcrumbs-content ,body .picker-breadcrumbs-content {paddi=
ng-bottom: 6px;}
..picker-breadcrumbs-table {color: rgb(85, 85, 85); font-size: 13px; positio=
n: relative; top: 1px; left: 1px;}
..picker-breadcrumbs-parent {padding-right: 3px; padding-left: 3px; padding-=
bottom: 3px; white-space: nowrap;}
..picker-breadcrumbs-clickable {cursor: pointer;}
..picker-breadcrumbs-triangle {white-space: nowrap;}
..picker-breadcrumbs-triangle1 {border-color: transparent transparent transp=
arent rgb(85, 85, 85); border-style: solid; border-width: 4px; margin: -2px=
2px 3px 6px; width: 0px; height: 0px; vertical-align: middle; line-height:=
0;}
..picker-breadcrumbs-child {font-weight: bold; white-space: nowrap; padding-=
right: 3px; padding-left: 3px; padding-bottom: 3px;}
..picker-butterbar {color: rgb(34, 34, 34); background-color: rgb(249, 237, =
190); font-size: 11px; padding: 3px 0px 0px; height: 17px; text-align: cent=
er; border: 1px solid rgb(240, 195, 109); border-radius: 2px;}
..picker-butterbar .picker-link {color: rgb(0, 0, 0);}
..picker-navhorizontal-new .picker-header-content {border-top: medium none;}
..picker-navhorizontal-new .picker-navpane-horizontal-frame {border-bottom: =
1px solid rgb(225, 225, 225); box-shadow: 0px 1px 5px 1px rgb(225, 225, 225=
); z-index: 1;}
..picker-navpane-horizontal-tab-bar-wrapper {background-color: rgb(245, 245,=
245); height: 50px; text-align: center;}
..picker-navhorizontal-new .picker-navpane-horizontal-tab-bar-wrapper {text-=
align: left;}
..picker-navpane-horizontal-tab-bar-wrapper .goog-tab-bar {background: trans=
parent none repeat scroll 0% 0%; border-bottom: 0px none; display: inline-b=
lock; font-size: 12px; height: 50px; outline: medium none;}
..picker-navpane-horizontal-tab-bar-wrapper .picker-navpane-horizontal-tabco=
ntent {display: inline-block; font-size: 14px; vertical-align: middle;}
..picker-navpane-horizontal-tab-bar-wrapper .goog-tab ,.picker-navpane-horiz=
ontal-tab-bar-wrapper .goog-menu-button {background: transparent none repea=
t scroll 0% 0%; border: medium none; color: rgb(34, 34, 34); float: left; h=
eight: 14px; margin: 0px 18px; padding: 16px 4px 7px; position: static;}
..picker-navpane-horizontal-tab-bar-wrapper .goog-tab-bar-top {border: mediu=
m none !important; padding: 0px !important;}
..picker-navpane-horizontal-tab-bar-wrapper .goog-tab-hover {background: tra=
nsparent none repeat scroll 0% 0%; border-bottom: 2px solid rgb(77, 144, 25=
4); color: rgb(38, 38, 38); cursor: pointer; padding-bottom: 18px;}
..picker-navpane-horizontal-tab-bar-wrapper .goog-tab-selected {background: =
transparent none repeat scroll 0% 0% !important; border-width: 0px 0px 2px;=
border-style: none none solid; border-color: currentcolor currentcolor rgb=
(77, 144, 254); color: rgb(38, 38, 38); font-weight: bold; padding-bottom: =
18px;}
..picker-navpane-horizontal-tab-bar-wrapper .picker-navpane-horizontal-divid=
er {border-left: 1px solid rgb(34, 34, 34); cursor: default; margin: 10px 1=
0px 0px; padding: 7px 0px;}
..picker-navpane-horizontal-back-icon {display: inline-block; margin-right: =
1px; opacity: 0.8; vertical-align: middle;}
..picker-navpane-horizontal-tab-bar-wrapper .goog-menu-button {font-size: 14=
px; outline: medium none;}
..picker-navpane-horizontal-tab-bar-wrapper .goog-menu-button-hover ,.picker=
-navpane-horizontal-tab-bar-wrapper .goog-menu-button-open {border-bottom: =
2px solid rgb(77, 144, 254); color: rgb(38, 38, 38); cursor: pointer; paddi=
ng-bottom: 17px;}
..picker-navpane-horizontal-tab-bar-wrapper .goog-menu-button.picker-horizon=
tal-navpane-more-selected {border-bottom: 2px solid rgb(77, 144, 254); colo=
r: rgb(38, 38, 38); cursor: pointer; font-weight: bold; padding-bottom: 17p=
x;}
..picker-navpane-horizontal-tab-bar-wrapper .goog-menu-button .picker-spr-ar=
row-dk-grey-down {opacity: 0.5; display: inline-block; margin: 0px 0px 2px =
5px;}
..picker-horizontal-navpane-more-menu {max-height: 50%; overflow-y: auto; z-=
index: 2200;}
..picker-navpane-horizontal-tab-bar-wrapper .picker-navpane-horizontal-paren=
t-tab {padding: 15px 2px 0px;}
..picker-navpane-horizontal-parent-tab.goog-tab-hover {padding-bottom: 19px;=
}
..picker-navpane-frame {background-color: rgb(255, 255, 255); border-right: =
1px solid rgb(229, 229, 229); overflow: visible; padding: 14px 0px 0px; z-i=
ndex: 2102;}
..picker-peoplesearchbar-showroom.picker-navpane-frame {background-color: rg=
b(245, 245, 245); border-right: 1px solid rgb(245, 245, 245);}
..picker-navpane-content {overflow: hidden; right: 0px;}
..picker-chrome-inline .picker-navpane-content {top: 10px;}
..picker-main-container .picker-navpane-frame .goog-tree-icon {width: 0px;}
..picker-main-container .picker-navpane-frame .picker-spr-arrow-dk-grey {cur=
sor: pointer; height: 7px; margin-bottom: 1px; margin-left: 2px; margin-rig=
ht: 6px; width: 4px;}
..picker-main-container .picker-navpane-frame .picker-spr-arrow-dk-grey-down=
{cursor: pointer; height: 4px; margin-right: 5px; width: 7px;}
..picker-main-container .picker-navpane-frame .picker-navpane-hascollapse .g=
oog-tree-expand-icon-blank {width: 12px;}
..picker-main-container .picker-navpaneitem .goog-tree-row .goog-tree-icon {=
left: 11px; position: relative;}
..picker-main-container .picker-navpane-frame .goog-tree-root.goog-tree-item=
{margin-top: -1px; outline: medium none; overflow: auto; padding: 2px 12px=
0px 0px;}
..picker-main-container .picker-navpaneitem .goog-tree-item-label {color: rg=
b(68, 68, 68); cursor: pointer; font-size: 13px; margin: 0px 20px 0px 0px; =
overflow: visible; white-space: normal; width: auto; z-index: 2103;}
..picker-main-container .goog-tree-item .picker-navpaneitem .selected {backg=
round-color: transparent; font-weight: normal;}
..picker-main-container .picker-navpane-frame .goog-tree-item .goog-tree-row=
{border-left: 5px solid transparent;}
..picker-main-container .picker-navpane-frame .goog-tree-root .picker-navpan=
eitem-active {border-left: 5px solid rgb(221, 75, 57); border-radius: 0px;}
..picker-main-container .picker-navpaneitem .goog-tree-item-label {margin-le=
ft: 11px;}
..picker-main-container .goog-tree-root .picker-navpaneitem-active .goog-tre=
e-item-label {color: rgb(207, 66, 54); font-weight: bold;}
..picker-main-container .picker-navpaneitem .goog-tree-row {height: auto; li=
ne-height: 90%; margin: 0px; padding: 3px 0px 6px; white-space: nowrap;}
..picker-main-container .picker-navpanedivider .goog-tree-row {line-height: =
0; margin: 0px 10px; padding: 10px 0px; white-space: nowrap;}
..picker-main-container .picker-navpane-frame .picker-navpanedivider .goog-t=
ree-expand-icon-blank ,.picker-main-container .picker-navpanedivider .picke=
r-navpanedivider-icon {height: 0px; position: absolute;}
..picker-main-container .picker-navpanedivider .picker-nav-hr {background-co=
lor: rgb(235, 235, 235); border-width: 0px; color: rgb(235, 235, 235); heig=
ht: 1px;}
..picker-main-container .goog-tree-item .picker-navpaneitem .picker-navpanei=
tem-root {margin-bottom: 1px; padding: 6px 0px 9px;}
..picker-main-container .goog-tree-item .picker-navpaneitem .picker-navpanei=
tem-hover ,.picker-main-container .focused .picker-navpaneitem .selected {b=
ackground-color: rgb(238, 238, 238);}
..picker-main-container .picker-navpane-frame .goog-tree-root .picker-navpan=
eitem .picker-navpaneitem-not-clickable {cursor: default;}
:first-child + html .picker-main-container .picker-navpane-frame .goog-tree=
-root .picker-navpaneitem .goog-tree-item-label {margin-right: 0px; padding=
-bottom: 4px;}
:first-child + html .picker-main-container .picker-navpaneitem .goog-tree-r=
ow {padding-bottom: 0px;}
:first-child + html .picker-main-container .goog-tree-item .picker-navpanei=
tem .picker-navpaneitem-root {padding-bottom: 5px;}
..picker-navpane-frame .picker-buildlabel {bottom: 0px; color: rgb(153, 153,=
153); font-size: 10px; left: 0px; padding: 5px; position: absolute;}
..picker-navpane-frame .picker-buildlabel-a {color: rgb(153, 153, 153);}
..picker-noticebar {font-size: 12px; padding: 7px 14px 15px; color: rgb(68, =
68, 68);}
..picker-progress-bar-spinner.progress-bar-horizontal {border: 0px none; bac=
kground: transparent url("//ssl.gstatic.com/docs/picker/images/loading-v1.g=
if") no-repeat scroll 0px 0px; height: 16px; width: 16px; margin: auto auto=
5px; opacity: 0.5;}
..picker-progress-bar-spinner .progress-bar-thumb {opacity: 0;}
..picker-progress-bar.progress-bar-horizontal {position: relative; border: 0=
px none; text-align: left; background: rgb(225, 225, 225) none repeat scrol=
l 0% 0%; vertical-align: top;}
..picker-main-container .progress-bar-thumb {transition: width 1s ease 0s;}
..picker-progress-bar .progress-bar-thumb {background: rgb(44, 117, 236) non=
e repeat scroll 0% 0%; height: 16px;}
..picker-jfk-tall-progressbar {border-width: 1px; border-style: solid; paddi=
ng: 1px;}
..picker-jfk-tall-progressbar .progress-bar-thumb {height: 8px;}
..picker-sspr-back-arrow-black {background: rgba(0, 0, 0, 0) url("//ssl.gsta=
tic.com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -129=
px; height: 21px; width: 21px;}
..picker-sspr-back-arrow-inverted {background: rgba(0, 0, 0, 0) url("//ssl.g=
static.com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -=
562px; height: 21px; width: 21px;}
..picker-sspr-close-tab {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com=
/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -150px; hei=
ght: 15px; width: 15px;}
..picker-sspr-drive-logo-black {background: rgba(0, 0, 0, 0) url("//ssl.gsta=
tic.com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -61p=
x; height: 20px; width: 20px;}
..picker-sspr-folder-new {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.co=
m/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -349px; he=
ight: 21px; width: 21px;}
..picker-sspr-forward-arrow-black {background: rgba(0, 0, 0, 0) url("//ssl.g=
static.com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -=
436px; height: 21px; width: 21px;}
..picker-sspr-forward-arrow-inverted {background: rgba(0, 0, 0, 0) url("//ss=
l.gstatic.com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0p=
x -394px; height: 21px; width: 21px;}
..picker-sspr-group {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/doc=
s/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -481px; height:=
24px; width: 24px;}
..picker-sspr-group-white {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.c=
om/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -601px; h=
eight: 24px; width: 24px;}
..picker-sspr-help-black {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.co=
m/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -165px; he=
ight: 24px; width: 24px;}
..picker-sspr-help-white {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.co=
m/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -538px; he=
ight: 24px; width: 24px;}
..picker-sspr-inline-image {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.=
com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -517px; =
height: 21px; width: 21px;}
..picker-sspr-launch {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/do=
cs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -625px; height=
: 18px; width: 18px;}
..picker-sspr-launch-inverted {background: rgba(0, 0, 0, 0) url("//ssl.gstat=
ic.com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -583p=
x; height: 18px; width: 18px;}
..picker-sspr-minpicker-back-button {background: rgba(0, 0, 0, 0) url("//ssl=
..gstatic.com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px=
-21px; height: 16px; width: 16px;}
..picker-sspr-minpicker-forward-button {background: rgba(0, 0, 0, 0) url("//=
ssl.gstatic.com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll =
0px -309px; height: 16px; width: 16px;}
..picker-sspr-my-drive-new-black {background: rgba(0, 0, 0, 0) url("//ssl.gs=
tatic.com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -4=
57px; height: 24px; width: 24px;}
..picker-sspr-my-drive-new-white {background: rgba(0, 0, 0, 0) url("//ssl.gs=
tatic.com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -2=
37px; height: 24px; width: 24px;}
..picker-sspr-mydrive {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/d=
ocs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -370px; heigh=
t: 24px; width: 24px;}
..picker-sspr-mydrive-white {background: rgba(0, 0, 0, 0) url("//ssl.gstatic=
..com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -261px;=
height: 24px; width: 24px;}
..picker-sspr-open-link {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com=
/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -505px; hei=
ght: 12px; width: 12px;}
..picker-sspr-paper-clip {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.co=
m/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -415px; he=
ight: 21px; width: 21px;}
..picker-sspr-plus {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/docs=
/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -37px; height: 2=
4px; width: 24px;}
..picker-sspr-plus-inverted {background: rgba(0, 0, 0, 0) url("//ssl.gstatic=
..com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -213px;=
height: 24px; width: 24px;}
..picker-sspr-search-icon {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.c=
om/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px 0px; heig=
ht: 21px; width: 21px;}
..picker-sspr-sort {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/docs=
/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -325px; height: =
24px; width: 24px;}
..picker-sspr-starred {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/d=
ocs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -81px; height=
: 24px; width: 24px;}
..picker-sspr-starred-white {background: rgba(0, 0, 0, 0) url("//ssl.gstatic=
..com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -285px;=
height: 24px; width: 24px;}
..picker-sspr-team-drive-black {background: rgba(0, 0, 0, 0) url("//ssl.gsta=
tic.com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -105=
px; height: 24px; width: 24px;}
..picker-sspr-team-drive-white {background: rgba(0, 0, 0, 0) url("//ssl.gsta=
tic.com/docs/picker/images/onepick_sprite12.svg") no-repeat scroll 0px -189=
px; height: 24px; width: 24px;}
..picker-spr-add-people ,.picker-spr-added-check ,.picker-spr-arrow-back ,.p=
icker-spr-arrow-back-white ,.picker-spr-arrow-dk-grey ,.picker-spr-arrow-dk=
-grey-down ,.picker-spr-arrow-forward ,.picker-spr-arrow-forward-white ,.pi=
cker-spr-audience-acl-small-domain-public ,.picker-spr-audience-acl-small-e=
xtended-circles ,.picker-spr-audience-acl-small-limited ,.picker-spr-audien=
ce-acl-small-owner-only ,.picker-spr-audience-acl-small-public ,.picker-spr=
-back-folder-ltr ,.picker-spr-back-folder-rtl ,.picker-spr-black-close ,.pi=
cker-spr-check ,.picker-spr-checkbox-active ,.picker-spr-checkbox-selected =
,.picker-spr-checkbox-selected-blue ,.picker-spr-checkmark-checked ,.picker=
-spr-circle ,.picker-spr-circle-active ,.picker-spr-circle-big ,.picker-spr=
-circle-big-white ,.picker-spr-circle-hover ,.picker-spr-close-box-small-of=
f ,.picker-spr-close-box-small-on ,.picker-spr-close-box-tiny-black ,.picke=
r-spr-close-box-tiny-white ,.picker-spr-close-min ,.picker-spr-collection ,=
..picker-spr-drive-64 ,.picker-spr-drive-black-icon ,.picker-spr-drive-drag-=
upload-icon ,.picker-spr-drive-upload-icon ,.picker-spr-folder-shared-white=
,.picker-spr-folder-white ,.picker-spr-gmail ,.picker-spr-google-logo ,.pi=
cker-spr-google-logo-large ,.picker-spr-google-photos-20 ,.picker-spr-googl=
e-photos-24 ,.picker-spr-googleplus ,.picker-spr-grid-view ,.picker-spr-ic-=
dragfile-blue ,.picker-spr-ic-dragfile-bluepng ,.picker-spr-ic-dragfile-gre=
y ,.picker-spr-ic-dragphoto-blue ,.picker-spr-ic-dragphoto-grey ,.picker-sp=
r-ic-dragvideo-blue ,.picker-spr-ic-dragvideo-grey ,.picker-spr-ic-photos-1=
2 ,.picker-spr-ic-photos-20 ,.picker-spr-ic-remove ,.picker-spr-icon-autofi=
x-active ,.picker-spr-icon-computer ,.picker-spr-icon-cover-photo ,.picker-=
spr-icon-photos-delete ,.picker-spr-icon-photos-delete-white ,.picker-spr-i=
con-remove-active ,.picker-spr-icon-rotate-ccw-active ,.picker-spr-icon-rot=
ate-cw-active ,.picker-spr-icon-rotate-left-white ,.picker-spr-icon-rotate-=
right-white ,.picker-spr-icon-three-dots-active ,.picker-spr-icon-zoom-max =
,.picker-spr-icon-zoom-min ,.picker-spr-imagefilter-all-colors ,.picker-spr=
-imagefilter-monochrome ,.picker-spr-inline-image ,.picker-spr-large-plus-b=
lack ,.picker-spr-life-photo-archive ,.picker-spr-life-photo-archive-large =
,.picker-spr-list-view ,.picker-spr-maps-cancel-en ,.picker-spr-maps-next-d=
is ,.picker-spr-maps-next-en ,.picker-spr-maps-prev-dis ,.picker-spr-maps-p=
rev-en ,.picker-spr-mic ,.picker-spr-navpane-albums ,.picker-spr-navpane-al=
bums-selected ,.picker-spr-navpane-from-computer ,.picker-spr-navpane-from-=
computer-selected ,.picker-spr-navpane-gdrive ,.picker-spr-navpane-gdrive-s=
elected ,.picker-spr-navpane-instantupload ,.picker-spr-navpane-instantuplo=
ad-selected ,.picker-spr-navpane-url ,.picker-spr-navpane-webcam ,.picker-s=
pr-navpane-webcam-selected ,.picker-spr-navpane-youtube ,.picker-spr-new-fo=
lder ,.picker-spr-no-photo ,.picker-spr-no-photo-48 ,.picker-spr-no-photo-8=
4 ,.picker-spr-paper-clip ,.picker-spr-photo-discard ,.picker-spr-photo-ico=
n ,.picker-spr-photo-upload-cancel ,.picker-spr-picasa-rectangles ,.picker-=
spr-plus-black ,.picker-spr-plus-gray ,.picker-spr-profile-rotate-ccw ,.pic=
ker-spr-profile-rotate-cw ,.picker-spr-questionmark ,.picker-spr-rio-arrow-=
menu ,.picker-spr-rio-check-active ,.picker-spr-rio-check-checked ,.picker-=
spr-rio-checkmark-active ,.picker-spr-rio-checkmark-selected ,.picker-spr-r=
io-rotate ,.picker-spr-rio-trash ,.picker-spr-rio-upload ,.picker-spr-rio-u=
pload-big ,.picker-spr-sad-face ,.picker-spr-sort ,.picker-spr-sort-bar ,.p=
icker-spr-toolbar-gray-rotate-ccw ,.picker-spr-toolbar-gray-rotate-cw ,.pic=
ker-spr-toolbar-gray-trash ,.picker-spr-toolbar-white-rotate-ccw ,.picker-s=
pr-toolbar-white-rotate-cw ,.picker-spr-toolbar-white-trash ,.picker-spr-up=
load-arrow ,.picker-spr-upload-error ,.picker-spr-upload-retry ,.picker-spr=
-video-play-overlay ,.picker-spr-video-play-overlay-small ,.picker-spr-vide=
o-stars ,.picker-spr-video-stars-rtl ,.picker-spr-video-upload-icon ,.picke=
r-spr-white-checkmark ,.picker-spr-youtube {background: rgba(0, 0, 0, 0) ur=
l("//ssl.gstatic.com/docs/picker/images/picker_sprite-v107.png") no-repeat =
scroll 0% 0%;}
..picker-spr-add-people {background-position: -28px -230px; width: 27px; hei=
ght: 26px;}
..picker-spr-added-check {background-position: 0px -676px; width: 21px; heig=
ht: 21px;}
..picker-spr-arrow-back-white {background-position: -128px -1112px; width: 2=
1px; height: 21px;}
..picker-spr-arrow-back {background-position: -15px -1402px; width: 21px; he=
ight: 21px;}
..picker-spr-arrow-dk-grey-down {background-position: 0px -1240px; width: 7p=
x; height: 4px;}
..picker-spr-arrow-dk-grey {background-position: 0px -230px; width: 4px; hei=
ght: 7px;}
..picker-spr-arrow-forward-white {background-position: 0px -576px; width: 21=
px; height: 21px;}
..picker-spr-arrow-forward {background-position: -58px -676px; width: 21px; =
height: 21px;}
..picker-spr-audience-acl-small-domain-public {background-position: -110px -=
1402px; width: 12px; height: 12px;}
..picker-spr-audience-acl-small-extended-circles {background-position: -88px=
-1388px; width: 12px; height: 12px;}
..picker-spr-audience-acl-small-limited {background-position: -4px -310px; w=
idth: 12px; height: 12px;}
..picker-spr-audience-acl-small-owner-only {background-position: 0px -1112px=
; width: 12px; height: 12px;}
..picker-spr-audience-acl-small-public {background-position: 0px -985px; wid=
th: 12px; height: 12px;}
..picker-spr-back-folder-ltr {background-position: 0px -1012px; width: 21px;=
height: 21px;}
..picker-spr-back-folder-rtl {background-position: 0px -1304px; width: 21px;=
height: 21px;}
..picker-spr-black-close {background-position: -147px -244px; width: 11px; h=
eight: 11px;}
..picker-spr-checkbox-active {background-position: -15px -1140px; width: 24p=
x; height: 24px;}
..picker-spr-checkbox-selected-blue {background-position: 0px -1325px; width=
: 24px; height: 24px;}
..picker-spr-checkbox-selected {background-position: -46px -802px; width: 24=
px; height: 24px;}
..picker-spr-checkmark-checked {background-position: -19px -922px; width: 18=
px; height: 18px;}
..picker-spr-check {background-position: 0px -890px; width: 14px; height: 11=
px;}
..picker-spr-circle-active {background-position: 0px -1373px; width: 14px; h=
eight: 14px;}
..picker-spr-circle-big-white {background-position: -79px -676px; width: 26p=
x; height: 26px;}
..picker-spr-circle-big {background-position: -83px -1112px; width: 26px; he=
ight: 26px;}
..picker-spr-circle-hover {background-position: -147px -230px; width: 14px; =
height: 14px;}
..picker-spr-circle {background-position: -113px -64px; width: 14px; height:=
14px;}
..picker-spr-close-box-small-off {background-position: -79px -945px; width: =
15px; height: 15px;}
..picker-spr-close-box-small-on {background-position: -43px -676px; width: 1=
5px; height: 15px;}
..picker-spr-close-box-tiny-black {background-position: -19px -915px; width:=
7px; height: 7px;}
..picker-spr-close-box-tiny-white {background-position: -82px -985px; width:=
7px; height: 7px;}
..picker-spr-close-min {background-position: -105px -676px; width: 11px; hei=
ght: 11px;}
..picker-spr-collection {background-position: -21px -1077px; width: 16px; he=
ight: 13px;}
..picker-spr-drive-64 {background-position: -88px -1511px; width: 64px; heig=
ht: 64px;}
..picker-spr-drive-black-icon {background-position: -79px -960px; width: 21p=
x; height: 21px;}
..picker-spr-drive-drag-upload-icon {background-position: 0px -422px; width:=
35px; height: 45px;}
..picker-spr-drive-upload-icon {background-position: -149px -1112px; width: =
11px; height: 14px;}
..picker-spr-folder-shared-white {background-position: -4px -289px; width: 2=
1px; height: 21px;}
..picker-spr-folder-white {background-position: -32px -363px; width: 21px; h=
eight: 21px;}
..picker-spr-gmail {background-position: -72px -1388px; width: 16px; height:=
11px;}
..picker-spr-google-logo-large {background-position: -40px -826px; width: 11=
8px; height: 41px;}
..picker-spr-google-logo {background-position: -64px -915px; width: 61px; he=
ight: 28px;}
..picker-spr-google-photos-20 {background-position: -90px -802px; width: 20p=
x; height: 20px;}
..picker-spr-google-photos-24 {background-position: -4px -230px; width: 24px=
; height: 24px;}
..picker-spr-googleplus {background-position: -109px -390px; width: 48px; he=
ight: 48px;}
..picker-spr-grid-view {background-position: 0px -1140px; width: 15px; heigh=
t: 15px;}
..picker-spr-ic-dragfile-bluepng {background-position: 0px -130px; width: 10=
0px; height: 100px;}
..picker-spr-ic-dragfile-blue {background-position: -100px -130px; width: 64=
px; height: 64px;}
..picker-spr-ic-dragfile-grey {background-position: 0px -1447px; width: 64px=
; height: 64px;}
..picker-spr-ic-dragphoto-blue {background-position: -65px -278px; width: 64=
px; height: 64px;}
..picker-spr-ic-dragphoto-grey {background-position: -90px -1240px; width: 6=
4px; height: 64px;}
..picker-spr-ic-dragvideo-blue {background-position: 0px -1511px; width: 64p=
x; height: 64px;}
..picker-spr-ic-dragvideo-grey {background-position: 0px -702px; width: 100p=
x; height: 100px;}
..picker-spr-ic-photos-12 {background-position: -125px -915px; width: 12px; =
height: 12px;}
..picker-spr-ic-photos-20 {background-position: -70px -802px; width: 20px; h=
eight: 20px;}
..picker-spr-ic-remove {background-position: -24px -826px; width: 16px; heig=
ht: 16px;}
..picker-spr-icon-autofix-active {background-position: 0px -802px; width: 24=
px; height: 24px;}
..picker-spr-icon-computer {background-position: -21px -676px; width: 22px; =
height: 20px;}
..picker-spr-icon-cover-photo {background-position: -124px -702px; width: 14=
px; height: 21px;}
..picker-spr-icon-photos-delete-white {background-position: 0px -826px; widt=
h: 24px; height: 24px;}
..picker-spr-icon-photos-delete {background-position: -100px -702px; width: =
24px; height: 24px;}
..picker-spr-icon-remove-active {background-position: -100px -726px; width: =
24px; height: 24px;}
..picker-spr-icon-rotate-ccw-active {background-position: 0px 0px; width: 24=
px; height: 24px;}
..picker-spr-icon-rotate-cw-active {background-position: -64px -1511px; widt=
h: 24px; height: 24px;}
..picker-spr-icon-rotate-left-white {background-position: -43px -936px; widt=
h: 15px; height: 9px;}
..picker-spr-icon-rotate-right-white {background-position: 0px -1402px; widt=
h: 15px; height: 9px;}
..picker-spr-icon-three-dots-active {background-position: -104px 0px; width:=
24px; height: 24px;}
..picker-spr-icon-zoom-max {background-position: 0px -390px; width: 32px; he=
ight: 32px;}
..picker-spr-icon-zoom-min {background-position: 0px -342px; width: 32px; he=
ight: 32px;}
..picker-spr-imagefilter-all-colors {background-position: -21px -1304px; wid=
th: 19px; height: 19px;}
..picker-spr-imagefilter-monochrome {background-position: -109px -1112px; wi=
dth: 19px; height: 19px;}
..picker-spr-inline-image {background-position: -43px -915px; width: 21px; h=
eight: 21px;}
..picker-spr-large-plus-black {background-position: -87px -230px; width: 12p=
x; height: 12px;}
..picker-spr-life-photo-archive-large {background-position: 0px -945px; widt=
h: 79px; height: 40px;}
..picker-spr-life-photo-archive {background-position: -12px -1112px; width: =
55px; height: 28px;}
..picker-spr-list-view {background-position: -55px -262px; width: 15px; heig=
ht: 15px;}
..picker-spr-maps-cancel-en {background-position: 0px -883px; width: 7px; he=
ight: 7px;}
..picker-spr-maps-next-dis {background-position: -128px -867px; width: 6px; =
height: 11px;}
..picker-spr-maps-next-en {background-position: -37px -915px; width: 6px; he=
ight: 11px;}
..picker-spr-maps-prev-dis {background-position: -24px -32px; width: 6px; he=
ight: 11px;}
..picker-spr-maps-prev-en {background-position: -76px -985px; width: 6px; he=
ight: 11px;}
..picker-spr-mic {background-position: 0px -1349px; width: 9px; height: 14px=
;}
..picker-spr-navpane-albums-selected {background-position: -99px -230px; wid=
th: 48px; height: 48px;}
..picker-spr-navpane-albums {background-position: -100px -750px; width: 48px=
; height: 48px;}
..picker-spr-navpane-from-computer-selected {background-position: -109px -43=
8px; width: 30px; height: 28px;}
..picker-spr-navpane-from-computer {background-position: -21px -1049px; widt=
h: 30px; height: 28px;}
..picker-spr-navpane-gdrive-selected {background-position: -24px -1325px; wi=
dth: 48px; height: 48px;}
..picker-spr-navpane-gdrive {background-position: 0px -508px; width: 48px; h=
eight: 48px;}
..picker-spr-navpane-instantupload-selected {background-position: -56px 0px;=
width: 48px; height: 48px;}
..picker-spr-navpane-instantupload {background-position: -53px -342px; width=
: 48px; height: 48px;}
..picker-spr-navpane-url {background-position: -83px -64px; width: 30px; hei=
ght: 30px;}
..picker-spr-navpane-webcam-selected {background-position: 0px -1244px; widt=
h: 48px; height: 48px;}
..picker-spr-navpane-webcam {background-position: -101px -342px; width: 48px=
; height: 48px;}
..picker-spr-navpane-youtube {background-position: -21px -576px; width: 30px=
; height: 30px;}
..picker-spr-new-folder {background-position: -48px -1240px; width: 21px; he=
ight: 21px;}
..picker-spr-no-photo-48 {background-position: -80px -867px; width: 48px; he=
ight: 48px;}
..picker-spr-no-photo-84 {background-position: -72px -1304px; width: 84px; h=
eight: 84px;}
..picker-spr-no-photo {background-position: 0px -476px; width: 32px; height:=
32px;}
..picker-spr-paper-clip {background-position: -69px -1240px; width: 21px; he=
ight: 21px;}
..picker-spr-photo-discard {background-position: -41px -278px; width: 24px; =
height: 24px;}
..picker-spr-photo-icon {background-position: -105px -687px; width: 18px; he=
ight: 14px;}
..picker-spr-photo-upload-cancel {background-position: -41px -302px; width: =
10px; height: 10px;}
..picker-spr-picasa-rectangles {background-position: -19px -867px; width: 61=
px; height: 44px;}
..picker-spr-plus-black {background-position: -32px -342px; width: 21px; hei=
ght: 21px;}
..picker-spr-plus-gray {background-position: -148px -278px; width: 9px; heig=
ht: 9px;}
..picker-spr-profile-rotate-ccw {background-position: 0px -867px; width: 19p=
x; height: 16px;}
..picker-spr-profile-rotate-cw {background-position: -64px -1535px; width: 1=
9px; height: 16px;}
..picker-spr-questionmark {background-position: -123px -676px; width: 16px; =
height: 16px;}
..picker-spr-rio-arrow-menu {background-position: -83px -48px; width: 16px; =
height: 16px;}
..picker-spr-rio-check-active {background-position: -55px -230px; width: 32p=
x; height: 32px;}
..picker-spr-rio-check-checked {background-position: -24px 0px; width: 32px;=
height: 32px;}
..picker-spr-rio-checkmark-active {background-position: -137px -867px; width=
: 24px; height: 24px;}
..picker-spr-rio-checkmark-selected {background-position: -139px -676px; wid=
th: 24px; height: 24px;}
..picker-spr-rio-rotate {background-position: -25px -278px; width: 16px; hei=
ght: 16px;}
..picker-spr-rio-trash {background-position: -67px -1112px; width: 16px; hei=
ght: 16px;}
..picker-spr-rio-upload-big {background-position: -35px -390px; width: 74px;=
height: 86px;}
..picker-spr-rio-upload {background-position: -128px 0px; width: 25px; heigh=
t: 29px;}
..picker-spr-sad-face {background-position: -16px -48px; width: 67px; height=
: 58px;}
..picker-spr-sort-bar {background-position: -55px -1402px; width: 20px; heig=
ht: 20px;}
..picker-spr-sort {background-position: -139px -438px; width: 13px; height: =
18px;}
..picker-spr-toolbar-gray-rotate-ccw {background-position: -94px -945px; wid=
th: 19px; height: 14px;}
..picker-spr-toolbar-gray-rotate-cw {background-position: -36px -1402px; wid=
th: 19px; height: 14px;}
..picker-spr-toolbar-gray-trash {background-position: -75px -1402px; width: =
19px; height: 14px;}
..picker-spr-toolbar-white-rotate-ccw {background-position: -129px -278px; w=
idth: 19px; height: 14px;}
..picker-spr-toolbar-white-rotate-cw {background-position: 0px -915px; width=
: 19px; height: 14px;}
..picker-spr-toolbar-white-trash {background-position: 0px -850px; width: 19=
px; height: 14px;}
..picker-spr-upload-arrow {background-position: -4px -278px; width: 11px; he=
ight: 11px;}
..picker-spr-upload-error {background-position: 0px -48px; width: 16px; heig=
ht: 14px;}
..picker-spr-upload-retry {background-position: -100px -1388px; width: 14px;=
height: 14px;}
..picker-spr-video-play-overlay-small {background-position: -24px -802px; wi=
dth: 22px; height: 22px;}
..picker-spr-video-play-overlay {background-position: -21px -1012px; width: =
37px; height: 37px;}
..picker-spr-video-stars-rtl {background-position: 0px -106px; width: 110px;=
height: 24px;}
..picker-spr-video-stars {background-position: 0px -1423px; width: 110px; he=
ight: 24px;}
..picker-spr-video-upload-icon {background-position: -82px -992px; width: 22=
px; height: 14px;}
..picker-spr-white-checkmark {background-position: -64px -1551px; width: 12p=
x; height: 9px;}
..picker-spr-youtube {background-position: -12px -985px; width: 64px; height=
: 27px;}
..picker-searchbar {margin: 15px 0px 8px 20px;}
..picker-searchbar .jfk-button {background-image: none; vertical-align: midd=
le;}
..picker-searchbar .goog-menu {z-index: 2112;}
..picker-searchbar-input {font-size: 13px; text-align: left;}
..picker-searchbar-input-logo .picker-spr-google-logo {margin-right: 10px;}
..picker-searchbar .picker-searchbar-input-logo {position: relative;}
..picker-searchbar .picker-flat-menu-button {cursor: pointer; height: 14px; =
left: 221px; min-width: 0px; opacity: 0.5; padding: 11px 15px 0px 5px; posi=
tion: absolute; top: 6px;}
..picker-searchbar .picker-flat-menu-button.jfk-button-hover ,.picker-search=
bar .picker-flat-menu-button.jfk-button-focused {opacity: 1;}
..picker-searchbar-input-box.picker-searchbar-dropdownmenu-padding {width: 2=
10px; padding-right: 23px;}
..picker-searchbar .picker-flat-menu-button .picker-spr-arrow-dk-grey-down {=
position: absolute;}
..picker-searchbar-input-logo .picker-spr-life-photo-archive {margin: 0px 6p=
x 0px 2px;}
..picker-searchbar-input-item {vertical-align: bottom;}
..picker-searchbar-input-box {width: 225px; margin: 4px 15px 5px 0px; vertic=
al-align: middle;}
..picker-searchbar-logo .picker-searchbar-input-box {margin-top: 5px;}
..picker-searchbar-input-logo .picker-searchbar-stock-photos ,.goog-menuitem=
-content .picker-searchbar-stock-photos {text-align: left; color: rgb(102, =
102, 102); padding: 6px 4px 0px 0px; margin: 0px; width: auto; height: 22px=
; vertical-align: middle; font-size: 15px; font-weight: bold;}
..picker-searchbar-input-logo .goog-flat-menu-button-caption .picker-spr-goo=
gle-logo {margin: 2px 2px 2px 0px;}
..picker-searchbar-input-logo .goog-flat-menu-button-caption .picker-spr-lif=
e-photo-archive {margin: 2px 6px 2px 2px;}
..picker-searchbar-input-logo .goog-flat-menu-button-caption .picker-searchb=
ar-stock-photos {padding: 2px 0px 0px; height: 30px;}
..goog-menuitem.picker-searchbar-menuitem {padding-right: 13px; padding-left=
: 13px;}
..picker-searchbar-menuitem .goog-menuitem-content {margin-top: -2px;}
..picker-searchbar-input-logo .goog-flat-menu-button.picker-searchbar-combob=
ox-dropdown {border-bottom-right-radius: 0px; border-top-right-radius: 0px;=
height: 32px; margin: 0px; vertical-align: middle;}
..picker-searchbar-input-logo .goog-flat-menu-button.picker-searchbar-combob=
ox-dropdown.goog-flat-menu-button-focused {z-index: 2104;}
..picker-searchbar-combobox .picker-searchbar-input-box {padding-top: 4px; p=
adding-bottom: 3px; margin-left: -1px; position: relative; z-index: 2103;}
..picker-searchbar-combobox .jfk-button {height: 28px; padding-top: 4px;}
..picker-drive-view-switcher {display: inline-block; position: absolute; rig=
ht: 20px; top: 19px;}
..picker-drive-view-switcher-with-drive-sort {right: 58px;}
..picker-drive-view-switcher-button {opacity: 0.55; margin: 6px 12px;}
..picker-doctype-chip {background-color: rgb(218, 228, 246); border: 1px sol=
id rgb(218, 228, 246); border-radius: 2px; display: inline-block; height: 2=
3px; left: 22px; outline: medium none; position: absolute; top: 6px;}
..picker-videos-listview .picker-doctype-chip ,.picker-videos-grid .picker-d=
octype-chip {left: 2px;}
..picker-doctype-chip-label {display: inline-block; font-size: 12px; line-he=
ight: 23px; padding: 0px 3px; vertical-align: top;}
..picker-doctype-chip-dismiss {display: inline-block; padding: 8px 4px;}
..picker-dropdown-menu.picker-doctypes-dropdown-menu {max-height: 70%; width=
: 341px;}
..picker-navhorizontal-new .picker-dropdown-menu.picker-doctypes-dropdown-me=
nu {width: 441px;}
..picker-doctypes-dropdown-menu .picker-dropdown-menuitem-header {padding-bo=
ttom: 0px;}
..picker-dataview .picker-searchbar-input {position: relative;}
..picker-main-container .picker-dataview .picker-searchbar .picker-flat-menu=
-button {left: 321px;}
..picker-dataview .picker-searchbar-input-box.picker-searchbar-dropdownmenu-=
padding {width: 310px;}
..picker-dataview .picker-searchbar-input-box {width: 325px;}
..picker-bloggerinstructions-text {color: rgb(68, 68, 68); font-size: 11px; =
padding: 10px 15px 2px;}
..picker-docsortoptions-menu-button {display: inline-block; min-width: 22px;=
padding-right: 8px; position: absolute; right: 34px; top: 19px;}
..picker-docsortoptions-menu-button .goog-flat-menu-button-dropdown {display=
: none;}
..picker-docsortoptions-menu-button-content {height: 18px; margin: 4px 3px; =
opacity: 0.5;}
..picker-docsortoptions-selector {border-bottom: 1px solid rgb(229, 229, 229=
); padding-bottom: 4px; padding-top: 8px; position: relative;}
..picker-docsortoptions-title {color: rgb(170, 170, 170); cursor: pointer; d=
isplay: inline-block; font-size: 11px; font-weight: bold; margin-left: 70px=
; text-transform: uppercase; vertical-align: top;}
..picker-docsortoptions-label {color: rgb(170, 170, 170); display: inline-bl=
ock; font-size: 11px; font-weight: bold; position: absolute; right: 40px; t=
ext-transform: uppercase; vertical-align: top;}
..picker-docsortoptions-active.picker-docsortoptions-title ,.picker-docsorto=
ptions-active.picker-docsortoptions-label {color: rgb(221, 75, 57);}
..picker-docsortoptions-button {display: inline-block; position: absolute; r=
ight: 20px; vertical-align: top;}
..picker-docsortoptions-grid-view .picker-docsortoptions-label {display: inl=
ine-block; margin-left: 40px; position: static;}
..picker-docsortoptions-grid-view .picker-docsortoptions-button {display: in=
line-block; margin-left: 6px; position: static;}
..picker-dropdown-menu.picker-sort-dropdown-menu {max-width: 30%; width: ini=
tial;}
..picker-sort-dropdown-menu .goog-menuitem {min-width: 0px; padding-left: 20=
px;}
..picker-sort-dropdown-menu .goog-menuitem-content {overflow: hidden; text-o=
verflow: ellipsis;}
..picker-promo-table {position: absolute; top: 0px; left: 0px; height: 100%;=
width: 100%; border-spacing: 15px; margin-top: -15px;}
..picker-promo-logo {margin: 15px;}
..picker-promo-text {font-size: 13px; color: rgb(170, 170, 170); width: 420p=
x;}
..picker-promo-title {font-size: 13px; color: rgb(0, 0, 0); font-weight: bol=
d; margin-bottom: 10px; width: 420px;}
..picker-uploadbar {color: rgb(68, 68, 68); font-size: 11px; margin-bottom: =
15px; white-space: nowrap;}
..picker-uploadbar .jfk-button {margin: 15px 15px 5px;}
..picker-uploadbar .picker-spr-upload-arrow {margin-right: 6px;}
..picker-uploadbar-msg {padding: 4px 15px;}
..picker-uploadbar-separator {margin-top: 7px; border-top: 1px solid rgb(221=
, 221, 221);}
..picker-uploadbar-htmlfileinput {margin: 14px 14px 3px;}
..picker-main-container {position: absolute; height: 100%; width: 100%;}
..picker-modal-dialog {box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.2); -moz-use=
r-select: none; background: rgb(255, 255, 255) none repeat scroll 0% 0%; bo=
rder: 1px solid rgb(172, 172, 172); color: rgb(0, 0, 0); position: absolute=
; z-index: 2101; outline: medium none;}
..picker-modal-dialog-content {width: 705px; height: 370px; padding: 0px; ma=
rgin: 0px; position: relative;}
..picker-modal-dialog-bg {background: rgb(255, 255, 255) none repeat scroll =
0% 0%; left: 0px; position: absolute; top: 0px; z-index: 2100;}
..picker-modal-dialog-title {-moz-user-select: none; background: rgb(255, 25=
5, 255) none repeat scroll 0% 0%; color: rgb(0, 0, 0); cursor: move; font-s=
ize: 20px; padding: 6px 8px 15px; position: relative; vertical-align: middl=
e; border-top: 10px solid rgb(255, 255, 255); border-left: 10px solid rgb(2=
55, 255, 255); border-right: 10px solid rgb(255, 255, 255);}
..picker-modal-dialog-title-text {display: block; overflow: hidden; text-ove=
rflow: ellipsis; white-space: nowrap;}
..picker-modal-dialog-title-close {cursor: pointer; position: absolute; righ=
t: 0px; top: 10px; opacity: 0.7;}
..picker-modal-dialog-dogfood-confidential-text {color: rgb(221, 75, 57); fo=
nt-size: 13px; font-weight: bold; overflow: hidden; position: absolute; rig=
ht: 30px; top: 10px; text-transform: uppercase;}
..picker-modal-dialog-title-close-hover {opacity: 1;}
..picker-modal-dialog-buttons {display: none;}
..picker-modal-dialog-content {border: 0px none;}
..picker-main-container .goog-buttonset-default {font-weight: bold;}
div.picker-navpane-root {position: relative; left: 0px; right: 0px; width: =
auto;}
..picker-content {width: auto; height: auto;}
..picker-searchbar-input-box {font-size: 13px;}
..picker-form {margin: 0px; padding: 0px;}
..picker-main-container .goog-toolbar {border: 0px none; background: rgba(0,=
0, 0, 0) none repeat scroll 0px center;}
..picker-header-close {display: none;}
..picker-native.picker-minew .picker-header-close {display: block;}
..picker-contactbin-chip-holder .picker-contactbin-input {width: 130px;}
..picker-album-control {border: 2px solid transparent; color: rgb(68, 68, 68=
); cursor: pointer; font-size: 11px; margin: 6px; position: relative; verti=
cal-align: top; outline: medium none;}
..picker-album-control-album-tile {box-shadow: 0px 1px 0px rgb(218, 218, 218=
); background-color: rgb(255, 255, 255); border: 1px solid rgb(229, 229, 22=
9); height: 158px; width: 163px;}
..picker-album-control:active ,.picker-album-control-checked {border: 2px so=
lid rgb(77, 144, 254);}
..picker-album-control-checked .picker-album-control-album-tile ,.picker-alb=
um-control-focused .picker-album-control-album-tile {box-shadow: none; bord=
er: 1px solid rgb(77, 144, 254);}
..picker-album-control-thumbs {height: 110px; width: 163px;}
..picker-album-control-thumb {border: medium none; height: 110px; padding: 0=
px; width: 163px;}
..picker-album-control-no-cover-thumb {background-color: rgb(238, 238, 238);=
opacity: 1 !important;}
..picker-album-control-title {margin: 0px; overflow: hidden; text-overflow: =
ellipsis; vertical-align: top; white-space: nowrap; width: 80%;}
..picker-album-control-photo-count-date {margin: 0px; overflow: hidden; text=
-overflow: ellipsis; vertical-align: top; white-space: nowrap; width: 80%; =
color: rgb(186, 186, 186); padding: 6px 0px 0px 7px;}
..picker-album-control-title {color: rgb(38, 38, 38); font-size: 13px; font-=
weight: bold; height: 20px; padding: 8px 10px 0px;}
..picker-album-control-photo-count {bottom: 9px; color: rgb(170, 170, 170); =
font-size: 11px; padding: 0px 10px; position: absolute;}
..picker-album-control-visibility .picker-spr-audience-acl-small-owner-only =
,.picker-album-control-visibility .picker-spr-audience-acl-small-limited ,.=
picker-album-control-visibility .picker-spr-audience-acl-small-extended-cir=
cles ,.picker-album-control-visibility .picker-spr-audience-acl-small-domai=
n-public ,.picker-album-control-visibility .picker-spr-audience-acl-small-p=
ublic {opacity: 0.4; bottom: 11px; display: inline-block; height: 12px; pos=
ition: absolute; right: 10px; vertical-align: top; width: 12px;}
..picker-album-control-thumbs .picker-spr-rio-checkmark-active ,.picker-albu=
m-control-thumbs .picker-spr-rio-checkmark-selected {display: inline-block;=
left: 5px; opacity: 0; position: absolute; top: 5px;}
..picker-album-control-hover .picker-spr-rio-checkmark-active ,.picker-album=
-control-focused .picker-spr-rio-checkmark-active {opacity: 0.7;}
..picker-album-control-checked .picker-spr-rio-checkmark-selected {opacity: =
1;}
..ozAppNoFocusOutline .picker-album-control {outline: 0px none;}
..picker-albumname .picker-photoupload-albumchooser {margin-right: 10px;}
..picker-albumname .picker-photoupload-albumchooser-select .goog-flat-menu-b=
utton-caption {overflow: hidden; text-overflow: ellipsis; white-space: nowr=
ap; width: 148px;}
..picker-albumname .picker-photoupload-albumchooser-select {margin-left: 2px=
; position: relative; top: -1px; width: 168px;}
..picker-camerasyncseparator {cursor: default; font-size: 12px; padding: 10p=
x 0px 7px;}
..picker-camerasyncseparator-checkbox {cursor: pointer; display: inline-bloc=
k; opacity: 0.3; transition: opacity 0.218s ease 0s; vertical-align: middle=
;}
..picker-camerasyncseparator-checkbox.picker-hover ,.picker-camerasyncsepara=
tor.picker-selected .picker-camerasyncseparator-checkbox {opacity: 1;}
..picker-camerasyncseparator.picker-selected .picker-camerasyncseparator-che=
ckbox.picker-hover {opacity: 0.8;}
..picker-camerasyncseparator-title {display: inline-block; font-size: 18px; =
padding: 2px 12px 0px 6px; vertical-align: middle;}
..picker-camerasyncseparator-details {display: inline-block; padding: 4px 12=
px 0px 0px; vertical-align: middle;}
..picker-camerasyncseparator-select-link {color: rgb(17, 85, 204); cursor: p=
ointer; display: inline-block; padding-top: 4px; vertical-align: middle;}
..picker-camerasyncseparator-select-link.picker-hover {text-decoration: unde=
rline;}
..picker-collection-control-title {color: rgb(68, 68, 68); display: inline-b=
lock; font-size: 14px; height: 16px; margin-bottom: 2px; margin-top: 10px; =
overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
..picker-collection-control-totalitems ,.picker-collection-control-timestamp=
{color: rgb(170, 170, 170); display: inline-block; font-size: 11px; margin=
: 0px 2px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
..picker-collection-control-timestamp::before {color: rgb(170, 170, 170); co=
ntent: "*"; font-size: 5px; vertical-align: middle;}
..picker-collection-control .picker-photosgrid .picker-dataview-content {pad=
ding: 0px;}
..picker-collection-control .picker-content {height: 100%; position: relativ=
e; overflow: visible;}
..picker-collectionsgrid {padding-left: 18px;}
..picker-collection-control-border {opacity: 0; transition: opacity 0.218s e=
ase 0s; position: relative;}
..picker-collection-control-checked .picker-collection-control-border {borde=
r: 5px solid rgb(66, 133, 244); padding: 0px; max-height: 207px;}
..picker-collection-control {cursor: default; display: inline-block; margin:=
5px 10px 0px 0px; padding: 0px 10px; outline: medium none; text-align: lef=
t; vertical-align: middle;}
..picker-docscollection-control {position: relative; margin: 10px; cursor: p=
ointer;}
..picker-docscollection-control-preview-container {position: relative;}
..picker-docscollection-control-preview-content {border: 6px solid transpare=
nt; bottom: 0px; left: 31px; position: absolute;}
..picker-docscollection-control-checked .picker-docscollection-control-previ=
ew-content {border: 6px solid rgb(77, 144, 254);}
..picker-docscollection-control-hover .picker-docscollection-control-preview=
-content {background-color: rgb(252, 249, 204);}
..picker-docscollection-control-focused .picker-docscollection-control-previ=
ew-content {outline: 1px solid rgb(66, 133, 244);}
..picker-docscollection-control-preview {background: rgb(238, 238, 238) none=
repeat scroll 0% 0%; border: 1px solid rgb(206, 206, 206); height: 116px; =
outline: medium none; position: relative; width: 116px;}
..picker-docscollection-control-child-1 {position: absolute; border: 1px sol=
id rgb(206, 206, 206); width: 116px; height: 116px; left: 2px; top: 2px;}
..picker-docscollection-control-child-2 {position: absolute; border: 1px sol=
id rgb(206, 206, 206); width: 116px; height: 116px; left: 4px; top: 4px;}
..picker-docscollection-control-preview .picker-spr-collection {display: inl=
ine-block; position: absolute; left: 51px; top: 51px;}
..picker-docscollection-control .jfk-checkbox {background-color: rgb(252, 24=
9, 204); display: none; outline: 4px solid rgb(252, 249, 204); position: ab=
solute; top: 1px;}
..picker-docscollection-control .jfk-checkbox.jfk-checkbox-checked {backgrou=
nd-color: rgb(255, 255, 255); display: inline-block; outline: medium none;}
..picker-docscollection-control-hover .jfk-checkbox {display: inline-block;}
..picker-dataview.picker-docs-images-view {padding-top: 0px;}
..picker-docs-images-view .new-upload-box .picker-photo-control-placeholder =
{border: 0px none;}
..picker-docs-images-label {font-size: 12px; overflow: hidden; padding-botto=
m: 6px; padding-top: 6px; text-align: center; text-overflow: ellipsis; whit=
e-space: nowrap;}
..picker-docs-images-preview {position: relative;}
..picker-docs-images-preview-content {border: 6px solid transparent; bottom:=
0px; outline: medium none; position: absolute;}
..picker-docs-images-focused .picker-docs-images-preview-content {outline: 1=
px solid rgb(66, 133, 244);}
..picker-docs-images-checked .picker-docs-images-preview-content {border: 6p=
x solid rgb(77, 144, 254);}
..picker-docs-images-preview-content .jfk-checkbox {background-color: rgb(25=
2, 249, 204); display: none; outline: 4px solid rgb(252, 249, 204); positio=
n: absolute; top: 1px;}
..picker-docs-images-preview-content .jfk-checkbox.jfk-checkbox-checked {bac=
kground-color: rgb(255, 255, 255); display: inline-block; outline: medium n=
one;}
..picker-docs-images-hover .picker-docs-images-preview-content .jfk-checkbox=
{display: inline-block;}
..picker-docs-images-preview-placeholder {border: 1px solid rgb(229, 229, 22=
9); bottom: 0px; outline: medium none; position: absolute;}
..picker-docs-images-hover .picker-docs-images-preview-content {background-c=
olor: rgb(252, 249, 204);}
..picker-photo-control-unselectable.picker-docs-images-hover .picker-docs-im=
ages-preview-content {background-color: transparent;}
..picker-photo-control-unselectable.picker-docs-images-hover .jfk-checkbox {=
display: none;}
..picker-photo-control-unselectable.picker-docs-images-container {opacity: 0=
..3; position: relative;}
..picker-docs-images-container {margin: 10px;}
..picker-docs-images-preview .nub-loading {display: none;}
..picker-drive-view .picker-searchbar {border-bottom: 1px solid rgb(229, 229=
, 229); margin-bottom: 0px; margin-left: 0px; padding-bottom: 15px;}
..picker-main-container .picker-drive-view.picker-dataview .picker-searchbar=
.picker-flat-menu-button {left: 341px;}
..picker-drive-view .picker-searchbar-input-logo ,.picker-drive-view .picker=
-searchbar-input {padding-left: 20px;}
..picker-dataview.picker-drive-view {overflow-y: hidden;}
..picker-drive-view .picker-content-container {bottom: 0px; left: 0px; overf=
low-y: auto; position: absolute; right: 0px; top: 69px;}
..picker-docs-images-view .picker-dataview-content {padding-left: 13px; padd=
ing-top: 10px;}
..picker-caption-bubble .picker-edit-caption-instructions {color: rgb(0, 0, =
0); font-size: 13px; margin-top: 3px;}
..picker-caption-bubble .picker-edit-caption-popup {padding: 0px 16px 0px 0p=
x; border: 0px none; margin: 0px;}
..picker-caption-bubble {z-index: 2112 !important;}
..picker-edit-caption {z-index: 2109; position: absolute;}
..picker-crop-content .picker-edit-caption {margin-top: 8px;}
..picker-crop-content .picker-edit-caption-hint {margin-top: 2px;}
..picker-crop-content .picker-edit-caption-popup {margin: 1px 0px 2px;}
..picker-edit-caption-hint ,.picker-crop-content .picker-edit-caption-hover =
..picker-edit-caption-hint {color: rgb(17, 85, 204); font-size: 13px; width:=
100%; overflow: hidden; text-align: center; text-overflow: ellipsis; white=
-space: nowrap; position: absolute; cursor: pointer;}
..picker-crop-content .picker-edit-caption-hint {color: rgb(153, 153, 153);}
..picker-edit-caption-hint.picker-video-control-metadata {text-align: left; =
width: 100%; margin-left: 0px;}
..picker-edit-caption-hint .picker-video-control-title {color: rgb(17, 85, 2=
04);}
..picker-edit-caption-input {width: 100%; margin: 0px 0px 0px -2px;}
..picker-edit-caption-instructions {color: rgb(102, 102, 102); font-size: 10=
px; margin-top: 2px;}
..picker-edit-caption-popup {background: rgb(255, 255, 255) none repeat scro=
ll 0% 0%; padding: 4px; border: 1px solid rgb(102, 102, 102); margin: 0px 0=
px 2px;}
..picker-crop-content .picker-edit-caption-popup {border: 1px solid transpar=
ent;}
..picker-main-container .picker-edit-toolbar-overlay {background-attachment:=
scroll; background-clip: border-box; position: relative; z-index: 2106; fo=
nt: 12px Roboto,Arial,sans-serif; margin: 0px; outline: medium none; paddin=
g: 0px;}
..picker-main-container .picker-edit-toolbar-overlay-background-dark {positi=
on: absolute; z-index: 2107; background-color: rgb(0, 0, 0); opacity: 0.6; =
width: 100%; height: 100%;}
..picker-main-container .picker-edit-toolbar-overlay-container {position: re=
lative; z-index: 2108;}
..picker-edit-toolbar-manager {position: relative;}
..picker-edit-toolbar {cursor: default; position: relative; z-index: 2106; f=
ont: 12px Roboto,Arial,sans-serif; margin: 0px; outline: medium none; paddi=
ng: 2px; background: rgba(0, 0, 0, 0) none repeat scroll 0% 0%; border: 0px=
none;}
..picker-edit-toolbar .goog-toolbar-button {margin: 0px; border: 0px none; p=
adding: 0px; font-family: Roboto,Arial,sans-serif; color: rgb(51, 51, 51); =
text-decoration: none; list-style: outside none none; vertical-align: middl=
e; cursor: default; outline: medium none; opacity: 0.8;}
..picker-edit-toolbar .goog-toolbar-button-outer-box ,.picker-edit-toolbar .=
goog-toolbar-button-inner-box {border: 0px none; vertical-align: top;}
..picker-edit-toolbar .goog-toolbar-button-outer-box {margin: 0px; padding: =
1px 0px;}
..picker-edit-toolbar .goog-toolbar-button-inner-box {margin: 0px -1px; padd=
ing: 3px 4px;}
* html .picker-edit-toolbar .goog-toolbar-button-inner-box ,body .picker-ed=
it-toolbar .goog-toolbar-button-inner-box {left: -1px;}
* html .picker-edit-toolbar .goog-toolbar-button-rtl .goog-toolbar-button-o=
uter-box ,body .picker-edit-toolbar .goog-toolbar-button-rtl .goog-toolbar-=
button-outer-box {left: -1px;}
* html .picker-edit-toolbar .goog-toolbar-button-rtl .goog-toolbar-button-i=
nner-box ,body .picker-edit-toolbar .goog-toolbar-button-rtl .goog-toolbar-=
button-inner-box {right: auto;}
:first-child + html .picker-edit-toolbar .goog-toolbar-button-inner-box {le=
ft: -1px;}
:first-child + html .picker-edit-toolbar .goog-toolbar-button-rtl .goog-too=
lbar-button-inner-box {left: 1px; right: auto;}
..picker-edit-toolbar .goog-toolbar-button-disabled {opacity: 0.3;}
..picker-edit-toolbar .goog-toolbar-button-disabled .goog-toolbar-button-out=
er-box ,.picker-edit-toolbar .goog-toolbar-button-disabled .goog-toolbar-bu=
tton-inner-box {color: rgb(51, 51, 51) !important; border-color: rgb(153, 1=
53, 153) !important;}
* html .picker-edit-toolbar .goog-toolbar-button-disabled ,:first-child + h=
tml .picker-edit-toolbar .goog-toolbar-button-disabled ,body .picker-edit-t=
oolbar .goog-toolbar-button-disabled {background-color: rgb(238, 238, 238);=
margin: 0px 1px; padding: 0px 1px;}
..picker-edit-toolbar .goog-toolbar-button-hover .goog-toolbar-button-outer-=
box ,.picker-edit-toolbar .goog-toolbar-button-active .goog-toolbar-button-=
outer-box ,.picker-edit-toolbar .goog-toolbar-button-checked .goog-toolbar-=
button-outer-box ,.picker-edit-toolbar .goog-toolbar-button-selected .goog-=
toolbar-button-outer-box {border-width: 1px 0px; border-style: solid; paddi=
ng: 0px;}
..picker-edit-toolbar .goog-toolbar-button-hover .goog-toolbar-button-inner-=
box ,.picker-edit-toolbar .goog-toolbar-button-active .goog-toolbar-button-=
inner-box ,.picker-edit-toolbar .goog-toolbar-button-checked .goog-toolbar-=
button-inner-box ,.picker-edit-toolbar .goog-toolbar-button-selected .goog-=
toolbar-button-inner-box {border-width: 0px 1px; border-style: solid; paddi=
ng: 3px;}
..picker-edit-toolbar .goog-toolbar-button-hover .goog-toolbar-button-outer-=
box ,.picker-edit-toolbar .goog-toolbar-button-hover .goog-toolbar-button-i=
nner-box {border-color: transparent !important;}
..picker-edit-toolbar .goog-toolbar-button-hover ,.picker-edit-toolbar .goog=
-toolbar-button-active ,.picker-edit-toolbar .goog-toolbar-button-checked ,=
..picker-edit-toolbar .goog-toolbar-button-selected {background-color: trans=
parent !important; opacity: 1;}
..picker-edit-toolbar .goog-toolbar-button-hover ,.picker-edit-toolbar .goog=
-toolbar-button-active ,.picker-edit-toolbar .goog-toolbar-button-checked ,=
..picker-edit-toolbar .goog-toolbar-button-selected {background: rgba(0, 0, =
0, 0) none repeat scroll 0% 0%;}
..picker-edit-toolbar .goog-toolbar-button-active .goog-toolbar-button-outer=
-box ,.picker-edit-toolbar .goog-toolbar-button-active .goog-toolbar-button=
-inner-box ,.picker-edit-toolbar .goog-toolbar-button-checked .goog-toolbar=
-button-outer-box ,.picker-edit-toolbar .goog-toolbar-button-checked .goog-=
toolbar-button-inner-box ,.picker-edit-toolbar .goog-toolbar-button-selecte=
d .goog-toolbar-button-outer-box ,.picker-edit-toolbar .goog-toolbar-button=
-selected .goog-toolbar-button-inner-box {border-color: transparent;}
..picker-edit-toolbar .goog-toolbar-button-collapse-right ,.picker-edit-tool=
bar .goog-toolbar-button-collapse-right .goog-toolbar-button-outer-box ,.pi=
cker-edit-toolbar .goog-toolbar-button-collapse-right .goog-toolbar-button-=
inner-box {margin-right: 0px;}
..picker-edit-toolbar .goog-toolbar-button-collapse-left ,.picker-edit-toolb=
ar .goog-toolbar-button-collapse-left .goog-toolbar-button-outer-box ,.pick=
er-edit-toolbar .goog-toolbar-button-collapse-left .goog-toolbar-button-inn=
er-box {margin-left: 0px;}
* html .picker-edit-toolbar .goog-toolbar-button-collapse-left .goog-toolba=
r-button-inner-box ,:first-child + html .picker-edit-toolbar .goog-toolbar-=
button-collapse-left .picker-edit-toolbar .goog-toolbar-button-inner-box ,b=
ody .picker-edit-toolbar .goog-toolbar-button-collapse-left .goog-toolbar-b=
utton-inner-box {left: 0px;}
..picker-edit-toolbar .goog-toolbar-menu-button {margin: 0px 2px; border: 0p=
x none; padding: 0px; font-family: Roboto,Arial,sans-serif; color: rgb(51, =
51, 51); text-decoration: none; list-style: outside none none; vertical-ali=
gn: middle; cursor: default; outline: medium none;}
..picker-edit-toolbar .goog-toolbar-menu-button-outer-box ,.picker-edit-tool=
bar .goog-toolbar-menu-button-inner-box {border: 0px none; vertical-align: =
top;}
..picker-edit-toolbar .goog-toolbar-menu-button-outer-box {margin: 0px; padd=
ing: 1px 0px;}
..picker-edit-toolbar .goog-toolbar-menu-button-inner-box {margin: 0px -1px;=
padding: 3px 4px;}
* html .picker-edit-toolbar .goog-toolbar-menu-button-inner-box ,body .pick=
er-edit-toolbar .goog-toolbar-menu-button-inner-box {left: -1px;}
* html .picker-edit-toolbar .goog-toolbar-menu-button-rtl .goog-toolbar-men=
u-button-outer-box ,body .picker-edit-toolbar .goog-toolbar-menu-button-rtl=
.goog-toolbar-menu-button-outer-box {left: -1px;}
* html .picker-edit-toolbar .goog-toolbar-menu-button-rtl .goog-toolbar-men=
u-button-inner-box ,body .picker-edit-toolbar .goog-toolbar-menu-button-rtl=
.goog-toolbar-menu-button-inner-box {right: auto;}
:first-child + html .picker-edit-toolbar .goog-toolbar-menu-button-inner-bo=
x {left: -1px;}
:first-child + html .picker-edit-toolbar .goog-toolbar-menu-button-rtl .pic=
ker-edit-toolbar .goog-toolbar-menu-button-inner-box {left: 1px; right: aut=
o;}
..picker-edit-toolbar .goog-toolbar-menu-button-disabled {opacity: 0.3;}
..picker-edit-toolbar .goog-toolbar-menu-button-disabled .goog-toolbar-menu-=
button-outer-box ,.picker-edit-toolbar .goog-toolbar-menu-button-disabled .=
goog-toolbar-menu-button-inner-box {color: rgb(51, 51, 51) !important; bord=
er-color: rgb(153, 153, 153) !important;}
* html .picker-edit-toolbar .goog-toolbar-menu-button-disabled ,:first-chil=
d + html .picker-edit-toolbar .goog-toolbar-menu-button-disabled ,body .pic=
ker-edit-toolbar .goog-toolbar-menu-button-disabled {background-color: rgb(=
238, 238, 238); margin: 0px 1px; padding: 0px 1px;}
..picker-edit-toolbar .goog-toolbar-menu-button-hover .goog-toolbar-menu-but=
ton-outer-box ,.picker-edit-toolbar .goog-toolbar-menu-button-active .goog-=
toolbar-menu-button-outer-box ,.picker-edit-toolbar .goog-toolbar-menu-butt=
on-open .goog-toolbar-menu-button-outer-box {border-width: 1px 0px; border-=
style: solid; padding: 0px;}
..picker-edit-toolbar .goog-toolbar-menu-button-hover .goog-toolbar-menu-but=
ton-inner-box ,.picker-edit-toolbar .goog-toolbar-menu-button-active .goog-=
toolbar-menu-button-inner-box ,.picker-edit-toolbar .goog-toolbar-menu-butt=
on-open .goog-toolbar-menu-button-inner-box {border-width: 0px 1px; border-=
style: solid; padding: 3px;}
..picker-edit-toolbar .goog-toolbar-menu-button-hover .goog-toolbar-menu-but=
ton-outer-box ,.picker-edit-toolbar .goog-toolbar-menu-button-hover .goog-t=
oolbar-menu-button-inner-box {border-color: rgb(192, 192, 192) !important;}
..picker-edit-toolbar .goog-toolbar-menu-button-active ,.picker-edit-toolbar=
.goog-toolbar-menu-button-open {background-color: rgb(238, 238, 238) !impo=
rtant;}
..picker-edit-toolbar .goog-toolbar-menu-button-active .goog-toolbar-menu-bu=
tton-outer-box ,.picker-edit-toolbar .goog-toolbar-menu-button-active .goog=
-toolbar-menu-button-inner-box ,.picker-edit-toolbar .goog-toolbar-menu-but=
ton-open .goog-toolbar-menu-button-outer-box ,.picker-edit-toolbar .goog-to=
olbar-menu-button-open .goog-toolbar-menu-button-inner-box {border-color: r=
gb(187, 187, 187);}
..picker-edit-toolbar .goog-toolbar-menu-button-caption {padding: 0px 4px 0p=
x 0px; vertical-align: middle;}
..picker-edit-toolbar .goog-toolbar-menu-button-dropdown {width: 7px; backgr=
ound: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/editortoolbar.png") no=
-repeat scroll -388px center; vertical-align: middle;}
..picker-edit-toolbar .goog-toolbar-separator {margin: 0px 2px; border-left:=
1px solid rgb(214, 214, 214); border-right: 1px solid rgb(247, 247, 247); =
padding: 0px; width: 0px; text-decoration: none; list-style: outside none n=
one; outline: medium none; vertical-align: middle; line-height: normal; fon=
t-size: 120%; overflow: hidden;}
..picker-edit-toolbar .goog-toolbar-select .goog-toolbar-menu-button-outer-b=
ox {border-width: 1px 0px; border-style: solid; padding: 0px;}
..picker-edit-toolbar .goog-toolbar-select .goog-toolbar-menu-button-inner-b=
ox {border-width: 0px 1px; border-style: solid; padding: 3px;}
..picker-edit-toolbar .goog-toolbar-select .goog-toolbar-menu-button-outer-b=
ox ,.picker-edit-toolbar .goog-toolbar-select .goog-toolbar-menu-button-inn=
er-box {border-color: rgb(191, 203, 223);}
..picker-actionpane-evph-message {position: absolute; top: 50%; height: 18px=
; margin-top: -9px; font-size: 13px; color: rgb(102, 102, 102);}
..picker-actionpane-evph-people {font-size: 13px; color: rgb(34, 34, 34); wi=
dth: 284px;}
..picker-actionpane-evph-people-title {font-weight: bold; padding-bottom: 8p=
x;}
..picker-actionpane-evph-people-img {border-radius: 2px; margin-right: 1px; =
border: 0px none;}
..picker-evph-people-jfk-bubble {z-index: 2200 !important;}
..picker-evph-plain-link {color: rgb(17, 85, 204); text-decoration: none; cu=
rsor: pointer;}
..picker-eventtheme-view .picker-listrenderer-table {margin: 15px 0px;}
..picker-eventtheme-border {position: relative; border: 1px solid rgb(204, 2=
04, 204);}
..picker-eventtheme-control-tablerow {outline: medium none;}
..picker-eventtheme-media {vertical-align: middle; cursor: pointer;}
..picker-eventtheme-control-tablerow.picker-list-control-checked {background=
-color: transparent;}
..picker-eventtheme {border: 6px solid transparent; margin: 5px 20px;}
..picker-list-control-checked.picker-list-control-focused .picker-eventtheme=
,.picker-list-control-checked .picker-eventtheme {border: 6px solid rgb(74=
, 151, 223);}
..picker-list-control-focused .picker-eventtheme-border {border: 1px solid r=
gb(77, 144, 254);}
..picker-flatphotosgrid .picker-flatphoto-control-wrapper.picker-featuredpho=
to-control {font-size: 12px; height: 170px; position: relative;}
..picker-featuredphoto-caption {overflow: hidden; position: absolute; text-a=
lign: left; text-overflow: ellipsis; white-space: nowrap;}
..picker-gmailfeaturedphoto-caption {bottom: 5px; box-sizing: border-box; ov=
erflow: hidden; position: absolute; text-overflow: ellipsis; white-space: n=
owrap; width: 100%;}
..picker-flatphotosgrid .picker-flatphoto-control-border {opacity: 0; transi=
tion: opacity 0.218s ease 0s; padding: 5px; position: relative;}
..picker-flatphoto-control-checked .picker-flatphoto-control-border {border:=
5px solid rgb(66, 133, 244); padding: 0px;}
..picker-flatphoto-control-focused .picker-flatphoto-control-border {outline=
: 1px solid rgb(66, 133, 244);}
..picker-flatphotosgrid .picker-flatphoto-control-wrapper {cursor: pointer; =
display: inline-block; margin: 10px; outline: medium none; text-align: cent=
er; vertical-align: middle;}
..picker-flatphotosgrid .picker-flatphoto-control-wrapper-with-description {=
position: relative;}
..picker-flatphoto-control-description {font-size: 12px; bottom: 5px; box-si=
zing: border-box; overflow: hidden; padding: 0px 5px; position: absolute; t=
ext-overflow: ellipsis; white-space: nowrap; width: 100%;}
..picker-flatphotosgrid .picker-flatphoto-control-thumbnail {max-height: 100=
%; max-width: 100%;}
..picker-flatphotosgrid .picker-flatphoto-control-hover .picker-flatphoto-co=
ntrol-check {opacity: 0.7;}
..picker-flatphotosgrid .picker-flatphoto-control-checked .picker-flatphoto-=
control-check {opacity: 1; top: 5px; left: 5px;}
..picker-flatphotosgrid .picker-flatphoto-control-check {opacity: 0; transit=
ion: opacity 0.218s ease 0s; position: absolute; top: 10px; left: 10px; z-i=
ndex: 2104;}
..picker-flatphotosgrid .picker-spr-rio-checkmark-selected {animation: 0.3s =
linear 0s normal none 1 running pickerPhotosSelectionOverlayCheckmarkSelect=
edTransition;}
..picker-flatphoto-control-unselectable {opacity: 0.3;}
..picker-flatphoto-control-unselectable .picker-flatphoto-control-check {dis=
play: none;}
..picker-flatphoto-message .picker-dataview-message {color: rgb(51, 51, 51);=
font-size: 16px; height: 16px; line-height: 16px; margin-top: -8px; positi=
on: absolute; text-align: center; top: 50%; width: 100%;}
..picker-highlightsphoto-control-border {opacity: 0; transition: opacity 0.2=
18s ease 0s; overflow: hidden;}
..picker-highlightsphoto-control-checked .picker-highlightsphoto-control-bor=
der {display: inline-block; position: relative;}
..picker-highlightsphoto-control-checked .picker-highlightsphoto-control-inn=
er-border {border: 3px solid rgb(66, 133, 244); display: inline-block; left=
: 0px; opacity: 1; position: absolute; top: 0px; z-index: 2104;}
..picker-highlightsphoto-control-focused {outline: medium none;}
..picker-highlightsphoto-control-focused .picker-highlightsphoto-control-bor=
der {outline: 1px solid rgb(66, 133, 244);}
..picker-highlightsphoto-control {cursor: pointer; display: inline-block; ve=
rtical-align: top;}
..picker-highlightsphoto-control-border {display: inline-block; margin: 1px;=
position: relative;}
..picker-highlightsphoto-control-inner-border {border: 3px solid transparent=
; display: none;}
..picker-highlightsphoto-control-hover {opacity: 0.7;}
..picker-highlightsphoto-control-checked {opacity: 1;}
..picker-highlightsphoto-control-hover .picker-highlightsphoto-control-check=
{opacity: 0.7;}
..picker-highlightsphoto-control-checked .picker-highlightsphoto-control-che=
ck {opacity: 1; left: 10px; top: 10px;}
..picker-highlightsphoto-control-check {transition: opacity 0.218s ease 0s; =
left: 10px; opacity: 0; position: absolute; top: 10px; z-index: 2104;}
..picker-highlightsphoto-control-unselectable {opacity: 0.3;}
..picker-highlightsphoto-control-unselectable .picker-highlightsphoto-contro=
l-check {display: none;}
..picker-momentscontrol-wrapper .picker-flatphoto-control-border {display: i=
nline-block; vertical-align: middle;}
..picker-momentscontrol-wrapper .picker-flatphoto-control-thumbnail {display=
: block;}
..picker-momentscontrol-wrapper.picker-flatphoto-control-wrapper {line-heigh=
t: 140px;}
..picker-momentchapter-title {color: rgb(85, 85, 85); font-size: 15px; font-=
weight: bold; padding: 20px 0px 0px 20px;}
..picker-collection-more-control {transition: background-color 130ms ease-in=
-out 0s; background-color: rgb(229, 229, 229); cursor: pointer; display: in=
line-block; margin: 1px; text-align: center; vertical-align: top; width: 40=
px;}
..picker-collection-more-control-content ,.picker-collection-more-control-im=
g {display: inline-block; margin: auto;}
..picker-collection-more-control-text {color: rgb(153, 153, 153); display: i=
nline-block; font-size: 12px; margin: 0px 2px; text-align: center; width: 3=
5px;}
..picker-collection-more-control-focused {outline: 1px solid rgb(66, 133, 24=
4);}
..picker-collection-more-control-hover {background-color: rgb(224, 224, 224)=
;}
..picker-noitemszone {height: 100%; left: 0px; position: absolute; text-alig=
n: center; top: 0px; width: 100%;}
..picker-noitemszone-container {text-align: center;}
..picker-noitemszone-text {color: rgb(170, 170, 170); font-size: 14px; font-=
weight: bold; margin: 20px 0px; text-align: center;}
..picker-noitemszone-title {color: rgb(170, 170, 170); font-size: 20pt; font=
-weight: bold; margin: 20px 0px; text-align: center;}
..picker-noitemszone-container .jfk-button {margin: 20px 0px;}
..picker-photo-album-control {border-bottom: 1px solid rgb(218, 218, 218); c=
ursor: pointer; font-size: 13px; left: -18px; outline: 0px none; padding: 2=
0px 25px; position: relative; top: -15px; width: 100%;}
..picker-photo-album-control-hover ,.picker-photo-album-control-focused {bac=
kground: rgb(243, 243, 243) none repeat scroll 0% 0%;}
..picker-photo-album-control-checked {background: rgb(77, 144, 254) none rep=
eat scroll 0% 0%; color: rgb(255, 255, 255);}
..picker-photo-album-control-title {padding-right: 10px;}
..picker-photo-album-control-new-album-label {padding-bottom: 8px;}
..picker-photo-album-control-name-edit {border-radius: 1px; box-sizing: bord=
er-box; border: 1px solid rgb(216, 216, 216); color: rgb(51, 51, 51); displ=
ay: inline-block; height: 29px; line-height: 20px; margin: 0px; padding: 8p=
x; width: 325px;}
..picker-photo-album-control-date {color: rgb(153, 153, 153); font-size: 12p=
x; padding-right: 5px;}
..picker-photo-album-control-checked .picker-photo-album-control-date {color=
: rgb(204, 204, 204);}
..picker-photo-album-control-caption {color: rgb(102, 102, 102); font-size: =
12px; padding-right: 8px;}
..picker-photo-album-control-checked .picker-photo-album-control-caption {co=
lor: rgb(204, 204, 204);}
..picker-photo-album-control-thumbs {height: 65px; overflow: hidden;}
..picker-photo-album-control-thumb {background-color: rgb(255, 255, 255); bo=
rder: 1px solid rgb(221, 221, 221); height: 48px; margin: 5px 8px 3px 1px; =
padding: 2px; width: 48px;}
..picker-photoalbumsview-actionpane-notice {cursor: default; float: right; h=
eight: 100%; margin-left: -30px;}
..picker-photoalbumsview-actionpane-notice .picker-actionpane-notice-td {col=
or: rgb(119, 119, 119); font-size: 11px; padding-right: 20px; text-align: r=
ight;}
..picker-curation-album-name-bar-album-select ,.picker-curation-album-name-b=
ar-album-select.goog-flat-menu-button-hover {background: rgb(255, 255, 255)=
none repeat scroll 0% 0%; height: 37px; line-height: 37px; margin-left: 15=
px; max-width: 300px; padding-left: 10px; text-align: left;}
..picker-curation-album-name-bar-album-select .goog-flat-menu-button-caption=
{max-width: 200px; overflow: hidden; padding: 0px 15px 0px 5px; text-overf=
low: ellipsis;}
..picker-curation-album-name-bar-album-select .goog-flat-menu-button-dropdow=
n {border: medium none; right: 10px; top: 10px;}
..picker-curation-album-name-bar .goog-menu {max-height: 300px; overflow-x: =
hidden; overflow-y: scroll; text-overflow: ellipsis; width: 280px; z-index:=
2115;}
..picker-curation-album-name-bar-empty-menu .goog-menu {height: 100px;}
..picker-curation-album-name-bar .picker-curation-album-name-bar-empty-menu =
..picker-loadingstatusbox {top: 70%; display: inline-block;}
..picker-curation-album-name-bar .picker-loadingstatusbox {display: none;}
..picker-curation-album-name-bar .picker-curation-album-name-bar-select-labe=
l-input {border-bottom: 1px solid rgb(204, 204, 204); margin-bottom: 4px; h=
eight: 36px; line-height: 36px;}
..picker-curation-album-name-bar .picker-curation-album-name-bar-select-labe=
l-input .jfk-textinput {box-shadow: none; border: medium none; padding: 0px=
16px; position: absolute; top: 0px; left: 0px; vertical-align: top; width:=
232px;}
..picker-curation-album-name-bar .goog-menuitem {padding: 6px 15px; width: 2=
32px;}
..picker-curation-album-name-bar .goog-menuitem-highlight {border-width: 0px=
;}
..picker-curation-album-name-bar .goog-menuitem-content {line-height: 24px; =
overflow: hidden; text-align: left; text-overflow: ellipsis; width: 250px;}
..picker-curation-album-name-bar-album-label-input {display: inline-block; m=
argin-left: 15px; position: relative;}
..picker-curation-album-name-bar-album-label-input .jfk-textinput {padding-r=
ight: 30px;}
..picker-curation-album-name-bar-album-label-input .picker-spr-black-close {=
opacity: 0.5; cursor: pointer; position: absolute; right: 14px; top: 28px;}
..picker-curation-order-dropdown-menu.goog-flat-menu-button-disabled {opacit=
y: 0.1;}
..picker-curation-view {height: 100%; position: absolute; top: 0px; bottom: =
0px; left: 0px; right: 0px;}
..picker-curation-grid-parent {position: absolute; top: 0px; bottom: 0px; le=
ft: 0px; right: 0px;}
..picker-curation-grid-wrapper {position: absolute; bottom: 0px; left: 0px; =
right: 0px;}
..picker-curation-bar {border-bottom: 1px solid rgb(229, 229, 229); line-hei=
ght: 64px; padding: 0px 20px;}
..picker-curation-bar .jfk-button ,.picker-curation-bar .goog-flat-button ,.=
picker-curation-bar .goog-flat-menu-button {cursor: pointer;}
..picker-curation-grid-wrapper {top: 71px; overflow-y: auto; overflow-x: hid=
den;}
..picker-curation-grid-parent {margin: 35px 15px 0px;}
..picker-curation-grid-parent .picker-dataview {overflow: visible; margin: 0=
px 0px 0px 20px; right: 20px;}
..picker-curation-hidden-input {position: absolute; top: -9999px; width: 1px=
; height: 1px;}
..picker-curation-bar .jfk-textinput {color: rgb(34, 34, 34); font-weight: b=
old; height: 37px; left: 20px; padding-bottom: 0px; padding-top: 0px; top: =
13px; width: 200px;}
..picker-curation-order-dropdown-menu {transition: all 0.218s ease 0s; backg=
round: rgb(241, 241, 241) none repeat scroll 0% 0%; border: 1px solid rgb(2=
16, 216, 216); height: 33px; line-height: 30px; vertical-align: middle; dis=
play: inline-block; margin-left: 20px;}
..picker-curation-order-dropdown-menu .goog-flat-menu-button-dropdown {borde=
r: medium none; display: inline-block; right: 10px; top: 10px;}
..picker-curation-bar {background: rgb(255, 255, 255) none repeat scroll 0% =
0%; height: 65px; text-align: right;}
..picker-curation-bar-left {position: absolute; text-align: left; z-index: 2=
120;}
..picker-curation-bar-toggles {border-radius: 2px; display: inline-block; he=
ight: 37px; line-height: 37px; margin-left: 20px; vertical-align: middle; b=
order: 1px solid rgb(216, 216, 216);}
..picker-curation-bar-toggles .goog-flat-button {opacity: 0.4; transition: a=
ll 0.218s ease 0s; background: rgb(255, 255, 255) none repeat scroll 0% 0%;=
margin: 0px; outline: medium none;}
..picker-curation-bar-toggles .goog-flat-button-checked {opacity: 1; backgro=
und: rgb(229, 229, 229) none repeat scroll 0% 0%;}
..picker-curation-bar-toggles .goog-flat-button.picker-curation-bar-large-th=
umb {padding: 9px;}
..picker-curation-bar-toggles .goog-flat-button.picker-curation-bar-small-th=
umb {padding: 13px;}
..picker-curation-upload-button-content {color: rgb(115, 115, 115); font-siz=
e: 13px; margin: 0px 4px;}
..picker-curation-view .picker-dropdown-menu.picker-curation-order-dropdown-=
menu {background: rgb(255, 255, 255) none repeat scroll 0% 0%; height: 37px=
; min-width: 37px; padding: 0px; text-align: center; vertical-align: middle=
; width: 37px; z-index: auto;}
..picker-curation-progress-parent {display: inline-block; vertical-align: mi=
ddle; transition: margin-top 0.218s ease 0s, opacity 0.218s ease 0s;}
..picker-curation-bar .picker-progress-bar {display: inline-block; font-size=
: 12px; vertical-align: middle;}
..picker-curation-bar .picker-curation-progress-label {display: inline-block=
; vertical-align: middle;}
..picker-curation-bar .picker-curation-progress-stop-upload ,.picker-curatio=
n-bar .jfk-textinput {display: inline-block; font-size: 12px; vertical-alig=
n: middle;}
..picker-curation-bar .picker-progress-bar {margin-left: 20px; width: 150px;=
}
..picker-curation-view .picker-progress-bar {border: 1px solid rgb(187, 187,=
187); background-color: rgb(229, 229, 229); box-shadow: 0px 0px 1px rgba(0=
, 0, 0, 0.2) inset;}
..picker-curation-view .progress-bar-thumb {border: 1px solid rgb(33, 117, 2=
55); background-color: rgb(77, 144, 254);}
..picker-curation-view .picker-progress-bar {height: 4px;}
..picker-curation-view .progress-bar-thumb {height: 4px; position: absolute;=
left: -1px; top: -1px;}
..picker-curation-bar .picker-curation-progress-label {margin-left: 10px; co=
lor: rgb(153, 153, 153); font-size: 12px;}
..picker-curation-bar .picker-curation-progress-stop-upload {margin-left: 10=
px; padding: 0px;}
..picker-curation-bar .jfk-button {transition: all 0.218s ease 0s; backgroun=
d: rgb(255, 255, 255) none repeat scroll 0% 0%; border: 1px solid rgb(216, =
216, 216); height: 38px; line-height: 37px; margin: 0px; position: static; =
right: 20px; top: 17px;}
..picker-curation-bar .picker-spr-icon-computer {display: inline-block; marg=
in-right: 8px; vertical-align: middle; opacity: 0.8;}
..picker-curation-bar .jfk-button.jfk-button-focused .picker-spr-icon-comput=
er ,.picker-curation-bar .jfk-button.jfk-button-active .picker-spr-icon-com=
puter ,.picker-curation-bar .jfk-button.jfk-button-hover .picker-spr-icon-c=
omputer {opacity: 1;}
..picker-curation-drop-notice-parent {color: rgb(153, 153, 153); cursor: def=
ault; font-weight: bold; font-size: 13px; height: 65px; margin: auto; line-=
height: 65px; text-align: center; top: 0px;}
..picker-curation-drop-notice-text {padding: 0px 10px;}
..picker-spr-icon-zoom-min ,.picker-spr-icon-zoom-max ,.picker-curation-albu=
m-name-bar {display: inline-block;}
..picker-spr-icon-zoom-max {margin-left: 10px;}
..picker-spr-icon-zoom-min {margin-right: 5px;}
..picker-curation-drag-selector {z-index: 2200; position: absolute; border: =
1px solid rgba(136, 190, 190, 0.3); background: rgba(136, 187, 255, 0.4) no=
ne repeat scroll 0% 0%; box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2); border=
-radius: 2px; opacity: 0.8;}
..picker-curation-drag-scroll-mask {position: absolute; top: 0px; bottom: 0p=
x; left: 0px; right: 0px; opacity: 0; z-index: 2200;}
..picker-curation-drag-pile {position: absolute;}
..picker-curation-view .tt-photos-tagging-tcontent-button-container {display=
: none;}
..picker-curation-upload.picker-actionpane-frame {z-index: 2115; background-=
color: rgb(255, 255, 255);}
..picker-curation-drop-notice-parent .picker-actionpane-notice-td {border-ri=
ght: 128px solid transparent;}
..picker-curationview-autobackup-icon {height: 20px; margin: 8px; top: 14px;=
width: 20px;}
..picker-curationview-autobackup-promo {color: rgb(170, 170, 170); font-size=
: 13px; text-align: center; top: -53px; vertical-align: middle; width: 100%=
;}
..picker-curation-control {transition: border-color 0.2s ease 0s, margin 0.5=
s ease 0s, height 0.5s ease 0s, width 0.5s ease 0s, opacity 0.5s ease-out 0=
s, top 0.5s ease-out 0s, left 0.5s ease-out 0s, line-height 0.5s ease 0s, b=
ox-shadow 0.5s ease 0s; border-radius: 4px; outline: medium none; backgroun=
d-color: rgb(245, 245, 245); border-color: rgb(208, 208, 208); border-style=
: solid; border-width: 1px; overflow: hidden;}
..picker-curation-control.picker-curation-fast ,.picker-curation-control.pic=
ker-curation-fast .picker-curation-control-card ,.picker-curation-control.p=
icker-curation-fast-thumb .picker-curation-control-thumb-wrapper ,.picker-c=
uration-control.picker-curation-fast-thumb .picker-curation-control-thumb ,=
..picker-curation-control.picker-curation-fast-thumb .picker-curation-contro=
l-thumb-border ,.picker-curation-control.picker-curation-control-selected-r=
eordering .picker-curation-control-thumb-wrapper {transition: margin 0s eas=
e 0s, height 0s ease 0s, width 0s ease 0s, opacity 0.5s ease-out 0s, top 0s=
ease 0s, left 0s ease 0s;}
..picker-curation-control.picker-curation-fast .picker-curation-control-thum=
b-wrapper ,.picker-curation-control.picker-curation-fast .picker-curation-c=
ontrol-thumb ,.picker-curation-control.picker-curation-fast .picker-curatio=
n-control-thumb-border {transition: margin 0s ease 0s, height 0s ease 0s, w=
idth 0s ease 0s, opacity 0.5s ease-out 0s, top 0.5s ease 0s, left 0.5s ease=
0s;}
..picker-curation-control.picker-curation-control-rotating .picker-curation-=
control-thumb ,.picker-curation-control.picker-curation-control-rotating .p=
icker-curation-control-thumb-wrapper { }
..picker-curation-control.picker-curation-control-rotating .picker-curation-=
control-thumb-wrapper .picker-curation-control-thumb-border {transition: -w=
ebkit-transform 0.2s ease-in-out 0s;}
..picker-curation-control-card {transition: border-color 0.2s ease 0s, margi=
n 0.5s ease 0s, height 0.5s ease 0s, width 0.5s ease 0s, opacity 0.5s ease-=
out 0s, top 0.5s ease-out 0s, left 0.5s ease-out 0s, line-height 0.5s ease =
0s, box-shadow 0.5s ease 0s;}
..picker-curation-control ,.picker-curation-control-card ,.picker-curation-c=
ontrol-thumb-wrapper ,.picker-curation-control-upload-preview {position: ab=
solute;}
..picker-curation-control-thumb-wrapper {text-align: center; transition: bor=
der-color 0.2s ease 0s, margin 0.5s ease 0s, height 0.5s ease 0s, width 0.5=
s ease 0s, opacity 0.5s ease-out 0s, top 0.5s ease-out 0s, left 0.5s ease-o=
ut 0s, line-height 0.5s ease 0s, box-shadow 0.5s ease 0s; border-radius: 1p=
x; margin-top: -2px;}
..picker-curation-control-thumb {transition: border-color 0.2s ease 0s, marg=
in 0.5s ease 0s, height 0.5s ease 0s, width 0.5s ease 0s, opacity 0.5s ease=
-out 0s, top 0.5s ease-out 0s, left 0.5s ease-out 0s, line-height 0.5s ease=
0s, box-shadow 0.5s ease 0s; cursor: default; position: relative; line-hei=
ght: 0;}
..picker-curation-control-thumb-border {transition: border-color 0.2s ease 0=
s, margin 0.5s ease 0s, height 0.5s ease 0s, width 0.5s ease 0s, opacity 0.=
5s ease-out 0s, top 0.5s ease-out 0s, left 0.5s ease-out 0s, line-height 0.=
5s ease 0s, box-shadow 0.5s ease 0s; cursor: default; line-height: 0; posit=
ion: relative; display: inline-block; vertical-align: middle; background-co=
lor: rgb(255, 255, 255);}
..picker-curation-control-thumb-border-lines {transition: border-color 0.2s =
ease 0s; position: absolute; top: -3px; left: -3px; right: -3px; bottom: -3=
px; border: 2px solid transparent; z-index: 2107;}
..picker-curation-control-selected.picker-curation-control {border-color: rg=
b(77, 144, 254);}
..picker-curation-control-tag-adding-mode {position: absolute; display: inli=
ne-block; z-index: 2114;}
..picker-curation-control-toolbar {background: rgb(255, 255, 255) none repea=
t scroll 0% 0%; border-top: 1px solid rgb(208, 208, 208); overflow: hidden;=
cursor: default; line-height: 42px; height: 42px; position: absolute; bott=
om: 0px; width: 100%; outline: medium none;}
..picker-curation-control-small .picker-curation-control-toolbar {opacity: 0=
; transition: opacity 0.4s ease-out 0s, border-color 0.5s ease-in 0s, backg=
round-color 0.5s ease-in 0s; line-height: 0; height: 0px;}
..picker-curation-control-small.picker-curation-control-hover .picker-curati=
on-control-toolbar {opacity: 1; line-height: 42px; height: 42px;}
..picker-curation-control-caption-input.picker-curation-control-toolbar-disa=
bled ,.picker-curation-control-toolbar-icon.picker-curation-control-toolbar=
-rotate-disabled ,.picker-curation-control-toolbar-icon.picker-curation-con=
trol-toolbar-icon-hover.picker-curation-control-toolbar-rotate-disabled {op=
acity: 0; cursor: default; visibility: hidden;}
..picker-curation-control-hover .picker-curation-control-caption-input {opac=
ity: 1;}
..picker-curation-control-has-caption-focus .picker-curation-control-caption=
-input {opacity: 1; overflow: visible; color: rgb(51, 51, 51);}
..picker-curation-control-caption-input {transition: color 0.3s ease 0s, opa=
city 0.3s ease 0s, border-color 0.3s ease 0s, width 0.5s ease 0s, height 0.=
5s ease 0s, box-shadow 0.5s ease 0s; color: rgb(153, 153, 153); font-family=
: Roboto,Arial,sans-serif; font-size: 13px; border: 0px none; margin: auto;=
outline: medium none; overflow: hidden; padding: 0px 8px; resize: none; wi=
dth: 70%; height: 16px;}
..picker-curation-control-caption-input.picker-curation-control-disabled {ba=
ckground-color: transparent;}
..picker-curation-control-upload-preview {left: 0px; right: 0px; bottom: 0px=
; height: 40px; min-width: 40px;}
..picker-curation-control-upload-preview.picker-curation-control-upload-prev=
iew-empty {left: -156px; height: 40px; width: 312px;}
..picker-curation-control-upload-preview .picker-progress-bar {width: 50%; p=
osition: absolute; bottom: 24px; margin-top: -4px; left: 50%; margin-left: =
-25%;}
..picker-curation-view .picker-curation-control-upload-preview .picker-progr=
ess-bar ,.picker-curation-view .picker-curation-control-upload-preview .pro=
gress-bar-thumb {height: 2px;}
..picker-curation-control.picker-curation-control-nudge-left ,.picker-curati=
on-control.picker-curation-control-nudge-right {transition: margin 0.3s eas=
e 0s;}
..picker-curation-control.picker-curation-control-nudge-left {margin-left: -=
50px; z-index: 2104;}
..picker-curation-control.picker-curation-control-nudge-left .picker-curatio=
n-control-thumb {transition: color 0.3s ease 0s, opacity 0.3s ease 0s, bord=
er-color 0.3s ease 0s, width 0s ease 0s, height 0s ease 0s, box-shadow 0.5s=
ease 0s; box-shadow: -5px 0px 8px rgba(0, 0, 0, 0.3);}
..picker-curation-control.picker-curation-control-nudge-right {margin-left: =
50px; z-index: 2104;}
..picker-curation-control.picker-curation-control-nudge-right .picker-curati=
on-control-thumb {transition: color 0.3s ease 0s, opacity 0.3s ease 0s, bor=
der-color 0.3s ease 0s, width 0s ease 0s, height 0s ease 0s, box-shadow 0.5=
s ease 0s; box-shadow: 5px 0px 8px rgba(0, 0, 0, 0.3);}
..picker-curation-control.picker-curation-control-selected.picker-curation-c=
ontrol-nudge-left ,.picker-curation-control.picker-curation-control-selecte=
d.picker-curation-control-nudge-right {margin-left: 0px;}
..picker-curation-control.picker-curation-control-unselected-reordering {tra=
nsition: opacity 0.6s ease 0s, top 0.2s ease-out 0s, left 0.2s ease-out 0s,=
line-height 0.2s ease 0s;}
..picker-curation-control.picker-curation-control-unselected-reordering .pic=
ker-curation-control-thumb ,.picker-curation-control.picker-curation-contro=
l-unselected-reordering .picker-curation-control-thumb-wrapper {transition:=
top 0.3s ease-out 0s, left 0.3s ease-out 0s, line-height 0.3s ease 0s;}
..picker-curation-control.picker-curation-control-unselected-reordering.pick=
er-curation-control-changelines {opacity: 0;}
..picker-curation-control.picker-curation-control-selected-reordering {z-ind=
ex: 2103; transition: top 0.1s ease-out 0s, left 0.3s ease-out 0s;}
..picker-curation-control.picker-curation-control-selected-reordering.picker=
-curation-control-dropped {transition: none 0s ease 0s ;}
..picker-curation-control.picker-curation-control-dragging {opacity: 0; tran=
sition: opacity 0.2s ease-out 0s, top 0.5s ease-out 0s, left 0.5s ease-out =
0s, margin 0.2s ease-out 0s;}
..picker-curation-drag-control-img {position: absolute; bottom: 0px; left: 5=
0%; width: 100%; height: 100%; cursor: pointer; box-shadow: 0px 3px 25px rg=
ba(0, 0, 0, 0.6);}
..picker-curation-drag-control-img-box {position: relative;}
..picker-curation-drag-control-img ,.picker-curation-drag-control-img-box {z=
-index: 2106;}
..picker-curation-drag-control-img-box.picker-curation-drag-control-stack-1 =
{z-index: 2105; position: absolute; margin-top: 5px; margin-left: 5px; tran=
sform: rotate(7deg);}
..picker-curation-drag-control-img-box.picker-curation-drag-control-stack-2 =
{z-index: 2105; position: absolute; margin-top: -5px; margin-left: -5px; tr=
ansform: rotate(-10deg);}
..picker-curation-drag-control-count {position: absolute; height: 23px; line=
-height: 23px; border-radius: 3px; background: rgb(77, 144, 254) none repea=
t scroll 0% 0%; color: rgb(255, 255, 255); text-align: center; font-size: 1=
3px; font-weight: bold; top: 0px; margin-top: -15px; left: 50%; margin-left=
: -36px; width: 72px; z-index: 2109; box-shadow: 0px 2px 20px rgba(0, 0, 0,=
0.8);}
..picker-curation-control-toolbar.jfk-bubble {z-index: 2113 !important; line=
-height: 0; margin: 0px; padding: 0px; min-width: 124px;}
..picker-curation-control-error-bubble.jfk-bubble {z-index: 2112 !important;=
}
..picker-curation-control-toolbar-top-buttons {border-left: 1px dashed rgb(2=
21, 221, 221); overflow: hidden; position: absolute; cursor: default; top: =
0px; right: 0px; display: inline;}
..picker-curation-control-small .picker-curation-control-toolbar-top-buttons=
{border: 0px none; text-align: center; width: 100%; z-index: 2108;}
..picker-curation-control-toolbar-icon {cursor: pointer; display: inline-blo=
ck; opacity: 0.4; transition: color 0.3s ease 0s, opacity 0.13s ease 0s, bo=
rder-color 0.3s ease 0s, width 0s ease 0s, height 0s ease 0s, box-shadow 0.=
5s ease 0s; margin: 0px 7px; vertical-align: middle;}
..picker-curation-control-toolbar.picker-curation-control-toolbar-is-cover .=
picker-curation-control-toolbar-icon.picker-spr-checkbox-active {opacity: 0=
;}
..picker-curation-control-toolbar-top-buttons .picker-curation-control-toolb=
ar-icon-hover {opacity: 0.7;}
..picker-curation-control-toolbar-icon.picker-curation-control-toolbar-icon-=
active {opacity: 1;}
..tt-photos-ttagoverlay .tt-photos-tagging-bubble {font-size: 10px; line-hei=
ght: 1em; padding: 8px; z-index: 2108 !important;}
..picker-curation-control .tt-photos-tagging-acl-msg {margin-top: 2px;}
..picker-curation-control .tt-photos-tagging-bubble-spinner {margin-left: 2p=
x;}
..picker-main-container .tacotown-autocomplete-box {z-index: 2115;}
..picker-curation-control .tt-photos-tagging-tcontent-remove-button {backgro=
und: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/docs/picker/images/dialog_clos=
e_small.gif") no-repeat scroll 0% 0% padding-box content-box; height: 15px;=
margin-bottom: -3px; width: 15px;}
..picker-curation-control .tt-photos-ttagoverlay-cursor.tt-photos-ttagoverla=
y-tagged .tt-photos-ttagoverlay-cursor-ring-inner ,.picker-curation-control=
.tt-photos-ttagoverlay-cursor.tt-photos-ttagoverlay-tagged .tt-photos-ttag=
overlay-cursor-ring-outer ,.picker-curation-control .tt-photos-ttr-ring .tt=
-photos-ttr-ring-inner ,.picker-curation-control .tt-photos-ttr-ring .tt-ph=
otos-ttr-ring-outer {border-width: 6px;}
..picker-curation-control .tt-photos-ttagoverlay-cursor.tt-photos-ttagoverla=
y-tagged .tt-photos-ttagoverlay-cursor-ring ,.picker-curation-control .tt-p=
hotos-ttr-ring .tt-photos-ttr-ring-inner ,.picker-curation-control .tt-phot=
os-ttr-ring .tt-photos-ttr-ring-outer {bottom: -6px; left: -6px; right: -6p=
x; top: -6px;}
..picker-curation-control-is-cover.picker-curation-control-small .picker-cur=
ation-control-cover-selected ,.picker-curation-control-small.picker-curatio=
n-control-hover .picker-curation-control-cover ,.picker-curation-control-is=
-cover.picker-curation-control-hover .picker-curation-control-cover ,.picke=
r-curation-control-error-holder ,.picker-curation-control-thumb ,.picker-cu=
ration-control-loaded .picker-curation-control-upload-preview ,.picker-cura=
tion-control-cancel .picker-curation-control-upload-preview ,.picker-curati=
on-control-error .picker-curation-control-upload-preview ,.picker-curation-=
control-small .picker-curation-control-caption-container ,.picker-curation-=
control-caption-input.picker-curation-control-toolbar-disabled ,.picker-cur=
ation-control-toolbar-icon.picker-curation-control-toolbar-rotate-disabled =
,.picker-curation-control-toolbar-icon.picker-curation-control-toolbar-icon=
-hover.picker-curation-control-toolbar-rotate-disabled {display: none;}
..picker-curation-control-caption-container ,.picker-curation-control-error =
..picker-curation-control-error-holder ,.picker-curation-control-loaded .pic=
ker-curation-control-thumb {display: inline;}
..picker-curation-control-cover {background-color: rgb(38, 38, 38);}
..picker-curation-control-hover .picker-curation-control-cover {opacity: 0.7=
; z-index: 2108;}
..picker-curation-control-tag-adding-mode .picker-curation-control-cover {op=
acity: 0.7;}
..picker-curation-control-cover-selected {background-color: rgb(77, 144, 254=
);}
..picker-curation-control-hover .picker-curation-control-is-hover-cover.pick=
er-curation-control-cover ,.picker-curation-control-is-hover-cover.picker-c=
uration-control-cover ,.picker-curation-control-is-cover .picker-curation-c=
ontrol-cover-selected {opacity: 1;}
..picker-curation-control-cover-selected .picker-spr-checkmark-checked {disp=
lay: inline-block; margin: 5px; vertical-align: middle;}
..picker-curation-control-cover-selected .picker-curation-control-cover-text=
{padding-left: 0px;}
..picker-curation-control-cover ,.picker-curation-control-tag-adding-mode.pi=
cker-curation-control-is-cover .picker-curation-control-cover ,.picker-cura=
tion-control-cover-selected {border-radius: 5px; opacity: 0; bottom: 10px; =
cursor: pointer; display: inline-block; left: 10px; position: absolute;}
..picker-curation-control-cover-text {color: rgb(255, 255, 255); display: in=
line-block; font-size: 13px; font-weight: bold; line-height: 13px; padding:=
8px;}
..picker-curation-control.picker-curation-control-loaded.picker-curation-con=
trol-small.picker-curation-control-hover {transition: opacity 0.4s ease-out=
0s, border-color 0.5s ease-in 0s, background-color 0.5s ease-in 0s; backgr=
ound-color: rgb(245, 245, 245); border-color: rgb(208, 208, 208);}
..picker-curation-control.picker-curation-control-loaded.picker-curation-con=
trol-small.picker-curation-control-selected {background-color: rgb(245, 245=
, 245); border-color: rgb(77, 144, 254);}
..picker-curation-control.picker-curation-control-loaded.picker-curation-con=
trol-small {background-color: transparent; border: 1px solid transparent;}
..picker-curation-control-error-holder {z-index: 2111; bottom: 0px; left: 0p=
x; position: absolute; right: 0px; text-align: center; top: 0px;}
..picker-curation-control-retry ,.picker-curation-control-error-delete {marg=
in: 5px; color: rgb(17, 85, 204); cursor: pointer;}
..picker-curation-control-error-separator {color: rgb(204, 204, 204);}
..picker-curation-control-error-icon {display: inline-block; height: 66px; l=
eft: 50%; margin-top: -33px; margin-left: -33px; position: absolute; top: 5=
0%; width: 66px; vertical-align: middle; transition: all 0.5s ease 0s; back=
ground-repeat: no-repeat;}
..picker-curation-control-error-text {font-size: 11px; text-align: center; w=
idth: 110px;}
..picker-curation-control-small .picker-curation-control-error-icon {height:=
14px; margin-left: -7px; margin-top: -7px; width: 14px;}
..picker-curation-control-preview-background {background-color: rgb(255, 255=
, 255); bottom: 0px; left: 0px; position: absolute; right: 0px; top: 0px;}
..picker-photo-control-thumbframe .picker-photo-control-description {width: =
auto; position: static; margin: 0px 5px;}
..picker-photo-control-thumbframe .picker-photo-control-bottom-controls {wid=
th: 158px;}
..picker-photo-control-attribution {cursor: pointer;}
..picker-photo-control-thumbframe .picker-video-play-icon {position: absolut=
e; left: 60px; top: 40px;}
..new-upload-box .picker-photo-control-thumbframe .picker-video-play-icon {t=
op: 60px;}
..picker-photo-control-thumbframe .picker-video-filename {width: 158px;}
..picker-photo-control-thumbframe .picker-photo-control-preview.picker-proce=
ssing-video {width: 158px; height: 158px;}
..picker-photo-control-thumbframe .picker-video-processing-box {height: 158p=
x;}
..picker-photo-control-thumbframe .picker-photo-control-preview.picker-proce=
ssing-video ,.picker-dataview-content .picker-photo-control ,.picker-datavi=
ew-content .picker-photo-control-focused.picker-photo-control ,.picker-data=
view-content .picker-photosuploadview .picker-photo-control.picker-photo-co=
ntrol-focused ,.picker-dataview-content .picker-photosgrid-edit .picker-pho=
to-control.picker-photo-control-focused {border: 0px none transparent;}
..picker-photo-control-thumbframe .picker-photo-control-preview.picker-proce=
ssing-video {background-color: transparent;}
..picker-photo-control-thumbframe .picker-photo-control-description {height:=
auto;}
..picker-albumname-album-cell {font-size: 13px;}
..picker-albumname-label {margin-right: 5px;}
..picker-albumname-input {margin: 0px 10px 1px 2px; width: 172px;}
..picker-albumname .goog-link-button {padding: 6px 0px;}
:first-child + html .picker-albumname .picker-albumname-album-cell .goog-li=
nk-button {position: relative; top: 6px;}
..picker-photosgrid-edit .picker-albumname {padding: 0px 7px;}
..picker-photosgrid-edit .picker-photo-control {padding: 0px 2px 12px;}
..picker-photosgrid-edit {padding: 12px 0px 0px 1px;}
..picker-albumsgrid .picker-dataview-content ,.picker-photosgrid .picker-dat=
aview-content {padding: 0px 13px 15px;}
..picker-dataview.picker-albumsgrid ,.picker-dataview.picker-photosgrid-came=
rasync {padding-top: 0px;}
..picker-breadcrumbs-content .picker-photosgrid .picker-dataview-content {pa=
dding-top: 14px;}
..picker-photo-control {vertical-align: middle; text-align: center; margin: =
1px; font-size: 0px; border: 1px solid rgb(255, 255, 255);}
..picker-photosuploadview .picker-photo-control.picker-photo-control-focused=
,.picker-photosgrid-edit .picker-photo-control.picker-photo-control-focuse=
d {border: 1px solid rgb(255, 255, 255);}
..picker-photo-control-focused.picker-photo-control {border: 1px solid rgb(7=
4, 151, 223);}
..picker-photo-control-preview {font-size: 0px; position: relative;}
..picker-photo-control-placeholder {background: transparent url("//ssl.gstat=
ic.com/docs/picker/images/placeholder-v1.gif") repeat scroll 0% 0%;}
..picker-photo-control-preview-content {cursor: pointer; outline: medium non=
e;}
..picker-upload-control-error .picker-photo-control-uploading {border: 1px s=
olid rgb(221, 221, 221); background-color: rgb(255, 255, 255);}
..picker-photo-control-preview-content .uploader-thumb-img {display: block; =
position: relative;}
..picker-photo-control-unselectable .picker-photo-control-preview-content {c=
ursor: default;}
..picker-photo-control-attribution {position: absolute; bottom: 0px; left: 7=
px; right: 7px; overflow: hidden; white-space: nowrap; text-overflow: ellip=
sis; font-size: 10px; text-align: left;}
* html .picker-photo-control-attribution ,body .picker-photo-control-attrib=
ution {width: 100%;}
..picker-photo-control-attribution-spacer {font-size: 10px; visibility: hidd=
en;}
..picker-photo-control-bottom-controls {bottom: -8px; width: 100%;}
..picker-photo-control-description {position: absolute; left: 0px; font-size=
: 13px; color: rgb(153, 153, 153); width: 100%; height: 1.2em; overflow: hi=
dden; text-align: center; text-overflow: ellipsis; white-space: nowrap;}
..picker-photosgrid-edit .picker-photo-control-description.goog-control-hove=
r {text-decoration: underline; cursor: pointer;}
..picker-photosgrid-camerasync {padding: 10px 13px;}
..picker-photosgrid-separator {font-size: 11px; color: rgb(170, 170, 170); m=
argin: 0px 10px 0px 8px;}
..picker-photosgrid-separatorhr {border-width: 1px 0px 0px; border-style: so=
lid none none; border-color: rgb(221, 221, 221) currentcolor currentcolor; =
-moz-border-top-colors: none; -moz-border-right-colors: none; -moz-border-b=
ottom-colors: none; -moz-border-left-colors: none; border-image: none; marg=
in-left: -1px;}
..picker-photo-control-border ,.picker-photosgrid-edit .picker-photo-control=
-checked .picker-photo-control-border {border: 6px solid transparent;}
..picker-photo-control-checked .picker-photo-control-border {border: 6px sol=
id rgb(77, 144, 254);}
..picker-photo-control .photo-image-edit-controls {position: absolute; top: =
-20px; right: 0px;}
..picker-photo-control-checked .photo-image-edit-controls {top: -26px; right=
: -6px;}
..picker-photo-control .photo-image-edit-caption {left: 50%; top: -35px; mar=
gin-left: -144px;}
..picker-photo-control .progress-bar-horizontal {position: absolute; bottom:=
4px; left: 4px; right: 4px; height: 5px; border: 0px none; text-align: lef=
t; background: transparent none repeat scroll 0% 0%;}
* html .picker-photo-control .progress-bar-horizontal ,body .picker-photo-c=
ontrol .progress-bar-horizontal {left: 0px; right: 0px; width: 100%;}
..picker-photo-control .progress-bar-thumb {background: rgb(136, 136, 136) n=
one repeat scroll 0% 0%; height: 5px;}
..picker-upload-control-canceled .picker-photo-control-preview .progress-bar=
-horizontal ,.picker-upload-control-default .picker-photo-control-preview .=
progress-bar-horizontal ,.picker-upload-control-error .picker-photo-control=
-preview .progress-bar-horizontal ,.picker-upload-control-scheduled .picker=
-photo-control-preview .progress-bar-horizontal ,.picker-upload-control-suc=
cess .picker-photo-control-preview .progress-bar-horizontal {display: none;=
}
..picker-upload-control-error .picker-photo-control-message {position: absol=
ute; bottom: 0px; left: 0px; right: 0px; height: 10px; border: 0px none; pa=
dding: 2px; text-align: left; background: rgb(215, 0, 0) none repeat scroll=
0% 0%; color: rgb(255, 255, 255); white-space: nowrap; overflow: hidden; t=
ext-overflow: ellipsis; font-size: 9px; cursor: default;}
* html .picker-photo-control .picker-photo-control-message ,body .picker-ph=
oto-control .picker-photo-control-message {left: 0px; right: 0px; width: 10=
0%; padding: 0px;}
..new-upload-box .picker-photo-control-uploading ,.new-upload-box .picker-ph=
oto-control-placeholder {background: rgb(238, 238, 238) none repeat scroll =
0% 0%; border: 1px solid rgb(206, 206, 206);}
..picker-upload-control-error .picker-photo-control-preview .picker-photo-co=
ntrol-uploading {background: rgb(255, 255, 255) none repeat scroll 0% 0%;}
..picker-upload-control-running .picker-photo-control-preview .progress-bar-=
horizontal {display: inline;}
..new-upload-box .progress-bar-thumb {height: 100%; background-repeat: repea=
t-x; background-size: 20px 10px; background-color: rgb(204, 204, 204); back=
ground-attachment: scroll; background-image: linear-gradient(315deg, transp=
arent, transparent 33%, rgba(0, 0, 0, 0.12) 33%, rgba(0, 0, 0, 0.12) 66%, t=
ransparent 66%, transparent); animation-duration: 0.8s; animation-iteration=
-count: infinite; animation-timing-function: linear;}
..new-upload-box .progress-bar-horizontal {right: 0px; bottom: 0px; left: 0p=
x; height: 8px; border: 1px solid rgb(153, 153, 153); margin: 0px 8px 8px; =
padding: 1px; background: rgb(255, 255, 255) none repeat scroll 0% 0%;}
..new-upload-box .picker-progress-bar-spinner.progress-bar-horizontal {borde=
r: 0px none; background: transparent url("//ssl.gstatic.com/docs/picker/ima=
ges/loading-v1.gif") no-repeat scroll 0px 0px; height: 16px; width: 16px; m=
argin: auto auto 5px; opacity: 0.5;}
..picker-video-control-thumb-table {width: 100%; position: relative; top: 10=
5px; z-index: 2200; opacity: 0.8; color: rgb(153, 153, 153); font-size: 10p=
x; height: 20px;}
..picker-video-filename {position: relative; top: 38px; z-index: 2104; heigh=
t: 13px; width: 120px; text-overflow: ellipsis; white-space: nowrap; overfl=
ow: hidden; font-size: 12px; color: rgb(153, 153, 153);}
..picker-video-spinner {position: relative; top: 5px; right: 1px; z-index: 2=
100; background-image: url("//ssl.gstatic.com/docs/picker/images/loading-v1=
..gif"); height: 16px; width: 16px; opacity: 0.5;}
..picker-photo-control-preview.picker-processing-video {background-color: rg=
b(238, 238, 238); border: 1px solid rgb(206, 206, 206); width: 120px; heigh=
t: 120px;}
..picker-video-processing-box {height: 120px; left: 0px; position: absolute;=
top: 0px; width: auto;}
..picker-video-play-icon {position: absolute; left: 12px; top: 12px;}
..jfk-bubble.picker-video-bubble {padding-top: 30px; z-index: 2200 !importan=
t; top: 0px;}
..picker-photo-control-unselectable .picker-photo-control-preview-content .u=
ploader-thumb-img {opacity: 0.3; position: relative;}
..picker-albumslist {padding: 15px 0px 0px 15px;}
..picker-content.picker-gridview-bandselect.picker-flatphotosgrid .picker-fl=
atphoto-control-wrapper ,.picker-content.picker-gridview-bandselect {cursor=
: crosshair;}
..picker-photosview .picker-dataview {padding-top: 0px;}
..picker-profile-toolbar.picker-edit-toolbar {padding: 0px; width: 160px;}
..picker-profile-toolbar .goog-button {margin: 3px; padding: 7px; text-trans=
form: uppercase; font-size: 11px; cursor: pointer; white-space: nowrap;}
..picker-profile-toolbar .goog-button-hover {background-color: rgb(238, 238,=
238);}
..picker-profile-toolbar-icon {opacity: 0.4; margin-right: 8px; vertical-ali=
gn: middle;}
..picker-profile-toolbar-label {vertical-align: middle;}
..picker-profileview {font-size: 13px; padding: 20px;}
..picker-profileview-photo {border: 6px solid rgb(77, 144, 254); width: 96px=
; height: 96px;}
..picker-profileview-text {margin-left: 115px;}
..picker-searchbarimagefilter {margin-right: 5px; padding-top: 2px;}
..picker-searchbarimagefilter-type-button {margin: 0px 5px 0px 0px; vertical=
-align: middle;}
..picker-searchbarimagefilter-colorbox {border: 3px solid transparent; heigh=
t: 19px; margin: 0px; opacity: 0.5; padding: 1px; width: 19px; vertical-ali=
gn: middle;}
..picker-searchbarimagefilter-colorbox-inner {border: 1px solid rgb(153, 153=
, 153); cursor: pointer; height: 19px; margin: -1px 0px 0px -1px; padding: =
0px; width: 19px;}
..picker-gplus .picker-searchbarimagefilter-colorbox-inner {margin: 0px; bor=
der: 0px none;}
..picker-searchbarimagefilter-colorbox[aria-selected=3D"true"] {background-c=
olor: rgb(255, 255, 255); border-color: rgb(77, 144, 254); opacity: 1;}
..picker-webcam-control {overflow: hidden;}
..picker-webcam {padding: 20px; text-align: center; z-index: 2110;}
..picker-webcam-buttons.goog-inline-block {width: auto; position: absolute;}
..picker-webcam .picker-webcam-buttons .jfk-button {z-index: 1;}
..picker-webcam .goog-slider-horizontal {height: 5px; background: rgb(229, 2=
29, 229) none repeat scroll 0% 0%; -moz-user-select: none; border-radius: 3=
px;}
..picker-webcam .goog-slider-horizontal.picker-slider-hover {background: rgb=
(209, 209, 209) none repeat scroll 0% 0%;}
..picker-webcam .goog-slider-horizontal .goog-slider-thumb {display: block; =
position: absolute; top: -7px; left: 0px; width: 15px; height: 15px; z-inde=
x: 1; border: 1px solid rgb(153, 153, 153); background-color: rgb(153, 153,=
153); cursor: col-resize; box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1); tran=
sition: left 0.1s ease 0s; border-radius: 8px;}
..picker-webcam .goog-slider-horizontal.picker-slider-hover .goog-slider-thu=
mb {background-color: rgb(255, 255, 255);}
..picker-webcam .goog-slider-horizontal .goog-slider-thumb .goog-slider-drag=
ging {background-color: rgb(83, 82, 82);}
..picker-webcam-icon {background: rgb(255, 255, 255) none repeat scroll 0% 0=
%; border: medium none; border-radius: 0px; height: 10px; width: 10px; disp=
lay: inline-block; margin-bottom: -1px; margin-right: 1px;}
..picker-webcam .picker-webcam-play-icon {background: transparent none repea=
t scroll 0% 0%; border-top: 5px solid transparent; border-bottom: 5px solid=
transparent; border-left: 10px solid rgb(51, 51, 51); height: 0px; width: =
0px;}
..picker-webcam .picker-webcam-stop-icon {background: rgb(51, 51, 51) none r=
epeat scroll 0% 0%;}
..picker-webcam .picker-webcam-working-icon {border-radius: 5px;}
..picker-webcam-timer {font-size: 13px; color: rgb(68, 68, 68); width: 80px;=
text-align: right; margin-left: 16px;}
..picker-webcam-working .picker-webcam-timer {background: rgb(245, 245, 245)=
none repeat scroll 0% 0%; border: 1px solid rgba(0, 0, 0, 0.05); text-alig=
n: center; position: absolute; top: 0px; padding: 5px 5px 6px; margin-left:=
0px;}
..picker-webcam-volume-button {padding: 6px; border: 1px solid transparent; =
position: absolute; height: 16px; width: 36px; top: 0px;}
..picker-spr-mic {margin-right: 7px;}
..picker-webcam-volume-button.goog-control-hover {border: 1px solid rgb(153,=
153, 153); border-radius: 2px;}
..picker-webcam-volume-meter {margin-right: 2px; margin-bottom: 4px; backgro=
und: rgb(153, 153, 153) none repeat scroll 0% 0%; width: 2px; height: 2px;}
..picker-webcam-volume-meter.picker-webcam-volume-meter-on {height: 7px; bac=
kground: rgb(0, 153, 51) none repeat scroll 0% 0%;}
..picker-webcam-volume-meter.picker-webcam-volume-meter-red.picker-webcam-vo=
lume-meter-on {background: rgb(209, 72, 54) none repeat scroll 0% 0%;}
..picker-youtube-banner-preview {margin: 20px; color: rgb(68, 68, 68);}
..picker-youtube-banner-preview-header {font-size: 20px; font-weight: normal=
;}
..picker-youtube-banner-preview-message {font-size: 13px; margin-top: 15px;}
..picker-youtube-banner-preview-container {margin-right: 20px; display: inli=
ne-block;}
..picker-youtube-banner-preview-icon-header {text-transform: uppercase; colo=
r: rgb(102, 102, 102); font-size: 13px; text-align: center;}
..picker-youtube-banner-preview-icon {background: rgba(0, 0, 0, 0) url("//ss=
l.gstatic.com/docs/picker/images/youtube-banner-sprite-v2.png") no-repeat s=
croll 0% 0%; position: relative;}
..picker-youtube-banner-preview-tv-icon {background-position: 0px 0px; width=
: 271px; height: 165px;}
..picker-youtube-banner-preview-laptop-icon {background-position: -271px 0px=
; width: 294px; height: 168px;}
..picker-youtube-banner-preview-mobile-icon {background-position: -565px 0px=
; width: 85px; height: 164px;}
..picker-youtube-banner-preview-desktop-image ,.picker-youtube-banner-previe=
w-tv-image ,.picker-youtube-banner-preview-mobile-image {position: absolute=
;}
..picker-youtube-banner-preview-desktop-image {top: 29px; left: 65px; width:=
168px; height: 29px;}
..picker-youtube-banner-preview-tv-image {top: 5px; left: 5px; width: 260px;=
height: 144px;}
..picker-youtube-banner-preview-mobile-image {top: 13px; left: 6px; width: 7=
3px; height: 20px;}
..picker-youtube-banner-preview-button-container {position: absolute; left: =
10px; bottom: 10px;}
..picker-youtube-banner-preview-loadingstatusbox {opacity: 0.8; font-size: 0=
px; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; z-i=
ndex: 2111; background: white url("//ssl.gstatic.com/docs/picker/images/loa=
ding-32-v1.gif") no-repeat scroll center center;}
..picker-youtube-banner-preview-auto-enhance {float: right; margin: 20px;}
..picker-youtube-banner-preview-toggle-label-container {display: inline-bloc=
k;}
..picker-youtube-banner-preview-toggle-label-container .picker-spr-icon-auto=
fix-active {display: inline-block; vertical-align: middle;}
..picker-content.picker-draguploadview {height: 100%; padding: 0px; overflow=
: hidden;}
..picker-upload-button-hidden .picker-draguploadview .picker-photos-upload-d=
ropzone-parent {height: 100%;}
..picker-draguploadview .picker-jfk-tall-progressbar {width: 70%;}
..picker-draguploadview-tip {font-size: 13px; padding: 5px;}
..picker-drag-drop-supported .picker-draguploadview-progress-parent {positio=
n: absolute; height: 50px; top: 50%; margin-top: -25px;}
..picker-draguploadview-progress-parent {position: relative; height: 40px; w=
idth: 100%; top: -20px;}
..picker-draguploadview-msg-bar {position: absolute; top: 10px; width: 80%; =
left: 10%; z-index: 2200;}
..picker-draguploadview-msg-bar .jfk-butterBar-shown {height: 30px;}
..picker-photos-upload-album-bar {z-index: 2102; position: relative;}
..picker-photos-upload-album-bar-cell {height: 1px;}
..picker-photos-upload-dropzone ,.picker-photos-upload-dropzone-cell {width:=
100%; text-align: center; position: relative;}
:first-child + html .picker-photos-upload-dropzone-cell {height: 100%; padd=
ing-top: 100px;}
..picker-upload-button-visible .picker-drag-drop-supported .picker-photos-up=
load-dropzone-cell {border: 4px dashed rgb(221, 221, 221); border-radius: 2=
px;}
..picker-drag-active .picker-upload-button-visible .picker-photos-upload-dro=
pzone-cell {border-color: rgb(77, 144, 254);}
..picker-photos-upload-dropzone-cell .jfk-button {margin: 0px;}
..picker-photos-upload-drop-alt {display: none; padding: 15px 0px 5px; font-=
weight: bold; font-size: 13px; color: rgb(204, 204, 204);}
..picker-photos-upload-drop-here {font-size: 20pt; color: rgb(204, 204, 204)=
; padding: 0px 10px; display: none;}
..picker-drag-active .picker-photos-upload-drop-here {color: rgb(57, 137, 21=
2);}
..picker-drag-drop-supported .picker-photos-upload-drop-alt ,.picker-drag-dr=
op-supported .picker-photos-upload-drop-here {display: block;}
..picker-photos-upload-dropzone-parent {height: 100%; width: 100%; position:=
relative; border-spacing: 20px;}
..picker-upload-button-hidden .picker-photos-upload-dropzone-parent {height:=
auto;}
..picker-photos-upload-dropzone-parent.picker-collapsed {margin: 0px 0px -40=
px;}
..picker-photos-upload-hidden-button {position: absolute; top: -1000px; left=
: -1000px;}
..jfk-butterBar-error .picker-link {color: rgb(255, 255, 255); text-decorati=
on: underline;}
..picker-photo-control-thumbframe {box-shadow: 0px 1px 0px rgb(218, 218, 218=
); width: 158px; height: 188px; background: rgb(255, 255, 255) none repeat =
scroll 0% 0%; border: 1px solid transparent; cursor: pointer;}
..picker-photo-control-thumbframe .picker-photo-control-uploading ,.picker-p=
hoto-control-thumbframe .new-upload-box-error .picker-photos-error-text {bo=
rder: 0px none transparent;}
..picker-upload-control-error .picker-photo-control-thumbframe .picker-photo=
-control-uploading {height: 158px;}
..picker-photosuploadview .new-upload-box .picker-photo-control-thumbframe .=
picker-photo-control-uploading .new-upload-box-error ,.picker-photo-control=
-thumbframe .new-upload-box-error .picker-photos-upload-filename {backgroun=
d: rgb(245, 245, 245) none repeat scroll 0% 0%;}
..new-upload-box .picker-photo-control-thumbframe .new-upload-box-error .pic=
ker-spr-upload-error {margin: 50px 74px 40px 73px;}
..picker-video-control-duration {position: absolute; display: inline-block; =
left: 9px; bottom: 8px; color: rgb(255, 255, 255); background: rgb(199, 199=
, 199) none repeat scroll 0% 0%; border-radius: 20px; font-weight: bold; pa=
dding: 2px 10px 3px 25px; font-size: 11px; text-shadow: 0px 0px 2px rgba(0,=
0, 0, 0.5);}
..picker-photosuploadview .picker-video-control-duration {padding: 2px 10px;=
}
..picker-photo-control-toolbar {background-color: rgb(255, 255, 255); bottom=
: 2px; height: 32px; left: 2px; position: absolute; width: 158px;}
..picker-photo-control-toolbar .picker-spr-checkbox-selected {cursor: pointe=
r; position: relative; right: 62px; top: 4px;}
..picker-photo-control-toolbar .picker-spr-checkbox-active {cursor: pointer;=
position: relative; right: 62px; top: 4px; opacity: 0.2;}
..picker-photo-control-toolbar .picker-spr-checkbox-active.picker-spr-checkb=
ox-active-hover {opacity: 1;}
..picker-photo-control-toolbar .picker-spr-checkbox-selected {display: none;=
}
..picker-photo-control-toolbar .picker-spr-checkbox-active {display: inline-=
block;}
..picker-photosuploadview .picker-photo-control-thumbframe {cursor: default;=
}
..new-upload-box .picker-photos-upload-filename ,.new-upload-box .picker-vid=
eos-upload-loadingthumb {color: rgb(153, 153, 153); font-size: 11px; overfl=
ow: hidden; background: rgb(238, 238, 238) none repeat scroll 0% 0%;}
..picker-photosuploadview .new-upload-box .picker-photo-control-uploading {b=
ackground: rgb(238, 238, 238) none repeat scroll 0% 0%;}
..picker-photosuploadview .new-upload-box .picker-photo-control-uploading .n=
ew-upload-box-error {background: rgb(255, 255, 255) none repeat scroll 0% 0=
%;}
..new-upload-box-error .picker-photos-upload-filename ,.new-upload-box-error=
.picker-videos-upload-loadingthumb {color: rgb(153, 153, 153); font-size: =
11px; overflow: hidden; background: rgb(255, 255, 255) none repeat scroll 0=
% 0%;}
..new-upload-box .picker-photos-upload-filename ,.new-upload-box-error .pick=
er-photos-upload-filename {width: 120px; height: 120px; padding: 0px;}
..new-upload-box .picker-upload-filename-inner ,.new-upload-box-error .picke=
r-upload-filename-inner {padding-top: 58px; text-overflow: ellipsis; white-=
space: nowrap; overflow: hidden; font-size: 12px;}
..new-upload-box .picker-spr-photo-icon {display: inline-block; opacity: 0.5=
; position: absolute; left: 51px; top: 40px;}
..new-upload-box-error .picker-spr-photo-icon {display: none;}
..new-upload-box .new-upload-box-error .picker-spr-upload-error {position: a=
bsolute; margin: 40px 55px 40px 50px; top: 0px;}
..nub-loading .picker-spr-upload-error {display: none;}
..picker-upload-control-error .picker-spr-photo-upload-cancel ,.picker-uploa=
d-control-scheduled .picker-spr-photo-upload-cancel {opacity: 0.5; position=
: absolute; right: 8px; bottom: 8px; cursor: pointer;}
..picker-upload-control-running .picker-spr-photo-upload-cancel ,.picker-upl=
oad-control-success .picker-spr-photo-upload-cancel ,.picker-photo-control-=
placeholder .picker-spr-photo-upload-cancel {display: none;}
..picker-upload-control-error .picker-spr-upload-retry {opacity: 0.5; positi=
on: absolute; left: 8px; bottom: 8px; cursor: pointer;}
..picker-upload-control-error .picker-photos-upload-retry-text {position: ab=
solute; left: 19px; bottom: -1px; cursor: pointer; color: rgb(0, 0, 0); fon=
t-size: 12px;}
..picker-upload-control-running .picker-spr-upload-retry ,.picker-upload-con=
trol-success .picker-spr-upload-retry ,.picker-photo-control-placeholder .p=
icker-spr-upload-retry ,.picker-upload-control-scheduled .picker-spr-upload=
-retry {display: none;}
..new-upload-box-error .picker-photos-error-text {position: absolute; top: 0=
px; left: 0px; right: 0px; bottom: 27px; font-weight: bold; font-size: 12px=
; background-color: rgb(238, 238, 238); border: 1px solid rgb(204, 204, 204=
); padding-top: 15px;}
..new-upload-box-error .picker-photos-error-details {position: absolute; top=
: 44px; left: 11px; right: 11px; padding: 2px; background: rgb(238, 238, 23=
8) none repeat scroll 0% 0%; font-size: 12px; font-weight: normal;}
..new-upload-box .picker-photos-upload-controls ,.new-upload-box-error .pick=
er-photos-upload-controls {background: transparent none repeat scroll 0% 0%=
; position: absolute !important; height: 20px; bottom: 0px; left: 0px; text=
-decoration: none; width: 100%;}
..picker-photo-control-preview-content {transition: opacity 250ms ease 0s;}
..picker-photo-control-preview-smartcrop-content {transition: opacity 450ms =
linear 100ms; opacity: 0; position: absolute; top: 0px;}
..picker-edit-toolbar-overlay-container .picker-spr-icon-photos-delete-white=
,.picker-edit-toolbar-overlay-container .picker-spr-icon-rotate-left-white=
,.picker-edit-toolbar-overlay-container .picker-spr-icon-rotate-right-whit=
e {display: none;}
..picker-photosuploadview-albumbar-visible .picker-albumname {position: rela=
tive;}
..picker-photosuploadview .picker-dataview {position: relative; margin: -10p=
x; overflow: visible;}
..picker-photosuploadview.picker-photosuploadview-albumbar-visible .picker-d=
ataview {margin: 10px -10px -10px;}
..picker-photosuploadview .picker-photosgrid .picker-dataview-content ,.pick=
er-photosuploadview .picker-photosgrid-edit {padding: 0px;}
..picker-photosuploadview .picker-dataview-message {display: none;}
..picker-photosuploadview-albumbar-visible .picker-dropzone ,.picker-photosu=
ploadview-albumbar-visible .picker-progress-wrapper {top: 50px;}
..picker-photosuploadview .goog-toolbar-button {cursor: pointer;}
..picker-photosuploadview .picker-photo-control-preview-content {outline: me=
dium none; cursor: default;}
..picker-photosuploadview .picker-photo-control-checked .picker-photo-contro=
l-border {border: 6px solid transparent;}
..picker-localphotosprofilephoto .picker-photo-control-border ,.picker-local=
photosprofilephoto.picker-photo-control-checked .picker-photo-control-borde=
r {border: 4px solid rgb(221, 75, 57); margin: 2px;}
..picker-photosuploadview-progress-wrapper ,.picker-photosuploadview-progres=
s-text ,.picker-photosuploadview-progress {position: absolute; top: 0px; ri=
ght: 0px; bottom: 0px; left: 0px;}
..picker-photosuploadview-progress-text {width: 70%; margin: auto;}
..picker-photosuploadview-progress {height: 9px; width: 70%; margin: auto;}
..picker-photosuploadview-progress-text {height: 41px; padding: 0px 0px 6px =
4px; font-size: 13px;}
..picker-photosuploadview-progress-wrapper .picker-progress-bar {width: 100%=
;}
..picker-photosuploadview-msgbar {position: absolute; top: 10px; width: 80%;=
left: 10%; z-index: 2200;}
..picker-photosuploadview-msgbar .jfk-butterBar-shown {height: 30px;}
..picker-photosuploadview .picker-photo-control-uploading {background: rgb(2=
43, 243, 243) none repeat scroll 0% 0%;}
..picker-photosuploadview .picker-photosgrid .picker-photo-control {padding:=
0px 0px 12px;}
..picker-photosuploadview-progress .progress-bar-horizontal ,.picker-photosu=
ploadview-actionpane .progress-bar-horizontal {height: 9px; border: 1px sol=
id rgb(153, 153, 153); margin: 2px; padding: 1px; background: rgb(255, 255,=
255) none repeat scroll 0% 0%;}
..picker-photosuploadview-progress .picker-progress-bar-spinner.progress-bar=
-horizontal ,.picker-photosuploadview-actionpane .picker-progress-bar-spinn=
er.progress-bar-horizontal {border: 0px none; background: transparent url("=
//ssl.gstatic.com/docs/picker/images/loading-v1.gif") no-repeat scroll 0px =
0px; height: 16px; width: 16px; padding-left: 7px; padding-top: 2px; margin=
: auto auto 5px; opacity: 0.5;}
..picker-photosuploadview-progress .progress-bar-thumb ,.picker-photosupload=
view-actionpane .progress-bar-thumb {height: 100%; background-repeat: repea=
t-x; background-size: 20px 10px; background-color: rgb(77, 144, 254); backg=
round-image: linear-gradient(315deg, transparent, transparent 33%, rgba(0, =
0, 0, 0.12) 33%, rgba(0, 0, 0, 0.12) 66%, transparent 66%, transparent); ba=
ckground-attachment: scroll; animation-duration: 0.8s; animation-iteration-=
count: infinite; animation-timing-function: linear;}
..picker-upload-photo-album-bar {position: absolute; top: 20px; left: 20px; =
height: 30px; padding: 0px;}
..picker-photo-upload-dropzone {position: absolute; top: 50px; left: 0px; ri=
ght: 0px; bottom: 0px;}
..picker-youtube-banner-recommended-size-messages {position: absolute; botto=
m: 20px; right: 20px; padding: 20px; color: rgb(204, 204, 204); text-align:=
right;}
..picker-youtube-banner-channel-art-link {text-decoration: none;}
..picker-docsuploadview-drive-promo {background-color: rgb(229, 229, 229); c=
ursor: default; height: 125px; left: 0px; overflow: hidden; position: absol=
ute; top: 0px; width: 100%; z-index: 1; transition: height 0.218s ease 0s;}
..picker-docsuploadview-with-drive-promo .picker-docsuploadview-drive-promo =
{border-bottom: 1px solid rgb(229, 229, 229);}
..picker-docsuploadview-drive-promo-text {padding-right: 40px; position: abs=
olute; top: 0px;}
..picker-docsuploadview-drive-promo-title {font-size: 18px; padding: 15px 5p=
x 5px 0px; white-space: nowrap;}
..picker-docsuploadview-drive-promo-paragraph {color: rgb(68, 68, 68); font-=
size: 13px; max-width: 650px;}
..picker-docsuploadview-drive-promo-dismiss {padding-top: 5px;}
..picker-docsuploadview-drive-promo-learnmore ,.picker-docsuploadview-drive-=
promo-up-to-link {color: rgb(17, 85, 204); cursor: pointer; text-decoration=
: none; white-space: nowrap;}
..picker-docsuploadview-drive-promo-learnmore.picker-hover ,.picker-docsuplo=
adview-drive-promo-up-to-link.picker-hover {text-decoration: underline;}
..picker-docsuploadview-drive-promo-img {margin: 15px 30px;}
..picker-docsuploadview-drive-promo-close {padding: 10px; position: absolute=
; right: 0px; top: 0px;}
..picker-folderbar {border-bottom: 1px solid rgb(221, 221, 221); height: 49p=
x; position: absolute; top: 0px; left: 0px; width: 100%;}
..picker-folderbar-menu {position: absolute; top: 10px; left: 10px;}
..picker-folderbar-menu .jfk-bubble-content-id {width: 300px;}
..picker-du-folderpopup-buttons .jfk-button {margin-top: 13px;}
..picker-docsuploadview.picker-upload {overflow: hidden; padding: 0px;}
..picker-docsuploadview .picker-dataview ,.picker-docsuploadview .picker-dro=
pzone {top: 50px;}
..picker-docsuploadview-with-drive-promo .picker-dataview ,.picker-docsuploa=
dview-with-drive-promo .picker-dropzone {top: 120px;}
..picker-doc-upload-control-cell {border-bottom: 1px solid rgb(221, 221, 221=
);}
..picker-doc-upload-control-row {height: 50px;}
..picker-doc-upload-control-icon-cell {width: 36px;}
..picker-doc-upload-control-icon {display: block; margin-top: 4px; margin-le=
ft: 10px; padding-top: 3px; width: 16px; height: 16px; background-repeat: n=
o-repeat;}
..picker-doc-upload-control-text ,.picker-doc-upload-control-retry-text ,.pi=
cker-docs-upload-error-dialog {font-size: 13px;}
..picker-doc-upload-control-retry-text {color: rgb(17, 85, 204);}
..picker-doc-upload-control-retry-text .jfk-button {cursor: pointer;}
..picker-doc-upload-control-retry-text .jfk-button-hover {text-decoration: u=
nderline;}
..picker-docsuploadview-uploadmore-button {display: inline-block; margin: 16=
px 20px;}
..picker-doc-upload-control-error-message {color: rgb(204, 51, 51);}
..picker-doc-upload-control-cell .picker-spr-upload-error {display: inline-b=
lock; margin-top: 5px; vertical-align: text-bottom;}
..picker-doc-upload-control-error-message {margin-left: 8px;}
..picker-docs-upload-error-dialog {width: 300px; z-index: 2112;}
..picker-docs-upload-error-dialog-bg {z-index: 2111;}
..picker-docs-upload-error-dialog-button::-moz-focus-inner {border: 0px none=
;}
..picker-doc-upload-control-progress {text-align: right; width: 130px;}
..picker-doc-upload-control-progress .progress-bar-horizontal {height: 9px; =
border: 1px solid rgb(153, 153, 153); margin: 2px; padding: 1px; background=
: rgb(255, 255, 255) none repeat scroll 0% 0%;}
..picker-doc-upload-control-progress .progress-bar-thumb {height: 100%; back=
ground-repeat: repeat-x; background-size: 20px 10px; background-color: rgb(=
77, 144, 254); background-image: linear-gradient(315deg, transparent, trans=
parent 33%, rgba(0, 0, 0, 0.12) 33%, rgba(0, 0, 0, 0.12) 66%, transparent 6=
6%, transparent); background-attachment: scroll; animation-duration: 0.8s; =
animation-iteration-count: infinite; animation-timing-function: linear;}
..picker-doc-upload-control-cancel {width: 45px;}
..picker-doc-upload-control-cancel-x .jfk-button {cursor: pointer; height: a=
uto; margin: 0px 17px; width: auto;}
..picker-doc-upload-control-size {margin-left: 15px; font-size: 12px; color:=
rgb(102, 102, 102);}
..picker-doc-upload-control-name ,.picker-doc-upload-control-size {cursor: d=
efault;}
..picker-doc-upload-control-row.picker-upload-control-scheduled .picker-spr-=
photo-upload-cancel {display: none;}
..picker-doc-upload-control-complete {color: rgb(204, 204, 204);}
..picker-doc-upload-more {margin-left: 10px;}
..picker-doc-upload-control-row.picker-upload-control-error .picker-spr-phot=
o-upload-cancel {position: static; opacity: 1;}
..picker-upload-control-error .progress-bar-horizontal {display: none;}
..picker-drag-indicator-top ,.picker-drag-indicator-left ,.picker-drag-indic=
ator-right ,.picker-drag-indicator-bottom {position: absolute; z-index: 220=
0; background-color: rgb(77, 144, 254);}
..picker-drag-indicator-top ,.picker-drag-indicator-bottom {height: 3px; wid=
th: 100%; left: 0px;}
..picker-drag-indicator-left ,.picker-drag-indicator-right {height: 100%; wi=
dth: 3px; top: 0px;}
..picker-drag-indicator-top {top: 0px;}
..picker-drag-indicator-left {left: 0px;}
..picker-drag-indicator-right {right: 0px;}
..picker-drag-indicator-bottom {bottom: 0px;}
..picker-drag-tooltip {position: absolute; display: table; top: 50%; left: 5=
0%; width: 350px; margin-left: -175px; height: 40px; margin-top: -20px; bac=
kground-color: rgb(77, 144, 254); color: rgb(255, 255, 255); font-weight: b=
old; padding: 10px; font-size: 13px; z-index: 2200; text-align: center; box=
-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2); border-radius: 2px;}
..picker-drag-tooltip-inner {display: table-cell; vertical-align: middle;}
..picker-dropzone ,.picker-dropzone-target ,.picker-dropzone-targetcontent ,=
..picker-dropzone-targetcontentwrapper {position: absolute; top: 0px; right:=
0px; bottom: 0px; left: 0px;}
..picker-drag-drop-supported .picker-dropzone-targetpointer {cursor: pointer=
;}
..picker-dropzone.goog-control-focused {border: 1px solid rgb(221, 221, 221)=
;}
..picker-drag-drop-supported .picker-dropzone-text ,.picker-drag-drop-suppor=
ted .picker-dropzone-alttext {display: block;}
..picker-dropzone-or {color: rgb(170, 170, 170); font-size: 14px; padding: 0=
px 0px 16px;}
..picker-dropzone-upload-button {padding: 5px 12px;}
..picker-dropzone-text ,.picker-dropzone-alttext ,.picker-spr-rio-upload-big=
{display: none;}
..picker-dropzone.picker-drag-drop-supported .picker-spr-rio-upload-big {opa=
city: 0.4; display: inline-block;}
..picker-dropzone .picker-dropzone-target {border-width: 3px;}
..picker-drag-active .picker-dropzone-target {background: rgb(245, 245, 245)=
none repeat scroll 0% 0%; border-color: rgb(77, 144, 254);}
..picker-dropzone-targetcontent {text-align: center;}
..picker-dropzone-targetcontentwrapper {margin: auto; height: 30px;}
..picker-dropzone-largetargetcontentwrapper {height: 200px;}
..picker-dropzone-text {color: rgb(170, 170, 170); font-size: 20pt; padding:=
0px 10px;}
..picker-dropzone-alttext {color: rgb(204, 204, 204); font-size: 13px; font-=
weight: bold; padding: 15px 0px 5px;}
..picker-dropzone-targetcontent .jfk-button {cursor: pointer; margin-right: =
0px;}
..picker-upload.picker-inline-upload {border-bottom: 1px solid rgb(229, 229,=
229); height: 119px; position: relative;}
..picker-inline-upload-icon {display: inline-block; left: 20px; opacity: 0.4=
; position: absolute; top: 15px;}
..picker-drag-drop-supported.picker-inline-upload-container {visibility: vis=
ible;}
..picker-inline-upload-container {border: 2px dashed rgb(221, 221, 221); bor=
der-radius: 2px; bottom: 20px; left: 20px; position: absolute; right: 30px;=
top: 20px; visibility: hidden;}
..picker-drag-active .picker-inline-upload-container {border: 2px dashed rgb=
(77, 144, 254);}
..picker-inline-upload-dropzone {height: 100%;}
..picker-inline-upload-dropzone-text {bottom: 26px; color: rgb(170, 170, 170=
); display: inline-block; font-size: 20px; left: 90px; padding-right: 5px; =
position: absolute;}
..picker-drag-active .picker-inline-upload-dropzone-text {color: rgb(57, 137=
, 212);}
..picker-inline-upload-button-container {bottom: 20px; position: absolute; r=
ight: 10px;}
..picker-upload-button-visible .picker-inline-upload-button {visibility: vis=
ible;}
..picker-inline-upload-button-pre-text {color: rgb(170, 170, 170); display: =
inline-block; font-size: 20px; padding-right: 10px;}
..picker-inline-upload .picker-draguploadview-progress-parent {text-align: c=
enter;}
..picker-inline-upload-actionpane-button {float: right; margin-right: 31px;}
..picker-main-container .goog-tree-hide-root {display: none;}
..picker-main-container .goog-tree-item {-moz-user-select: none;}
..picker-main-container .goog-tree-item .selected {-moz-user-select: none; v=
ertical-align: middle; cursor: default; white-space: nowrap; background-col=
or: rgb(77, 144, 254); color: rgb(255, 255, 255); font-weight: bold;}
..picker-main-container .goog-tree-row {padding: 2px 0px 3px 8px; vertical-a=
lign: middle; cursor: default; white-space: nowrap; height: 15px;}
..picker-main-container .goog-tree-item-label {overflow: hidden; white-space=
: nowrap; empty-cells: show; font-size: 13px; font-weight: normal; font-fam=
ily: Roboto,Arial,sans-serif; width: 95%;}
..picker-main-container .goog-tree-expand-icon {background-repeat: no-repeat=
; height: 12px; width: 12px; cursor: pointer; vertical-align: middle;}
..picker-main-container .goog-tree-expand-icon-minus ,.picker-main-container=
.goog-tree-expand-icon-lminus ,.picker-main-container .goog-tree-expand-ic=
on-tminus {background-image: url("//ssl.gstatic.com/docs/picker/images/icon=
s-v9.png"); background-position: -402px center;}
..picker-main-container .goog-tree-expand-icon-plus ,.picker-main-container =
..goog-tree-expand-icon-tplus ,.picker-main-container .goog-tree-expand-icon=
-lplus {background-image: url("//ssl.gstatic.com/docs/picker/images/icons-v=
9.png"); background-position: -384px center;}
..picker-main-container .goog-tree-expand-icon-blank {background-position: c=
enter center; background-repeat: no-repeat; height: 8px;}
..picker-content .goog-tree-root {min-height: 200px; max-height: 300px; over=
flow: auto; border: 1px solid rgb(217, 217, 217);}
..picker-treedoclistview-node-name {font-size: 13px; padding: 2px 3px 3px; f=
ont-weight: normal; vertical-align: middle;}
..picker-treedoclistview-node-message {color: rgb(102, 102, 102); padding-le=
ft: 4px;}
..picker-treedoclistview-node-error {color: rgb(204, 51, 51); padding-left: =
4px;}
..picker-upload {overflow-y: auto; padding: 20px;}
..picker-upload .picker-dataview ,.picker-upload .picker-dropzone {transitio=
n: top 0.218s ease 0s;}
* html .picker-upload ,body .picker-upload {height: 100%; width: 100%;}
..apps-upload-sprite {background-image: url("//ssl.gstatic.com/docs/picker/i=
mages/apps_upload_icons-v1.gif") !important;}
..picker-upload-container.picker-collapsed .picker-upload-button ,.picker-up=
load-container.picker-collapsed .picker-upload-header ,.picker-upload-conta=
iner.picker-collapsed .picker-upload-text {display: none;}
..picker-upload-container.picker-collapsed .upload-uploader-flash-content {p=
osition: absolute; top: -1000px !important; left: -1000px !important;}
..picker-upload-header {font-size: 13px; font-weight: bold; color: rgb(68, 6=
8, 68); margin-bottom: 4px;}
..upload-file-col {padding: 4px;}
..upload-state-default .upload-file-col {padding: 2px;}
..upload-file {border-bottom: 0px none;}
..upload-file .goog-flat-button {color: rgb(153, 153, 153); text-decoration:=
underline; cursor: pointer; margin-right: 5px;}
..upload-file-progress {display: none;}
..upload-file-status {width: 16px; background-position: 20px 20px; backgroun=
d-repeat: no-repeat;}
..upload-state-start .upload-file-status ,.upload-state-upload .upload-file-=
status ,.upload-state-backoff .upload-file-status {width: 16px; height: 16p=
x; background-position: center top;}
..upload-state-complete .upload-file-status {width: 16px; height: 13px; back=
ground-position: center -16px;}
..upload-state-error .upload-file-status {width: 16px; height: 13px; backgro=
und-position: center -31px;}
..upload-state-default .progress-bar-horizontal ,.upload-state-inqueue .prog=
ress-bar-horizontal ,.upload-state-error .progress-bar-horizontal ,.upload-=
state-complete .progress-bar-horizontal ,.upload-state-cancel .upload-file-=
size ,.upload-state-cancel .upload-file-progress ,.upload-state-cancel .upl=
oad-file-actions ,.upload-state-error .upload-file-size {display: none;}
..upload-file-size {text-align: right;}
..upload-file-progress {width: 88px;}
..upload-file-message {font-size: 11px; padding-left: 0.5em; color: rgb(153,=
153, 153);}
..upload-message .progress-bar-horizontal {display: none;}
..upload-file-actions {text-align: right;}
..upload-file-hidden {visibility: hidden; cursor: auto;}
..picker-upload-text {color: rgb(102, 102, 102); font-size: 10px; margin: 5p=
x 0px 4px;}
..picker-upload-text-a {color: rgb(153, 153, 153);}
..upload-uploader {font-size: 13px;}
..upload-uploader-table {width: auto;}
..picker-upload.picker-videoupload {padding: 0px;}
..picker-videoupload .upload-uploader-table {width: 100%;}
..upload-uploader-file-list {width: auto;}
..upload-uploader-hidden {display: none !important;}
..picker-upload-input-flash {font-size: 11px;}
..picker-upload-input-noflash {padding: 8px; font-size: 11px;}
..picker-upload-input-flash {border-top: 1px solid rgb(221, 221, 221); borde=
r-left: 1px solid rgb(221, 221, 221); background-color: rgb(245, 245, 245);=
padding: 4px 11px 2px; margin: 8px; text-align: center; vertical-align: mi=
ddle;}
..picker-upload-input-flash .picker-spr-upload-arrow {margin-right: 5px;}
..picker-upload-input-noflash .upload-uploader-input {font-size: 9px;}
..picker-docsuploadview .picker-upload-header {font-weight: normal; color: r=
gb(0, 0, 0);}
..picker-docsuploadview-title {font-weight: bold; color: rgb(68, 68, 68); ma=
rgin-bottom: 10px; font-size: 13px;}
..picker-doplaruploadview-uploading ,.picker-geouploadview-uploading {font-s=
ize: 13px; margin: 10px;}
..picker-doplaruploadview-error ,.picker-geouploadview-error {font-size: 13p=
x; margin: 10px; color: rgb(204, 51, 51);}
..picker-docsuploadview-checkbox {font-size: 12px; margin: 15px 0px 0px -4px=
;}
..picker-docsuploadview-checkbox-input {margin-right: 7px;}
..picker-docsuploadview-move-to-folder {font-size: 13px; margin: 0px 0px 10p=
x 27px;}
..picker-docsuploadview-folder-header {margin-top: 10px;}
..picker-docsuploadview-icon {background-image: url("//ssl.gstatic.com/docs/=
picker/images/folder_sprite-v1.gif"); background-position: -24px 0px; heigh=
t: 16px; vertical-align: middle; width: 16px;}
..picker-du-folder-icon {height: 11px; vertical-align: middle; width: 11px; =
margin: -1px 0px 0px 5px;}
..picker-docsuploadview-icon {margin-bottom: 3px;}
..picker-docsuploadview-spacing {width: 5px;}
..picker-du-folders-popup {border: 1px solid rgb(221, 221, 221); padding: 13=
px; font-size: 12px; width: 300px; color: rgb(0, 0, 0); background-color: r=
gb(255, 255, 255); position: absolute; z-index: 20; margin: -3px 0px 0px 2p=
x;}
..picker-docsuploadview-dropdown {background-image: url("//ssl.gstatic.com/d=
ocs/picker/images/folder_sprite-v1.gif"); background-position: -40px 0px; w=
idth: 12px; height: 16px; vertical-align: middle; margin: 0px -2px 3px 3px;=
}
..picker-docsuploadview .goog-tree-root {height: 125px; overflow-x: hidden; =
overflow-y: auto;}
..picker-videos-listview .picker-dataview-content {padding: 15px;}
..picker-video-control {border: 5px solid transparent; cursor: pointer; marg=
in: 5px; padding: 2px;}
..picker-video-control-checked {border: 5px solid rgb(77, 144, 254); backgro=
und: rgb(245, 245, 245) none repeat scroll 0% 0%;}
..picker-videoupload .picker-video-control-checked {border: 5px solid rgb(25=
5, 255, 255); background: rgb(255, 255, 255) none repeat scroll 0% 0%;}
..picker-video-control-inner {overflow: hidden;}
..picker-video-control-preview {padding: 1px; border: 1px solid rgb(153, 153=
, 153);}
..picker-video-control-thumb {z-index: 3; width: 96px; height: 72px; cursor:=
pointer;}
..picker-video-control-thumb-img {width: 96px; height: 72px; cursor: pointer=
;}
..picker-photos-upload .picker-video-control-thumb ,.picker-photos-upload .p=
icker-video-control-thumb-img {width: 240px; height: 182px;}
..picker-video-control-previewing .picker-video-control-thumb {display: none=
;}
..picker-video-control-star-mask {width: 55px; height: 11px; margin-right: 7=
px; overflow: hidden; vertical-align: middle; line-height: 9pt;}
..picker-video-control-star-mask .picker-spr-video-stars {position: relative=
;}
..picker-video-control .picker-spr-video-play-overlay {position: relative; z=
-index: 2; top: -50%; left: 50%; margin-left: -18px; margin-top: -20px;}
..picker-video-control-metadata {margin-left: 4px;}
..picker-video-control-previewing .picker-video-control-metadata {padding-to=
p: 3px;}
..picker-video-control-title {font-size: 13px; font-weight: bold; color: rgb=
(80, 80, 80); white-space: nowrap; text-overflow: ellipsis; height: 1.3em; =
overflow: hidden;}
..picker-video-control-previewing .picker-video-control-title {font-size: 12=
px;}
..picker-video-control-content {font-size: 12px; height: 3em; line-height: 1=
..5em; margin-bottom: -2px; overflow: hidden; overflow-wrap: break-word;}
..picker-video-control-time {color: rgb(133, 133, 133); font-size: 12px; ver=
tical-align: middle;}
..picker-video-control-previewing .picker-video-control-time {font-size: 11p=
x;}
..picker-video-control-publisher {color: rgb(0, 128, 0); font-size: 12px;}
..picker-video-control-previewing .picker-video-control-publisher {font-size=
: 11px;}
..picker-spr-youtube {margin: 0px 13px 6px 0px;}
..picker-videos-grid .picker-dataview-content {padding-left: 20px;}
..picker-videos-grid .picker-video-grid-control-border {opacity: 0; transiti=
on: opacity 0.218s ease 0s; padding: 5px; position: relative;}
..picker-video-grid-control-checked .picker-video-grid-control-border {borde=
r: 5px solid rgb(66, 133, 244); padding: 0px;}
..picker-video-grid-control-focused .picker-video-grid-control-border {outli=
ne: 1px solid rgb(66, 133, 244);}
..picker-videos-grid .picker-video-grid-control-wrapper {cursor: pointer; di=
splay: inline-block; height: 140px; outline: medium none; text-align: cente=
r; vertical-align: middle; width: 140px;}
..picker-videos-grid .picker-video-grid-control-thumbnail {max-height: 100%;=
max-width: 100%;}
..picker-videos-grid .picker-video-grid-control-hover .picker-video-grid-con=
trol-check {opacity: 0.7;}
..picker-videos-grid .picker-video-grid-control-checked .picker-video-grid-c=
ontrol-check {opacity: 1; left: 5px; top: 5px;}
..picker-videos-grid .picker-video-grid-control-check {opacity: 0; transitio=
n: opacity 0.218s ease 0s; left: 10px; position: absolute; top: 10px; z-ind=
ex: 2104;}
..picker-videos-grid .picker-spr-rio-checkmark-selected {animation: 0.3s lin=
ear 0s normal none 1 running pickerPhotosSelectionOverlayCheckmarkSelectedT=
ransition;}
..picker-video-control-disabled ,.picker-video-grid-control-disabled ,.picke=
r-video-grid-control-unselectable {opacity: 0.3;}
..picker-video-grid-control-unselectable .picker-video-grid-control-check {d=
isplay: none;}
..picker-video-duration-overlay {background: rgb(0, 0, 0) none repeat scroll=
0% 0%; bottom: 5px; color: rgb(255, 255, 255); font-size: 11px; font-weigh=
t: bold; height: 14px; line-height: 14px; opacity: 0.75; padding: 0px 4px; =
position: absolute; right: 5px; vertical-align: top; z-index: 2104;}
..picker-videos-grid .picker-video-grid-control-checked .picker-video-durati=
on-overlay {opacity: 1; bottom: 0px; right: 0px;}
..picker-video-grid-control-title {display: block; font-size: 13px; position=
: relative; height: 13px; line-height: 13px; margin: 2px 0px; overflow: hid=
den; text-align: center; text-overflow: ellipsis; white-space: nowrap;}
..picker-video-grid-control-timestamp {color: rgb(153, 153, 153); display: b=
lock; position: relative; font-size: 11px; height: 11px; line-height: 11px;=
margin: 2px 0px; text-align: center;}
..picker-videos-grid .picker-video-grid-control-preview {display: inline-blo=
ck; margin: 10px; outline: medium none;}
..picker-videos-grid .picker-spr-video-play-overlay {opacity: 0.8; left: 0px=
; top: 0px;}
..picker-video-grid-control-hover .picker-spr-video-play-overlay {opacity: 1=
;}
..picker-video-grid-control-checked .picker-spr-video-play-overlay {opacity:=
1; left: -5px; top: -5px;}
..upload-uploader .picker-photos-upload .progress-bar-horizontal {width: aut=
o; height: 5px; border: medium none; margin: 3px; padding: 0px; background:=
transparent none repeat scroll 0% 0%;}
..upload-uploader .picker-photos-upload .progress-bar-thumb {background: rgb=
(136, 136, 136) none repeat scroll 0% 0%; height: 100%;}
..picker-photos-upload-progress {position: absolute !important; bottom: 3px;=
left: 0px; width: 100%;}
..picker-photos-upload-controls {position: absolute !important; bottom: 3px;=
left: 0px; width: 100%; background: rgb(215, 0, 0) none repeat scroll 0% 0=
%; color: rgb(255, 255, 255);}
..picker-photos-upload-actions {text-decoration: underline; cursor: pointer;=
margin: 5px;}
..picker-photos-upload-message {margin: 5px;}
..picker-videos-upload .picker-video-control {cursor: auto;}
..picker-photos-upload-filename ,.picker-videos-upload-loadingthumb {color: =
rgb(153, 153, 153); background: transparent url("//ssl.gstatic.com/docs/pic=
ker/images/placeholder-v1.gif") repeat scroll 0% 0%;}
..picker-videos-upload-error .picker-videos-upload-loadingthumb {background:=
rgb(215, 0, 0) none repeat scroll 0% 0%;}
..picker-videos-upload-loadingthumb {width: 240px; height: 180px;}
..picker-photos-upload-filename {padding-top: 5px; height: 115px; width: 160=
px;}
..picker-videos-upload-metadata {vertical-align: top; width: 100%;}
..picker-videos-upload-processing {font-size: 12px; color: rgb(170, 170, 170=
);}
..picker-videos-upload-error {font-size: 12px; color: rgb(204, 51, 51);}
..upload-state-complete .picker-photos-upload-filename {background-color: rg=
b(245, 245, 245);}
..picker-photos-upload-rotating ,.upload-state-complete .picker-photos-uploa=
d-filename .picker-photos-upload-loading-icon ,.upload-state-complete .pick=
er-videos-upload-loadingthumb .picker-videos-upload-loading-icon {position:=
absolute !important; top: 50%; left: 50%; background-image: url("//ssl.gst=
atic.com/docs/picker/images/loading-32-v1.gif") !important; height: 32px; w=
idth: 32px; margin: -16px 0px 0px -16px; opacity: 0.3;}
..picker-videos-upload-error.upload-state-complete .picker-videos-upload-loa=
dingthumb .picker-videos-upload-loading-icon {display: none;}
..picker-videos-upload-loadingthumb .picker-videos-upload-loading-icon {posi=
tion: relative !important;}
..upload-state-default .picker-photos-upload-controls ,.upload-state-start .=
picker-photos-upload-controls ,.upload-state-cancel .picker-photos-upload-c=
ontrols ,.upload-state-complete .picker-photos-upload-controls ,.upload-sta=
te-upload .picker-photos-upload-controls ,.upload-state-inqueue .picker-pho=
tos-upload-controls {display: none;}
..picker-videos-upload-control {margin: 2px; border: 6px solid rgb(255, 255,=
255);}
..picker-videos-upload-preview {height: 182px; overflow: hidden; padding: 1p=
x; margin-right: 4px; border: 1px solid rgb(153, 153, 153); position: relat=
ive;}
..picker-photos-upload-preview {opacity: 0.8; overflow: hidden;}
..picker-photos-upload-preview .uploader-thumb-img {border: 1px solid rgb(10=
2, 102, 102); position: relative;}
..picker-photos-upload-description {color: rgb(153, 153, 153); width: 100%; =
height: 1.2em; overflow: hidden; text-align: center; text-overflow: ellipsi=
s; white-space: nowrap; position: absolute;}
..picker-videoupload .upload-state-complete .picker-photos-upload-preview .u=
ploader-thumb-img {border: 1px solid rgb(192, 192, 192); position: relative=
;}
..picker-videoupload .upload-state-complete .picker-photos-upload-preview {o=
pacity: 1; overflow: visible;}
..picker-videoupload .upload-state-default .progress-bar-horizontal ,.picker=
-videoupload .upload-state-inqueue .progress-bar-horizontal ,.picker-videou=
pload .upload-state-error .progress-bar-horizontal ,.picker-videoupload .up=
load-state-cancel .progress-bar-horizontal ,.picker-videoupload .upload-sta=
te-complete .progress-bar-horizontal {display: none;}
..photo-zoomview {position: relative; z-index: 2105;}
:first-child + html .photo-zoomview {background-color: rgb(255, 255, 255); =
padding-top: 3px;}
..picker-zoomview-image {background: rgb(255, 255, 255) none repeat scroll 0=
% 0%; margin: 0px 3px; padding-top: 22px;}
..photo-loading .photo-loading-indicator {display: block; font-size: 20pt; f=
ont-weight: bold; font-family: Roboto,Arial,sans-serif; text-align: center;=
width: 100%; position: absolute; top: 0px; margin: 1em;}
..scaledimage-onscreenpane {display: inline-block; position: relative;}
..upload-uploader-file-grid {margin: 10px 5px 0px;}
..picker-photos-welcome {bottom: 10px;}
..picker-photos-welcome-text {font-size: 13px; padding-left: 15px;}
..picker-photos-welcome-section {padding: 15px 15px 0px;}
..picker-photos-welcome-line {border-bottom: 1px solid rgb(221, 221, 221); p=
adding-top: 20px;}
..picker-photos-welcome-link {color: rgb(153, 153, 153);}
..picker-photos-welcome-icon-top {vertical-align: top;}
..picker-photos-welcome-desc {margin: 10px 0px 20px; font-size: 12px;}
..picker-photos-welcome-source-link {font-weight: bold; color: rgb(17, 85, 2=
04); cursor: pointer;}
..picker-photos-welcome-title {font-weight: bold; color: rgb(0, 0, 0);}
..picker-main-container .picker-photos-welcome .goog-imageless-button {font-=
weight: bold; color: rgb(34, 34, 34);}
..picker-html5-video {background: rgb(0, 0, 0) none repeat scroll 0% 0%;}
..picker-video-upload-processing ,.video-upload-box .picker-photo-control-lo=
ading {height: 270px; width: 360px; background-color: rgb(238, 238, 238);}
..picker-videosgrid .picker-photo-control {margin-top: 20px; margin-left: 20=
px;}
..picker-video-processing-text {position: absolute; bottom: 5px; left: 0px; =
right: 0px; height: 20px; text-align: center; z-index: 2109; opacity: 0.8; =
color: rgb(153, 153, 153); font-size: 12px;}
..picker-video-upload-spinner {z-index: 2109; background-image: url("//ssl.g=
static.com/docs/picker/images/loading-v1.gif"); height: 16px; width: 16px; =
opacity: 0.5; position: absolute; top: 50%; margin-top: -20px; left: 50%; m=
argin-left: -8px;}
..video-upload-box .picker-upload-filename-inner ,.video-upload-box-error .p=
icker-upload-filename-inner ,.picker-video-upload-filename {position: absol=
ute; top: 50%; margin-top: 3px; text-align: center; padding-top: 0px; z-ind=
ex: 2104; height: 14px; width: 120px; text-overflow: ellipsis; white-space:=
nowrap; overflow: hidden; font-size: 12px; color: rgb(153, 153, 153);}
..video-upload-box .picker-spr-video-upload-icon {opacity: 0.5; position: ab=
solute; top: 50%; margin-top: -20px; left: 50%; margin-left: -11px;}
..video-upload-box .picker-photos-upload-filename {background-color: rgb(238=
, 238, 238); background-image: none;}
..video-upload-box .picker-photos-upload-controls {display: none;}
..picker-videosgrid .picker-photo-control-focused ,.picker-videosgrid .picke=
r-photo-control-focused.picker-photo-control ,.picker-videosgrid .picker-ph=
oto-control ,.picker-videosgrid .picker-photo-control.picker-photo-control-=
focused {outline: medium none; border: medium none;}
..picker-remove-video-single {position: relative; margin-left: 600px; margin=
-top: 10px; cursor: pointer;}
..video-upload-box .progress-bar-horizontal {right: 0px; bottom: 0px; left: =
0px; height: 8px; border: 1px solid rgb(153, 153, 153); margin: 0px 8px 8px=
; padding: 1px; background: rgb(255, 255, 255) none repeat scroll 0% 0%; z-=
index: 2109;}
..video-upload-box .progress-bar-thumb {height: 100%; background-repeat: rep=
eat-x; background-size: 20px 10px; background-color: rgb(204, 204, 204); ba=
ckground-attachment: scroll; background-image: linear-gradient(315deg, tran=
sparent, transparent 33%, rgba(0, 0, 0, 0.12) 33%, rgba(0, 0, 0, 0.12) 66%,=
transparent 66%, transparent); animation-duration: 0.8s; animation-iterati=
on-count: infinite; animation-timing-function: linear;}
..video-upload-box .picker-spr-close-box-small-off {position: absolute; opac=
ity: 0.5; cursor: pointer; z-index: 2109; top: 5px; right: 5px;}
..video-upload-box .picker-spr-upload-error {position: absolute; top: 50%; m=
argin-top: -20px; left: 50%; margin-left: -8px;}
..picker-videosgrid .picker-edit-toolbar {display: none;}
..picker-videomsgbar.picker-msgbar.jfk-butterBar {width: 180px; z-index: 220=
0 !important;}
..picker-videosgrid .picker-photo-control-preview.picker-video-player {z-ind=
ex: 2103;}
..picker-videosgrid .new-upload-box-error .picker-photos-error-text {bottom:=
0px;}
..picker-html5-player-wrapper ,.picker-video-thumbnail {position: absolute; =
top: 0px; bottom: 0px; left: 0px; right: 0px;}
..picker-ribbon-wrapper {overflow: hidden; position: absolute; top: -3px; le=
ft: -3px; width: 85px; height: 88px;}
..picker-ribbon {position: relative; padding: 6px 0px; left: -24px; top: 24p=
x; width: 120px; font-size: 10px; font-weight: bold; color: rgb(255, 255, 2=
55); text-align: center; text-shadow: 0px 2px 0px rgba(0, 0, 0, 0.5); text-=
transform: uppercase; opacity: 0.9; transform: rotate(-45deg); background-c=
olor: rgb(170, 0, 0); background-image: -moz-linear-gradient(center top , r=
gb(255, 0, 0), rgb(170, 0, 0)); box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.3);=
}
..goog-inline-block {position: relative; display: inline-block;}
* html .goog-inline-block ,:first-child + html .goog-inline-block ,body .go=
og-inline-block {display: inline;}
..jfk-button {border-radius: 2px; cursor: default; font-size: 11px; font-wei=
ght: bold; text-align: center; white-space: nowrap; margin-right: 16px; hei=
ght: 27px; line-height: 27px; min-width: 54px; outline: 0px none; padding: =
0px 8px;}
..jfk-button-hover {box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1);}
..jfk-button-selected {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1) inset;}
..jfk-button .jfk-button-img {margin-top: -3px; vertical-align: middle;}
..jfk-button-label {margin-left: 5px;}
..jfk-button-narrow {min-width: 34px; padding: 0px;}
..jfk-button-collapse-left ,.jfk-button-collapse-right {z-index: 1;}
..jfk-button-collapse-left.jfk-button-disabled {z-index: 0;}
..jfk-button-checked.jfk-button-collapse-left ,.jfk-button-checked.jfk-butto=
n-collapse-right {z-index: 2;}
..jfk-button-collapse-left:focus ,.jfk-button-collapse-right:focus ,.jfk-but=
ton-hover.jfk-button-collapse-left ,.jfk-button-hover.jfk-button-collapse-r=
ight {z-index: 3;}
..jfk-button-collapse-left {margin-left: -1px; border-bottom-left-radius: 0p=
x; border-top-left-radius: 0px;}
..jfk-button-collapse-right {margin-right: 0px; border-top-right-radius: 0px=
; border-bottom-right-radius: 0px;}
..jfk-button.jfk-button-disabled:active {box-shadow: none;}
..jfk-button-action {box-shadow: none; background-color: rgb(77, 144, 254); =
background-image: -moz-linear-gradient(center top , rgb(77, 144, 254), rgb(=
71, 135, 237)); border: 1px solid rgb(48, 121, 237); color: rgb(255, 255, 2=
55);}
..jfk-button-action.jfk-button-hover {box-shadow: none; background-color: rg=
b(53, 122, 232); background-image: -moz-linear-gradient(center top , rgb(77=
, 144, 254), rgb(53, 122, 232)); border: 1px solid rgb(47, 91, 183);}
..jfk-button-action:focus {box-shadow: 0px 0px 0px 1px rgb(255, 255, 255) in=
set; border: 1px solid rgba(0, 0, 0, 0); outline: 0px none rgba(0, 0, 0, 0)=
;}
..jfk-button-action.jfk-button-clear-outline {box-shadow: none; outline: med=
ium none;}
..jfk-button-action:active {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3) inset=
; background: rgb(53, 122, 232) none repeat scroll 0% 0%; border: 1px solid=
rgb(47, 91, 183);}
..jfk-button-action.jfk-button-disabled {background: rgb(77, 144, 254) none =
repeat scroll 0% 0%; opacity: 0.5;}
..jfk-button-contrast {box-shadow: none; background-color: rgb(245, 245, 245=
); background-image: -moz-linear-gradient(center top , rgb(245, 245, 245), =
rgb(241, 241, 241)); color: rgb(68, 68, 68); border: 1px solid rgba(0, 0, 0=
, 0.1);}
..jfk-button-contrast.jfk-button-hover ,.jfk-button-contrast.jfk-button-clea=
r-outline.jfk-button-hover {box-shadow: none; background-color: rgb(248, 24=
8, 248); background-image: -moz-linear-gradient(center top , rgb(248, 248, =
248), rgb(241, 241, 241)); border: 1px solid rgb(198, 198, 198); color: rgb=
(51, 51, 51);}
..jfk-button-contrast:active ,.jfk-button-contrast.jfk-button-hover:active {=
box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1) inset; background: rgb(248, 248,=
248) none repeat scroll 0% 0%;}
..jfk-button-contrast.jfk-button-selected ,.jfk-button-contrast.jfk-button-c=
lear-outline.jfk-button-selected {background-color: rgb(238, 238, 238); bac=
kground-image: -moz-linear-gradient(center top , rgb(248, 248, 248), rgb(24=
1, 241, 241)); border: 1px solid rgb(204, 204, 204); color: rgb(51, 51, 51)=
;}
..jfk-button-contrast.jfk-button-checked ,.jfk-button-contrast.jfk-button-cl=
ear-outline.jfk-button-checked {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1) =
inset; background-color: rgb(238, 238, 238); background-image: -moz-linear-=
gradient(center top , rgb(238, 238, 238), rgb(224, 224, 224)); border: 1px =
solid rgb(204, 204, 204); color: rgb(51, 51, 51);}
..jfk-button-contrast:focus {border: 1px solid rgb(77, 144, 254); outline: m=
edium none;}
..jfk-button-contrast.jfk-button-clear-outline {border: 1px solid rgb(220, 2=
20, 220); outline: medium none;}
..jfk-button-contrast.jfk-button-disabled {background: rgb(255, 255, 255) no=
ne repeat scroll 0% 0%; border: 1px solid rgba(0, 0, 0, 0.05); color: rgb(1=
84, 184, 184);}
..jfk-button-contrast .jfk-button-img {opacity: 0.55;}
..jfk-button-contrast.jfk-button-checked .jfk-button-img ,.jfk-button-contra=
st.jfk-button-selected .jfk-button-img ,.jfk-button-contrast.jfk-button-hov=
er .jfk-button-img {opacity: 0.9;}
..jfk-button-contrast.jfk-button-disabled .jfk-button-img {opacity: 0.333;}
..jfk-button-default {box-shadow: none; background-color: rgb(61, 148, 0); b=
ackground-image: -moz-linear-gradient(center top , rgb(61, 148, 0), rgb(57,=
138, 0)); border: 1px solid rgb(41, 105, 29); color: rgb(255, 255, 255); t=
ext-shadow: 0px 1px rgba(0, 0, 0, 0.1);}
..jfk-button-default.jfk-button-hover {box-shadow: none; background-color: r=
gb(54, 130, 0); background-image: -moz-linear-gradient(center top , rgb(61,=
148, 0), rgb(54, 130, 0)); border: 1px solid rgb(45, 98, 0); text-shadow: =
0px 1px rgba(0, 0, 0, 0.3);}
..jfk-button-default:focus {box-shadow: 0px 0px 0px 1px rgb(255, 255, 255) i=
nset; border: 1px solid rgba(0, 0, 0, 0); outline: 0px none rgba(0, 0, 0, 0=
);}
..jfk-button-default.jfk-button-clear-outline {box-shadow: none; outline: me=
dium none;}
..jfk-button-default:active {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3) inse=
t; background: rgb(54, 130, 0) none repeat scroll 0% 0%; border: 1px solid =
rgb(45, 98, 0);}
..jfk-button-default.jfk-button-disabled {background: rgb(61, 148, 0) none r=
epeat scroll 0% 0%; opacity: 0.5;}
..jfk-button-primary {box-shadow: none; background-color: rgb(209, 72, 54); =
background-image: -moz-linear-gradient(center top , rgb(221, 75, 57), rgb(2=
09, 72, 54)); border: 1px solid transparent; color: rgb(255, 255, 255); tex=
t-shadow: 0px 1px rgba(0, 0, 0, 0.1); text-transform: uppercase;}
..jfk-button-primary.jfk-button-hover {box-shadow: 0px 1px 1px rgba(0, 0, 0,=
0.2); background-color: rgb(197, 55, 39); background-image: -moz-linear-gr=
adient(center top , rgb(221, 75, 57), rgb(197, 55, 39)); border-width: 1px;=
border-style: solid; border-color: rgb(176, 40, 26) rgb(176, 40, 26) rgb(1=
75, 48, 31); -moz-border-top-colors: none; -moz-border-right-colors: none; =
-moz-border-bottom-colors: none; -moz-border-left-colors: none; border-imag=
e: none;}
..jfk-button-primary:focus {box-shadow: 0px 0px 0px 1px rgb(255, 255, 255) i=
nset; border: 1px solid rgba(0, 0, 0, 0); outline: 0px none rgba(0, 0, 0, 0=
);}
..jfk-button-primary.jfk-button-clear-outline {box-shadow: none; outline: me=
dium none;}
..jfk-button-primary:active {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3) inse=
t; background-color: rgb(176, 40, 26); background-image: -moz-linear-gradie=
nt(center top , rgb(221, 75, 57), rgb(176, 40, 26)); border: 1px solid rgb(=
153, 42, 27);}
..jfk-button-primary.jfk-button-disabled {background: rgb(209, 72, 54) none =
repeat scroll 0% 0%; opacity: 0.5;}
..jfk-slideToggle {border-radius: 2px; box-shadow: 0px 1px 2px 0px rgba(0, 0=
, 0, 0.1) inset; background-color: rgb(245, 245, 245); background-image: -m=
oz-linear-gradient(center top , rgb(238, 238, 238), rgb(224, 224, 224)); bo=
rder: 1px solid rgb(204, 204, 204); color: rgb(102, 102, 102); font-weight:=
bold; height: 27px; line-height: 27px; margin-right: 16px; outline: medium=
none; overflow: hidden; padding: 0px; position: relative; width: 94px;}
..jfk-slideToggle-on ,.jfk-slideToggle-off ,.jfk-slideToggle-thumb {display:=
inline-block; text-align: center; text-transform: uppercase; width: 47px;}
..jfk-slideToggle-on {box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1) inset; =
background-color: rgb(57, 139, 242); background-image: -moz-linear-gradient=
(center top , rgb(59, 147, 255), rgb(54, 137, 238)); color: rgb(255, 255, 2=
55); height: 27px;}
..jfk-slideToggle-off {border-radius: 2px 2px 0px 0px;}
..jfk-slideToggle-thumb {box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1); bac=
kground-color: rgb(245, 245, 245); background-image: -moz-linear-gradient(c=
enter top , rgb(248, 248, 248), rgb(241, 241, 241)); transition: all 0.13s =
ease-out 0s; border: 1px solid rgb(204, 204, 204); display: block; height: =
27px; left: -1px; position: absolute; top: -1px;}
..jfk-slideToggle-thumb::after {content: ""; background-image: -moz-linear-g=
radient(left center , rgb(204, 204, 204) 50%, transparent 50%), -moz-linear=
-gradient(left center , rgb(204, 204, 204) 50%, transparent 50%), -moz-line=
ar-gradient(left center , rgb(204, 204, 204) 50%, transparent 50%), -moz-li=
near-gradient(left center , rgb(204, 204, 204) 50%, transparent 50%), -moz-=
linear-gradient(left center , rgb(204, 204, 204) 50%, transparent 50%); bac=
kground-position: 0px 0px, 0px 2px, 0px 4px, 0px 6px, 0px 8px; background-r=
epeat: repeat-x; background-size: 2px 1px; display: block; height: 9px; lef=
t: 15px; position: absolute; top: 9px; width: 17px;}
..jfk-slideToggle.jfk-slideToggle-checked .jfk-slideToggle-thumb {left: 47px=
;}
..jfk-slideToggle:focus {border: 1px solid rgb(77, 144, 254);}
..jfk-slideToggle.jfk-slideToggle-clearOutline {border: 1px solid rgb(204, 2=
04, 204);}
..jfk-button-standard {box-shadow: none; background-color: rgb(245, 245, 245=
); background-image: -moz-linear-gradient(center top , rgb(245, 245, 245), =
rgb(241, 241, 241)); color: rgb(68, 68, 68); border: 1px solid rgba(0, 0, 0=
, 0.1);}
..jfk-button-standard.jfk-button-hover ,.jfk-button-standard.jfk-button-clea=
r-outline.jfk-button-hover {box-shadow: none; background-color: rgb(248, 24=
8, 248); background-image: -moz-linear-gradient(center top , rgb(248, 248, =
248), rgb(241, 241, 241)); border: 1px solid rgb(198, 198, 198); color: rgb=
(51, 51, 51);}
..jfk-button-standard:active ,.jfk-button-standard.jfk-button-hover:active {=
box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1) inset; background: rgb(248, 248,=
248) none repeat scroll 0% 0%; color: rgb(51, 51, 51);}
..jfk-button-standard.jfk-button-selected ,.jfk-button-standard.jfk-button-c=
lear-outline.jfk-button-selected {background-color: rgb(238, 238, 238); bac=
kground-image: -moz-linear-gradient(center top , rgb(248, 248, 248), rgb(24=
1, 241, 241)); border: 1px solid rgb(204, 204, 204); color: rgb(51, 51, 51)=
;}
..jfk-button-standard.jfk-button-checked ,.jfk-button-standard.jfk-button-cl=
ear-outline.jfk-button-checked {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1) =
inset; background-color: rgb(238, 238, 238); background-image: -moz-linear-=
gradient(center top , rgb(238, 238, 238), rgb(224, 224, 224)); border: 1px =
solid rgb(204, 204, 204); color: rgb(51, 51, 51);}
..jfk-button-standard:focus {border: 1px solid rgb(77, 144, 254); outline: m=
edium none;}
..jfk-button-standard.jfk-button-clear-outline {border: 1px solid rgba(0, 0,=
0, 0.1); outline: medium none;}
..jfk-button-standard.jfk-button-disabled {background: rgb(255, 255, 255) no=
ne repeat scroll 0% 0%; border: 1px solid rgba(0, 0, 0, 0.05); color: rgb(1=
84, 184, 184);}
..jfk-button-standard .jfk-button-img {opacity: 0.55;}
..jfk-button-standard.jfk-button-checked .jfk-button-img ,.jfk-button-standa=
rd.jfk-button-selected .jfk-button-img ,.jfk-button-standard.jfk-button-hov=
er .jfk-button-img {opacity: 0.9;}
..jfk-button-standard.jfk-button-disabled .jfk-button-img {opacity: 0.333;}
..jfk-button-flat {border-radius: 0px; border: 1px solid transparent; font-s=
ize: 13px; font-weight: normal; height: 21px; line-height: 21px; margin-rig=
ht: 1px; min-width: 0px; padding: 0px;}
..jfk-button-flat.jfk-button-hover ,.jfk-button-flat.jfk-button-selected ,.j=
fk-button-flat:focus ,.jfk-button-flat:active {box-shadow: none;}
..jfk-button-flat .jfk-button-img {height: 21px; opacity: 0.55; width: 21px;=
}
..jfk-button-flat .jfk-button-label {display: inline-block; margin: 0px; pad=
ding: 0px 1px;}
..jfk-button-flat.jfk-button-selected .jfk-button-img ,.jfk-button-flat.jfk-=
button-hover .jfk-button-img {opacity: 0.9;}
..jfk-button-flat.jfk-button-disabled .jfk-button-img {opacity: 0.333;}
..jfk-button-flat:focus {border: 1px solid rgb(77, 144, 254);}
..jfk-button-flat.jfk-button-clear-outline {border: 1px solid transparent;}
..jfk-button-mini {background-color: rgb(245, 245, 245); background-image: -=
moz-linear-gradient(center top , rgb(245, 245, 245), rgb(241, 241, 241)); b=
order: 1px solid rgba(0, 0, 0, 0.1); color: rgb(68, 68, 68); height: 17px; =
line-height: 17px; min-width: 22px; text-shadow: 0px 1px rgba(0, 0, 0, 0.1)=
;}
..jfk-button-mini.jfk-button-hover ,.jfk-button-mini.jfk-button-clear-outlin=
e.jfk-button-hover {background-color: rgb(248, 248, 248); background-image:=
-moz-linear-gradient(center top , rgb(248, 248, 248), rgb(241, 241, 241));=
border: 1px solid rgb(198, 198, 198); text-shadow: 0px 1px rgba(0, 0, 0, 0=
..3);}
..jfk-button-mini:active {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1) inset;}
..jfk-button-mini.jfk-button-checked ,.jfk-button-mini.jfk-button-clear-outl=
ine.jfk-button-checked {box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1) inset; b=
ackground-color: rgb(224, 224, 224); background-image: -moz-linear-gradient=
(center top , rgb(238, 238, 238), rgb(224, 224, 224)); border: 1px solid rg=
b(204, 204, 204); color: rgb(51, 51, 51);}
..jfk-button-mini:focus {border: 1px solid rgb(77, 144, 254);}
..jfk-button-mini.jfk-button-clear-outline {border: 1px solid rgb(220, 220, =
220);}
..jfk-button-mini.jfk-button-disabled {background: rgb(255, 255, 255) none r=
epeat scroll 0% 0%; border: 1px solid rgba(0, 0, 0, 0.05); color: rgb(184, =
184, 184);}
..jfk-butterBar {border-radius: 2px; box-shadow: 0px 2px 4px rgba(0, 0, 0, 0=
..2); transition: all 0s linear 1s, opacity 1s ease 0s; border-style: solid;=
border-width: 0px; font-size: 11px; height: 0px; opacity: 0; visibility: h=
idden; overflow: hidden; padding: 0px; text-align: center;}
..jfk-butterBar-info {background-color: rgb(249, 237, 190); border-color: rg=
b(240, 195, 109); color: rgb(51, 51, 51);}
..jfk-butterBar-error {background-color: rgb(72, 72, 72); border-color: rgb(=
32, 32, 32); color: rgb(255, 255, 255);}
..jfk-butterBar-promo {background-color: rgb(214, 233, 248); border-color: r=
gb(77, 144, 240); color: rgb(51, 51, 51);}
..jfk-butterBar-warning {background-color: rgb(221, 75, 57); border-color: r=
gb(96, 32, 25); color: rgb(255, 255, 255);}
..jfk-butterBar-shown {transition: opacity 0.218s ease 0s; border-width: 1px=
; min-height: 14px; height: auto; opacity: 1; visibility: visible; padding:=
6px 16px;}
..jfk-butterBar-mini.jfk-butterBar-shown {padding: 2px 16px;}
..picker-dialog {background: rgb(255, 255, 255) none repeat scroll 0% 0%; bo=
rder: 1px solid rgb(172, 172, 172); position: absolute; box-shadow: 0px 4px=
16px rgba(0, 0, 0, 0.2); z-index: 1021; outline: medium none; padding: 0px=
;}
..picker.modal-dialog-content {width: 705px; height: 370px; padding: 0px; ma=
rgin: 0px; position: relative; border: 0px none;}
..picker.modal-dialog-bg {background: rgb(255, 255, 255) none repeat scroll =
0% 0%; left: 0px; position: absolute; top: 0px; z-index: 1001;}
..picker.modal-dialog-title ,.picker.modal-dialog-buttons {display: none;}
..picker-frame {width: 100%; height: 100%; border: 0px none; overflow: hidde=
n;}
..picker-upload-button-visible .picker-drag-drop-supported .picker-photos-up=
load-dropzone-cell {vertical-align: middle;}
..picker-photos-upload-dropzone td {text-align: center;}
..picker .progress-bar-thumb {background-color: rgb(93, 128, 239);}
..goog-inline-block {position: relative; display: inline-block;}
* html .goog-inline-block ,body .goog-inline-block {display: inline;}
:first-child + html .goog-inline-block {display: inline;}
..sketchy-dialog-bg ,.sketchy-dialog-fg {left: 0px; overflow: auto; position=
: absolute; top: 0px;}
..sketchy-dialog-bg {background-color: rgb(238, 238, 238); opacity: 0.75;}
..sketchy-dialog-fg {cursor: move;}
..sketchy-dialog {background-color: rgb(193, 217, 255); border: 1px solid rg=
b(58, 87, 116); padding: 8px; position: absolute; cursor: move;}
..sketchy-dialog-title {background-color: rgb(224, 237, 254); color: rgb(0, =
0, 0); font: bold 14px Arial,sans-serif; padding: 8px 15px 8px 8px; positio=
n: relative; vertical-align: middle;}
..sketchy-dialog-title-close {height: 24px; position: absolute; right: 8px; =
top: 4px; font-weight: normal; padding: 0px 6px;}
..sketchy-dialog-title-autosave {color: rgb(102, 102, 102); font: 12px Arial=
,sans-serif; position: absolute;}
..sketchy-dialog-content {background-color: rgb(255, 255, 255);}
..goog-tab-bar {margin: 0px; border: 0px none; padding: 0px; list-style: out=
side none none; cursor: default; outline: medium none; background: rgb(235,=
239, 249) none repeat scroll 0% 0%;}
..goog-tab-bar-clear {clear: both; height: 0px; overflow: hidden;}
..goog-tab-bar-start {float: left;}
..goog-tab-bar-end {float: right;}
* html .goog-tab-bar-start ,body .goog-tab-bar-start {margin-right: -3px;}
* html .goog-tab-bar-end ,body .goog-tab-bar-end {margin-left: -3px;}
div.tr_bubble {position: absolute;}
..tr_bubble_link {color: rgb(0, 0, 204); text-decoration: underline; cursor:=
pointer; font-size: 100%;}
..tr_bubble .tr_option-link ,.tr_bubble #tr_delete-image ,.tr_bubble #tr_mod=
ule-options-link {font-size: 83%;}
..tr_bubble .tr_body ,.tr_bubble .tr_t ,.tr_bubble .tr_l ,.tr_bubble .tr_r ,=
..tr_bubble .tr_b {background-color: rgb(224, 236, 255);}
..tr_bubble .tr_body {padding: 0px 19px 4px 4px; white-space: nowrap;}
..tr_bubble .tr_spacer {padding: 1px;}
..tr_bubble .tr_body ,.tr_bubble .tr_td ,.tr_bubble .tr_th {font-size: 83%; =
font-family: Arial,Helvetica,sans-serif;}
..tr_bubble .tr_tr ,.tr_bubble .tr_tl ,.tr_bubble .tr_bl ,.tr_bubble .tr_br =
{background-repeat: no-repeat; height: 0px; width: 2px;}
..tr_bubble .tr_tr {background-image: url("//ssl.gstatic.com/editor/bubble2_=
tr.gif");}
..tr_bubble .tr_tl {background-image: url("//ssl.gstatic.com/editor/bubble2_=
tl.gif");}
..tr_bubble .tr_bl {background-image: url("//ssl.gstatic.com/editor/bubble2_=
bl.gif");}
..tr_bubble .tr_br {background-image: url("//ssl.gstatic.com/editor/bubble2_=
br.gif");}
..tr_bubble .tr_t {border-top: 1px solid rgb(153, 192, 255);}
..tr_bubble .tr_b {border-bottom: 1px solid rgb(153, 192, 255);}
..tr_bubble .tr_l {border-left: 1px solid rgb(153, 192, 255);}
..tr_bubble .tr_r {border-right: 1px solid rgb(153, 192, 255);}
..tr_bubble .tr_tr ,.tr_bubble .tr_tl ,.tr_bubble .tr_bl ,.tr_bubble .tr_br =
,.tr_bubble .tr_b ,.tr_bubble .tr_t {line-height: 0; font-size: 1px;}
..tr_bubble_closebox {position: absolute; cursor: default; background: rgba(=
0, 0, 0, 0) url("//ssl.gstatic.com/editor/bubble_closebox.gif") no-repeat s=
croll left top; padding: 0px; margin: 0px; width: 10px; height: 10px; top: =
3px; right: 5px;}
div.tr_bubble_panel {padding: 2px 0px 1px;}
div.tr_bubble_panel_title {display: none;}
div.tr_multi_bubble div.tr_bubble_panel_title {margin-right: 1px; display: =
block; float: left; width: 50px;}
div.tr_multi_bubble div.tr_bubble_panel {padding: 2px 0px 1px; margin-right=
: 50px;}
..ee-content {width: 400px; height: 200px; overflow: auto; padding: 4px 8px;=
background: rgb(255, 255, 255) none repeat scroll 0% 0%; border: 1px solid=
rgb(51, 102, 153);}
..ee-tex {width: 388px; height: 60px; border: 1px solid rgb(0, 0, 0); margin=
-top: 4px; margin-bottom: 10px; display: block;}
..ee-preview-container {width: 380px; height: 80px; overflow: auto; border: =
1px solid rgb(204, 204, 204); padding: 4px;}
..editable a ,body a {cursor: text;}
..tr_well .tr_tl {background-image: url("//ssl.gstatic.com/editor/well_tl2.g=
if"); background-repeat: no-repeat;}
..tr_well .tr_t {background-image: url("//ssl.gstatic.com/editor/well_top2.g=
if"); background-repeat: repeat-x;}
..tr_well .tr_tr {background-image: url("//ssl.gstatic.com/editor/well_tr.gi=
f"); background-repeat: no-repeat;}
..tr_well .tr_l {background-image: url("//ssl.gstatic.com/editor/well_left.g=
if"); background-repeat: repeat-y;}
..tr_well .tr_r {background-image: url("//ssl.gstatic.com/editor/well_right.=
gif"); background-repeat: repeat-y;}
..tr_well .tr_r2 {background-image: url("//ssl.gstatic.com/editor/well_right=
2.gif"); background-repeat: repeat-y; background-position: right center;}
..tr_well .tr_bl {background-image: url("//ssl.gstatic.com/editor/well_bl.gi=
f"); background-repeat: no-repeat;}
..tr_well .tr_b {background-image: url("//ssl.gstatic.com/editor/well_bottom=
..gif"); background-repeat: repeat-x;}
..tr_well .tr_br {background-image: url("//ssl.gstatic.com/editor/well_br.gi=
f"); background-repeat: no-repeat;}
..tr_toolbar-styles .tr_well {border: medium none; padding: 0px; font-size: =
83%; text-align: center;}
..tr_toolbar-vertical .tr_toolbar-styles .tr_well .tr_separator {height: 5px=
; display: block;}
..tr_toolbar-styles .tr_well .tr_selected-style {background: rgb(250, 209, 9=
9) none repeat scroll 0% 0%;}
..tr_toolbar-styles .tr_well .tr_unselected-style span {color: rgb(97, 97, 1=
88); text-decoration: underline; font-weight: normal; cursor: pointer;}
..tr_toolbar-styles .tr_well .tr_selected-style span {font-weight: bold; cur=
sor: pointer;}
..tr_toolbar-vertical .tr_toolbar-styles {float: left;}
..tr_toolbar-vertical .tr_toolbar-styles .tr_well {width: 7.8em;}
..goog-tab {position: relative; border: 1px solid rgb(51, 102, 153); padding=
: 4px 8px; color: rgb(51, 51, 51); background: rgb(221, 221, 221) none repe=
at scroll 0% 0%; cursor: default;}
..goog-tab-bar-top .goog-tab {margin: 1px 4px 0px 0px; border-bottom: 0px no=
ne; float: left;}
..goog-tab-bar-bottom .goog-tab {margin: 0px 4px 1px 0px; border-top: 0px no=
ne; float: left;}
..goog-tab-bar-start .goog-tab {margin: 0px 0px 4px 1px; border-right: 0px n=
one;}
..goog-tab-bar-end .goog-tab {margin: 0px 1px 4px 0px; border-left: 0px none=
;}
..goog-tab-hover {background: rgb(238, 238, 238) none repeat scroll 0% 0%;}
..goog-tab-disabled {color: rgb(255, 255, 255); background: rgb(204, 204, 20=
4) none repeat scroll 0% 0%; border-color: rgb(204, 204, 204);}
..goog-tab-selected {background: rgb(255, 255, 255) none repeat scroll 0% 0%=
!important;}
..goog-tab-bar-top .goog-tab-selected {top: 1px; margin-top: 0px; padding-bo=
ttom: 5px;}
..goog-tab-bar-bottom .goog-tab-selected {top: -1px; margin-bottom: 0px; pad=
ding-top: 5px;}
..goog-tab-bar-start .goog-tab-selected {left: 1px; margin-left: 0px; paddin=
g-right: 9px;}
..goog-tab-bar-end .goog-tab-selected {left: -1px; margin-right: 0px; paddin=
g-left: 9px;}
..tr_tabbed-pane-tabs {line-height: 1.3; vertical-align: top; font-size: 10p=
t;}
..tr_tabbed-pane-tabs p {margin-bottom: 0.7ex; font-size: 10pt;}
..tr_tabbed-pane-tabs div {cursor: pointer; width: 148px;}
..tr_tabbed-pane-tabs .tr_tabbed-pane-tab-label {color: blue; text-decoratio=
n: underline;}
..tr_tabbed-pane-tabs td {font-size: 13px;}
..tr_vertical-tab div {padding: 0.5ex 0px 0.5ex 0.7ex;}
..tr_tabbed-pane {padding: 1.3ex 0px; font-size: 10pt;}
..tr_tabbed-pane-tabs .tr_selected-tab-in-tabbed-pane {background: white non=
e repeat scroll 0% 0%;}
..tr_tabbed-pane-tabs .tr_selected-tab-in-tabbed-pane .tr_tabbed-pane-tab-la=
bel {color: black; font-weight: bold; text-decoration: none;}
..tr_tabbed-pane-tab-content {width: 100%; vertical-align: top; padding: 5px=
7px 1px; background: white none repeat scroll 0% 0%; font-size: 10pt;}
..goog-palette {cursor: default; outline: medium none;}
..goog-palette-table {border: 1px solid rgb(102, 102, 102); border-collapse:=
collapse; margin: 5px;}
..goog-palette-cell {border-width: 0px 1px 0px 0px; border-style: none solid=
none none; border-color: currentcolor rgb(102, 102, 102) currentcolor curr=
entcolor; -moz-border-top-colors: none; -moz-border-right-colors: none; -mo=
z-border-bottom-colors: none; -moz-border-left-colors: none; border-image: =
none; cursor: pointer; height: 18px; margin: 0px; text-align: center; verti=
cal-align: middle; width: 18px;}
..goog-palette-cell .goog-palette-colorswatch {border: medium none; font-siz=
e: x-small; height: 18px; position: relative; width: 18px;}
..goog-palette-cell-hover .goog-palette-colorswatch {border: 1px solid rgb(2=
55, 255, 255); height: 16px; width: 16px;}
..goog-palette-cell-selected .goog-palette-colorswatch {background: rgba(0, =
0, 0, 0) url("//ssl.gstatic.com/editor/editortoolbar.png") no-repeat scroll=
-368px 0px; border: 1px solid rgb(51, 51, 51); color: rgb(255, 255, 255); =
font-weight: bold; height: 16px; width: 16px;}
..goog-palette-customcolor {background-color: rgb(250, 250, 250); border: 1p=
x solid rgb(238, 238, 238); color: rgb(102, 102, 102); font-size: x-small; =
height: 15px; position: relative; width: 15px;}
..goog-palette-cell-hover .goog-palette-customcolor {background-color: rgb(2=
55, 238, 238); border: 1px solid rgb(255, 102, 102); color: rgb(255, 102, 1=
02);}
..goog-menu-button {background: rgb(221, 221, 221) url("//ssl.gstatic.com/ed=
itor/button-bg.png") repeat-x scroll left top; border: 0px none; color: rgb=
(0, 0, 0); cursor: pointer; list-style: outside none none; margin: 2px; out=
line: medium none; padding: 0px; text-decoration: none; vertical-align: mid=
dle;}
..goog-menu-button-outer-box ,.goog-menu-button-inner-box {border-style: sol=
id; border-color: rgb(170, 170, 170); vertical-align: top;}
..goog-menu-button-outer-box {margin: 0px; border-width: 1px 0px; padding: 0=
px;}
..goog-menu-button-inner-box {margin: 0px -1px; border-width: 0px 1px; paddi=
ng: 3px 4px;}
* html .goog-menu-button-inner-box ,body .goog-menu-button-inner-box {left:=
-1px;}
* html .goog-menu-button-rtl .goog-menu-button-outer-box ,body .goog-menu-b=
utton-rtl .goog-menu-button-outer-box {left: -1px; right: auto;}
* html .goog-menu-button-rtl .goog-menu-button-inner-box ,body .goog-menu-b=
utton-rtl .goog-menu-button-inner-box {right: auto;}
:first-child + html .goog-menu-button-inner-box {left: -1px;}
:first-child + html .goog-menu-button-rtl .goog-menu-button-inner-box {left=
: 1px; right: auto;}
..goog-menu-button-disabled {background-image: none !important; opacity: 0.3=
;}
..goog-menu-button-disabled .goog-menu-button-outer-box ,.goog-menu-button-d=
isabled .goog-menu-button-inner-box ,.goog-menu-button-disabled .goog-menu-=
button-caption ,.goog-menu-button-disabled .goog-menu-button-dropdown {colo=
r: rgb(51, 51, 51) !important; border-color: rgb(153, 153, 153) !important;=
}
* html .goog-menu-button-disabled ,body .goog-menu-button-disabled {margin:=
2px 1px !important; padding: 0px 1px !important;}
:first-child + html .goog-menu-button-disabled {margin: 2px 1px !important;=
padding: 0px 1px !important;}
..goog-menu-button-hover .goog-menu-button-outer-box ,.goog-menu-button-hove=
r .goog-menu-button-inner-box {border-color: rgb(153, 204, 255) rgb(102, 15=
3, 238) rgb(102, 153, 238) rgb(119, 170, 255) !important;}
..goog-menu-button-active ,.goog-menu-button-open {background-color: rgb(187=
, 187, 187); background-position: left bottom;}
..goog-menu-button-focused .goog-menu-button-outer-box ,.goog-menu-button-fo=
cused .goog-menu-button-inner-box {border-color: orange;}
..goog-menu-button-caption {padding: 0px 4px 0px 0px; vertical-align: top;}
..goog-menu-button-dropdown {height: 15px; width: 7px; background: rgba(0, 0=
, 0, 0) url("//ssl.gstatic.com/editor/editortoolbar.png") no-repeat scroll =
-388px 0px; vertical-align: top;}
..goog-menu-button-collapse-right ,.goog-menu-button-collapse-right .goog-me=
nu-button-outer-box ,.goog-menu-button-collapse-right .goog-menu-button-inn=
er-box {margin-right: 0px;}
..goog-menu-button-collapse-left ,.goog-menu-button-collapse-left .goog-menu=
-button-outer-box ,.goog-menu-button-collapse-left .goog-menu-button-inner-=
box {margin-left: 0px;}
..goog-menu-button-collapse-left .goog-menu-button-inner-box {border-left: 1=
px solid rgb(255, 255, 255);}
..goog-menu-button-collapse-left.goog-menu-button-checked .goog-menu-button-=
inner-box {border-left: 1px solid rgb(221, 221, 221);}
..goog-color-menu-button-indicator {border-bottom: 4px solid rgb(240, 240, 2=
40);}
..goog-color-menu-button .goog-menu-button-inner-box ,.goog-toolbar-color-me=
nu-button .goog-toolbar-menu-button-inner-box {padding-top: 2px !important;=
padding-bottom: 2px !important;}
..goog-custom-button {margin: 2px; border: 0px none; padding: 0px; font-fami=
ly: Arial,sans-serif; color: rgb(0, 0, 0); background: rgb(221, 221, 221) u=
rl("//ssl.gstatic.com/editor/button-bg.png") repeat-x scroll left top; text=
-decoration: none; list-style: outside none none; vertical-align: middle; c=
ursor: default; outline: medium none;}
..goog-custom-button-outer-box ,.goog-custom-button-inner-box {border-style:=
solid; border-color: rgb(170, 170, 170); vertical-align: top;}
..goog-custom-button-outer-box {margin: 0px; border-width: 1px 0px; padding:=
0px;}
..goog-custom-button-inner-box {margin: 0px -1px; border-width: 0px 1px; pad=
ding: 3px 4px; white-space: nowrap;}
* html .goog-custom-button-inner-box ,body .goog-custom-button-inner-box {l=
eft: -1px;}
* html .goog-custom-button-rtl .goog-custom-button-outer-box ,body .goog-cu=
stom-button-rtl .goog-custom-button-outer-box {left: -1px;}
* html .goog-custom-button-rtl .goog-custom-button-inner-box ,body .goog-cu=
stom-button-rtl .goog-custom-button-inner-box {right: auto;}
:first-child + html .goog-custom-button-inner-box {left: -1px;}
:first-child + html .goog-custom-button-rtl .goog-custom-button-inner-box {=
left: 1px;}
..goog-custom-button-disabled {background-image: none !important; opacity: 0=
..3;}
..goog-custom-button-disabled .goog-custom-button-outer-box ,.goog-custom-bu=
tton-disabled .goog-custom-button-inner-box {color: rgb(51, 51, 51) !import=
ant; border-color: rgb(153, 153, 153) !important;}
* html .goog-custom-button-disabled ,body .goog-custom-button-disabled {mar=
gin: 2px 1px !important; padding: 0px 1px !important;}
:first-child + html .goog-custom-button-disabled {margin: 2px 1px !importan=
t; padding: 0px 1px !important;}
..goog-custom-button-hover .goog-custom-button-outer-box ,.goog-custom-butto=
n-hover .goog-custom-button-inner-box {border-color: rgb(153, 204, 255) rgb=
(102, 153, 238) rgb(102, 153, 238) rgb(119, 170, 255) !important;}
..goog-custom-button-active ,.goog-custom-button-checked {background-color: =
rgb(187, 187, 187); background-position: left bottom;}
..goog-custom-button-focused .goog-custom-button-outer-box ,.goog-custom-but=
ton-focused .goog-custom-button-inner-box {border-color: orange;}
..goog-custom-button-collapse-right ,.goog-custom-button-collapse-right .goo=
g-custom-button-outer-box ,.goog-custom-button-collapse-right .goog-custom-=
button-inner-box {margin-right: 0px;}
..goog-custom-button-collapse-left ,.goog-custom-button-collapse-left .goog-=
custom-button-outer-box ,.goog-custom-button-collapse-left .goog-custom-but=
ton-inner-box {margin-left: 0px;}
..goog-custom-button-collapse-left .goog-custom-button-inner-box {border-lef=
t: 1px solid rgb(255, 255, 255);}
..goog-custom-button-collapse-left.goog-custom-button-checked .goog-custom-b=
utton-inner-box {border-left: 1px solid rgb(221, 221, 221);}
* html .goog-custom-button-collapse-left .goog-custom-button-inner-box ,bod=
y .goog-custom-button-collapse-left .goog-custom-button-inner-box {left: 0p=
x;}
:first-child + html .goog-custom-button-collapse-left .goog-custom-button-i=
nner-box {left: 0px;}
..goog-menu {background: rgb(255, 255, 255) none repeat scroll 0% 0%; border=
-color: rgb(204, 204, 204) rgb(102, 102, 102) rgb(102, 102, 102) rgb(204, 2=
04, 204); border-style: solid; border-width: 1px; cursor: default; font: 13=
px Arial,sans-serif; margin: 0px; outline: medium none; padding: 4px 0px; p=
osition: absolute; z-index: 20000;}
..goog-menuitem {color: rgb(0, 0, 0); font: 13px Arial,sans-serif; list-styl=
e: outside none none; margin: 0px; padding: 4px 7em 4px 28px; white-space: =
nowrap;}
..goog-menuitem.goog-menuitem-rtl {padding-left: 7em; padding-right: 28px;}
..goog-menu-nocheckbox .goog-menuitem ,.goog-menu-noicon .goog-menuitem {pad=
ding-left: 12px;}
..goog-menu-noaccel .goog-menuitem {padding-right: 20px;}
..goog-menuitem-content {color: rgb(0, 0, 0); font: 13px Arial,sans-serif;}
..goog-menuitem-disabled .goog-menuitem-accel ,.goog-menuitem-disabled .goog=
-menuitem-content {color: rgb(204, 204, 204) !important;}
..goog-menuitem-disabled .goog-menuitem-icon {opacity: 0.3;}
..goog-menuitem-highlight ,.goog-menuitem-hover {background-color: rgb(214, =
233, 248); border-color: rgb(214, 233, 248); border-style: dotted; border-w=
idth: 1px 0px; padding-bottom: 3px; padding-top: 3px;}
..goog-menuitem-checkbox ,.goog-menuitem-icon {background-repeat: no-repeat;=
height: 16px; left: 6px; position: absolute; right: auto; vertical-align: =
middle; width: 16px;}
..goog-menuitem-rtl .goog-menuitem-checkbox ,.goog-menuitem-rtl .goog-menuit=
em-icon {left: auto; right: 6px;}
..goog-option-selected .goog-menuitem-checkbox ,.goog-option-selected .goog-=
menuitem-icon {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/e=
ditortoolbar.png") no-repeat scroll -512px 0px;}
..goog-menuitem-accel {color: rgb(153, 153, 153); direction: ltr; left: auto=
; padding: 0px 6px; position: absolute; right: 0px; text-align: right;}
..goog-menuitem-rtl .goog-menuitem-accel {left: 0px; right: auto; text-align=
: left;}
..goog-menuitem-mnemonic-hint {text-decoration: underline;}
..goog-menuitem-mnemonic-separator {color: rgb(153, 153, 153); font-size: 12=
px; padding-left: 4px;}
..goog-menuseparator {border-top: 1px solid rgb(204, 204, 204); margin: 4px =
0px; padding: 0px;}
..goog-toolbar {background: rgb(250, 250, 250) url("//ssl.gstatic.com/editor=
/toolbar-bg.png") repeat-x scroll left bottom; border-bottom: 1px solid rgb=
(213, 213, 213); cursor: default; font: 12px Arial,sans-serif; margin: 0px;=
outline: medium none; padding: 2px; position: relative;}
..goog-toolbar-button {margin: 0px 2px; border: 0px none; padding: 0px; font=
-family: Arial,sans-serif; color: rgb(51, 51, 51); text-decoration: none; l=
ist-style: outside none none; vertical-align: middle; cursor: default; outl=
ine: medium none;}
..goog-toolbar-button-outer-box ,.goog-toolbar-button-inner-box {border: 0px=
none; vertical-align: top;}
..goog-toolbar-button-outer-box {margin: 0px; padding: 1px 0px;}
..goog-toolbar-button-inner-box {margin: 0px -1px; padding: 3px 4px;}
* html .goog-toolbar-button-inner-box ,body .goog-toolbar-button-inner-box =
{left: -1px;}
* html .goog-toolbar-button-rtl .goog-toolbar-button-outer-box ,body .goog-=
toolbar-button-rtl .goog-toolbar-button-outer-box {left: -1px;}
* html .goog-toolbar-button-rtl .goog-toolbar-button-inner-box ,body .goog-=
toolbar-button-rtl .goog-toolbar-button-inner-box {right: auto;}
:first-child + html .goog-toolbar-button-inner-box {left: -1px;}
:first-child + html .goog-toolbar-button-rtl .goog-toolbar-button-inner-box=
{left: 1px; right: auto;}
..goog-toolbar-button-disabled {opacity: 0.3;}
..goog-toolbar-button-disabled .goog-toolbar-button-outer-box ,.goog-toolbar=
-button-disabled .goog-toolbar-button-inner-box {color: rgb(51, 51, 51) !im=
portant; border-color: rgb(153, 153, 153) !important;}
* html .goog-toolbar-button-disabled ,body .goog-toolbar-button-disabled {b=
ackground-color: rgb(240, 240, 240); margin: 0px 1px; padding: 0px 1px;}
:first-child + html .goog-toolbar-button-disabled {background-color: rgb(24=
0, 240, 240); margin: 0px 1px; padding: 0px 1px;}
..goog-toolbar-button-hover .goog-toolbar-button-outer-box ,.goog-toolbar-bu=
tton-active .goog-toolbar-button-outer-box ,.goog-toolbar-button-checked .g=
oog-toolbar-button-outer-box ,.goog-toolbar-button-selected .goog-toolbar-b=
utton-outer-box {border-width: 1px 0px; border-style: solid; padding: 0px;}
..goog-toolbar-button-hover .goog-toolbar-button-inner-box ,.goog-toolbar-bu=
tton-active .goog-toolbar-button-inner-box ,.goog-toolbar-button-checked .g=
oog-toolbar-button-inner-box ,.goog-toolbar-button-selected .goog-toolbar-b=
utton-inner-box {border-width: 0px 1px; border-style: solid; padding: 3px;}
..goog-toolbar-button-hover .goog-toolbar-button-outer-box ,.goog-toolbar-bu=
tton-hover .goog-toolbar-button-inner-box {border-color: rgb(161, 186, 223)=
!important;}
..goog-toolbar-button-active ,.goog-toolbar-button-checked ,.goog-toolbar-bu=
tton-selected {background-color: rgb(221, 225, 235) !important;}
..goog-toolbar-button-active .goog-toolbar-button-outer-box ,.goog-toolbar-b=
utton-active .goog-toolbar-button-inner-box ,.goog-toolbar-button-checked .=
goog-toolbar-button-outer-box ,.goog-toolbar-button-checked .goog-toolbar-b=
utton-inner-box ,.goog-toolbar-button-selected .goog-toolbar-button-outer-b=
ox ,.goog-toolbar-button-selected .goog-toolbar-button-inner-box {border-co=
lor: rgb(114, 155, 209);}
..goog-toolbar-button-collapse-right ,.goog-toolbar-button-collapse-right .g=
oog-toolbar-button-outer-box ,.goog-toolbar-button-collapse-right .goog-too=
lbar-button-inner-box {margin-right: 0px;}
..goog-toolbar-button-collapse-left ,.goog-toolbar-button-collapse-left .goo=
g-toolbar-button-outer-box ,.goog-toolbar-button-collapse-left .goog-toolba=
r-button-inner-box {margin-left: 0px;}
* html .goog-toolbar-button-collapse-left .goog-toolbar-button-inner-box ,b=
ody .goog-toolbar-button-collapse-left .goog-toolbar-button-inner-box {left=
: 0px;}
:first-child + html .goog-toolbar-button-collapse-left .goog-toolbar-button=
-inner-box {left: 0px;}
..goog-toolbar-menu-button {margin: 0px 2px; border: 0px none; padding: 0px;=
font-family: Arial,sans-serif; color: rgb(51, 51, 51); text-decoration: no=
ne; list-style: outside none none; vertical-align: middle; cursor: default;=
outline: medium none;}
..goog-toolbar-menu-button-outer-box ,.goog-toolbar-menu-button-inner-box {b=
order: 0px none; vertical-align: top;}
..goog-toolbar-menu-button-outer-box {margin: 0px; padding: 1px 0px;}
..goog-toolbar-menu-button-inner-box {margin: 0px -1px; padding: 3px 4px;}
* html .goog-toolbar-menu-button-inner-box ,body .goog-toolbar-menu-button-=
inner-box {left: -1px;}
* html .goog-toolbar-menu-button-rtl .goog-toolbar-menu-button-outer-box ,b=
ody .goog-toolbar-menu-button-rtl .goog-toolbar-menu-button-outer-box {left=
: -1px;}
* html .goog-toolbar-menu-button-rtl .goog-toolbar-menu-button-inner-box ,b=
ody .goog-toolbar-menu-button-rtl .goog-toolbar-menu-button-inner-box {righ=
t: auto;}
:first-child + html .goog-toolbar-menu-button-inner-box {left: -1px;}
:first-child + html .goog-toolbar-menu-button-rtl .goog-toolbar-menu-button=
-inner-box {left: 1px; right: auto;}
..goog-toolbar-menu-button-disabled {opacity: 0.3;}
..goog-toolbar-menu-button-disabled .goog-toolbar-menu-button-outer-box ,.go=
og-toolbar-menu-button-disabled .goog-toolbar-menu-button-inner-box {color:=
rgb(51, 51, 51) !important; border-color: rgb(153, 153, 153) !important;}
* html .goog-toolbar-menu-button-disabled ,body .goog-toolbar-menu-button-d=
isabled {background-color: rgb(240, 240, 240); margin: 0px 1px; padding: 0p=
x 1px;}
:first-child + html .goog-toolbar-menu-button-disabled {background-color: r=
gb(240, 240, 240); margin: 0px 1px; padding: 0px 1px;}
..goog-toolbar-menu-button-hover .goog-toolbar-menu-button-outer-box ,.goog-=
toolbar-menu-button-active .goog-toolbar-menu-button-outer-box ,.goog-toolb=
ar-menu-button-open .goog-toolbar-menu-button-outer-box {border-width: 1px =
0px; border-style: solid; padding: 0px;}
..goog-toolbar-menu-button-hover .goog-toolbar-menu-button-inner-box ,.goog-=
toolbar-menu-button-active .goog-toolbar-menu-button-inner-box ,.goog-toolb=
ar-menu-button-open .goog-toolbar-menu-button-inner-box {border-width: 0px =
1px; border-style: solid; padding: 3px;}
..goog-toolbar-menu-button-hover .goog-toolbar-menu-button-outer-box ,.goog-=
toolbar-menu-button-hover .goog-toolbar-menu-button-inner-box {border-color=
: rgb(161, 186, 223) !important;}
..goog-toolbar-menu-button-active ,.goog-toolbar-menu-button-open {backgroun=
d-color: rgb(221, 225, 235) !important;}
..goog-toolbar-menu-button-active .goog-toolbar-menu-button-outer-box ,.goog=
-toolbar-menu-button-active .goog-toolbar-menu-button-inner-box ,.goog-tool=
bar-menu-button-open .goog-toolbar-menu-button-outer-box ,.goog-toolbar-men=
u-button-open .goog-toolbar-menu-button-inner-box {border-color: rgb(114, 1=
55, 209);}
..goog-toolbar-menu-button-caption {padding: 0px 4px 0px 0px; vertical-align=
: middle;}
..goog-toolbar-menu-button-dropdown {width: 7px; background: rgba(0, 0, 0, 0=
) url("//ssl.gstatic.com/editor/editortoolbar.png") no-repeat scroll -388px=
0px; vertical-align: middle;}
..goog-toolbar-separator {margin: 0px 2px; border-left: 1px solid rgb(214, 2=
14, 214); border-right: 1px solid rgb(247, 247, 247); padding: 0px; width: =
0px; text-decoration: none; list-style: outside none none; outline: medium =
none; vertical-align: middle; line-height: normal; font-size: 120%; overflo=
w: hidden;}
..goog-toolbar-select .goog-toolbar-menu-button-outer-box {border-width: 1px=
0px; border-style: solid; padding: 0px;}
..goog-toolbar-select .goog-toolbar-menu-button-inner-box {border-width: 0px=
1px; border-style: solid; padding: 3px;}
..goog-toolbar-select .goog-toolbar-menu-button-outer-box ,.goog-toolbar-sel=
ect .goog-toolbar-menu-button-inner-box {border-color: rgb(191, 203, 223);}
..tr-icon {width: 16px; height: 16px; background: rgba(0, 0, 0, 0) url("//ss=
l.gstatic.com/editor/editortoolbar.png") no-repeat scroll 0% 0%; vertical-a=
lign: middle;}
..goog-color-menu-button-indicator .tr-icon {height: 14px;}
..tr-undo ,.goog-toolbar-button-rtl .tr-redo {background-position: 0px cente=
r;}
..tr-redo ,.goog-toolbar-button-rtl .tr-undo {background-position: -16px cen=
ter;}
..tr-fontName .goog-toolbar-menu-button-caption {color: rgb(34, 68, 102); wi=
dth: 16ex; height: 16px; overflow: hidden;}
..tr-fontSize .goog-toolbar-menu-button-caption {color: rgb(34, 68, 102); wi=
dth: 8ex; height: 16px; overflow: hidden;}
..tr-bold {background-position: -32px center;}
..tr-italic {background-position: -48px center;}
..tr-underline {background-position: -64px center;}
..tr-foreColor {height: 14px; background-position: -80px center;}
..tr-backColor {height: 14px; background-position: -96px center;}
..tr-link {font-weight: bold; color: rgb(0, 0, 153); text-decoration: underl=
ine;}
..tr-image {background-position: -112px center;}
..tr-newDrawing {background-position: -592px center;}
..tr-spChar {font-weight: bold; color: rgb(153, 0, 0);}
..tr-indent {background-position: -128px center;}
..tr-rtl-mode .tr-indent {background-position: -400px center;}
..tr-outdent {background-position: -144px center;}
..tr-rtl-mode .tr-outdent {background-position: -416px center;}
..tr-insertUnorderedList {background-position: -160px center;}
..tr-rtl-mode .tr-insertUnorderedList {background-position: -432px center;}
..tr-insertOrderedList {background-position: -176px center;}
..tr-rtl-mode .tr-insertOrderedList {background-position: -448px center;}
..tr-justifyLeft {background-position: -192px center;}
..tr-justifyCenter {background-position: -208px center;}
..tr-justifyRight {background-position: -224px center;}
..tr-justifyFull {background-position: -480px center;}
..tr-BLOCKQUOTE {background-position: -240px center;}
..tr-rtl-mode .tr-BLOCKQUOTE {background-position: -464px center;}
..tr-removeFormat {background-position: -256px center;}
..tr-spell {background-position: -272px center;}
..tr-ltr {background-position: -288px center;}
..tr-rtl {background-position: -304px center;}
..tr-insertModule {background-position: -496px center;}
..tr-strikeThrough {background-position: -544px center;}
..tr-subscript {background-position: -560px center;}
..tr-superscript {background-position: -576px center;}
..tr-equation {background-position: -608px center;}
..tr-editHtml {color: rgb(0, 0, 153);}
..tr-formatBlock .goog-toolbar-menu-button-caption {color: rgb(34, 68, 102);=
width: 12ex; height: 16px; overflow: hidden;}
..goog-menu .goog-palette {outline: medium none; cursor: default;}
..goog-menu .goog-palette-table {margin: 5px; border: 1px solid rgb(102, 102=
, 102); border-collapse: collapse;}
..goog-menu .goog-palette-cell {height: 18px; width: 18px; margin: 0px; bord=
er-width: 0px 1px 0px 0px; border-style: none solid none none; border-color=
: currentcolor rgb(102, 102, 102) currentcolor currentcolor; -moz-border-to=
p-colors: none; -moz-border-right-colors: none; -moz-border-bottom-colors: =
none; -moz-border-left-colors: none; border-image: none; text-align: center=
; vertical-align: middle; cursor: pointer;}
..goog-menu .goog-palette-cell .goog-palette-colorswatch {position: relative=
; height: 18px; width: 18px; border: medium none; font-size: x-small;}
..goog-menu .goog-palette-cell-hover .goog-palette-colorswatch {height: 16px=
; width: 16px; border: 1px solid rgb(255, 255, 255);}
..goog-menu .goog-palette-cell-selected .goog-palette-colorswatch {height: 1=
6px; width: 16px; border: 1px solid rgb(51, 51, 51); color: rgb(255, 255, 2=
55); font-weight: bold; background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com=
/editor/editortoolbar.png") no-repeat scroll -368px center;}
..goog-menu .goog-palette-customcolor {position: relative; height: 15px; wid=
th: 15px; font-size: x-small; background-color: rgb(250, 250, 250); color: =
rgb(102, 102, 102); border: 1px solid rgb(238, 238, 238);}
..goog-menu .goog-palette-cell-hover .goog-palette-customcolor {background-c=
olor: rgb(255, 238, 238); border: 1px solid rgb(255, 102, 102); color: rgb(=
255, 102, 102);}
..tr_toolbar {font-family: arial; font-size: 90%;}
..container ,.containerhover ,.containeron {float: left; margin: 2px 3px 2px=
0px !important; padding: 0px !important; color: rgb(0, 0, 0); cursor: defa=
ult;}
..desc {margin: 0px !important; line-height: 0.2em !important; background: r=
gba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/bg/cbleft_ltr.gif") no-repeat=
scroll left top;}
..link {margin: 0px !important; padding: 4px 0px 0px 9px !important; backgro=
und: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/bg/cbleft_ltr.gif") no-=
repeat scroll left bottom;}
..link em {display: block !important; padding: 0px 8px 6px 0px !important; f=
ont-style: normal; line-height: 1em !important; text-decoration: none; text=
-align: center !important; background: rgba(0, 0, 0, 0) url("//ssl.gstatic.=
com/editor/bg/cbright_ltr.gif") no-repeat scroll right bottom;}
div.leftpill ,div.leftpillhover ,div.leftpillon {margin-right: 0px !importa=
nt;}
div.leftpill p em {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/edit=
or/bg/cbpillbg.gif") no-repeat scroll right bottom;}
div.middlepill ,div.middlepillhover ,div.middlepillon {margin-right: 0px !i=
mportant;}
div.middlepill {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/=
bg/cbpillbg.gif") no-repeat scroll right top;}
div.middlepill p.desc {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/=
editor/bg/cbleftpill_ltr.gif") no-repeat scroll left top;}
div.middlepill p.link {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/=
editor/bg/cbleftpill_ltr.gif") no-repeat scroll left bottom;}
div.middlepill p em {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/ed=
itor/bg/cbpillbg.gif") no-repeat scroll right bottom;}
div.rightpill p.desc {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/e=
ditor/bg/cbleftpill_ltr.gif") no-repeat scroll left top;}
div.rightpill p.link {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/e=
ditor/bg/cbleftpill_ltr.gif") no-repeat scroll left bottom;}
..container {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/bg/c=
bright_ltr.gif") no-repeat scroll right top;}
..leftpill {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/bg/cb=
pillbg.gif") no-repeat scroll right top;}
..containerhover {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor=
/bg/cbright_h_ltr.gif") no-repeat scroll right top;}
..containerhover .p1 {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/ed=
itor/bg/cbleft_h_ltr.gif") no-repeat scroll left top;}
..containerhover .p2 {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/ed=
itor/bg/cbleft_h_ltr.gif") no-repeat scroll left bottom;}
..containerhover .p2 em {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com=
/editor/bg/cbright_h_ltr.gif") no-repeat scroll right bottom;}
div.middlepillhover {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/ed=
itor/bg/cbpillbg_h.gif") no-repeat scroll right top;}
div.middlepillhover p.desc {background: rgba(0, 0, 0, 0) url("//ssl.gstatic=
..com/editor/bg/cbleftpill_h_ltr.gif") no-repeat scroll left top;}
div.middlepillhover p.link {background: rgba(0, 0, 0, 0) url("//ssl.gstatic=
..com/editor/bg/cbleftpill_h_ltr.gif") no-repeat scroll left bottom;}
div.middlepillhover p.p2 em {background: rgba(0, 0, 0, 0) url("//ssl.gstati=
c.com/editor/bg/cbpillbg_h.gif") no-repeat scroll right bottom;}
div.leftpillhover {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/edit=
or/bg/cbpillbg_h.gif") no-repeat scroll right top;}
div.leftpillhover p em {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com=
/editor/bg/cbpillbg_h.gif") no-repeat scroll right bottom;}
div.leftpillhover .p2 em {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.c=
om/editor/bg/cbpillbg_h.gif") no-repeat scroll right bottom;}
div.rightpillhover p.desc {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.=
com/editor/bg/cbleftpill_h_ltr.gif") no-repeat scroll left top;}
div.rightpillhover p.link {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.=
com/editor/bg/cbleftpill_h_ltr.gif") no-repeat scroll left bottom;}
..containeron {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/bg=
/cbright_o_ltr.gif") no-repeat scroll right top;}
..containeron .p1 {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/edito=
r/bg/cbleft_o_ltr.gif") no-repeat scroll left top;}
..containeron .p2 {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/edito=
r/bg/cbleft_o_ltr.gif") no-repeat scroll left bottom;}
..containeron .p2 em {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/ed=
itor/bg/cbright_o_ltr.gif") no-repeat scroll right bottom;}
div.middlepillon {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/edito=
r/bg/cbpillbg_o.gif") no-repeat scroll right top;}
div.middlepillon p.desc {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.co=
m/editor/bg/cbleftpill_o_ltr.gif") no-repeat scroll left top;}
div.middlepillon p.link {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.co=
m/editor/bg/cbleftpill_o_ltr.gif") no-repeat scroll left bottom;}
div.middlepillon p.p2 em {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.c=
om/editor/bg/cbpillbg_o.gif") no-repeat scroll right bottom;}
div.leftpillon {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/=
bg/cbpillbg_o.gif") no-repeat scroll right top;}
div.leftpillon p em {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/ed=
itor/bg/cbpillbg_o.gif") no-repeat scroll right bottom;}
div.leftpillon .p2 em {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/=
editor/bg/cbpillbg_o.gif") no-repeat scroll right bottom;}
div.rightpillon p.desc {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com=
/editor/bg/cbleftpill_o_ltr.gif") no-repeat scroll left top;}
div.rightpillon p.link {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com=
/editor/bg/cbleftpill_o_ltr.gif") no-repeat scroll left bottom;}
..container span ,.containerhover span ,.containeron span {background-positi=
on: 0% 50%; padding: 2px 0px 2px 20px !important; margin: -2px 0px !importa=
nt; width: 1px !important; white-space: nowrap !important;}
..container .icon_none ,.containerhover .icon_none ,.containeron .icon_none =
{padding: 2px 0px 2px 2px !important;}
..icon {width: 1.5em !important; font-family: times; line-height: 1.2em !imp=
ortant; font-weight: bold;}
..container .imageOnly ,.containerhover .imageOnly ,.containeron .imageOnly =
{margin-right: -1ex !important; white-space: normal !important; direction: =
ltr;}
..container span.justify ,.containerhover span.justify ,.containeron span.ju=
stify {padding: 0px 0px 0px 12px !important;}
..icon_image {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/ico=
ns/icon_image.gif") no-repeat scroll 0% 0%;}
..icon_link {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/icon=
s/icon_link.gif") no-repeat scroll 0% 0%;}
..icon_bullet {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/ic=
ons/icon_bullet.gif") no-repeat scroll 0% 0%;}
..icon_numbered {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/=
icons/icon_numbered.gif") no-repeat scroll 0% 0%;}
..icon_outdent {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/i=
cons/icon_outdent.gif") no-repeat scroll 0% 0%;}
..icon_indent {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/ic=
ons/icon_indent.gif") no-repeat scroll 0% 0%;}
..icon_text {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/icon=
s/icon_text.gif") no-repeat scroll 0% 0%;}
..icon_textbg {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/ic=
ons/icon_textbg.gif") no-repeat scroll 0% 0%;}
..icon_font {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/icon=
s/icon_font.gif") no-repeat scroll 0% 0%;}
..icon_size {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/icon=
s/icon_size.gif") no-repeat scroll 0% 0%;}
..icon_justleft {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/=
icons/icon_left.gif") no-repeat scroll 0% 0%;}
..icon_justmiddle {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/edito=
r/icons/icon_middle.gif") no-repeat scroll 0% 0%;}
..icon_justright {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor=
/icons/icon_right.gif") no-repeat scroll 0% 0%;}
..icon_wfield {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/ic=
ons/icon_wfield.gif") no-repeat scroll 0% 0%;}
..icon_removeformat {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/edi=
tor/icons/icon_removeformatting.gif") no-repeat scroll 0% 0%;}
..icon_blockquote {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/edito=
r/icons/icon_blockquote.gif") no-repeat scroll 0% 0%;}
..icon_gadget {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/ic=
ons/icon_gadget.gif") no-repeat scroll 0% 0%;}
..icon_ltr {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/icons=
/icon_ltr_dir.gif") no-repeat scroll 0% 0%;}
..icon_rtl {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.com/editor/icons=
/icon_rtl_dir.gif") no-repeat scroll 0% 0%;}
..toolbar_rtl .icon_bullet {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.=
com/editor/icons/icon_bullet_rtl.gif") no-repeat scroll left center;}
..toolbar_rtl .icon_numbered {background: rgba(0, 0, 0, 0) url("//ssl.gstati=
c.com/editor/icons/icon_numbered_rtl.gif") no-repeat scroll left center;}
..toolbar_rtl .icon_outdent {background: rgba(0, 0, 0, 0) url("//ssl.gstatic=
..com/editor/icons/icon_outdent_rtl.gif") no-repeat scroll left center;}
..toolbar_rtl .icon_indent {background: rgba(0, 0, 0, 0) url("//ssl.gstatic.=
com/editor/icons/icon_indent_rtl.gif") no-repeat scroll left center;}
..toolbar_rtl .icon_blockquote {background: rgba(0, 0, 0, 0) url("//ssl.gsta=
tic.com/editor/icons/icon_blockquote_rtl.gif") no-repeat scroll left center=
;}
..link em b {padding-left: 0.2em !important; background: rgba(0, 0, 0, 0) ur=
l("//ssl.gstatic.com/editor/bg/downarrow.gif") no-repeat scroll 80% 50%;}
..disabled {opacity: 0.5; cursor: default;}
#tr_preloadImages {width: 0px; height: 0px; display: inline;}
..cbleft {background-image: url("//ssl.gstatic.com/editor/bg/cbleft_ltr.gif"=
);}
..cbleft_h {background-image: url("//ssl.gstatic.com/editor/bg/cbleft_h_ltr.=
gif");}
..cbleft_o {background-image: url("//ssl.gstatic.com/editor/bg/cbleft_o_ltr.=
gif");}
..cbleftpill {background-image: url("//ssl.gstatic.com/editor/bg/cbleftpill_=
ltr.gif");}
..cbleftpill_h {background-image: url("//ssl.gstatic.com/editor/bg/cbleftpil=
l_h_ltr.gif");}
..cbleftpill_o {background-image: url("//ssl.gstatic.com/editor/bg/cbleftpil=
l_o_ltr.gif");}
..cbpillbggif {background-image: url("//ssl.gstatic.com/editor/bg/cbpillbg.g=
if");}
..cbpillbgpng {background-image: url("//ssl.gstatic.com/editor/bg/cbpillbg.p=
ng");}
..cbpillbg_h {background-image: url("//ssl.gstatic.com/editor/bg/cbpillbg_h.=
gif");}
..cbright {background-image: url("//ssl.gstatic.com/editor/bg/cbright_ltr.gi=
f");}
..cbright_h {background-image: url("//ssl.gstatic.com/editor/bg/cbright_h_lt=
r.gif");}
..cbright_o {background-image: url("//ssl.gstatic.com/editor/bg/cbright_o_lt=
r.gif");}
..downarrow {background-image: url("//ssl.gstatic.com/editor/bg/downarrow.gi=
f");}
..cbpillbg_o {background-image: url("//ssl.gstatic.com/editor/bg/cbpillbg_o.=
gif");}
..tr_popupmenu {position: absolute; z-index: 1000;}
..tr_popupmenu .goog-menu {-moz-user-select: none; background-attachment: sc=
roll; background-color: rgb(195, 217, 255); background-image: none; backgro=
und-repeat: repeat; border-width: 2px; border-style: solid; border-color: r=
gb(232, 241, 255) rgb(157, 174, 205) rgb(157, 174, 205) rgb(232, 241, 255);=
cursor: pointer; padding: 2px;}
..tr_popupmenu .goog-menuitem {background-attachment: scroll; background-col=
or: rgb(195, 217, 255); background-image: none; background-repeat: repeat; =
color: rgb(0, 0, 0);}
..tr_popupmenu .goog-menuitem-highlight {background-color: rgb(85, 112, 204)=
; color: rgb(255, 255, 255);}
..tr_colorpicker {position: absolute; z-index: 1000; background-color: rgb(1=
87, 187, 187);}
..tr_colorpicker .goog-palette {outline: medium none; -moz-user-select: none=
; cursor: default;}
..tr_colorpicker .goog-palette-table {border: 1px solid rgb(102, 102, 102); =
border-collapse: collapse !important; padding: 0px; margin: 0px;}
..tr_colorpicker .goog-palette-cell {height: 13px; width: 15px; margin: 0px;=
border: 0px none; padding: 0px; text-align: center; vertical-align: middle=
;}
..tr_colorpicker .goog-palette-colorswatch {position: relative; height: 13px=
; width: 15px; border: 1px solid rgb(102, 102, 102); font-size: 1px;}
..tr_colorpicker .goog-palette-cell-hover .goog-palette-colorswatch {border:=
1px solid rgb(255, 255, 255);}
..tr_colorpicker .goog-palette-cell-selected .goog-palette-colorswatch {bord=
er: 1px solid rgb(0, 0, 0); color: rgb(255, 255, 255);}
..ac-renderer {border: 1px solid rgb(102, 102, 102); background: rgb(224, 23=
6, 255) none repeat scroll 0% 0%; color: rgb(0, 0, 204); margin: 0px; paddi=
ng: 0px 0px 1px; z-index: 10; position: absolute;}
..ac-renderer div {margin: 2px; cursor: pointer; padding: 0px 10px;}
..ac-renderer div b {color: rgb(0, 0, 255);}
..ac-renderer div.active {background: rgb(195, 217, 255) none repeat scroll =
0% 0%;}
..picker-dialog {background: rgb(255, 255, 255) none repeat scroll 0% 0%; bo=
rder: 1px solid rgb(172, 172, 172); position: absolute; box-shadow: 0px 4px=
16px rgba(0, 0, 0, 0.2); z-index: 1021; outline: medium none; padding: 0px=
;}
..picker.modal-dialog-content {width: 705px; height: 370px; padding: 0px; ma=
rgin: 0px; position: relative; border: 0px none;}
..picker.modal-dialog-bg {background: rgb(255, 255, 255) none repeat scroll =
0% 0%; left: 0px; position: absolute; top: 0px; z-index: 1001;}
..picker.modal-dialog-title ,.picker.modal-dialog-buttons {display: none;}
..picker-frame {width: 100%; height: 100%; border: 0px none; overflow: hidde=
n;}
..goog-toolbar {padding: 6px; border-top: 1px solid rgb(229, 229, 229); bord=
er-bottom: 1px solid rgb(235, 235, 235); background: rgb(245, 245, 245) non=
e repeat scroll 0% 0%;}
..goog-toolbar-button ,.goog-toolbar-menu-button {display: inline-block; tex=
t-align: center; color: rgb(85, 85, 85); font-size: 11px; font-weight: bold=
; height: 27px; padding: 0px 8px; line-height: 27px; transition: all 0.218s=
ease 0s; background-color: rgb(245, 245, 245); background-image: -moz-line=
ar-gradient(center top , rgb(245, 245, 245), rgb(241, 241, 241)); -moz-user=
-select: none; cursor: default; border: 1px solid transparent;}
..goog-toolbar-button-hover ,.goog-toolbar-menu-button-hover {border: 1px so=
lid rgb(198, 198, 198); color: rgb(51, 51, 51); transition: all 0s ease 0s;=
background-color: rgb(248, 248, 248); background-image: -moz-linear-gradie=
nt(center top , rgb(248, 248, 248), rgb(241, 241, 241)); box-shadow: 0px 1p=
x 1px rgba(0, 0, 0, 0.1);}
..goog-toolbar-button-active ,.goog-toolbar-menu-button-active {background-c=
olor: rgb(246, 246, 246); background-image: -moz-linear-gradient(center top=
, rgb(246, 246, 246), rgb(241, 241, 241)); box-shadow: 0px 1px 2px rgba(0,=
0, 0, 0.1) inset;}
..goog-toolbar-button-checked ,.goog-toolbar-menu-button-checked {background=
-color: rgb(238, 238, 238); background-image: -moz-linear-gradient(center t=
op , rgb(238, 238, 238), rgb(224, 224, 224)); box-shadow: 0px 1px 2px rgba(=
0, 0, 0, 0.1) inset; border: 1px solid rgb(204, 204, 204); color: rgb(51, 5=
1, 51);}
..goog-toolbar-button-inner-box ,.goog-toolbar-button-outer-box ,.goog-toolb=
ar-menu-button-inner-box ,.goog-toolbar-menu-button-outer-box {border: medi=
um none !important; padding: 0px !important; margin: 0px !important;}
..goog-toolbar-menu-button-inner-box {padding-top: 1px !important;}
..goog-toolbar-menu-button-caption {padding-bottom: 4px; height: auto !impor=
tant; color: rgb(85, 85, 85) !important;}
..goog-toolbar-menu-button-hover .goog-toolbar-menu-button-caption {color: r=
gb(51, 51, 51) !important;}
..goog-toolbar-menu-button-dropdown {position: relative; top: 3px;}
..goog-color-menu-button-indicator {line-height: 0;}
..tr-icon {display: inline-block;}
..tr-dialog {position: absolute; width: 475px; background: rgb(255, 255, 255=
) none repeat scroll 0% 0%; padding: 38px 42px 30px;}
..tr-dialog button {color: rgb(102, 102, 102); font-size: 11px; font-weight:=
bold; text-align: center; margin-right: 16px; white-space: nowrap; height:=
29px; line-height: 27px; min-width: 74px; outline: 0px none; padding: 0px =
8px; border-radius: 2px; cursor: pointer; transition: all 0.218s ease 0s; d=
isplay: inline-block; border: 1px solid rgba(0, 0, 0, 0.1); background-colo=
r: rgb(245, 245, 245); background-image: -moz-linear-gradient(center top , =
rgb(245, 245, 245), rgb(241, 241, 241));}
..tr-dialog button:hover {transition: all 0.218s ease 0s; box-shadow: 0px 1p=
x 1px rgba(0, 0, 0, 0.1); border: 1px solid rgb(198, 198, 198); color: rgb(=
51, 51, 51); background-color: rgb(248, 248, 248); background-image: -moz-l=
inear-gradient(center top , rgb(248, 248, 248), rgb(241, 241, 241));}
..tr-dialog button.goog-buttonset-default {border: 1px solid rgb(48, 121, 23=
7); color: rgb(255, 255, 255); background-color: rgb(77, 144, 254); backgro=
und-image: -moz-linear-gradient(center top , rgb(77, 144, 254), rgb(71, 135=
, 237));}
..tr-dialog button.goog-buttonset-default:hover {color: rgb(255, 255, 255); =
border: 1px solid rgb(47, 91, 183); background-color: rgb(53, 122, 232); ba=
ckground-image: -moz-linear-gradient(center top , rgb(77, 144, 254), rgb(53=
, 122, 232));}
..tr-link-dialog-target-input ,#linkdialog-text {border-width: 1px; border-s=
tyle: solid; border-color: rgb(192, 192, 192) rgb(217, 217, 217) rgb(217, 2=
17, 217); -moz-border-top-colors: none; -moz-border-right-colors: none; -mo=
z-border-bottom-colors: none; -moz-border-left-colors: none; border-image: =
none; vertical-align: top; box-sizing: border-box; border-radius: 1px; disp=
lay: inline-block; background-color: rgb(255, 255, 255); line-height: 27px;=
padding-left: 8px; color: rgb(51, 51, 51); height: 29px;}
..tr-link-dialog-target-input:hover ,#linkdialog-text:hover {border-width: 1=
px; border-style: solid; border-color: rgb(160, 160, 160) rgb(185, 185, 185=
) rgb(185, 185, 185); -moz-border-top-colors: none; -moz-border-right-color=
s: none; -moz-border-bottom-colors: none; -moz-border-left-colors: none; bo=
rder-image: none; box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1) inset;}
..tr-link-dialog-target-input:focus ,#linkdialog-text:focus {box-shadow: 0px=
1px 2px rgba(0, 0, 0, 0.3) inset; outline: medium none; border: 1px solid =
rgb(77, 144, 254);}
..tr-dialog .modal-dialog-title {display: none;}
#linkdialog-text {position: relative; top: -7px; margin-bottom: 12px;}
..tr-tabpane-caption {margin-bottom: 4px;}
..tr-tabpane .goog-tab-bar {background: rgba(0, 0, 0, 0) none repeat scroll =
0% 0%; margin-right: 12px; height: 160px;}
..tr-tabpane .goog-tab {border: medium none; background: rgb(255, 255, 255) =
none repeat scroll 0% 0%; padding: 8px; left: 0px; margin-left: 0px;}
..tr-tabpane .goog-tab-selected {border: medium none; background: rgb(255, 2=
55, 255) none repeat scroll 0% 0%; padding: 8px; left: 0px;}
..tr-tabpane .goog-tab-hover {background: rgb(238, 238, 238) none repeat scr=
oll 0% 0%;}
..tr-tabpane .goog-tab input {margin-left: 0px;}
..tr-dialog .modal-dialog-buttons {margin-top: 24px;}
..tr-dialog .goog-link-button {text-decoration: none; color: rgb(17, 85, 204=
); cursor: pointer; margin-top: 0px !important; margin-bottom: 8px;}
..tr-link-dialog-target-input {display: block; margin: 8px 0px; width: 280px=
!important;}
..tr-link-dialog-explanation-text {line-height: 17px;}
..tr-fontSize .goog-toolbar-menu-button-caption {min-width: 8ex; width: auto=
; overflow: auto; white-space: nowrap;}
plaintext {display: none;}
html {color:rgb(34, 34, 34);visibility:visible;quotes:"=E2=80=9C" "=E2=80=
=9D" "=E2=80=98" "=E2=80=99";list-style-type:disc;list-style-image:none;lis=
t-style-position:outside;page-break-inside:auto;font-family:"Arial","Helvet=
ica",sans-serif;font-style:normal;font-variant:normal;font-weight:400;text-=
indent:0px;text-align:start;text-transform:none;white-space:normal;caption-=
side:top;border-collapse:separate;border-spacing:0px 0px;empty-cells:show;c=
ursor:auto;}
body {position:relative !important;top:0 !important;left:0 !important;right=
:auto !important;display:block !important;visibility:visible !important;fon=
t-family:"Arial","Helvetica",sans-serif !important;font-size:13px !importan=
t;font-weight:400 !important;font-variant:normal !important;font-style:norm=
al !important;color:rgb(34, 34, 34) !important;text-align:start !important;=
text-decoration:none !important;text-indent:0px !important;text-transform:n=
one !important;letter-spacing:normal !important;white-space:normal !importa=
nt;word-spacing:0px !important;}
img {-moz-force-broken-image-icon: 1;}</style><br></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/8a08f9d6-283a-49da-9428-a38dde03e654%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/8a08f9d6-283a-49da-9428-a38dde03e654=
%40isocpp.org</a>.<br />
------=_Part_28073_777092529.1513693019459--
------=_Part_28072_1678495051.1513693019425--
.
Author: Nicol Bolas <jmckesson@gmail.com>
Date: Wed, 20 Dec 2017 07:39:58 -0800 (PST)
Raw View
------=_Part_2919_1147247692.1513784398201
Content-Type: multipart/alternative;
boundary="----=_Part_2920_1174678556.1513784398201"
------=_Part_2920_1174678556.1513784398201
Content-Type: text/plain; charset="UTF-8"
For what it's worth, I typed up a more formal idea of my Return Value
Variable idea. The basic ideas is as I explained before; this just lays it
out with more words.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/1345c9e9-b276-4873-b08c-eb75e5f4f065%40isocpp.org.
------=_Part_2920_1174678556.1513784398201
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">For what it's worth, I typed up a more formal idea of =
my Return Value Variable idea. The basic ideas is as I explained before; th=
is just lays it out with more words.<br></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/1345c9e9-b276-4873-b08c-eb75e5f4f065%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/1345c9e9-b276-4873-b08c-eb75e5f4f065=
%40isocpp.org</a>.<br />
------=_Part_2920_1174678556.1513784398201--
------=_Part_2919_1147247692.1513784398201
Content-Type: text/html; charset=US-ASCII;
name="Named Return Value Variables.html"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="Named Return Value Variables.html"
X-Attachment-Id: 7b400328-2ba0-46fd-8260-10df63387f64
Content-ID: <7b400328-2ba0-46fd-8260-10df63387f64>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="generator" content="pandoc" />
<title></title>
<style type="text/css">code{white-space: pre;}</style>
</head>
<body>
<div id="TOC">
<ul>
<li><a href="#motivation">Motivation and Scope</a></li>
<li><a href="#design">Design</a><ul>
<li><a href="#variable-declaration">Variable declaration</a></li>
<li><a href="#scope">Scope</a></li>
<li><a href="#rvv-and-return-types">RVV and Return Types</a></li>
<li><a href="#returning-rvvs">Returning RVVs</a></li>
</ul></li>
<li><a href="#issues">Issues</a></li>
<li><a href="#change-list">Change-list</a></li>
<li><a href="#acknowledgments">Acknowledgments</a></li>
</ul>
</div>
<p>Title: Named Return Value Variables</p>
<h1 id="motivation">Motivation and Scope</h1>
<p>Guaranteed elision made return value optimization and most other forms of elision required C++ behavior. Guaranteed elision did this by redefining the meaning of prvalue, making it not an object but an <em>initializer</em>. So a <code>return {};</code> means that the initializer <code>{}</code> applies directly to whatever object that prvalue is applied to.</p>
<p>Guaranteed elision allows the return of values which are immobile. A function could return a <code>std::lock_guard</code> object, thus allowing helper functions to initialize immobile objects.</p>
<p>There is one form of elision that guaranteed elision cannot cover: named return value optimization. Most compilers provide NRVO, but only under specific circumstances which differ from compiler to compiler. Even where they do so, the returned types need to have accessible copy/move constructors.</p>
<p>This is problematic for types with two-stage construction. <code>unique_lock</code> is a good example. If a lock times out, the <code>unique_lock</code> object lives on in an unlocked state. You can use member functions to try again.</p>
<p>Of course, <code>unique_lock</code> is by design moveable rather than immobile. But it would not be difficult to consider wanting to have the features of <code>unique_lock</code> while still having the static scoping of <code>lock_guard</code>. But if you want to write a helper function that returns a locked <code>unique_lock</code>, then you have to be able to create a named variable for that object.</p>
<h1 id="design">Design</h1>
<p>What we want is the ability to declare a variable to actually <em>be</em> the function's return value object. This allows us to directly manipulate that object. That object shall be called a "return value variable" (RVV).</p>
<p>Note: the following uses a strawman syntax. It can be changed as needed.</p>
<h2 id="variable-declaration">Variable declaration</h2>
<p>A function-scoped variable can be given the return value storage class:</p>
<pre><code>return_value Typename variable_name;</code></pre>
<p>This is a return value variable declaration. <code>variable_name</code> now represents the return value object. The storage duration for this object can extend beyond the instance of the function that created it. This is much like how <code>static</code> variables in function scope exist beyond the instance where they are first initialized.</p>
<p>RVV declarations may not use structured binding. [note: Is this strictly necessary? The <code>return auto;</code> syntax below allows returning the RVV object without explicitly naming it.]</p>
<h2 id="scope">Scope</h2>
<p>Once an RVV is declared within a block, all subsequent statements and sub-blocks within that block are said to be "within the scope of a return value variable", with the exception of any function declared within that scope. So the statements of a lambda expression after an RVV are not within the scope of an RVV.</p>
<p>[note: Lambdas can capture RVVs just like they can <code>static</code> local variables or any other object. But the fact that it is an RVV will not be preserved to the lambda, just like the fact that a captured <code>static</code> local variable is <code>static</code> local.]</p>
<p>If a declaration creates an RVV while within the scope of an RVV, the program is ill-formed. This includes multiple declarations on in the same statement.</p>
<p>If control flow exits the scope of a block containing an RVV declaration in any way other than by returning or throwing an exception, the program has undefined behavior. The idea behind this rule is that, in declaring a return value variable, you have made a promise to actually return from this function, and this object represents that return. And since that object would not be accessible outside of its scope, you're not allowed to leave that scope without returning.</p>
<p>RVVs represent the actual return value object. As such, when the scope containing an RVV exits by returning, the RVV is not destroyed.</p>
<p>However, if the scope exits due to throwing an exception, the RVV is destroyed along with automatic variables in its scope. The order of an RVV's destruction relative to automatic variables in the same scope is undefined [note: This undefined order is probably OK semantically. After all, if you returned it, it wouldn't be deleted until after the other local variables were all cleaned up, regardless of the order you declared them in.]</p>
<h2 id="rvv-and-return-types">RVV and Return Types</h2>
<p>A function may only have an RVV declaration if the function's return type is a value type or <code>auto</code> (never for <code>decltype(auto)</code>).</p>
<p>For functions that use the placeholder <code>auto</code> as its return type, each RVV declaration contributes to the deduction of the return value type. The type of the RVV (whether deduced from the initializer or explicitly specified) is the type the RVV contributes for return value deduction.</p>
<p>If a function containing an RVV declaration uses an explicit type for its return type, then each RVV declaration must have a type which exactly matches the specified return type, including cv-qualification. If a placeholder+initializer is used in the RVV declaration, then it must deduce the exact type of the specified return type, including cv-qualification.</p>
<p>To avoid unnecessary repetition of typenames, an RVV declaration may use a placeholder type <em>without</em> an initializer, but only if the function uses an explicit type for its return type. [note: It might also be OK in return type deduction cases if there are previous non-discarded statements that contribute to return type deduction].</p>
<h2 id="returning-rvvs">Returning RVVs</h2>
<p>The statement <code>return auto;</code> can be used to return the RVV if an RVV is in scope of the statement. The statement <code>return variable_name;</code> will also return the RVV if <code>variable_name</code> names the RVV.</p>
<p>These are the only ways of returning an RVV. As such, if an RVV declaration is in scope, a <code>return</code> statement <em>must</em> be of one of the two forms mentioned above.</p>
<p>Since the RVV is the result object from a function, there is no copying or moving from the variable.</p>
<h1 id="issues">Issues</h1>
<p>Perhaps the biggest issue here is linguistic.</p>
<p>Guaranteed elision got away with what it did by redefining the concept of "prvalue". A prvalue is at present an initializer for an object.</p>
<p>What we are doing here is initializing an object in a conceptual sense, but unlike guaranteed elision, our "initialization" is not initialization as the standard defines it. It is much more than that: we actually manipulate the object after its creation. That is indeed the whole point.</p>
<p>Given this, what then is a prvalue? It has to be more than just an "initializer" for an object, since the object is initialized well before the function returns. Indeed, the object gets a name (the RVV), then loses that name as it becomes a prvalue, then possibly gets a new name. Indeed, even that new name might be an RVV, which will be lost again.</p>
<p>This is very new for C++ from a conceptual sense in terms of the object model. From a compiler implementation standpoint, this ought to be pretty easy.</p>
<h1 id="change-list">Change-list</h1>
<h1 id="acknowledgments">Acknowledgments</h1>
</body>
</html>
------=_Part_2919_1147247692.1513784398201--
.
Author: Richard Hodges <hodges.r@gmail.com>
Date: Thu, 21 Dec 2017 05:12:28 -0800 (PST)
Raw View
------=_Part_5536_868229015.1513861948668
Content-Type: multipart/alternative;
boundary="----=_Part_5537_54690773.1513861948668"
------=_Part_5537_54690773.1513861948668
Content-Type: text/plain; charset="UTF-8"
On Wednesday, 20 December 2017 16:39:58 UTC+1, Nicol Bolas wrote:
>
> For what it's worth, I typed up a more formal idea of my Return Value
> Variable idea. The basic ideas is as I explained before; this just lays it
> out with more words.
>
I like the idea.
It feels to me that this is describing what amounts to a "static
constructor". i.e. a constructor that is declared outside the scope of the
object.
--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/e585681b-1240-4f90-a079-cc9b258c4dfc%40isocpp.org.
------=_Part_5537_54690773.1513861948668
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><br><br>On Wednesday, 20 December 2017 16:39:58 UTC+1, Nic=
ol Bolas wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0;margin=
-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div dir=3D"lt=
r">For what it's worth, I typed up a more formal idea of my Return Valu=
e Variable idea. The basic ideas is as I explained before; this just lays i=
t out with more words.<br></div></blockquote><div><br></div><div>I like the=
idea.</div><div><br></div><div>It feels to me that this is describing what=
amounts to a "static constructor". i.e. a constructor that is de=
clared outside the scope of the object.</div><div>=C2=A0</div></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/e585681b-1240-4f90-a079-cc9b258c4dfc%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/e585681b-1240-4f90-a079-cc9b258c4dfc=
%40isocpp.org</a>.<br />
------=_Part_5537_54690773.1513861948668--
------=_Part_5536_868229015.1513861948668--
.