PyTorch Hook

  • 为什么要引入hook? -> hook可以做什么?
  • 都有哪些hook?
  • 如何使用hook?
 

1. 为什么引入hook?

参考:Pytorch中autograd以及hook函数详解
在pytorch中的自动求梯度机制(Autograd mechanics)中,如果将tensor的requires_grad设为True, 那么涉及到它的一系列运算将在反向传播中自动求梯度。

In [0]:
x = torch.randn(5, 5) # requires_grad=False by default
y = torch.randn(5, 5) # requires_grad=False by default
z = torch.randn((5, 5), requires_grad=True)
a = x + y
b = a + z
print(a.requires_grad, b.requires_grad)
 
False True
 

但是自动求导的机制有个我们需要注意的地方:在自动求导机制中只保存叶子节点,也就是中间变量在计算完成梯度后会自动释放以节省空间. 所以下面代码我们在计算过程中只得到了z对x的梯度,而y和z的梯度都在梯度计算后被自动释放了,所以显示为None.

In [0]:
x = torch.tensor([1,2],dtype=torch.float32,requires_grad=True)
y = x * 2
z = torch.mean(y)
z.backward()
print("x.grad =", x.grad)
print("y.grad =", y.grad)
print("z.grad =", z.grad)
 
x.grad = tensor([1., 1.])
y.grad = None
z.grad = None
 

那么能否得到y,z的梯度呢?这就需要引入hook.
在pytorch的tutorial中介绍:
We’ve inspected the weights and the gradients. But how about inspecting / modifying the output and grad_output of a layer ? We introduce hooks for this purpose.
hook的引入是为了让我们可以检测或者修改一个layer的output或者grad_output.

 

2. hook的种类

  • TENSOR.register_hook(FUNCTION)
  • MODULE.register_forward_hook(FUNCTION)
  • MODULE.register_backward_hook(FUNCTION)

可以为Module或者Tensor注册hook。
如果为Tensor注册hook, 用register_hook();
如果为Module注册hook, 若希望获取前向传播中layer的input, output信息,可以用register_forward_hook();
如果为Module注册hook, 若希望获取反向传播中layer的grad_in, grad_out信息,可以用register_backward_hook().

 

3. TENSOR.register_hook(FUNCTION)

In [0]:
x = torch.tensor([1,2],dtype=torch.float32,requires_grad=True)
y = x * 2
y.register_hook(print)
z = torch.mean(y)
z.backward()
 
tensor([0.5000, 0.5000])
 

以上代码中,对y进行register_hook引入print这个函数,print即是简单的打印,将y相关的grad打印出来。
在执行z.backward()执行的时候,由于y的hook函数也执行了,打印出了y关于输出z的梯度, 即 tensor([0.5000, 0.5000]) 便是y的梯度。

 

4. MODULE.register_forward_hook(FUNCTION) && MODULE.register_backward_hook(FUNCTION)

 

参考链接:Toy example to understand Pytorch hooks
介绍这两个的用法前,我们先定义module, 之后的hook便是为以下的module注册的。

In [0]:
import numpy as np
import torch
import torch.nn as nn
from IPython.display import Image
 

1. Define the network

In [0]:
''' Define the Net '''
class Net(nn.Module): def __init__(self):
super(Net, self).__init__()
self.fc1 = nn.Linear(2,2)
self.s1 = nn.Sigmoid()
self.fc2 = nn.Linear(2,2)
self.s2 = nn.Sigmoid()
self.fc1.weight = torch.nn.Parameter(torch.Tensor([[0.15,0.2],[0.250,0.30]]))
self.fc1.bias = torch.nn.Parameter(torch.Tensor([0.35]))
self.fc2.weight = torch.nn.Parameter(torch.Tensor([[0.4,0.45],[0.5,0.55]]))
self.fc2.bias = torch.nn.Parameter(torch.Tensor([0.6])) def forward(self, x):
x= self.fc1(x)
x = self.s1(x)
x= self.fc2(x)
x = self.s2(x)
return x net = Net()
print(net)
 
Net(
(fc1): Linear(in_features=2, out_features=2, bias=True)
(s1): Sigmoid()
(fc2): Linear(in_features=2, out_features=2, bias=True)
(s2): Sigmoid()
)
In [0]:
''' Get the value of parameters defined in the Net '''
# parameters: weight and bias
print(list(net.parameters()))
 
[Parameter containing:
tensor([[0.1500, 0.2000],
[0.2500, 0.3000]], requires_grad=True), Parameter containing:
tensor([0.3500], requires_grad=True), Parameter containing:
tensor([[0.4000, 0.4500],
[0.5000, 0.5500]], requires_grad=True), Parameter containing:
tensor([0.6000], requires_grad=True)]
In [0]:
''' feed the input data to get the output and loss '''
# input data
data = torch.Tensor([0.05,0.1])
# output of last layer
out = net(data)
target = torch.Tensor([0.01,0.99]) # a dummy target, for example
criterion = nn.MSELoss()
loss = criterion(out, target)
print(loss)
 
tensor(0.2984, grad_fn=<MseLossBackward>)
 

2. The structure of hook input, output && grad_in, grad_out

在MODULE.register_forward_hook(FUNCTION)中,涉及到input, output参数,
在MODULE.register_backward_hook(FUNCTION)中,涉及到grad_in, grad_out参数,
下面的图示显示了input, output分别是一个layer的输入和输出;
grad_in是整个神经网络的输出(可以想成最终的损失L)对layer的output求偏导, grad_out是 ( L对output求偏导 × output对input的偏导) => 链式法则。

In [0]:
from google.colab import files
from IPython.display import Image
uploaded = files.upload()
 
Upload widget is only available when the cell has been executed in the current browser session. Please rerun this cell to enable.

 
Saving hook_in_out.png to hook_in_out.png
In [0]:
Image("hook_in_out.png")
Out[0]:
aaarticlea/png;base64,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
" alt="" />
 

input ----------------------------> output------------------> Last layer output
y--------------------------------------------z -----> ... ------------> L
grad_out <------------------------ grad_in
(dL/dz) * (dz / dy) ---------------(dL/dz)

 

下面代码中,如果backward = False, 表示的是前向传播,input, output分别对应layer的输入和输出;
如果backward = True, 表示的是反向传播过程,input 表示的是上图中的 grad_in, output 表示的是上图中的 grad_out.

In [0]:
''' Define hook
'''
# A simple hook class that returns the input and output of a layer during forward/backward pass
class Hook():
def __init__(self, module, backward=False):
if backward==False:
self.hook = module.register_forward_hook(self.hook_fn)
else:
self.hook = module.register_backward_hook(self.hook_fn)
def hook_fn(self, module, input, output):
self.input = input
self.output = output
def close(self):
self.hook.remove()
In [0]:
# get the _modules.items()
# format: (name, module)
print(list(net._modules.items())) # use layer[0] to get the name and layer[1] to get the module
for layer in net._modules.items():
print(layer[0], layer[1])
 
[('fc1', Linear(in_features=2, out_features=2, bias=True)), ('s1', Sigmoid()), ('fc2', Linear(in_features=2, out_features=2, bias=True)), ('s2', Sigmoid())]
fc1 Linear(in_features=2, out_features=2, bias=True)
s1 Sigmoid()
fc2 Linear(in_features=2, out_features=2, bias=True)
s2 Sigmoid()
 

为Hook类创建对象时,需要传入module参数,以下代码通过layer[1] 获取。将前向的hook都放在hookF数组中,将反向的hook都放在hookB的数组中。
注意一定要先注册hook, 之后再将data传入神经网路进行前向传播,即注册hook一定要在net(data)之前进行,因为hook函数是在forward的时候进行绑定的。

In [0]:
''' Register hooks on each layer
'''
hookF = [Hook(layer[1]) for layer in list(net._modules.items())]
hookB = [Hook(layer[1],backward=True) for layer in list(net._modules.items())]
In [0]:
# run a data batch
out=net(data)
print(out)
 
tensor([0.7514, 0.7729], grad_fn=<SigmoidBackward>)
 

3. Get the hook input, output and grad_in, grad_out value

注意loss.backward(retain_graph = True) 对于backward_hook并不适用
以下报错显示了 'Hook' object has no attribute 'input',
对于loss, 它并不是一个有input,output的网络层,而只是网络最后一层的输出与target的aggregated的结果。
而之前定义的Hook中,要求有明确的input和output,所以,并不适用于loss.backward()
应该采用out.backward(label_tensor, retain_graph = True)

 

3.1 loss.backward(retain_graph = True)

In [0]:
loss.backward(retain_graph = True)

print('***'*3+'  Forward Hooks Inputs & Outputs  '+'***'*3)
for hook in hookF:
print(hook.input)
print(hook.output)
print('---'*17)
print('\n') #! loss.backward(retain_graph=True) # doesn't work with backward hooks,
#! since it's not a network layer but an aggregated result from the outputs of last layer vs target
print('***'*3+' Backward Hooks Inputs & Outputs '+'***'*3)
for hook in hookB:
print(hook.input)
print(hook.output)
print('---'*17)
 
*********  Forward Hooks Inputs & Outputs  *********
(tensor([0.0500, 0.1000]),)
tensor([0.3775, 0.3925], grad_fn=<AddBackward0>)
---------------------------------------------------
(tensor([0.3775, 0.3925], grad_fn=<AddBackward0>),)
tensor([0.5933, 0.5969], grad_fn=<SigmoidBackward>)
---------------------------------------------------
(tensor([0.5933, 0.5969], grad_fn=<SigmoidBackward>),)
tensor([1.1059, 1.2249], grad_fn=<AddBackward0>)
---------------------------------------------------
(tensor([1.1059, 1.2249], grad_fn=<AddBackward0>),)
tensor([0.7514, 0.7729], grad_fn=<SigmoidBackward>)
--------------------------------------------------- ********* Backward Hooks Inputs & Outputs *********
 
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-34-8c71e064b825> in <module>()
12 print('***'*3+' Backward Hooks Inputs & Outputs '+'***'*3)
13 for hook in hookB:
---> 14print(hook.input)
15 print(hook.output)
16 print('---'*17) AttributeError: 'Hook' object has no attribute 'input'
 

3.2 out.backward(TENSOR, retain_graph = True)

下面采用的是正确的out.backward(torch.tensor([1,1],dtype=torch.float),retain_graph=True)的形式。
由于调用backward()的是out, 一个tensor而不是scalar, pytorch中不能直接求解它的Jacobian矩阵,需要为其指定grad_tensors.grad_tensors 可以看做对应张量的每个元素的梯度。
比如对于 y.backward(v,retain_graph = True), 其中 y = (y1, y2, y3), v = (v1, v2, v3), 那么backward中执行的操作是,先分别 (y1 v1, y2 v2, y3 * v3),之后再对y求偏导,y再对parameter求偏导, 链式法则。

其实也可以看做,在一般对网络的输出y, 与标签l,利用损失函数得到一个损失标量L,表示为:
L = v1 y1 + v2 y2 + v3 y3;
dL/dy = (v1, v2, v3);
dL/dw = dL/dy
dy/dw =( v1 dy/dw, v2 dy/dw, v3 * dy/dw)
上式dL/dw中的v即为 y.backward(v,retain_graph = True)的v的体现。相当于对于y.backward()的梯度都对应乘了v的系数。

In [0]:
out.backward(torch.tensor([1, 1], dtype = torch.float), retain_graph = True)
print('***'*3+' Forward Hooks Inputs & Outputs '+'***'*3)
for hook in hookF:
print(hook.input)
print(hook.output)
print('---'*17)
print('\n')
print('***'*3+' Backward Hooks Inputs & Outputs '+'***'*3)
for hook in hookB:
print(hook.input)
print(hook.output)
print('---'*17)
 
*********  Forward Hooks Inputs & Outputs  *********
(tensor([0.0500, 0.1000]),)
tensor([0.3775, 0.3925], grad_fn=<AddBackward0>)
---------------------------------------------------
(tensor([0.3775, 0.3925], grad_fn=<AddBackward0>),)
tensor([0.5933, 0.5969], grad_fn=<SigmoidBackward>)
---------------------------------------------------
(tensor([0.5933, 0.5969], grad_fn=<SigmoidBackward>),)
tensor([1.1059, 1.2249], grad_fn=<AddBackward0>)
---------------------------------------------------
(tensor([1.1059, 1.2249], grad_fn=<AddBackward0>),)
tensor([0.7514, 0.7729], grad_fn=<SigmoidBackward>)
--------------------------------------------------- ********* Backward Hooks Inputs & Outputs *********
(tensor([0.0392, 0.0435]), tensor([0.0827]))
(tensor([0.0392, 0.0435]),)
---------------------------------------------------
(tensor([0.0392, 0.0435]),)
(tensor([0.1625, 0.1806]),)
---------------------------------------------------
(tensor([0.1868, 0.1755]), tensor([0.3623]))
(tensor([0.1868, 0.1755]),)
---------------------------------------------------
(tensor([0.1868, 0.1755]),)
(tensor([1., 1.]),)
---------------------------------------------------
 

4. Module Hooks Problem

Problem with backward hook function #598
在该Issue中,指出了pytorchde module的一个问题:
“Ok, so the problem is that module hooks are actually registered on the last function that the module has created. In your case x + y + z is computed as ((x + y) + z) so the hook is registered on that (_ + z) operation, and this is why you're getting only two grad inputs.

We'll definitely have to resolve this but it will need a large change in the autograd internals. However, right now @colesbury is rewriting them to make it possible to have multiple functions dispatched in parallel, and they would heavily conflict with his work. For now use only Variable hooks (or module hooks, but not on containers). Sorry!”

翻译过来是,module hooks只为一个module的最后的function注册,比如对于 (x + y + z),本应分别得到关于(x, y, z)这三个的grad, 但是pytorch会先计算(x + y), 之后计算( _ + z), 所以最终只有两个grad,一个是关于(x + y)整体的grad, 一个是关于z的grad. 这是pytorch开发中一个比较难以解决的问题,目前该问题还没有被解决。
鉴于这个问题,为了避免不必要的bug出现,设计者建议使用tensor的register_hook, 而不是module的hook。如果出现类似问题,可以知道从这里找原因。

In [6]:
from IPython.display import Image
Image(filename = "../../Downloads/zhifubao.png", width = 200, height = 200)
Out[6]:
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAYEAAAGBCAIAAAAPO5pzAAAgAElEQVR4AezdS44kSbcfdnePZ2ZldfXHq8sVaKAFiIDEpUgzbUIDaSUkBEIDjTWUBgQ55EAgoIn2IAEX7K5HZsbL3QWPX9X/s+vxqHxEdjbvF4lClIeHudmxY+d9jpnXXddV178rBq4YuGLgnTDQvNO412GvGLhi4IqBAQNXGXSlgysGrhh4TwxcZdB7Yv869hUDVwxcZdCVBq4YuGLgPTFwlUHvif3r2FcMXDFwlUFXGrhi4IqB98TAVQa9J/avY18xcMXAVQZdaeCKgSsG3hMDVxn0nti/jn3FwBUDVxl0pYErBq4YeE8MXGXQe2L/OvYVA1cMXGXQlQauGLhi4D0xcJVB74n969hXDFwxcJVBVxq4YuCKgffEwFUGvSf2r2NfMXDFwFUGXWngioErBt4TA1cZ9J7Yv459xcAVA1cZdKWBKwauGHhPDFxl0Hti/zr2FQNXDFxl0JUGrhi4YuA9MXCVQe+J/evYVwxcMXCVQVcauGLgioH3xMBVBr0n9q9jXzFwxcBVBl1p4IqBKwbeEwNXGfSe2L+OfcXAFQNXGXSlgSsGrhh4TwxcZdB7Yv869hUDVwxcZdCVBq4YuGLgPTFwlUHvif3r2FcMXDFwlUFXGrhi4IqB98TAVQa9J/avY18xcMXAxWRQXde73a6u67Zt67quqsrne6G4/vF3FICu6/q+16RtW226rgN2Xdd+dedoD6du9n1/9Kd+/1fXdbf/MxCMBZjdbue+xhfp52gnr7kJaelhtOJ+hYQfKzBMGUrz1B9wcQgnMDL0T0E6Cv9ofa1UubgQUlXVmUUsYXCNMN6XZQLV6GLEDj/F2+jxn369mAzq+346nXZdN5lMqqrC2GHvn8Jx8QYhjlBDaKJt28lk0jQNcTCdTne7Hcjbtl2tVl3X+dVcngXbiIwMmg77vtcnUp5MJn7q+363281ms6qqsMql+nkW8GcaB3uji67rptNpVVWr1aqcbNu22+12tVpVVWXKLxDoZ+A59dMIvKx+KBNISLRpTtL/y+C3apPJpK7rpmlGiziCGULCKRfn7dFw57/C2+En4di27Xq9nkwm0HIGb+dHOfrroKOO/vCCm8BtmsZMRoroBR2+5pGRvkpXwWnTNOENMBMH6Ga320H0a9ANBp+EWlVVOgyKCERf89No0Ev1EyS84OIMPh8eHm5ubkp+MynylEhFvi+Q6c8F9Qycj4+Py+WyhHO3250CSTNaqq7rM/Absa7rzWYzm80wFAE0srzKubRtS3azuIOxss0feX0Kb23bNvu/ECqP5xTeXgDzxWRQ3/cwziCiZ6L2XwDZKx85hVMgAZXp0fc96sH5m81mPp9n9FP9pMH5izxOIu92u77v2TsWlSOGZDebDQMNXZY9X6qfss9nXQOgZGB3yNamaehzpAn+7XZb1zXrmPA9w/PPAuZM4zNwhttjmgWrhx3Wdf0s+GkR07eyu91uOp2eGaKqqu1223XdcrnU+IzMOoTwD7tDEM9mM/OKMLoUABeTQSV1tm3bdR3d+I7u2FEcTSYTYRfkstvttttt1FeEJlv69TQRtIRjJ5PJly9fZrNZ0zSsrZhmHz9+hLpDyC/Vz2HPr7wTHqMwfdJA9DzIObzT6fS96OEUnKemHzvl6fA3TfP169fZbDaZTPq+J52zcIcD9X1/e3tLBbKz2OOHLd/xDtlKXM5mM8xyWV0yePIX+eu6brvdLhYLEh1fZeEvMsRrOgkpCAPz2LfbrRjwdruNAcIOYn8yUl48boJ5ohIojLEDPySdFW2aBjyxKTLupfpJhy++CBrNCPbm83nbtpmFyEtd16vVaj6fz2az3f6vqirS/8WjP/3Bp8N5ikSfBb8Fmkwm8/k8Aiji+CjYQtfr9dqvwLhgYOTooGdulhgrm1HViDaC9af2XdnDT68vZgcZCWbBzYt+R7QenXzY3q+00Hw+L6PCWIvqPrU2RzvPTSTlWZ9it23bRrGURhBfbJSIKfkcSCIsrIln9RPALn4RiQkek2WuGysIzMXFYXhKh6fgHIXe0lWgPbzIumRRtOn7npWXFMT5kKhfLT2COSUQA9Uff5EYS2aNx0/h7QUQXtIOKu1JoucdBdBoOUNJtDEzR3QmAQse2W63Ew9KkcFz0ZqhS8JimcfX8xPGYB+xH/lioWlDv7Kf58J/tH0mNYINlsQp0WW0ZaxIbPZifB6F59TNp8DJVLEWaT/qUBDEryX8o/ZiTG4m3kQHG2XUbfmVp89sTHq0JNSy8Vtfj+ZVDkcMtW07n89Zuz+dWvn4T69P5iZ/+uSoAUayWgKQoUimBz2ZZqPHX/81doGuBCNi0YiUR6h3Xccp0zi6qGkadibrWp+jT48gONPBdT5HE4mu00kCIklpo7mu6/gsJdJKcoTDeIhGwdX6jMoVO8yzI+Bf/DXz0kO+ukhK0bhh3dlslmiXqQVjIfoRSKOe01XZ/qerQ2nnkRgsgVODVGYBcrvdWlbNhISSFAN5CV5wHmc5Iik2UfADGPjJg26ynjybmAA+j7gsx33N9Qjb+ZqMrWVK2D4EPJvNRhr0NWCUz15MBpWdltfL5dJ64CI/xSUJCl5/kUHjbc1mMwLFGifKmJavuTgzr7LbzAttiRGI+4iSKE1iizGLkksqWUifzI0wNtK/bICwBP411xGCZScoYblcNk3z66+/Qk6ZhYzsCN5Kzv/06ZNuL2VfIxVBmfv7+/l8Liqnbgtgfd9vt9uk/0bTASdbJm2si07k14iSiKozgfl2/xdKSBY1CHnlRQn/mWuKLfLoTMvX//TmMmi1WtV1vVgsIvKXy+Xr4U4P5HQoPjRxc3Oz3W53u93d3V0W8oIx0afPC2zR/1VVTafTyWQynU6bpkmCjGWOWA/hjD0sr6c3RM8FDkL+PBdZlBIksd6u637//fePHz8ul8vNZnNI61lWnUwmk9ls9vvvv/d9P5JZZednrkcCPZbIer1mMv/yyy9fvny5v79nSLZt+/j4WNf17e0tTRaf/egoZIe1aNt2s9kwptbr9Xw+l+bfbDbysJy1o/0kWYZl3qIm8Oi4Nzc38QrNdD6fX0rWHx0xNy8WD0qPowt8QldHhJvtqOXrv6Izn2UMmA1ySOivGfHMvEpyDx+uVqvFYsEADCTSc7xCRW4x4uJLJhYIe4kITiYT6TyPlIO+Zl4Xf5byT7eYfzqdfv36NXGTzDFOU9oLk223248fP8I5mfUC9jiKovl8zlS5u7sT8lc1tt1ub25uHh8fu65jvZL7WdASZmBzVQAmjQ1g/TdNI/XBmC3XN5PlED08PKxWK/EBniA3rWz24uujSEgthcJdsbDNZvPiUZ714JvLoL7vF4vFer0OLQatzwL0VOPgNMThYjqdyrJvNhvrTfCdMYNPDXH0/hPnRXBUVbVcLuMMMnSn0ymnLEEiAyU4jbJH8xISSgRBkdEZvXoU+He8ydxLIah0ZMKIYewsKxukaZr1es1mvGyOH3vPZrOS5eC8ruvZbPb4+MhHW6/XMechMEACWy0Cw8en2leqwpJRP6cEkChM13WLxWK0RuVYo58u8hUJJYxFenInL9L/mU7e3Ber69pOE0jEdT7PgPX0n2K0jx5hB5XLT9iPmr3463PnxQhX60UcU5iT/Z94Nn2b/QElZ4Y5Vdb2fY/iPRg59eLpvN2Dh8wTM7CMwo4AyLJ2XYd+iB5BtPQweur816NYwmwejGjYbrcfPnx4eHjY7XaLxYKSWCwWI+MrDh375fb21qY5AFN+KJBwKT21U6Dy2ohm1BI1duqRi9yPMoDbl2H4ZZC8uQyybOS6ijXK4WXgHj4VYvWTuAlXPLKcjLdD4rCHl905Na8Ry+XrdDoVCGOlG1ToUaEQoZnoZkxx0idurPSEiBLfQScvm8WbPpW5l6PwJd1J8r5smZm6aJrGVoaqqqzg+bhMOVZ5PRJAYexRJWHSUvf391VVLRYLtgDPN5xZAmmUdCjMZzUT11utVqKTnIDzIS1LbCzknXHLGV32WkaYlS3mWK7UZcca9fbmvhjZ//DwwDlSZfD6PRCZBlkQ49kFgliv18vlMoroUl6YoZ84r3igdH4il2SlCLQUu+uYxJlgQiQhRO1LBX7BeEE57muuS7GSfrJMpGfCKCX8ERZ6CKKYsSlEGpkkGeJZF6zIiELKINkD4XO7E4iqTCpAZjgk51mKRG887mTcCNAkufN4LiaTSbxCznsGTZu3uAibCAXQfKbzFsOVfb6hHWRVUpmWBXYHc+aaVIreKEF0HXunNIARaH6SZGXNVlVF2zCwS6KxqJEO5H3gxNtU7sgb0hVhUbJNmrlZjpWYTga1s8Eai0ZTQcL2yiZHPcBANC2CzgERjD48ySaKeNKGBRG82dCUEFL0bWRciXxP+Qk+3fE4hDRNs1gsSnqFkJKZYTvs5CIC99TQsJT1TUR/xMOZ2lFS8StxA07EJpZf1rKFJgMnH8pwfhVGQDPZkKQraE+ozq8RKLFzM260S2Rx5KyJZB35oZkIQTyadblqI9sZ5YR+KIAQpNEVfOCCsOFFBP0IsMOvbyiDDgcr78huJC5rgc+4S6Iko0+Vh7vdzsJjEsV+5VhPuQaJfpJAFRBdLpcjwBQHsdvJDqsV8VSOaO1VRfK6I8v0YKtdchPnbeASA0RwLIXNZkMI4jFVrWRxogw8QaHH1BkRAeeTlcxYHBsJkvD5er3+/fffw4QXNDlPieO2bU/VGZUsF8YT03k9nNPpNImt1DRCyGq1IlUR81HBWhLGs671Zjpt285msxyEdLQfEuroJ5MHqfi84HodBeb8zXeTQfP5XA4SNhMZOQNuidCES759+4aXPn/+LL0dY/JMV4c/PTw8MBAeHx/L0ozlcsmZF5Ug4CTa2SzcPWIFUY54IGMFZsY/ScEIEplGuylRzYNHL0bYMGs2Eb2dk0lQWGwWRUnx+aPqz8s+dB/YiBu7W+q6vrm5+fXXX79+/aoUK0bWUcife/OoGDpfZ1Qix+Ow/Xo4m6YRbF6tVghG/w5Rats2ubNy09xzp3zYno9mjag6mdbDlufvPLde6XxvF/n1zeNBp6Dc7Xa3t7e2R1FoEcxHHwkh5iLNMJ6vAi756ekXt7e3kq83NzdM2YQJsCvuErRzbCDxxAEEVYTI4bjz+ZxZnmoRF4ruWPisrfM1BOX0R9cxQwhKotDOWyl8oE4mE5Gy2G6qQmIyHALvJ+03m41V41yUOvnjx49SOeowD/t5zZ0RbkmZwzqjU0MI67AdXgPndrvNYQDC1XEMSd5g9cWkeHQKqhniXL/GcgkFPqVe6Sgwl735bjIIY/OAYrWWTDWaZ+milz/1fU8WYDbOLaVXNvvptSwsMfTw8DCfzxkOXddZfgwcxm6ahu2NCVNheGogyjOeNg+f0ClNDBvHEtI67C14GPGkUrrSF8AhyfczfwQpCH2CKdLzKFlTDMAQIhXXS70yeBaLRYKa0jqHkF/2jiU+U2c0Gg6NvR5O/bA6oQKeg38yiBorAzojeJ77tRRwAnw5yudZXeE4GRWe9VsojGeB9G6+GC263W5lCiKGMPnhZ2Y1+il1OsJpMV7S/okXGFINgfJ8ZCSeQjSEIYV14ryQUwn1jSD0tVzvgMpqwPyMiyjPo51EAI2CjsiINFksFpvNxrVOcEVS+CwImwmqqlKDRzie0QEksgBcyru4G4bLKKWcfSLyn9KsnLv2Jc3IeefOYYfxZV4JJ4lTIsqOPwWNKaqGhEOYDwF74p2MWwqjo75/6O1oz1EV3H/0lsD50Ufe+ua7ySATo/CpC58jT/78VzTHS4J6uZgztHgKoWHR1WqFgLbbrURMVVXr9Vo0J8WESTYJCuTrYf+mECeFMU9qJHpS2vMJGx2d++Gv7kixRYSZTkx3EtaGTKYQO3y6/8NRogyH8LtD56f/1Mt0XScVIOXEVjpqUp3q+af3j3JyFEBEf3RG2WFE+aXgDElACNEsd5FxiYkcWJ77r7kwbqkF7TI5SiSliDw66LPqlY72cMGb7+yL3d7e5gwNCuoowZXJy8PJT6dTAUJq4TwvHT7uTnyx5XLJmJIBITtubm6Y/aQbP8jhcowCPAnOwyEQCveBGZwtF9RRsmaQMPKzDjs8xJLd9qqoQ4KpotY+YhQMrBhB1sMhRndSvEduZqbkWpxKOiAAjDp5wdfDmWZoo5QYM9/ykUAiCPJ6OMPzpLz0LnnEOUqyTAbzBVM+9Yj0RUoxXma82ED79HqlU8Bc8P4fagchDqsYzZ8o7/lZlYSlJfLKDpfEUKIrTnWYBwkUi0qVUekp05D2lv2xeCMei8InX/zK+gg/gBxUomDsajmm5MiMQoVqHHI/ehEk+JUoyVihVN5B6f3lwWS1VKx4BHKAkVSaISLizTrldlBnvowRnTCasj3QpIiwdHhqjQIkVre4cUPIaDypKxOH/6N95gCpwMk7FsgLdUWBmULAcBFaRRhuEoI+KaQUeZWdHIXq6TfNnTVkrKc/qyVERXIdrVd6bp8Xaf+HyqCLQPxGnXz58kXPgrjT6XS9Xtu+/O3btxATKj9DBELjyW05dMJX7JRzo8+fHxQnYnRBu4ZnwMwxeVa9zyk0AjjhZxWVzLT0TwScP7dI3GEymXz8+JFvS74nEC6AAtsJMB1CZWfPZDL59OkT2SfmnUOsP3/+zL4Ldx12cuZOzNu//OUvwnyXPVvmzNDXn2DgKoO+U8Ivv/zitKrJZCKDO51Ob25u7u/v7+7u6rp2sgxCZyAcpaFwJrOf12PDN2kiEvTc84MyFm3mk9GRjEy8Wsq8jJjk8dFFZGuEGsmYOiAunqPaeRzsiAjZUYf5miO6v3z58vHjR84s08PmTztCiSS4yrPlhTqD3W7322+//fLLL+VZPGD79ddfP3/+rKrrBeFwNulqtfrtt98+fvzIry8BuF6/NQbeLR701hN7bv8PDw+3t7coMm/CK+38bJUU0z3aP07G2Ov1WsAoBzi8+Pygo2O5GSspUAncEEORLGd6GP2UzAD4SRzVA2yW0blFo8fzlb02m83UNPCbpEEj1jlxwlLxatODCyvChmKrMsfYWdvtVqneE6Nao87JREnPqqq+fv3qlBUwHza+3nkLDFxl0Hes3t7epuACw2A5n2wNLjRvf7QYZRCKvZB0PtueQZQ0CmeHD3L0/KBT4iOlTzFhXAhVxBR6ihE0moKvmaNMnzomJQt8ScYX+0WQ4mg/iX8nxJZQEW9UUag9zCkmOOxKJCvHdzhXUDMmZ+QFDzFoOezqzJ1UmSu/Ttj7zCPXny6Fgasv9h2TIrIqCcWJRbvpYWZFApZnsI8tlfCt12uixOu3SBzh1QQ15cVibjBDzsSb8HZ8sUDy3HqfPDi6EDVXFQV+Ea7nnlvELWLd5Nmmab59+8beXK/XKS8SZYtNV15EHEQCkjKylq6ZfiLr5bNPuYZq/US+j3By/fqmGLjaQd/RS/8nrol54uDQsbl5ykiRUKPwOQspfRK8SIWrUcNXmnH3kgU/uvDR82DAZkQG2yoWGcsr7Ue9lW6mn3QoV8jhIn2SFkz/SnL0f6oUqwyZkcswcHt7a6dLzEy7WM7AmZmSRwRWLD7AwHkE1miyZ75CF60T4/EUMGf6uf70Ygxc7aDvqOMQOQk/1WWMDn4Hn+KnBr+SRZGOOFkpbHPaOSmTXLhfsVa2bp1a0eh2DbQnDojIF0dGdEjQAClJPXNXyU1canxeFkuHp0C8nKZKdBhgMWVeowt2iglGxMRO5KlFZJyxp0bd5ivxTYSRlTo5hf/r/Ytj4G9aBmGhWAQxAeIoZXNmVVVMpFInjxYDWavcp6UjZYgkLJTXFaSyKUaWCzpZ5+mHRZafVNy5ady6rvUcRsKfIyAxW9lPyna01GcSVTE3UtcTuZwKr9EQ8AmZYfXy0JwUJSikgiVgB4aIFQCXFmjpMUXojGDIV8CoURrdzFfRqBhBMSShtJS5Hin1UEy89JYRcwfNBG8ZKA3+xi/+pmXQn3ntiT/H/YjRMHkEdJkY8SBekJO25xb/kyYORcJyQldsosvyjCyh94spYsxJKafOA7JMEWcuSmvlzHvHYqm94Lwh2wDLc5EM7XVAkd1EUmjpEE75UH469VYK3Dz4N3txlUF/0qVPPEXMSGLOXracN+zde9l2/6yZ5OUNMaZsO5ATfMF5Rk8cXYzfWWK//PKLWlD8vFqt3u69Y889b4jltVwunYsky1nXdQqRiGxmWhYrSIg1tFwuvRHk8fExEbQX6Iz0/E/v4hqT/pOuaU6HcEa6QyeU2yjbY8gkPPzcacRPFKZJesiWWnYQj+yn5YjPGpqdpWf1Pl5zyFE9PA8ohkzpnakYcAzF6L1jzJASpNIVOuy/bFlew//j42NVVc4bUu2lHCm1AtlwE/ByoTe+eaJObsbVLUf8m72+yqA/9dInGCFNjsFEpoiG7CB97jTEy+PR7HY7Z7/aA4FJ2Cz8wRFrPXe4UXscLjWWM0lt3RL/zqtmMi5REpEkxHb43rG0H40oivT084b0k/OGcl6SPcwB8nC4EZzsygTRuc/lnrURnH+DX6++2J900cvQckLaHCh2vt0PeOAFtr0tYCI+q9Uq3oQTSwQvst+VxzGKdLzsK25MxLrk4aT5uWayh6PliY9z6r1jEVJ50CNJz5nLE88bogM0huREytR5uRnIR4MKFTnnWyCP8Dpsnwf/Bi+udtA7L3qyMCUc2Iax4PXnimu2223eWJtSJuXCh7ynw1P9e08sFipfiZXQKSGYMwBK8F5zDc7k7JgngBSC4V1GSGWs0QRH7x07PKYyD7ooI+v8UMJo1CyjMHxgKa5fQm8xZAjidHjYZ+onSyE4GvRv/OvVDvqTEoC8mOPT1Gen/AdZX+RNbWWahtUjwGH7ruoBcuplVs/hUyIjDASeYEwwkjeRqRE/xwKyYKliJzTz3rHRcpZ21tH+ywZiUpqVZVbquSPN8/4Sbw3QPuOO4GQueYR4jZjLI3/jF3+EDIL0pDBppFR5lEFKWjerePTCgoV04qfYj26vVjTqs1Z3BGcM5pQsZjc5OMvOgZpHEq3INE3fELSoO4EfQ+Yon9T7LBaLbEDzCPEkn2VcrJ65QylDJqc7l/1jjLKSW7Jf/6SA8uicmBOECxUZNwgZLUq+giGN4WfEkEqQcLjhkgrUnnAEANSBUOepk4aQclFKKXa+/8AQiyyBtpg8JJSYPQwLijNwjkrbnJZJi5hdMDkC9adfrY7HS8RC7+gzveV+7iDCP0+90h8hgzL58sL5voSF6uF4AYfLWd5JJ9hVMDWJBusU6kzjF19IwfIdImLkkso+A2GMlNE5Qdg+J/nb+CrD9axzecpBy2uHgfDLylpnG3ExKuTgIslmvOTTebUy9GXPTkFVQ4TrnMtBbLVt600kd3d3GBjyE+2uqupM/U4GUmApN1/GX9ggmtnXPhJ86eH8xfn+Mfa3b990coZ+0IDl5pqJqYfVDy/IesiJjDsP7eGvfd8frUsK4Y0u0sPovhdShu9KQziP/MEX7yaDHKXusB6BurKU9hALWVo/wWzXdR8+fNhsNtvt1jYLZsXL7KDDQe1squu6fGnUqTOu0DHeo2q8FV60RSFMLJrpdOoonNQfRsNnX8JReE7dJNRwCDNtMpkcnvuDpQVWvRuScKT2+XePj4/qsCFT7txetvhltCjzQfv7+/sPHz6IXsVOtNvj999/L/NKR6dA9s1ms19//fX333/3BjcFUPikbdtffvmlDOsc7efUzVP9x/Qr+z9jquRs/Dho59/zdan3eT2xLunU9MM+f8J6pXeLSd/c3Dw+Ps5mM8lgdHaq/H+E2Xg0TCfuBrqJthk98uKvbITEfSP7RnvoQ7WYJ3ujjEuvAlt2Nschpm5tdC6Pxk8Hm4Uij77b7ZAsI0gKPP2TklH1DLd4PbkQiI2n4ymnbjsCMds4TOHr169MIUUDAurb7XZUv8ONOpwXJtlsNs7zlqdPgKZpmi9fvtzc3Gh2+PhP75zq33ybpvn8+fPt7a1mZ5Avux8h+xRtd5H3eZ2qSwL/4fQzhVCmNn/CeqV3k0Fd193c3LAL5HpgM7gboTX3g1MXyva8tVWHUkhpP+rnuV9lRpKNwhUjASTuYES0Is6qBqeMGuBeOpndJ0aAlJlC5N1z4Ux7EtlbLpzfmN35+ucakBE4iuAmUwiswJlCIdiO5GJJwQbX7+7ujnjVJhExVcIWlxkVUEcXhs55QDon9Jumubm5UUMA+SGDUSdnvp7pv67r29vb9H+mE7OLJCX0+dRHn7L6sW3hIWH4o48cvVmm9q2XZj+lcw3S7E9Yr/RuvpjMi8VYLBZM4jNahYI6pDy5ibZtKbHEVo4u5Atu5v1lVhHvhQMPO/SuepVssfM146cAGGnSkFh3tVqJs3BzDns+f4cJiTfKCKtzhUQT0n+i7JHgpXTIdorlcukaEthurFfAEAc4UH46Yb5T9TunZpGIXs5OSzLby1eccJiXnZzq59T9U/33fe99v0/sPwgphdEZeiDxxbBIokQ/T4F69L4hHOEmCRj8HG0/uhn26fv+z1av9G4yKKbE4+NjeCZqdoTB2OSRQXw3Zv9hGjXNDvt57h1c7SBBL/m16zKKRYf5Op1OBYxoSL8SK8wfzl0CvcwWkSOOT8yWo6BmoPJXKSHuUuIUqJbcKfvHCQIrbDHoCpdmyjmGtaoqhpWqHA0SzxZRcsKJiBL/brlcEm16zmG4JeS5Vu4EkqgiWcWHhweEIfpr9Dz4xItn9X8UyQbiZccSEef6Kb29/n1es/0fKyZ2dxB1BgmjmLQIHV/ylB93pre3+OndZBAm3Gw2Nzc35BGxcmqSCaCQR9lETsNTlShDy1P9PPc+6n94eJhOp161LsMyIrt8Rb5HzwlKzCteGGDk2rG0O2d44BT86IlQZpLkIP0EpxhcKFhAmi7Fn7BHAmbbRLlBn0iKxQjz7MkAACAASURBVJRVi+yzKHbDP7F+p5xOMACShGaSqk+R8cvE0Kn+CeWcvZtmJWzlddwZLZkVI1bPV9RCe8VWfYrsKEd0bSBGEHs/VHfYOHdiAblDYYzKI9L4XS4uLIOC+lgu8SzoxigQfkqqVzDDGZxCJRyNRmGk5HBPHJ40E4XP6XuB4E9Fr9BVWBQ8FLW5mCnxoboHqdn6pCVLPkzF8CEsEog5H5g/iiKDRnJpE6mNXgO//pumwR6ELCsGYk0nxTUwKS6GUcm4JNQyZeNGdoT6IwRHU9PeoIYrFyjTyUXmReqVyI/YKk3pp/RfVhV51kKkw6i0rKBldb8E2HVJ8Dl2ykKzBNHnGW6H8ITDLEfOb4LDrNSZfkY/WQ4UKFoHP0k7xLz6KYSjnl/59cIy6BCaULxQKw1WEsrhI8+6gxTyGR+taZr7+/tQIZX1Mv15FB61JHED27YVt84bUwV9EwjgE3GUoALbX+o8oLc+b+goEs7cDH2XbRhHF6knetP+MSGzN1vkVVF4NQiBHjE9AiaFDi+jc0UbcOVz1H+J0udeRzGMLlKRr8ORtnjuKM9q/+YySJlv3/fL5dL65c3rzwL0VGPLUyKUIlKuUtf1t2/f5vM5P+IF+YhT497d3W23WxWSUj90Sww6CpZMZIstFovEYna7nZyUEHUyVkykhGZOjX54P1OLkdW27QXPGzoc8ad3jnKOI3i8r+019UTMhEMYntt/jCxdIaSkFCaTyXK5/Pz5c5yXLA3DkMGLvOMIs3dydNkhkGfuqHcTTHSKE8vlzCMX+enh4UFKtyyFe5kMfS48b56bX61Wy+VytVqRAhEZo7V/LtxpH0LPRX5ywW6n2S5oB63Xa+JVYCujO6EdhyixS3lI4EnNPtl0kfOAmF0+1cIqDiIf6e3EdP8Y2jLfeHZZF4L4lfVE6e31/R8lRVtVNpvNX/7yl8fHR6GuBLZZsjBMsypQ0CxWeYB8+sX9/b0dHgkCHAXv6R0+sSV5F8uO0RcYntjJy5q9uQzy4kpkJzBx5mVSL5iDFTokRMZkshhlluoFoxw+4rSdePgmKG7tdRR5JJYOH16ZH9dJZAFl06LZppTHn3WReOrFzxt6FhjnG1+qnujUKBfpX8xrOp0+PDxQFRYoGXFZTsGUnFfNddJG+xeEn/OikSi2LOupKb/+vkzCyOYKAK/v/0wPby6DUvlmtRLPOwPTC3461BURCkwAJHVBO0glZN6kqmdgiE0qUMyiKrFxZLKc1GKxYEyRQbZESP0k3PB0VDBtRJdSFem8oYv0/3RIRi1HS0PIeuMYRMGhTJyyhrxF8im89/r+DxUYIeLVu0wDyibUKyVvM202FQtmo/OUnoyw8dOv6JbZnuj4CwTZqYFOiRX0HEkk+5kM0qneLnL/zWVQ3qglb2WbX/K7r5/DUQKyhyMhAwKiTGG8ftxsg7AnS0AHrSjMsTU0O6fzCjBQZdtRKrBJCjskzlDwUbIQxeCIvfK8oddjJj0cBZWUxGP0E7GrRDD1RD89D4hoOOSo5/Y/6iH5pu12e3t7awriiXFgc5ZTojbJuiY1Jmn4AtnhEQEECQ2kdUH1mQUqL4jyKNFkad963IFBSjje6Jqiw5l2LV18oJEyxOcCMQiFRj0lsF4Aj25vbm5ykgaDPEFoCi1bMcodRjzERK/B9srzgICR7EaOQwQAjX20sukFc3/KI4crYlHCUahcBL10XkbnAZ3igUv1f7QfxhprVAEad4ysL1WasFF5ehHXm4hEA09BV9kmebEwSwq7ymaXvSa7UTXJa5ojGX3ZQfV2sbyY6okwf7bGZdlGF76+/tM0DvuJniT7opOZGCniwAlCVJDOpafQqD5kmtCPmaqUkWsnfUgBPJbhZFjQon42m42CJpCnegg3RpCVix0+yUV2YwXmbHFI2IL7eap/4liHYI6AdhMDQGzs1vh6JYEKgUd1Eyj5RBKWwycILYRro5SBwsxUP6q0czPmRlb/Kf2zTUKiHiFudMgmDeThfOAZK6sPXSF7sc4YwlgXlsqlLK9h7HAuKFZeNUO7eLtPoLJM4wtDUeQvqtamnMhrrxPDf+VF3/er1Sq7Uf7I+oKnoIDxT6aolmT8q+t5eHjwMilTiBuFsQksVMWEsb/k4eEhYWYORWzyCC8NhD+cMRIO17iua5XiKFJC3WY6uX9pFwkXx3GYr6CP/m0Ke1b/CVqnYMJkCUGwWc28LX6z/wv8mEfLqqp+++034nuz2Qh4xa+BOvwj4mMffIDPsY3YLwvK6/H1lf3jq/QfkCJxslJmDT9d1/3lL38BQM5swZPJKmCcUSFP2f/R9l3X2SILLVGKmfu7X2AZNSi4OwRv7q+UGHn8YnaQdE/qaFnUcfX/eIRGYxgahXVd9+nTJxicz+er1appmtlsdnNzI4ctvii9heETPb29vU2IVDO1drS3Yh9anbpgMjw+PhIQsrlIE0jZHPD4+Agk4cyk1SL7KGQqF54FvDmb9q89t/9T5xlxLqLraHuSdzqdqo4J28Q2vLm58R4uZkVCJ4frnhO/Pn78+Pvvv9/f3wtgKSm2H410w/Nm/fr+s/dYt7aqglak8uHhQUBttVrNZjNTW61Wv/3228ePHx10dTidF9955XlALx731IPWNL8SQE3T5Fy3xWLh6AJUmpavv7hYPCian2LBVPGNXw/oa3qgun2uVqvsk467gbuEmWOUbrdbG/px4Gq1uru7szYWzH2BHuKAUyOuPJ/Pb25usjE9h+mlkMeM0DqzMY4Y3hClTnlRLngTJFQ+s1X1if3HdYqAc8Ft9FZSabu4G2Trer1mM/IHSVKSxXu42BqnxFBOBYl+Yoip9lQKmCSm4NpsNrtI//GIg6v1ep10JEszWVSNyVznN3rPz3n36ulU+tzzgJ7e8ytbYpMoS6sjReB0J6UPmr1yLI9fTAYxOMtUNGq7IKzPmnDGDTZd3N7eslnU4BMBpI/NE85U46kpsGR6eJdOShAlvLLzE8mGcLfbLQmC1dVnssWyRSN2DaQBT77sKXVGHEZyENs/q3/MFokQWSaGzcOKt6hWjQzClsIfWZG8h4tDB5L8Wl6ITyXamp+IgPl8/uXLl8X+D8VrcKn+U+9jNdlEzki1sjRKBA0lKspjEQPwKy+YyQQxxOowdPvK/p/7eAlDImV2LFMPyfCe0i7PHTHtL+aLxa+mxKA4a5nx/rCLkS+WcRUHKLTHWgmOkgKJmOatW5PJxIt64wHZOc3iSNFzEupMA4nVGAUMfuFbwJQpoVCk9vCWgAs4g0x5Ri5M3jbzgv6PnmfEEun73pQDavJ63u+KVRh3ZUSfhA22j15kImCO2chv/eWXX0gcFkqKGIKTBMiPdl56CmX/i8Vis9ms1+vb21vH/i4Wi9Vq9eXLl48fPyamY7vf0dqOUPipcZ9130K/+DygZ431lMalqnZNkbDNYZWiSqj+Kd0+pU0dgnhK6zNtqGUGReRoJnbmwTf6KUPjlmhmAiLhm/Cwo6OdYM9ET6G6MFDXdU7hgTE8mUAJIo71RAAl1TVatmSgSBkgQSD5QvGmmSmwm6InidHMK/d5ar6e6R9+SOrkg0o2oxh9lvAkm+MnKieLmE25RHM6jJoFWFnAmSkwyvh6OoR5s3Dnxf1HoK9WK52UiGJzmVoSUskKuTCXWK95PJhEISZo7fJJbuarZ9MtL5tJXk42WP3DLrJMYeH47FnKWNCXgupidlBMdMHFLMylAH1uP9Fs1pupLwKd0ENCANiA+q3rmq9eRrhoA9IH3/IpbFZUiEAqrVYrZ+ArOSV9xInm87lnjWtGSNba041p4yZ21QMGCHtnju48q3/8ALwEIFGel6ybbDxKbcSqwZxT9IHNdggbn1ov/p1n4U3PhnYKJX172f7harf/Yx/JNiDU+XxOBCTeJyRnFihBy1PzesF9JudzzwN6wUBPeWQ0u5BEqDEWbqzLp3T7lDYXs4OeMtj5NiibHnCNLpF1rA95XOV2pZBO55ftpywycGIsU8UopQ6P2GU10OGWEPCB8CkXeiOGyixV4rXxAUf2kc4DDOWMA4WrSn3OUjvMK+cMM52P9LYhggEsmjmacraez2YzDbLzwINEdmkgqM1r21YUxkw1PsQY24Hp9Kz+hfAU41GcXn3h5Ui2GWcumXgAAI+55Cav/Fl2UJ4dXSSNY/qlYzFq6esZ/CREmzSFeg6zPtp/eitFUvSfX8vw5VGQnnvzYnbQcwc+1V6pDi2NAtq2dZpn1KZIXgTz0a4u1U8OSKbn2QWpj8iagcGqi9daY440JjkK51vflOkX5OKDyL6/4Dyjw8lyOZWN3N/fE4uYXMVA0zS//vork9ChECzHqqq8gMApsaWRRaxg8lhYh1h6bv+iTtgpr3VjCiUwHAFUOkTUTD7f+v1c0cEUQ3KChxhwh8Q/+ilaJ40lohyaNB2BCDlHvUWxxRd7eHhomsa750ifdHIKpOfe/9PJIGU4oQaW6ocPH759+6ZY9vPnz3YkCNqfmvCl+jn1HrRy1S2Y/RAOPaBGRKkJplNwvvV9dUOpok7mrm3bZ51nNBJAwGaMeJvAx48fv3375sR7xqNj7X///fdffvlFORKzTvjp27dvd3d3Nu4i/cVi0XWdOh0KhsY+iiL8sF6vn9i/kp+qqh4eHrAlUNu29X6029tb1QacstGgWe63fj9XYvAUBpHNsh6BdP6rerckDbquI9BP9R8hq1tfvfyGKWBpKLCjxHAenjO/Xiw3f2aMZ/30+PjoNVLCAZxPzIx0YkOeR8Sl+nnie9CyhDkbVDU2yM+D+iz8PKuxcQnE9XrNi2RBpB/8LwQTO07ckYZkQ6X96IJN0ff9p0+fHh8fsTErJvnBL1++iNazIq2g2ghq/+Hh4ebm5v7+XgVWOonzOBo07iQh9ZT+U5PBzsrRTt4T+/j4SIXARrlepVfCmOKppb4p8v0QyBfckS1JFvIF0segEKvaGxHC1XP799YsVrPCOhG9EkUvmGb5yJ/ODlK4IQPlXQIW3pZOkRHiKdxezifXl+onqoBmxj94IyHhsDqfImU1USCB6g+7KEmEQBFkFXEnH3GX6ieRNYgtC7t/ymAUg/KFrFR8GZEIEf3VagVj+DxRCeIJ6rJb3XJLTcYGKS9g8un9s52lI5gYAZJUEonnd5RyJxZBgBeLBICgfhk/euUSJ7jGgYUl3n05/Z9eAyn5x7wz8nz/AT4x6UQ/4SQH2qbl6y/+dDIo79so80owQoHTsT/VD5fq59R70GI4lPQqJ2j5OXGJub5+qV7WA5pz3g2tKLCFKPOW+oRClYbbxZZNpGdKctj2xIplYq5DAj7ngoGf5tAhgS7D+O3bt9vb28lksl6vyQiHhMXAHF08t/+vX79+/PhR4bVQC4H74cMH3t9iscCxXMIRtsPz2RGZkq4krUePvOxrIr4RFqL7o+nn65lRWHahT8W3p/pPs3QYMQSAVE5ly05avvLiTyeDBJ6TYkhJoXkyMXgHKPjU/C/VDzu2qqrRe9BKokw8CKsLVCWFmR5Ogfqm9wlrkpT5E85HlDJfCROkpJvfxLSJazACNTlKoXerUwaSKRK/ovJSHiUrN5/Pb29vlWhFx+SkkaC6vADJ0/v3HmpJN5KRNHR2qtAYuuKmZabhdhdv/X4uFWfBUt5fVs69vA6co4u4ijmVlSg51X9py2elmH7i2dSMUSiA0Ygv/vonzc2znKOaIrzJJpmXJL9Hk4fNWNo2PcUoxXJP74eW40XrWQ8jvZGvuAJ7e3PRmaDGCPLya+hAVN5XbJPKvdStJo142EPKXqj9lFyTF2yivGEJ0vQfL0MuKfBkiOAZRZK5GjM3cg4ORy+vliWyIxwl19zkFnEeSa4Md3jxgv6xdFy8CEfWTXbPhnjKQc2XUmSSp3BB+yhOPjg54jPmcIRL2XN5TUPE3XsxtwNJ4o8K0TMRf6r/kLHlAFiOxPKVyQwbJeQvvn4HO4g+yWzxD9TgN/OHxJLtM+2QSKmjLLxns3I5zDTsmk7EQZhLIZdQZxYMeOFSIqlURGHOhIeoIBSZyr3RCukBVGFCciFHiwA1G2sjjGIpEBaMdp/sZ6hIiCfK34MJu3JJmGkkiFnDCdGpnDKVluUsMnGzsBa4Gv7zLgqPp75R1gx4ZfGn9pg8K5gRD3EegwWifM36QkLYj7yI3grlWNBslI9TmQa5AIl4OaSlcYA8ekEujwRTWqZ/FyAMWT7F0cMOsVXjxJXjIuzkK4mVZBuQDVLP1MKhpaQub2YKr7x4BxkEYrmMsKjcrS1a3IHZbPbw8ICfbaHAnJLNaBTeUadu48TSPNY1R+1Mp1MMI82f1EyCGlqGXEQEj6KYxIncidXA4KIrZEbPx87Z9iK7iZhmdqp7FHDndA7RcTIiuVKsi1ygJXecT0TSORVQLAP/p4BN0BrkYEaUye4fxcNzb+bojK9fv1pQskP8jgrJnSgb90t2JcKM/unTJ7xxKLl+Ch6Ldbfbff78GW1wQkcir/xqWaO3flp7EXuNHxQ9B+ayZ9fQEokQZfbTuVjBUtNY3O12G2h1AlF8YTkvBIzeMB1pfnd3p5P1/k+O4gV4PgP8u8mgX375JUEKOeDpdHpzc/P161fHDG63Wy8FEiZwZI9yiRy7JfRQkibE5cTfyWTy22+/5S3dgp3OLbPSEjqY/+HhwdkxzhViPpzBnZ9KGsoGMcyDjEi0U/3YPRBTCOReDSwKGEpltoSe8oh3YKEejaMYNT56PtGp84OED3B47KyfZgBOze7wvrWu63p0ftBz63TMlAT//fffOVmHw/30jrj7dDr99ddfP3/+nGN9Tj2oqDpvTLa5hOlx9JFT7wtDtEcfCbZz3uaZnMDNzQ1zJpUrYupOGZ5Op8qgAuFqtWLpcMdo32h64iabSO7u7v6A84PeIR5ETOQcn9iBeNVu5ihAzhTLiEgKY8daKRcSaVKbqS1SaY3rkvVgC/A1pGCYMLGkRqqjHGUkVjJoQOJARYaOni0fLy0Oa0+QZVu8ojhgk3chFEW01GwiuIwgbgLfioojXNBfojbspljmbHWK1BRI6tLBKecCRVYkfiXkl81cB0uz2aysUcr5QUqxnl6nw2j9+PGjqAe3hc9FXkNXlDai8glygMGMVxLmxbmH8OeOykxcrR8rcioeRFswf04hJ50LAN/f31tW+D/zFNETlznTj4rSgAmmmSp/djScoxnyNGE7B8iI0I3OD0JFJcyvuX63GsXb21t7YQQg8b9zIZAONy1ekp/igEgtp2WYxJ24P9v9n2gOcZaYsVg1Y4c5ipISZSglxSGKyxFzjaXzSVsGmLKT8ADCpei4fgJVOEqEyCebP7FkQsdbPYAqVJFRIDauawyHvLKC1CARXJNchCC6j9+Xbl95cer8IFOYzWZqGtTp5J2fYcKg2mQ1m81mJMsZe+EU2IEnxwMRqZGYowexKDpMsCaLMmrs67PeF0Y9sENDD2f6jyg095HpGh8/QipZS0PYhBHLC1aNmxJTXsJ/HucHHV2AUzepaPxAUdNdQjbJuZacEMfbOX7R4aFLY7Fy9W+FREMtj3fsiD5Yb23IAjrZs2VvI3evHLH8ibdsvW2+L622o6ighEGlfodXxSY6PMeHokM0idRgRZAo0o/Dj09SzIIE/Xr0/CA2hfODiebSwDk6hefejGGS8oXdbvfcOh0bQbK+XNqYz08HCQwR0JHFp3oQDGJlkERt26aO4fApbRjXJo7OQzajR1JM6PDZRA9GzfKVDKU8QEUNkyalJBXnRqJMORwBKhAKU+RVIjRlGARycGsAeP3Fu8WD4sSaA6YiZbCZl8+W+k21aPZh+1qKg1JbsiRhPC5G8GXLUvyg6E+Wi7XxGcNqdGE9ypvuCMFYy0jJjHt4EeqPS+IpB3E4X9m8iLPkMqg4MTWlxkRnyJEsI32QkX5S6MADDSGSOGxGdeogiVl0CPyL78Ab2wcGnlunAzOl/Xh0n9dPIczSZ7FSFHPm2dVq5Y0D4vriKUfb06ZRRbyeLMfRR8QEbeizOmfai3Va9KRQE2RU3jXd/+EFVULpEPIVpqKf5XJpUvKwZCU5hRn/6cggzpcT7RgONHZWKyFYccecee6YVOgmgCKGgi8BDt5cnBF4t6gOsac3cDV75Pb2NsezRmtFZY0usPThTRSJ2lyf0c+lu26msdGOnuPDLAczYZ07FB0VF+IOinI/chOW6LpILkhDjjAQyZ4+X3MBWsVKARh+6rrG26RemfmKtIpiRx7WVKglVUUvAC+5Ks8aerSyvsYFJqwJ9PgyR4dO4ilEG8SWJORZ6wU/xOL54EteJJcDXpJHi03HbyBTqHY0YEYMroxOxMQp0xJ5kNexXo9O9gU33yEmXUIZS+Q8ostHzl+HRpERXmUskD4CHDghh7PAe5RDeU5QyAVxpP+AISPDGmd4R3eVhnRkqwf1k95CnSRm7mscOZJnWeyJQyPlTDA282jQwIylPZWyIzeNlZb5Cp8y96WEapom24NZXuknhBv9qZIgHGuaQSz97xzFzCUAjEBi3zn6Y/STOK7D5EjeBFYsVkSMB+OGBB6jp9s0yx22EhhSOxbmh3adjJYyPZTzSpuwgxDyeXh0ZS4R4keDjyX81igHReO7ELl0RICMs587b3Hxbr7YW0ym7BOhs7ZSA0JSULZhFbEPwW9PxcNPYfuIYix8SXyYgVFjRdkXcTrKHkrth1KFaTwehzQlSDFYMD93j+thlNKhKJFwwWs2S15ay+gg0KWBmf1GTC0cwD59+gTblHbO+qCHRQBNZ7PZ/P7773AC+aemIOw1mUzsAjOiJI5Dmr9+/VqKYJHH6XT66dMnKicmapbmKXVGKfxjpHhvitmRfQZlH7EmjtpT5bzSAOUgAIrEcEluxIbNRd6sW2K+7Hx0ndoOGRhijraQGWQII7lo5VEnl/36T1YG3d3dyfJK9iuEXSwWj4+Pd3d3s9ns/v4+acjb29ufnhME78il6zpnQYglsw68nsE1Lw8BnTrnKMsv+MJ3ww/l2ofaqGv9hzSTyL8sWaS3qGiWI39ZcjcxL3Gl5XJJG6tqIc2d4uT1hPAwmUycefb169e7u7ucZKb9crn0njJJmYweeHKhbrNt2y9fvtzd3S2XS/IOGy+Xy0+fPn358iWFmmxGtYifPn3KgfmGeHqdEUaNZS1qI6dmCqVp9gLdAB6UKVmeOE7mXl48PDzIfiSHyPou24yuvRcPxhKofutzkUYwlF//yfpijnxPwtWcY3kmLkst0Dmqudg4GtCuwRcB4ZMawXXslzTLRXSOAtboW2pTMzvR2EF5q5/R00/JiqlmVqzAEuHjMB/otFj15aDpMADEjDJEaTiksR4wc5SnktEUKMniMdOwIjH67du3v//7v3cYCBsquZvPnz9jHtFAPXPrgplUxwQYJiQbhFjEhLyG1ECtViuclk3nkoBqxCwxO8i42+32sM6oHDQYS8CYbpAmSwzlsK5n1MnRr6M1SnFGPKajT7kpvoOKUnVxtL0lprSiLz3O5BSIJMKgJdg+2uGlbv6TlUFwjZk5TfjcsfZ2aSQDUnoWyDQlJ3GVS0GAIlUSoRjn2BM6xITrM2uJ8gJnigYS6bDGo3FLemWUaZAYzRvJIMEOzBYnNIZP27b/8A//MJ/PWZqKd2PBJQ7NNxEA1lWAj/uGByL9y/lCSPAmCptIYlyYshnDjahNxZkGIvrErtllXkftF6ACLCaP8IoKoPl8fn9/z55NQuoQfqOXn2UbZRZ/+ctfaES7BUaq9PBZgyK27Msrm0WGUlSJZwUnoR8TVEQavI26uuzXf7K+WDZDMpvJC/YOAYTWLQZmzhYQqUqZlzDSCO/iEbF7kY6FZIOgzpD46PF8TV4jDk7oW5sEC1Dqc8/3yUAvvsB7WJ3EjF8mxOu9YB8/fuQfOT1OrBrMKd7JefImxZzhyqUYNZUZRwVBZlFWlkFydufZfuFxdmKZZsZ10fzPrTMiRpPJBU+2bmD1HIE0WsoAP7pAY25y7qREqcbValUKqcNniU6WoFmfaQ+kJI5BDhsp0/eaKeJ7NNxbfP0nK4OiDRzTlQANJCZmkehy1Ompc4I8aPGUXHPUhb2Zzan2To0l78Ao5fqFSpQ7Re0nrklcRgIKBiWN6qwJHV42eRHASmixFvIV4Bf9FRBtmoZfIwvpCEQhM51IS5mjDOCoQ1iVwyZkqfQzPDyfzy0x8yeFYHhYOIlFSRlEbhqaEIHtxJLAeb7OSAAlRlzphsdNsyMaNkZoHH0dKRhUqk3ig6AaPZiv1ssns3QkH9PSBTNZ0XNQYVykiNJGT73p13fbq/GmsyLCY5qyVsrc08PDA3khGcnhYlHf3NyEMkaOWPQVE4mY8D5o5aqWljUUqUdNsSYy6zLywmFUEmLE/HooEdCQcHuZm0/Pb3GBzwHDiswWLbgSPTXTmJwME6ZTHBnIiY3JKkH32UQWd2yEtHJqkdrspqQaExKCQ2EgwSmPxARjhfFNNCjrjLL05aCYVvSN6LfXJzZvbLcUhYweH309nKBxSROdMFUOKUFXqQ9I8PEU5Noz0kPAEdDqVLIEocMRwG/x9WJ20AhHsRdoDKubFKOvvI8oKxweOU2OWAyqINkiN2MajPAS2wFdRo3kcfjF8+SIHsqQRzzhUu5w3LLlj1BLdBaBokKzTrcBKcdr4hCQpNTQjBhNJauUEwRDaBcm87VsefQ6kGSCwI7UGz0VcSx4ud1uOVx426Ija4Yk+4j/q02CLBrjeQI6ejveK7IBTElRASMjMoISkksDgZgYjDHNyvlm0aGaxRF7CoTIRmA7IR6jxLW0fNg4M3KzlLwjlJ7/Cs7gip3lZtauvDBc9GtWUyzCWCEPokdSNStuLMvEWixDisGz9ujNoOcn8vRfLyaDMs+M7Y71Tp1OVVXfvn0T9/UpFkuKc5E8mJNxlsulyFzbtsvlyoeD3gAAIABJREFUktWAJUpWz7hw2rbthw8fqCn5VFY6cpdABdsZg1+fKC/9uxAPyg4vRMCatULlRqHdbpciRozH/rKhJCxBvkhPoLMMCic4nCCLhBXySMsnXiT1Bs5YjmUqBCbdEbVJAs58SwdnNK5nnQ+Npk3TOwL8GmY4Q9NHkR8geXbQHu2FW5w0kLWIkBpdNE3z8PCgQyIphpVDY0KH0WFZizJv5f0iFldvwfAIM+e/Wnf4oRRjWx19sJRHZQPS3AIF8tJNYxVyWvFRFqVEEc/UvMDjlPtyrFdev7kvVtd1Sm8IaS6PTK3r3He4jJRtDArODnkcmkMH4Z9DLOQQhuznhOhEVe/v71WvGN0CHPZz6g4AomYd0xFBEwcbPyjD82vI3daEyMcIx9gCh0OLrca5yw7b8yGMw36SDSF6svMO25iap4IWPo6bjpUAzNHOUzaVRBj9ybhg9oM5Gj4DnerQ/cDGbImTSMMzSUifKHOGdh4c9Z8kZjISArTAS3BE+MmyasBh9Cl4TN5pGR/nifMKVOjWdJB3lFnaPPGC0g1OJNei4dzPEIAvrcWMIqbhnAmfcdnS5jUXF7ODRkBYchzIeIHWvM5B7J12JQXsI6V89EZ+E0mqtmieqM1DE8aSY+PS4iDadUi6eYsZCEfA//QreRE1bi9bXvcuIJ1XU+LVyFB8Dh7x18lk4n3nCY5EcZWQQKnAE/srtlIQUrY/f417VYRTj3FGjrIN256hCnirdmYUa03fxkdzSlxMOfL06IjneyYOEJWFZrB4KjaX+qBTAsheXzadTrItnpcXDCtxEkIyBJipNM+WAOPb8s4Tr2m1GHqn+v9pbzgF7YXI0RUbHE5GmzNKRJm7qYWtEEDiGz8F4ykN3twOQq8q3KAAredAMtZgQkXCCtk5kUwtd8yU3LQ8pyaZ/ktWobXkX4Q2cO9zeTiikPfELpAtNkSqMMg7MitMbnUtP5niEB8KPFnwo1Njs4hQoA+6+gVTIHpMISKSWD8UCsJnfk2bw2aBOVHzvJ5AY3WYOSRgu906RisPnr9IuCS98WdZH/E1Hh8fU6QKn6fww/TmSTm+0luASAEmj855IrGvdRhDSeCGgSDyQKMciqfzE4xnbYL6jyg8/6xfPUg683wfHx+DcG3ib8b6PtVzEizqsCk/ZyufeuS599/KDsL5cCd2E61IMUqvYGbKJ+SVxHYsi2yASOyNACrFdmZO6rE8qVmNGSA4X2Eh/J4JaqTP0QXFkv0EKDWnzSK+7BLwrPMTpLHj4ccTEZ8KZZjC0U9j2QkdSXeKwUZgH36FamrNcIdtsogcN8m4cPth+9yZz+er1Wqz2SBf/VgXJqR6Ua9azlNPv4j/G5Aw/Hq9vrm5SUk0IXuqW4o9eQAF06nVmk6ni8WCEcQbFQ1JSl7nyJhplpJxX0+Ne+r+4+NjGRRn0Sdec0gS+invJxqFsJUaxblL+Wh8iIQjS0nnWrWBM4VD5DTlKfhfcP/N66T5XBIl8/ncsS9O7VUwbm7wrsqDTURweE/2fD5XxR91TT+cYhvxiDh6ljCKi0TLbu8XYC1xdEuV0ECpFXnaFOxI28RVJAR9st5djyzk0FkJaplPLNPMiYOQaLRiHozUdpF4VjZSpGUutIwph99iClE2cbQzU+CRbqvVytKbo3gQXAUDGe4pF55NLOb+/p6/T0AQFrPZzB6oEQYO+xcZCZfCG8yQlbSLRWGxIkurz7pHTjFeUqBwONz5O4xlxAM5+j81C6tT/uoakdN5RGqWRucCXme0l9nhHeE8NloKl85P5Om/vqEdBIgwYZBFMEcfZqoaWOlSNiuKi5+iW5ZIifrRnBOvTZuwOuNcMDjJlNHjP/0adUf3AttY7iAd/WSUONIRiAQuO18nWGskXvWMJRIsgLoySPFTsMsGJZxnaNEjAdhwI/DKbl0TVWopme5JMycjDoBYf4edxJo+/ClW82az8YJWiiHnCtqrHGMEro5+Qjvrla0HJElVO+NVhCuqTmYgtfi73e7m5sZpITIP9iGH9g7hP3UHMIqPkl8/00+5EOW1qtGcCW3VklclTXAZvjsFT5xctgLb6qfUcqq3o/cvJoOsLjslmgShmH9OMtcym+U0RpdJRsRQBDTec5MEIYMQMXSH2rLPuCRuDEADs59LB62MGRmRpo1NkT4JkZKUTRk8lBiHES3GeQxO0r87ZXHKSOOVxOHaKPjEfGOlBwDdBvNZ9TJNSyUi9DKMVcrNPFhSNuKLPEqk2eIC0tA0p5SobEN8YclN1gdMSk6JEJclvKQtd8kqRwmbbzSc2DOcyEIaNEnGvu9Vn0rVeTyCzGQFCnWC5PQPjNKDFvFJpEmfXE6OoXGz1lkO1EKmlPRZnjA3EtYwmeXIRdbFauoTR/AqyEpWT5bGLKxgqTjTbS5MIUF69GOUkjLT/sUXF5NBCnywaNbGwbRH64DYhyksrqrKGYY53zdbEO7v78mLkiDQK8KiCWPEqieCEcShz/v7e/u8Ub8kJRkR4ivxGEJJGDU9H+VVz2Kq9BPZYQhiNLkPmhMqLDljDVQhshg+pDn1FdJMbxl0dGH/rfyx0DLZkd5ClyPRP+rn1Fe0vlwumQnYAPZub29Xq1Xe5la6A2XeECTZ+YFDklBjMsdIxM9GsfSp0j4Pv374g8CTSgN5pJUqRy99gvmybihqwFx8BbDGeg6ufIXhnHmQCZo4BBKybB/WsSVOKiN9ji5iOPN/YSaoEJdEV5FEUaWwelmZMgLvp18vFg/K2mQ9RL/gZVQHhBqYr1k5dUBJo7gvnGQxYrkQT85nSEKtNCzj65ZFEHmNiTVje9OrUXHBV2SH6VBuOXsUP6fxTy9iveOfmGNMYhomdg25HBoK3RgFElwTUmgU5UGaSPzR9miR1DMuoRn/6BAVp2ZXAkbZ8oZA7jMGF4lv+sE/gzT5JjYdqHK8AbTkJF+HFkVdOX9ONXOUFsCCEF9xe87liQzK+copkopAFCNjCER66jaBv2R1M9xIBlkvAi7LDTloj82CULMKdr1yA3Mw0GghDAR7Ca6BGTDwWVWVWFUZi2DgWxRbfEdgZ6yfSsC0fPHFJe2gWCKp608oOuFhRfTIIhuCmRUif6VX75oUYBp0XeddrHVd81SZNuEBDBwZIbAPOwLhyWjghOTgRhi0JD4VCnjDSQh61P7MV4+wDc3CndClIh0aCSeUgqC0hrDHbDbzSh/An7eD/Oqg8hx1aB9vXk8CadnydmYuR38iNXwKkzFhcILAHGfN4/CJJbLEgrgoAYd4myAepoQsh7dC6aqua6ol0e6jEPK1xaqtOxnHcGMU6JyyyUkseJujFL6F0nA4yI2rkxKGmKt+Mh1ZRXcQQ/rERCymeHBRSGXPrnmFJVnGzYy9r8IukTI+oEdioB32/IfduaQdpIYS6Ov1+tdff2Xa8DhSkFp6K9lFjQOpuxiKTBXIyrnFFFdWUeoXQW82mw8fPhBA2ID7jQTJsuRKdEu/JStX4l0D3lzMh5w+UbZ8+nX6SUUymeh+tNlReIySEkfIoTlDrId2UFnfHHcDY8SjNFNYOuSiU7PzVClcRuYn1DmchIRK1MYSO3kLG3h2u93e3t6KpHKUEIY9HyD89u3b3d1d9oW5GaIKKmKYgJMoZwexQwkj7dfrtZca8/EVDZGPX79+5SXd399/+PAhagCqxeYg9iiiCAKx+dinyWkShaQYCJnz2+2WmS9bB5Oj/q0U+CkVlmApsFwHFWUx7WKx4I6cITa4LTscwXCRrxezgxSGJ5ChNoRjxQSw/K5RTAo31AFhqtIQCJVkqqlniW2cyl1+L3xZzmwjsk4GLbdTxH9M/+WFTmJrWGCyL5FgbZ7yudlseEApjLLARlTRh/5C3CUwJaeZSE6cCPuN2vsaZcsd1phvaGo2vmHUCKOjXR29GSpPIV9S4/gnZoI5CkWtVitmTiwmfq7IEf9ahJH1YZs+G+HDhw8oh7ltOIIscYBDUBOLUUaYDGPePc0zmk6n3oaMrpCZTLxxPQgA6EpkczQoVCOblJJZXMBQPCCPwRUscTCFh85IAQzFywMAjCVgSj72fX9/f8/50iw7h6KKRvD/YV8vJoN4QzFrLUDKE1I5iiXiECFBBry1J5u5tfqk+fkLyE4dF7NWpp9ij0wxOqc6p82jmGwOIP7jOZ/CeFz00qAoFcupB3OfhOI9qXkL2aW2LcEgBHTGGMGrk8lE0Y3yuTPtIyNE1kjPyWSyWCxwHRcYIZ7h4UxndEFPcOsU6VAGOZtNETnWNd/NZrNcLp24GE3rPVnK4SQB/OQOdfLw8ADmCAKGlcPC4/WAEE6iHlKvNJ/PHx4eUMhms3Eg/3w+FyMnMpgtcimAyUaQvJg3FtCpck1DZ/OaBxG8rYIoMOdbSX5HH6PerNcI7fmKa0SFYrPz7MQ6ciLVhw8f5Ig8O51OYZXdkA7/+IuLySDIhXfTcE2mxBJJPrKMEFlO6QmftAG7lzWufxwlSkeQyVXFyiWqrBx+pu2td9aAtKJXzyv/sCUwAsyppSoxEIsmkjcKDQ/4KpaBhU4RhPaHoIbCTsGDkyOkKHbjllwap/VMP6d+0g821jN5JxinWC52qwUiO1Lyb/ms1HQ6pVfCogzk3W7H9CP1kuaLdIiuOgUn64+7JwaXqo6QpbEQZLDkIhFl8SwGSGToaNCsF/oXFIsRnTJ9npqJQ1dKOgivuOej/vOV1gcbkwdJIFRSic5jgDt6xWdo+1k6NUNf6uJiMiiRMJBF3p+qA6ISY3kKmBEKRE+ES+LNYSTsmhhqYg1Rj1kGNjDlhlwQByHlTu6PcEqEWR5UmMAhlZXwCgYOHce2CgFhj9g4vjLFkXt2q4SjRsAYK9HEjMhMO5RN5eNl1RViBSG54NlwVB6E1TOGOmlrLt4yEpbWG8WT/ACSoHsclhwHysIlqAEk/ZsyXLGVAnBZyEPcxxDOymY6EBV73FjRT0KZQa+heUxARWyJWOsWVGjDWruPxkptBEtBOGsu1A5RXFc9aE+C+DUTyUVGMfdyBXEKIU78jSxuki5eJPwjxcgjBJAKrCSFT8ETwJ57cTEZdDgwRGSeOCF1QLbhKF0xK/6FmAhagYVv375JUvKGmPrIN9JnNDqOfVZdTymJrK4+sZBECWmYFAx+JuayrxphkXGiBryA2ESjCzxJ9KTlqXmNpvmUr+kzjdWd08+o3Lzquo7fwc/1K8sFTg4/dfvw8JAYJ0aFT8ZLWTeExJ05rZgw2jgQvsWFUZwzi9tpFLEnRdXQjiHZF7vdThoulZwkTmKXxBC0JNpC1lA5bzGXss/Ia3SFcRL8ikChAM6gOvpVh2ibxQcV1CTz6kw/JWxPvL7YvvkYKYcD21to8dq2zXlApJKctyIFcTjFtan3QdxlAUU0DBlfjlgKaf1I51Nx0cnlI+evLYbQAP8ZPMAj7Cy/QoSyGoA2w8NHoxU0OXkqC4Mlcuc8bE/5FZOQMqQD3pBvZjiQSk5NkTrQc44HTbEsAs18U7yDb9WCWkpOJYVvaiEAJgkxbYcXIJ8ynRe3CWFE7KrqsJpKPUCeaoDYjzZeJJkQI/qndTcRAS8G+6cPUszMNDwSZU9SyBXkp1MdEl60BZ83ipAFdHt7y1osizxP9fas+29oB0XhH60DCq0zAbA34SJcSlnZbQ+DCXjHOwuayjlHQr2grid6XofxtvAYX0DwEiGW6QwpDBQsCybzKgwRbJSgMhZEiEvGDquPGr/gK50srxTpo8KgrJaOHU4fygqJ2lCqR4dG+tRP8lNZFBc+y7ohqCOU7WX9A3jVLBI3FBWW8ufFiFuxF8BMb3FGCKDsmcKWf4a6m4jvrAI1NlovgmN0s/zKu0+yiCDbbrce5JLLFEFC+ewrry9mB52CA3mROPwynJyqaNGfhE5IkOz6pajZSlHLCOW8PEZtuA4HcuJOwWkJS+anOR3DKGeM5RJZyB4f4SdaEVSmw+wivyilQ2vxuefynIL/zH0EVDplEeIMrkAVxMbjEOLBjYdBFnYQokw6TJ+pjE+WQO4GTkRnpeehMZLrzERe85OaI1Ng26ZMH+NFrOREIaZcEn8upLdQdfaUpu5G2CV0flmf5ej06bxouISlYPvwPKNTAb68A9JqJpNAh5mgVFr2shyF5wU3L2wHjXgYGx+tA0Lc4QGyhhniqB2kSWeyaCy5NvR2OeFyaO46Unh6XU8skVhS3KtkKOxcpXnUjCTini2RQBJrf0q9TwREHKVTVFJO9unX5ItXsAd1doET0JQ57EUY8U0Ok3QwUzZLvVVcAGxAiuW8JOZVBNBut1O2LnzGwn36pF7QEjy8RUJH9o2IRIciktY0dduJsITPpfPYyId1N0Fa/NAXQPv0R9SpRL+CigCiIXLAQxzno52XAjcNcJC147BrNuK1tH/ZxYVlUIAImdJvFGxZBxTaFdNhQMZt4YKpV1TBQRAQaugJn2egDI1WWCvoCYUdiq3ykRFasStnyjILFhiaSjQQXQfyw2AQPj8KpNFjH4l6lsmRErwXXyddwjDEhMp5lN4oMInYhSunBXKBS2VeYgmK1D2Zvhhz1kg4TDUQywsMhri5uXl4eKAhwrcvnuZPH2ShMHbQUujEmiYVFV+D7mSDR1WQU+iZjhnV3ci4sTrPrPtPAX5iA4cBQC+RIXqV+oYUHGVeR3umAlELJz16NH4ZO+gFQdWjI+bm5WVQSaZMuBiupIAKoBgXKMBT9HMZvu37HjbJrKQzY91kJrmw8OGcJ9b1jMDWm6iBZXbeEJ0QMBLIoDZxF3fMLH7KXRFhfNLIgkznlRd1PajGpqn6vt1b0dtYZ3ElYAxf8VYCFZlF3JQoyh3rIrSMw/0Uq2G2GMr/2m4YHTYmk8lsNhxO6Nyf7bbd20H1fqY+kWX5+Uo0DI+bprBA5gJaHk3KUCnOSO1wb3L5AtuWO3U3qn4SMThvd1xgPvsuxHGQnBHJjueeZyTtwO2wTOV0RNNSwHUp4PVzMRlUVq9bb6sbiWDBfDV2kjK8G1JcA8onyc5ooTIwEdMjAjvRU+I8UY9TKMPwII8Rm255/iRmOSNcmogPgH01I3qDIaZGA9uHb8Ol6Yrt4LP8tYQ8+KzrfjIZRIu4BgDSg3EHSKq+r/td2/VV1fXVru2GWVRV17bDL/spdW1bV1XfdX/9WtdV1fT9IKC6rur7qu7ruqqrrvJv+Np//9q3VV1P9kA20+m8bfu6mdaTZtfumumk67ubD7fbzWa2mA9t6qqZDvKna/u6b7pdX/VVXdXTZlJ1VbcbgKuHO01TTSb1tBpgbCbNbA9sUzcDrQ7w1E3XVUT84+N9Xfebzarv22HGVRe5wL+jJCAH8RAorgU7kAG9AsmYMKyIMtEAVcHZ17lP7k8Zuk4kBfUSFm5GApbr+9xrYMd8Qw8BLO5YSiUo41OjhH7UmqBMjUuNi9ii4E/19qz7F5NBvJ71ek0icIbZgSAW1s18rKgplRBbb4vktVx3d3dsJa47o7qua+cBnWpPsyl4YbyQ4lbOZzku6smWVKR8JlBqzZI/yhlJ6dMUIiBy/4kXI0mkt72RPIiGtu0hMGcD/eg2tkNT9c3A90PDvezJxY+mh/9/b1LvpdX+c+D6vWD4fuHrXz+/92H6RO3e3hqkyXBqxMPDfLHYrNdDKG0+/875Vb3drZc3i76rdtu2bqqu6yfTar3aVHszqO/bvd3UDXnldrO8uTFM11WDOKwHiwZib2/vVqvNYnHTNNO8l4U1zXdmy7yA5+H/8DNEGNe+XGgigBJiK0mrxV5mbF6WhyMXqE+RVkauEAd5XbLe4dLzuykws0iUOqm3xLkvG7K8ZF7MmyoYI7J6Eh9CgE98n1cimph8Op1++/YtqsaFhXRog4AL5SYcoz1yl+P48OEDYmKVHC4AIzZprJD4Yf2RZ+kcQs3mQEOTXKyhCNkyL3Z06Kff3BPZZs9Xw4SA13XVnuh/CJq++i59qqru6r5qv4uhH8MQND++jf/fS5zvBklfd99lyWCvsJ321kn1/bPq6+lk0m6rybTqu7bvqrbv+rabzKYNp6rvB0tm2gzQrjdNXW23gzxqmqoe7lWLxXy/s2wAajpt2rbbtVtLHyPRNvfpdDB/IHPPTsMje7OCC9gt5jd9Vc1mzKVhDeUNXhbwHomtKEu253dp2w8wICqLrllZR1MmZHhM8ZvGqH/Rd3IB17gOGas8gD0gZRaHQyW4UW7VhGEA68Hnn/T9YuSCkCpTpes6ZgLOfMr7vFiq2ltmqCl1TmwTiRWBVQ3oAUKaApzP54vF4v7+/qfOuWQkwREnLmMdrhlpON//kXSsrdQWJ7iQ7OlhJ8+680Pf1rtd94/fL/ZDrdaD3cOUqAYrptt/PmuQfWNSyuf+BnnCtNm7YXyzwS+pm0GgbNbrwaFrqqbqZ/Pp4O/tdoPjVFWzZtLtum7bziffje7pXiTt3clqvd5gjNlsstt19eCJDcJJ+XjXdY+r+9lssqerQazMZhPaRT1E1TfbTT8dxNx0s9k7d3vRjA6bpon1/Xws/KMnRiJJmEwL9ObTSpR1rf+ol6q6rABC1RAIQkQIRRRzaQnGnxhB5avkWvR91Dam8ImjXybWjw46iLkf9HuqwVPvUzsSmcnFYGwYcdDPaC0Pe2e7RmD7qhmu1kOc7VPt83qpiKfzC5Dt3VAvGESgxFVmh2do9d/ogPgzlvbCe1HphzN92Z0fwAwuSaoEhpDzIAIagmDSzPa/VoNIKETJ9xEP7xSgQO8+HtTvhcLQeogHpaO6G+ys/WdftV3VVlU/aYao0Ga7mc8W2912ED3TIe6zlxqLxXTmZldVk+l01+4MOJlOByztIR+w2rbzxeLr16+z6Ww49WWzXs4X+yhUtd1s7u7uttshsH17c/vw+NBXjdXZbjftrpr+MOh37RCAx0jUtaU5o06K2Z+7RJORgNY6SxCTIYEYfRE6gSRFRmUcx7M/VnYIxZUG9SmWAQ8n4+nnEIlnRVMy35hRXLDvSzOZpOArzOg4gb7vs9n4HL6e/NuPpXvyA2caWubICHiH9LxQkOsExYdd8S+4sglUZ21I9ETdDMTjtaIsDu2zcmxLY8XAKYfWkuJNQBeFpVncq9yRfLWPjB0U+5ysTHW8iWQh08PLLtp2CEh3Xb/f+jTwcDeEcxvmyZ5jWS1D9/u49A/L6Gnj1UMUadB5dd/sA0H73obAtYt+7+hx9/TYN0293qyHkqLZvK869L3Z7AZTZTIbhE5XdQOEg/u123VDpHk6RKfFiZohSt0ub28eHx6qvunaqp9Ubdst5othbpvtfLHo2qqpp80QjJ88PD4MAerppOsGb3i73Uyn88Ew23tqk8mgRMT1KG1C4ZX4z+PsHYtrDwrK4STyAOSY+ESYQoFb8t86edqC/KSVqA3LiyyjI9kWzpl0H/GfGRqrIlesRMBxJ+lmR1YQxD+B7Mk/fzePn9z+ZEPWrwmopEzRHY80L287JYAYezn7vXRhsPfR84BOtVfTnBih8sKjppDoz6n6o1MTZvQ6zzhRQOIP8VGAqQw41c/T74NzLyWHOMh8PiV/VeUMNs/3v7/KoP2NfXC6b4aokM8f7Q7+b4aMWD1Im6Gti3T23cuLv7e/GKI9y/Wmm8/vZrMPD6tdX82qata209l82Uxm1SAOqmY2r5rpEFvam0tDZKfdbtaPy+Xc9Ww2eXz4NpnUw83FrK762bRpd7shMbpYtLtusVyuN9uqara7tqmbru922+2Q4KuqPR4e+75tmq7vtyKvzmlarVbwL8N1MN9n3MCByguU3XtY9ROe5PuIhyrOdPgnffbEOp1nwLRvulqtBKReeQ6R3bymoKKVbYWYTT+Sjpn5XFBPtQ/hnmrw1PvyYqRvGcRxzTNCEOcnoN6ET8duJL/pmYhneGcccpHIl6TAyH7NiLAzhCgA4RH9JESX+cewikq0PLFgzT3KhEilk88on/Q/uiBxctOgeyQM93z9wRhDsHYvX6ZV71+9t1aawaL4q2w6s9aD9PkxVjeEoqvvn8mL9UNMeghL/+PP4anF9Kbuq92mX85uurYe0ufTZrUdgFptu2o62bS7vt9VQ5xn8Oz2U6v3h8AOUqZpBmHaNINJXteDC7DbdQyKycTNuh/sqGaPxsF5I3rquprOql27mc0ndd13/eDioROFacvlEsFcJH4B57P9n7UWk2IF+1WcKDVTzJCLvHfsx+qM/6c72WWSJNIjYIj/kaD1+Pkf352qjMhju8kpoXPiyU+m/+PR1/4fynttR3gmhTnhk0TvQhwCKOQC8ySf4fP4w5wgYkvIiWCiedJJbKu0J30iE/WMFiMRdGt5mDAEUJzBxHSIp7SELFMepTx9NRwZIVOr8dHPEerTLeDjBiZvWtf9vuZwcEw0HiRI0/RDeGZY0L6ad/1sUt/21XRIQA2xoyE0NKn3HtGPyDWTptkX5IihDCU4zWADDYHtSdX2u33FTt9X3apdd3Xf1dWubtu6b+tu27dV0++2Vd8O/4ZA8z6fNvhdfTVEoPtuMaubalN162raVdW27TbD8rV9XTW7bVt1w1T2ce3J3vVrJvW0qSaz6aTq6sHF7KrHh1UzqYf8fb9r2+1kMhhmQxR8sxPzGrz7erqXjkOECDL5X5YPApXnsBwZMsiJ+smrFiLc5bPl+7GfnlOCqNaRzvMTchJGQe3cIlA9sU4nBIzOmR5ATYrdcIYoA0yoLg6EgunAo4xWJ+FBsp4To1tOjM/wnZ4RZMnIeeQ1F5eMBz0dDjiVXN9ut2VwlxQgEXC+T20cbAbvCd2Nxh09Kx7kcBznhD8+PqYfIvKMiSTfZ4ct+ULwRUCMRn/B19B9BDf6i86J0RceOxil2+366XQynQ5hke12NZkMkqTdVZMhvLtP2/Oqhljy8Ieq9r/sxZZwT1UNjk7V1tUQY267tuu7pm76wTlafA8s9fukejXdrNXVAAAgAElEQVSZNIOkGrg+Qe6+muyD1/0grAbLpW23uyEZX29329l01g8CcfLX9uU0+iEG5G9SN3VT7Ta7YRfe7bKqu/XjptvXHQm69103my26rprNp9tNu1jM94n4YVKQWXbs2n3a3h6gYJukyAaOyCz7FrO5ukxpYVo6BsVaMmNFAyHdDJqNoAj4EEhemw5pWcf+Zwq+Su+gCmOZHYFCH4tXlt5TNG6wlFx+GM1FicOk4XP+pNhr6OfoLJ5182J5sZ+OKlSUjXx4mHJIjX+8m7I3syW/s5xuHsaY3UdVxBaMC9w4GIU5E4KgE/QP+2QNCLNyVVV5s0L05+GCoSHUg0DBU/J8ObXyOi3djDbDKnpIqeuPDrthdkNmahAs+xkt+yGSM/D8ZHBeZkNx8/BrxQ8aWGUvA374cd/zXUMx9f63vfBqhz72tpaKwMGgqAfZO1hIe1nW99WuGwLBQyHQEEbe/zCk1gmh4fF2t8MDg/lZ1+1uiFIPDYo/dpzpBCRMyPMatPdkGKGZVJNmspdlix883NT1ZHhRymozqaeDTup234sSfgwBq1bKEseoEXB17KyFs/oOk4kT7QWKTGO9RRhx2BFbSSekAxA8KJRZvi8sJlJIDhIiR5z7g+B1pRCU4FCng6fAU37GYEHqArLJzRFkpQEV48hAAQlasKezep0+nrTaDzS/6v+L+WJPhwLZ4fzNZmNbRmjlsB/tmb5WCIoTiCkfgT6fHHUDqSQM2cUE9WxUWdkVkFjv6/2fV7uMFmwEecRoKPWJtmvQAgakNp/PhcaUg+/Z8kex4L5C7wfAg3EyWHztartdd/1uNp30ddcPftHghg0bKganqx6CzntJ8T3wPHDn/t++WTOt+t1u+F5X/WY7yJvdIOKGSMxeAA2bKvZCbYjFNNV00gx+17Qa/k3q4V/VDwHjoc65nUynQ4B2Pq+6evOwHoI7BFj2ffzji70R0+52G5s19rtK2qaZdv2wv2zSLNbrdja9qapms9mt10MFwGa92227ocRk8ENjj/3Ayo//rRHXNXKcrImLpC2rmZyiivgy5OOIusot9WIx3HzJX2cP6ESg+ofmGDaa/ABt/D/PnVWl9i1WGwOHLUzkkQ6uwUZmET0+DWAHBvUJSO2pOj0ElCgDHhmfTsDEqwo8m/avvHgfX8x8MCej0Q6PM7FDLlsQCr/n15IblZfq0Eijfn5aKxDxjywIrxHSkXiIIEJTDMKDo0d++pXFG7ua2txbWNRGExdoz3lDsHcv9WbtpN62bd/v5tPlPs2dobqhhm8oXGz6qm6HDVb70HX9XQ8NUR91xrvtoCTny/XDt8Xt8CavwaKZDhGd74GlfSFAX1XtIKCGAPZAtYOgG3aSDSn4pq4mzdB+Mmn3Aeb57aLqq74bGg320/5vEHVD+/3OtrrZ7P21QWjWk6Heuu8nk9kQjW6q9Xpw+qazxVCP1PbLm5uhi+G5ftfu6qpezGerzWpST3aDy/ZXYRTjwuosl0sHCbEyGCwoUGaDyZAchVMB3KR7RHztZKTSfhhl33fkJm0vH4/A8nY85WynfephEUuJwOkL1dmi9OHDB6NIyOICE4zcAfPDw8Pt7W3YSvQKUZXtS6ETctEgMtG5DrpK0imNX3Pxx8kgjBpYqRqC+Ud2eSi6SzMXEJGgdaiB/I5nm255JT4joaRFWdeQmLfrneonPRMoPzwdwZVBj5WEorGWsbFtpEBSMdxKOE9dm3g+Wb85eHtImv/VmyE+hljxYLK0k8m02a6r+Ww6RJT3W1N/xHmqfojrVv1+i+kgfLpmH7/eM+xe+vwoq25m08VQDLir6sld21e77RAl3uz3rw5h73YQJc10EA27vurqadsPMenBMqoHk4txM8i5fUh8vWrubqvtepA2Q43i8Mgg9gZvb/9ZDwZb3bbVZDZ7fKgWN5PHh2oya+bTarUewBvi5fv83rB1ZJjEvvG+IGi+aPp+O21mq839pJnsY957O+0Ycvnmlp4XYxFFfFR1MY6sL0mUmC7Hf7VaOfOT6LG+bN4U6EYQxCl7ep1OTgpOKAAlEBx1XTsqJGmT9XrtBCiEjaHCL7yHZIomk0l2F5TtARxeC/KQNJOchRWrMG1ef/Hm8aDYny5iBxLkvpJHyCKIgPrIFOFkloWgkjxR2o9wkVA0KWPrkDcvCkg7yi/Yj8IUOxAcTYwwZny0aDluKYOoLESpc4K1bD8CdfTVxIMuBy3+KKEcEtz7bfCD7zS07Ic98f0gXKp/9+/+73Y3+Tf/5n/7D//h//r//t9/WMw/1NPZ952ng80yVB/uc1F7tTek0ibVPsDc90NpTdXVfT3s7prPF9uuHeIsm91icbPdtJP57PbDx704q7uqWS5v/4t//vd/93d/N5kt+nr+5f7bl9//07cvn9erx/Xj1/X95/XqW9NvmrpdDmU+q29ffru9mc2nzXa7GSofh81n+5D13m6qBwk4TGM6nw0h7Hb3d3/5Z6vN+v7rt+XtYrfb3D98/ef//O//23/5L/7n/+l/vL//8i//m/9qvRmy8lXVTyf1drtezJeTyeAkDmLxmJdjISI17u/vvQpts9k4K4dJntxIUpk8Ka+BtI5lRJZGRDBkhAPwEy1GY9Jw6/U6OWKyD28jDCTkk7BLGhR5EJEO1WNGJSWXqBDKkTMhWMN9qEgxATzw7kFoiJBoSc84lJsC/ssaQQP2nqWiR9zylK/BQpjKVK1T0O0AGnLXoo46z1JBvVUM1kaNyQ79MH+0pN9cR7rHV4J6T5UyKKFHpk2akY+RlTLBZCs68MkyOoTw6J1YxaH4HPa6721vcuyNg9qhGbZLdNW//bf/z3//3/0PzeRms+43m+7uw6fV464fhMpg6tb19yz+wP/7v26wXAZt2tdD6tuG1L6btN1k2/a//vrrZrf++PHTw+P6w8df1ptuOr+ZzhfT2c1QurZY/uXv/vLLL7/0TdO2i99+//Lbf/qHh/sv1W7dt6v14+/b1de+ffxwM/36+R9mzW427ftu0+3WMutt1U7qQTb6HCRjX0/rZtd3N/PFere9mS/6pm4328fNY1/tZvO679t2u+r6ze3N9P/8P/73//pf/Jf8udXj483NYjGftm1vV/13zzQ7S/ZYNmUU6F09WTWLa/9B6TsjsLquHx8fE4IVYicdIoyYHokBsUF0FdOYFAv9kBpHZRCVSYOGO0JprDBuETAiUGKFMf9tWPUeMaLH9LEAL7IMWZZUjTJLIyhOHPvrDN8dperzN98qJp0JOJGPImK4lkE1+DLDHAMUxxsfqru3NgLMsJlYL684secEmwgXQ2Qgy2n580nYR/bxvIxozUhqeuD+/p56jHQzWVAJK4CcKBxJedPPiBGUuEJX1qwUXj9IpBlOAaonq4dt1Vfb7fBt2NnQV1++7nbtx3ryy7ad3t7+ut1V213fTKbbbl3NqnW/3TXVuu/XfbXum+3giE26ummHesS+7YaSxF0/aeshsLycLatu19T9Zv21qYfdEIOo6mbt7mY2+8u2umub23W1fOjqbT3vJst6+qGa3LTtpG6W/ZAou+m6ed3cPq6rZnbbVvP1ru7qaTWdb4cE+yAYhxKi/eiDr/d99MHrWu/ayXTeVdO2a3ZdU9Wztqs3m7rvb6azT5P6ru8X94+bbh8ab3e7fUS56tp9/Gm/Oa7vq+XytqqaxeL7iR9hALhFLaPKL7sr4sggErGYGN36ydcsN7aM7ZOj2sp1J7DIMg8m7kNRiV2i2MSnIqoCrX7iRoXm2emkEmnoABNW+Q/i+WsBZ7wzU0bwoUAzJd3QJ/aJaVZOLeh98cVbyaAAlC3/IvM5GMwaHL63i5par9cUlHQDGZ/9q8SwjXPeVHV7e0suTCZDsjb1PlY9ssPmmgiI8nwiqpJoEJ/yXjOLZHlk8T58+ECheduyQ+8d1J/3uBqXHvvpe7tKMRT9HOssmKSZ9zZ/M3gNj+vZbFIPp2HsJvPqX/3r//Xu4z9bb5qumu+6/v5hNZ3Oh0hNPemqegjcVNOunvXVrOunXTXrurrrh7Bx1w6/7rpqt99/td1uN5vVbreqqnYI8Uyb6WI2mUyns+VuW3/+sl6tunp6O1/cNvOb1a7bdN3nr/cPD4+wOlDzdmCZ7bbdbYeqpW3b7bp+2/ZdO0i6Qd513a4baoHaruoHMPZHPQ6eXtPv03j7iNe+OGCIL836atJ3k9W664Yo3Pxf/6v/ZdhyVlVK8/cMVg+lTN8DQQ23yOtPLCgB4TxM8gXnx9rlpHtnNM4P2t/oomR4AgifUzzZ/QMYS/9GkOg2ofQo+P8szw86xBERQ1o3TeMlPxbenA/f20XceIQbQi2EmDDnbrcTIZI7Z2eRI+xMo8Rlm0wm588b0m0oI+3FCyRB+eQJajKYnWbvQUYvkHIu7RPf2zWyb1lhZp3O90bZEPiY1NNdO7x3Zddt5/Obx031H//jf5w0v3ZdP5vNHh6+NZOhbLnbmxLdbtEPBxveTPanhfVtN2wzHaoQhYkb+y+GvRhdP59P1uv7h8ehlrDtlx/uPg3J9Wa266rZctHMl0PSqu2+fPnycXI3yNxNd//tP+0299vN4yDGtqvd5qHdrqpBrG2G4xG7oWBxXxXU7J2+IXa1FxzDiYihmR/TH1bSfAvRPKScZvNhX8Z6vf73//7f7+XI90R/lLyuQi273UbIIwFa4RvqAW8biN2dYBApEBgC4WUvEt/hEPlEtKiI3PR6kj9ABiXEgap9WgKwxZjI20kvhZC/EsGletRPltBp0NwWpaixMFEP0zEH8aVcKM652gqmjRcWsmukV72p7v/n7s16LDmyPD/b3P0ukRvJ2rq6uns0A+lBEDSYJ2G+0EAfQJC+mR70IAEDCXrSiyCNRpqtq6ubVSwyl4i4iy9mJvztd+PwZmzMJCPJrgoSN/36dTc3Nzv2t7MfOA4ebRoZRhDZRzn9Dgc6wD7JTmgKNqYZvpp2KJGIFhC5D1aLPcrkdrrBLeY+C7cMy8oLMseWdxGXfy67NWJ8ZWFYg+zevLjgspaSqyIz+2HJS0puvR5aXJLCOEpZiG8WOx1WMaz67mK7eXmxfbUanndpm+IKK5aXMkg29YYKenLOY9en1bYf1v2cl8M0jstcvQCo+nA4TsdpLLMs4Lqr1OlwVeejgivyftpfljzWMsuWVma5aTd/gCBDfVKGD9+HEENI7bkCwfbXAsne1+AwCMxgE2nlgphSD+uK++QNbLVWnI9q+ZR+qFk5xCixhbANmM2L7QEBhweZCytCitGMdePJD1gFJnqf+/XAUbKCoFV70yfvhjUIbduLI6aAhtAen58if9CnwiB7N2Ql1vaJ4lpiYNR78C+mfwFuSAgLK2SqlmEYENMszMKyx15cXKDZQVfH8Jk7oun/lZJmHPH4QsJCPIQWASP4HeiDuEerFYHDGGCH7ywsGyK3sfHWms0cB2AWFZbJ+cB+a7pMhgJkNCiESzfVQ5NMFSaWYgoyCc1VtqHkilsmhbzkLE6haSJH55XfYxzneWpU7brg+1r8POdpOmXwIS0Zk6XZCbWxDxKENURKtyG3oKXUYbUJLRqrGc5WXYzKeHjYJ1eCm0MdlSC6TC4fvRtdaLFessULINoIKK6jhaxJBc7/rirGrRaFud74ShJJomk3EmK4DoeDkQc/mS6DobNFC8R4r+k2C5cV/oYPIqO+mXus3hkCESv/vANPfoxuxZg4m3HTkQMHBlVP3oFbDZ7Tv+kx2QKhSdBnHEdCcG/d/kO+fkL/IGjCZCLQnQgJS+/CSbhl9IIIMubXYIIVrUEibGjcy9AwWEiwrHnzTMWdmnFEX8h8M7vmEQuhT5OCKk0pjp/ouVnBaALOCHSY2x8zZ1wYKoabFXhaUWzLZtM9xymWq2Gu8VkQh5k/YvRCVVeXOadOwVoKL2155afpWKUXyV2XjscxpKjEhtF3KYbYt2yEfu5CnOQXWGQYywpIVxNNHJNkpCwZsY9ijUJK1af12ofe+9VhnIvrN9tnRFGF4Iau2w4vv/n6q2XaT/vrPB1izcuyl1BWJpnfVUsDh0ShjEJVg4upo8LHCWUYmEoEh74YspzDEGSjuIpVmKVmcr3CzkC309iK0toh8sskx4KBCSIkla+mjt3v9zC/hjgkqLKvP2Rdfee9BC3ibsNbY/0wA4vpNOnw+Wh8Z+Pf4wLe3bRCsPAgOEsYBoIxtGX7PR5095ZPzgfZ4sdABkywFO+t2wWmwNewjxm/is84flawDzlnZD1DDaaK8fqofEOQKZCEyAZ8nJf0AXfOLWXwHYhU2CymSVwH6qpz6oGyH6rbdXdioE5EcQAI4VTKoBirc6mPcpwv0jvPs2tqoD3wiso816J8qfI1nHI5TvPuOF5O49WS97kcSx1lL6/6v9bZ+dyU0D6k7rNXP/v5z//y1ec/H9bPau2m2bvYP3v+qh9WrJAstfV4+fbd1eXbcXedj8fj7npp0DOPo0Lp89LQTdyQV3SI3q9NjVwXm0N1PH0qKL6lHdNwC0oNhWvDRziFnDOEwYExSUy0wRZGSfw8+j4RrGN6AFzkSYOLvxVMKxNNIk0Q/+50PPmZh+qCGaf8I9cp2+9FPGC92b+kcGx+24zzeQTsEw7IJ+SD6CW5kWAfYIPhnNEoW14hM89bdRR4UWiCQUEOojo7ZAcqwVaYvdCwHIUu8ISGD/EKSgUUeC7sFdfDn5tdHGJlemCjzF5gAMGb0km2CLgYANGsHtYm/v7nO5sZI2wRgmh0m0+T3dTn0M9zboigZM0pxaurq6GXcVAhpAor75qY47zLzs+l5GX241yVU7UuVcEUpfEjFcWwxC6JTXFe3G6/TNejS11QJrLnc+lKjdf7Q8lxs+6r8tbPu93V69dXvs5DSDH45N2YlXJIUazRKwxEYp6EO+0W7sYDXsau2J4bmocQvKNU423cWrztezAkhFWKomHY7682fa+kAPNMeoCWlOTECrWQWTk/sWaagVLCqUlbxreiJLK9HY4b11PDuydcYA81ZfsKEr2ZUHGLx1uarqKUgEQfau2Hn99sNjwCccTEAgudZQs0jT7A/cOfKwp4klYeacR0vabUYKbPeQ3bzViWjIXhgr0t4GXLFS2aaYuNxzZeGuUOshWX0RlMEpA/5jDjyQEy41lo00x1qISBRZ7O8kCMIj/LzYavIaFZGwF+AkrYgRk3BsT4Ww54a+O5mHt6qzcqOaVTEgwNS5vI04AoZEOJ35tOJffCosmHeW62qm9z/Pjio9Qg7UGhKWVCiw59tjv4vn85L9G51azw++FwFC80rNdZBvtayuKDmKwUovRQ/UoylpThNTVTVxLQnP6wxGvPaCDXah1Sd+jU6yKG55RLRD3Pp5BOIxjjoFkGbbhaAIdSJjXxTQIpeWvb15bIA+HCDAKsZIjhnGtG5GHGaQ1qZMCJFmSagDPboowsmS+wj6fYlglh0KDNL09hl+IpUAi9QvmABIBjClfeXWKML+dNpXBOXTczcPvf86boDMPCHmzUfguS4AlsiM4b+YHHn5wP+oH9+87b4TIeyu9jdAzFWBahc8W28Th3n4V2k3QtOAcxEwjziGDm4Q3lYdSE7zNWy7px9xFsyDQFJbF48AAwPoilYixeC706NabFd9Oucs1LtOGEvIdaT5ziNJTKTH+yIIVQZqmlTwAkHig513vfDeuXq/Wz7bNnF2UROxMHn4a+98d5vujlJB18+cUvfvaf/tObw+6q5mWdVikoZN+XXhEXcgpSjZ/QdFQKim3bnCBILFlVUrNmm1eSNF9aAImS5FfF0OpSraKbVUP0Kd/0Ig1cWk1G3f1J/9iNSNWKWYM5YiNhdj4kjw/0ADTQYeNqWc9w4piDUWueO2Rw47nZ9+5bo7gwyIB+DFzuXm/UaNcgVfBc2zjBxLu3P/mZP20MYlHhaE9+H6NX26ZsyDjDyGIK1cppuop755ipQkuNnWi1WsGLsTXxudlsDgd56J1z17YBAky2t1hn7AC5DMqGN+T4DG4cqooTVrY0z9+izk1DN/gim1NpQWItNbTSSGPfavFlcoMOkphi02U3bBIvnHzqQhx8WI1L3PbPouLcw9vdVZ5mH9ycfdf1QuQkzmm17rfb9WH3xgu5XIzdarWZlEUoKfNG7KTl9q7IWO4VlFZzLac6qqSUbhjZfAoFPPJRFCejVPWNtWkB8W38b17vR/8XOiFUGAdUKAFBHh9aJCZTdUMkSOh8wo0aDbAzYbiE34GcABHTvEBI5mUGV/vQAABht9p5/JbzpWEwhHDAuoDdNvHwoUc/1fk/VQxCfkFBYwyz5fcBy2+NEcOdklSVUJWpkNhDbl3PV3NdIwDnnLdHMbTf70ENHoopgVrdpiI1X6d7HwH7A90Y4412GbcpgPUEuHfhpzWqFauSO8p5CJH5evL7UdVmxWaF4LoSpC7yLqo2oWuKY7kz9jENIa1C7Lfbz56/+Cz1fUjxeppD9TF2qfr1epOSMKXW5e/+7rc5ZzGAinENwp6UpqAciiH0MeYQ+lpzFApJ9XzKOSQULE1xI0YHrscYuubIeOLUzhcJoyp2ybcMIdozKPt871g+5UmWJZwIbh/wKbC3cMR0D8S56aoAlsWMqGXqAoIE0Osj5t+womJXWfMQGATJ/gQYPfRidheD1gb2wWSSNMI1txpkdfBcC7W9dc0n+vqnikE2HB+S38cuBrNwFQHs2UDuYpDNJVGCwITNEwhI1DWUes4Z4bjEQ9k8zxfVeWeQw8+ZfB5hRdPoGJ8gEbGatxohUQYn1TcxP63Qswsp9C0AInrfN79ErSnBVOyls5FolkIcQhIM1djvp+X6OKel6vfih9VacTBOETBaUQq/L+/eHqb56FOspU7LmFoSQ+k7hG8u1yiokT4sqreK7V+cb3HuPnvlGpM/AQ8Hvk+vdvZuzIt0TzeYCwS3kfzEYlgbR1Ma4uuPhYhNBeAgqSbs6slc2DKTMYP0nxlBn0UqInYjOCZDMebXdkRLvWBKQ+sMDZ5/WqQbYMRI0ofzy24d372AM7yOPffElt66+am/fnKd9FN3+Nv2TBBj3FEJI9MaZNhY29yw4FGvoPF9SO7lXvYEow+2L+OGmDM2QCgJ1yez2YM+j2AQHbb4OOjSbBOUiIGH58pv3//2EVN5U8mHX+V3E4P8h6KvNw7KTm7Kcla++V9JhYhfrT71w5jLtCz7w5jFtDS7ui/zMsbkp+lYa3316pXM3jXcqM+V7qd4FVlURrLicwm5hFKlY5JvdByc712N1QX8hWxeWjdPaiCbo5Nc2X6z9dBQVafaZbzeJ/y0HhIPiE8A4jA4ciuPD44m5/4+aPrOTSUWO0LZHKYVruoGc5XHAsTB65Xxh7TufVt85cxqfobU915+z0luufe5Rvb33PZ0p/7k+SBcjeBaYYnRFxoNMVYmux2U7WGNCanve2Do1sU2vLYqIH0L3uE8/DZKAWyZ5sZCnWssaJjnHoIhOkaWNWiUK5l+ihehTrqfEE8lCdXldmODDH07JRhSO7Wl7FGAg4LIFBsv0aZJNdLGnKyjeqlSxnnO+/2zi02pdb0enj3bbjYbhIuLi62vEq+G4eLq+t1XX/0+yHVaGp/ThimuSuZ36aSKDz51XR866ZvrEuui4l9NMaS+tgxCZFGUP3XrhyrEqxuN92mDrK/4YWqptNZPcWI2SZ/mwEKsc86bzWaaJjx3TE+HE5Zpc9frtS1jZhArKtYS85Izs9rxeET9x66DlIeZlQ2ST8zzRr1335X20S7B2j9EzHfvPT9jOgd7Lrrz82s+0fGfMB9kIwIiME9YsjjDZJwfM8fQCrfbXdbarQMLi7eaJyZAgV9IW9CiPfFmu1aeeSjyVrP21axyhobYNcAg7j2tTPPMs5sFPDdfWmLWm21Q0gr3Kl5dKZ5POoIWjY5bYAqhcz5Vr8+ifBp+KQoEkdu6soIpyncYWtbA5J6/2PZDHDZd7OKcyy9/9evqUoorF2LL+1GmVnS5qNZgKwTmY4xd7PqhXw/Duu8Gol7wR7TuKVhNXT3Fqd4aRmlSGv+mNtVsaos5Jnvrm7f/FP+yJaSUsDnQf6YJlzSC/uB0TMgCU9Du5axUcCh0cKblV+Q7U0Vjg2cfJdzffD6g3kfeDtdNqMgA8XGSu7e14/HI1KOpoKl7r3zyk3/yGGSAghTNfoKnMgwq8oJlSDHQYcQx7bN0WRg2f1jB+Aq3xbM4g0neJIVz+R8kshtvcEEoYMd4D8HanFMtxIRwZwuVr6ZmohEhUluK5HVOqY9BGh/nonLz1OaEWGsTxWQHC6npf4pPPiVdOTi38mET4qZ6HYfY9/1GRu8SUvOw3m7XXR+cn1NXXJpWF6GG7JP/+vXrr1+/61fPYrfxvru4eOadnLYXcTo152lRyfnmGNQSaviSZbPPsxJuNDW2skE2Q7vWeSvt0TLEyv3RK+Jf8Si2q7f8sMrVJhTw0p+3ss5aC2XJ6IsEBE1ZDYKvVqtpmpgI9nMapOYf51lLyOYsPCaC/cNUP6ZXtrnmJ6zpdBI+kQaNIPkKWcIXs68wmxAMfsmmtEYu4xO2i1tuZN4bu2HbYBDlbIs1tsWUODBfRkvwZUbqUBcAyoAwRDiX81xe4VN//sljkEGGjRRn+r4nxlUVyltkEBH25qxIJIchxWmXblUDqWbBzpBz3m63WDSI2zDVAHM2DAPTzFfA5bxXRkYQB/SEDtt2Reu8MQKsjXOVAWx8u5JMOS3Uq8WFVq80ZlRnhsigP7pBZp7mnSy7GSebMBZr9XOuLb7de9e5lsNMj6heA6I6GUVZU6OyfUSBW4ldUKYh1fYSAPmQavEiXF+8mCD8q1sJj1b9dF7GeRkljtW85EmOQshb9s7t4MZMJtt8WxJV9Q+VJb+5OGnVKfCE5LONFdVtjSMSWjH4jCoWzNWq915hvUAGs2DGTXNB5jzcB8dsS4ALVrXwEg8AACAASURBVFRslPyK3fOWvw9rGL6GYzR6zDhneF07BmjM8557bRe0vcoODOzOr+HFTxN647FpvrJst/yKjomnE0pJO7B1XPP+hPx43/7k9UEPDRXaQQiaDGdQEsRK0h9CsRHsSe6B7oPpseziSFsIZYYRbDsxxt1ut9ls2E/YQrFQ2HYKjkAuBg3QFmRtOxi9ZSO1XhmmnMwl+RTyfvvFm19iM3rJQftEqTJ9F7kkNkOUd0sMKkDWOA8pYZT/1LnUpX61GYZ1jalfbcf5uOS5lJaLTFrqValLrW5YbVerfYr9YT+2G0PquuN+nju321/JeVG5yeZlmslLXatqHKo0mYomFhVeVf0dnt5Uy/4EiHCINyN2uqCZ1GTDE2qfXIf07m1hu65zspdHcZe5JZH2UXEcMXZt6mPOyv+KxcrKYDBNaItZ9gw+Y0vjVAFjvpgR8rfgTWYiM2AEVbA5gWs0iNroXj8dFjyfBlhskKTlO59ZwyzjnugklGPB3mYbQY0FAmKZsW0MrSIIa0YVVJw/LQb9yfNB5xPGwuPTzJlmNTdoQIRGPrdND6Uy1Ma0GTNsbI5ta8hxbGVouG3PMTAyZGHPNKIx2dDAhVegn3Se5VFKAf7YyREnb73ve18lxOivId0pmgHtTPMVlDo5ppo6H1OWqSzVmFzXx81m9eLlsxcvXlxcXPSDioLtdleH8SiDdJULondxyXW3O7x7e3V9reDGZ89eNMlIaX2UImQa+y7KfUiuR6GLoWvFD0seS25hsW6ubpH3UvuzpcUif+8tWqWgmzPfphY6LcIWgNaYAoXpSvPUqphh7b7JvxVRnRELhjsY4hIRxTRFZbFzcyorkyLrfS+fTJSASOLG54KYEINJZB/rpwNXCwlBKhTgvHnx07+GDuiMIDz6Sf0yOknf2GVh/ay3EB7dgzZMsjMVp03Hraf/OF//bPkgqyuAGG8QYMq28x0ALQwTbCphJowN6nzvYoeUxlVxodI6Y18zbhlmByBjjQFDRgdsZbaj2qZ0jl84y9IlC7XVgr/xl7lFHw0EpYdusaDiL1q4uszjsdmTdF8sqvrlVUZVqVWdnAaDvJz71WqQt2F20zzlsgAnKaWu6+TY0qVpmnbXh93uMI5LSv12u72+vA6uRF/F+SxjDNllFZ9fdUqt5lxoOl1JZ1VVs0ZXJiEUzobNN9peQaMkaUsnNNTytyQArPlP+6iokzt/TfenPEddGlQKMeeq6NZumlSiq/1pOM69MWCLsJyy/rFtg0REruJ6yuyY6ocodqjoIX8fpo9ZNgbqTq/FAPKa5ihr824Kqbt3WZJpM8xRv8yIFnil8XPHbvp8szN5sxrDFkGltjruPvdHOPPnxgcxu5ZD1qRuthoIE/LC85W6K5CaqQ9gZSEjuCHgxtQNbGLovNlOLeSCyYa9wvMIlhg963kLhi/n3DtoBbSx9VnetdP6fIAo4H34sfX8VOOmwZZ0Mc7nIK3R7FR1Z67+2GJZly4qu7xrypq8TON4cK50pIKV1ltmL+UnCB18fuP/pemptSTZqco8j3IE0MoSLLS6h4tzS0sJsviQZXNzi3NZrkpNkd6w8vbH6c3KTbhbC6hWhWeJktITsRPcAIGEMhxtljkT9Y+Y1rIpiNfBVwszBWB0PB5hc0wkwXMCpR4GLLN2IW1ZTR6UtQY0NH7TmQCWfYifDq/NXggpQmMm5ht+nZ+BRI2WIB7j8aHYb9NsNg4aNATXsPEhkzLOxmIbHT5AWZ/89J8tH0Q8IdMAfUBSEN88z6SXZtpKKeM4rtdrNhm2CBglPonlQUeDvsY2Q2O4LPUMBxY+hoAAKbCMLb8ECnII6DzOyEI97voZCYnu44VuKBsXPilvCfiUm3IuYjuEGrUURcD7GJfsi5uqX5c6jtNel7ghF3+cx7klHpoWZVPMOV9dXQmCg/S7pSwq8T50rs7rTQxlGVb9YdmtN0NZjnEYxkNu8uzY+LLcgsHUAxm0mqQmjBK4tCqvrdNAlzyX5BTNX2lJ1U5BGV1jpcAgvVXz7lZNRNVZ1CYaUlTiEIV/wEWJpRrHeRjknM1OANeA/YuQY2N+2QOWZVmv1wANGwbizDAoSW7f98hKRLHC6sL50v7H+umcq4pQDtyow95b88CuieHQEtDDbodfj3UY0ZuEOZhumUTbI4lWA9HoP7Lbe0/9cb/82WIQlZVAHxtSljQpiqZW384EK3LNmKiP+ANnBDBBDUybQZXlPwICjOIRuWF0jaunG5CsdYmvXM+xZYGAr2ZR4n7CGbv3/OAOBkkLDW9ys1fXVj6jykmxtuKoCiLzy+znueSyd7VTLR0vfqmuh+Dddr1erdezbO2L8tKH0A8imHe73bvLsbEnS0x1yXOtCh8bWviHkwlMpi+8eUpR2Y4WF6a3VPz+zd/NoLXVpLD6WMpcVfFDVwiz2pVKObQoxkOCnPToCsFXXVml11Kv2q7QLq5uyaWdQSibqIlqopYF6zDRJnahgDscDixsk1BwQ0U3xFaBv0/XdTi7srEZ3224xkbFyJ/PmlERVAFXhYUedDi/mHHiDEwfeMFdsMzH47HBfWWzhOkjbTFMGRsqowT946DAKuAR/Mrxj//5LUH8wGdDTywVW4HMgeWL4lfzyAL4bdCZfvRqp72xkdfdjp32ytYus87TeS7Ab9oZSwtLO8wiUwUhMpfWGTYoFAfoHdlsT2ap5WSWgsNCPjJ53rpKD/nVnoJaFOsJb23vzvWMAI1wFyOG+YOLY/SlKJKeHVs1D1V4WgZsXgGho+9VkHAYlG1DLjlatCo2n/O85OMyH8pyXGYlVxyn6/F41YphHFQf1eUhxu16laLfX1+VZYpBgsaz59uuj8PQ9X168XJd6jGFpeRjKctmozzWsAZ9+5M/oTgfWaZKXVzNQQG1ynB9PjI3GCTWxoYOAkip70LXhTSkPvk0pCH5VJcaamgbgDDIMq43t6ET25dUzXUOwR2PE9iBKRpk3+/3XdeZGIJMzYwzy5CNdQwMgrlAiwcZkKqBbnOjUZHtQ7BRsLrcC1gYgjBfGHBhkGnQ5HFogHttfDC22DXWVfZUHkE7PNr0krayLGEbK9FWij3iRz54MgxCikb/xygjuwK34IIVCHtc94Z3KUPDUqcpyPecXjGoY0w1CciyQGFcZ3atrplNDE5ApixAYGabOq87xvYyDANgRzZlbGqsOkK9oCczrqEU5AK2SpO/AEreLqXEOrl7PVgJFLJ70zgUT0p2jeq8dF1sPnutZHJtuuZc61KWZiiXIKY/JRhztbSchz4m590S3KJPPwc3ez+HsKSYfZ19nUseu+BjSzqENlS1NKp0TC2HWe6UQE1MUK1FuaXXKxfCNC5oRm+2E/lKWg6ghyi7raJTGKr3MVZpjVoUbgMueXB72crkMq16sO3/hxrT+bY+3TD04PL5stxsNgRJYFM30EfGYT3DFDDO8zxvNhtKGMA0PfbgB36DqOgGHDSikG3V3MeGZ4y5yen0xOxchllQF2AEnXAMx/RAX/4xnn4yWczMSbalb7dbMNiWn+2B5vxya0jsXjb57XZ7Tha3Luar8SPmhcWaQcZmq3ykrlkIwfyAELPZfFJK19fXKH0wYbL1QbXG2Trn0CtR3ZBEnEYEMIDsotCHSVtgEO977/VsVtCfwa72uuiSPPNUrK1pN8K8FHnPqGJqy1MWfJLmRWFg0Sd0wIo7y1NpWhOpjZvjn4qeSp8i3QuAU1WFOdVcx91ldW5/fbler189+3wYus9/9sXr119fHt7F5IYuvnjx7PLdm8P1dRBrJTecsgxFCpnkay7KVH1SirfOy0an7Bwtuo05VQ/FnckNSH/Kfq9uy41AR0pFop4J9FrikSB3xeqTrPN3SOEUY+bcMi19L6oOIQGayOOsYWbB9NDnTIpNjeE7mwcyF9DAdNx5+GMnoE+2Oo6NkQF0eIr5GaEWhMzYPhEkjWDYdwlPQ9qCyKFJtszv0c/H3uET//ZkGEQEjcXOmWMFsi6MjM3BI3wQrDIxnLvdDvnFFuHd0UB92wIFTpFZ8N4Wm8oFBgcm3bDymXt2J/Yl5g+uCtwxgwjetEy2pViEJ6KfsM2lFEaDR6BQxA/bMMUyztCxu9djFLf3RcMtRrLI8dc5t1qtMNmkFOWlrMir1FyZXYxeJTVc6OSm05Q+JVf5KstjUKlYyyyzfAm+jk4pgQRgwiEX63JwKU1jLdV/88evNFwx5FJavmElh26VXecupu1683yzuXz9zeV+VxYVzZC3Qozj8VpWcnwDbl5Aj5AmSElDTMRoobM6IzlRACbVeYghFneq/lOd4FUIFYtv+Y7iIn/t90HoTJJzfa9IDrsABseoyLwNCQYmRRksPKxErdUyKzOb7DFEsT+0d9685T3/wosZm2yWLNt+UCebnxHqmwbNp9ZgoGCd2M4p4sQSgxqB9X8k/j73jMKjp54MgxCIyCmHQheNPTkAITtsUiy/u7DCrGDPwloJt2n29XtfxLxaz+kMN2is7zQCPTGRBGEwzcapWcoeOmZi4yP5gyCvcyqH1JDXIAhIylxUyEm2WikilD0Z/QKgzMjAbNsxm6Fpx1NMS16i772vQz+07DxOlVB98kE1kdX/UzBEzaF2gx7UGIlmX9d6lSZX275yq3pfZ6VT9Cn6uSgbWXSBONdw2F2GEC6eP1+qS3/8RhO0lGVaLt9cp06uiBfbVefCdByvL68ayug5MtP7mJVzWoKROBn5OStgn5z1bVHpLHITXFCz9Qng5BnUOCRlYHMutfQj7Q0UuBF8FCt0QwrvU5EaLFJJu3kWF4YqEP9miMGUekjBECroAx9EeRL8To0BQRI/18rdPP+7/zX1kwmGtg+ZadU4IzZIQAct1XmQGgDEoJlB/R+hv893D8r7V9hsvn/6478RRYWHBZoL2AeJD5LytRJY9swBTzjH+1tnzlloG/HzftEgTzQ9FPwCjhWmjTvfMZZlYRuBE+Yp5gBGP41/BrnOzaiousA1noW5BHbGNqJpmugYPJFthiS0Bm15FxD27vU2SqAhTxRsyXAuRqCZtOY8LzKAye6kqhZBwk4ITW+i0Cr5IjbmQ8nM5GijNIsthZiAQeUJi5dWKHs3yS7l5z7m6BZXxhiWPrrVWtFw0ac+9t61AIilDsN26IbNsHUuCcYUR+ayhKeYldyjI86T1dLSOgZxabf+yDqidCI+qBaaeDcdNymyqbDl140aSHJZdaGphNo7ysuoEc+3BAw9oI0WPxYjPDju5ugKsgTHmbFFIQ36U/AHJmWz2SA6WS0pS2Bm83jrVR75ioHc5APohM3YtmR0kUZsSIi29ZqoTiSHOQ3tdrtzf5+5RcaxE99dVo/08Cf/6cn4IJvycyYTGw0iDDynibW2xm4NgblCMG2QkY3v+cXsgVS/xrZ6Xo8MNGFe2SvY6GKMaFLwVaNl5nKaVKEcAKJ7piGCwTFhm0fzyrB7XG/5g8wFNoSwXq95a5CUR4CPZtO993peFoaIDog6fcglhxD1Ul2vXM0Z570msjgxG6oo2LgJsSVV+aOrrzF2Iada5S+DOkgYoSTQoYWPRR9m51NeDj50XeqdoiBiqOWw203Z5yJPRXXDKT/HOE+b5xeuLvv9oaG5It3n3JTjpSxyN2rxpuJ+lApRuiqBpaLlb60QsCMK4xqSSr3VtERNTxQlwQVxTUrL33457WUnQ9g5STTlfV6terkhtM2GjRCGiCtJvNn3vSlTzBtrmmTLN+7MAvc4ecvH4tZzH/oKfWJfQ9iHDCBCY9IBRO8V/YubCKNtext0Cx/HswilNn8ftELseQ915h/n+W+3kR/YPwtxsk2eA+ygBkDoWc4ByCjS+GpTyDFD9wIQvaUwIUjBGXYPzuDBDE+OMGiOasg7PJHJpp+ITgYZkB0YajwO6knUz+eSIIy0baGm46Rj0J8Z7zCyMESg7d3rrc8w5KBqA6CkiqN9X8rsvExdrrqkJIYNcwQwLqsImPZviFjGpKZvUcZngU6o2eVFdn3l4s9ZOqKyuLK0qmJRbEmVVivPyzLNSuXRRJuh77soHdM0LfM87/eHZxevXr76xXrzzPm+1LCU4CSINYW4OK9EdXlxNCqFIY/psz/hi6tJBau7derWKa6SkpCIjUkKBqOFxh+dFHikEDpr46RmaojV8EwIXBVNZvo7tC2W6A7pzJgaQMEUl8wUU2+clEn65w/+kONxlLsm7SAQkFjmobxC4B34CMsDuNAfGEyIHIuz1SNDq8Vquldu+JDe/iTXPBkfhGhzYr+bMytiC4wl88qiQrVhlk7kILTCbIkosBGkzWgKI3A+RgCZQR4Tw0KFy6AzkJqtdmq2Qc/seyaEG8oYU8PTYX/s1VDQQAHgI5AHffCO9r6oDGHHzofCeshJPiF0OmxeJFAVzYoQZRQjBqq03BrNWCQNihQh81IkGnmncsjVqeppFt9RSlZOoCiz9zIrqVDwfcmLjykq0kpAFIJgpV9tpA2Jw6LUq6su9tvVusY+pXT57m0KcbXuv/7mq+12/Q9f/i6l9NmrL+Zpmce06l8EX3dXbycF2SflU1T8qgu+q2WpS1auHwznbRaltlqkic4ldjHO0qSH5KXa9nFx2ZXSagtFhcUK98tcl8bd6U6r7YMboyx9gjPVsFYEyTS1nI3trA07B5i92EhY8Kgg4TfPGRO4J5MrmYJzCvzAY7bnu8Z1WjYJCzUQLwv9WPt8hTCMcoxKUTIythCz0TxYBrVj9+B2xMDzZo3MaOd8X7dufKKDJ+OD7vbP+BrjRAiM2O127FE2dqa3JrslDvVU5mWRg+sgFGPEkJ1ournnEfJjDJcJL7c6hryGzvv8uTSF3hG+g51qvV5DtbQco7K7o1O414/p1uM+5KvB6DnOQis81OiSol1nrETzvkG565StWT7Q0rywMvVwiTEnE3j7qvSrfR/7VttH2iIxSlkiHf+K+JyXVJUdlchacte9PMK7flipWnzOc3MpVjmNZWkaqjCEoDjVhoDiYFqG1yjnnlZcqBEDpQ2ZRmmI4JKCcsF2yjbdKtQvrUtGPKV5NTYlezPut8xnrQp0G9pvfRtPI83KtK3LeGp+Nrs7jAlPwThghZXAAtph9m1jOz3jY/4xlsSWPSrI87m2l4WJpnmbehjk82eybQOgSHlwWCYE0KChJ+8CFd2FQoPdnyqv0JPxQTaO54NlGMEoMA1m7ESgMGHNfH8PhwNi1PF4BKrNInCrcdpHliGPjw33Q/1hcztnbey56KqZyFIKkjmqZUjZ2DQzoKJu+BA/prs9v3XmfCOCbzJyYQfWnlayDOgnhAmOtdhCMkrLUN/aRMBRZ6urY7MJaGNUEjKvsPgsrkE/t+B1NS7rmv6c8znXdexTty6hXxTSUacs9Y7gpuRFftaK0tCmGv1xf9hfH1wN43iQhtvnPkkWqwr78CE29+hmpnM1SUvFE3lzlSBrO7RUR7UWhYMoX3XJTb/enIJuXpWJZvxbyNjZD++PIwQQgst5IZ4D3DH2wfx9pmkynxpjVG0TQvYxBTCWh+/BChG6ZWKguafc4nSMXE2vyj4HDwVN4rCChYTLjMvmdtgfRsDsMEAqL8ggmK2NoeCkKUlsTLAmvT+6n+Tbk2HQvb0z7GcOGKnD4YBboKl4mQ8kZ24BmBj085ZZqLaHQBNw0ZbH59bs3rrdgI+xRqPEPAEoCEQ44KA2ur6+vri4MN0wYiOd/3A/pvNu3HtsVMivZpLHoR45IqqGskQO/cECNEXvCetlK5L5SQgjF2at+GbIPjkrN1O8sgu1gI+mG25mspOXYPMwnFVdNXbdKrtUq7LVSzUdBUDTdGy1ffKzZ8+W6Th0/bIsu93BldnVOee5AUOzjTfbVrO+K2CfoHrZ7VTzRyRn86gXUbCquJ0WcFJcyfIScs1TMcgbs4li+DMKhcCt9vpNGS/8ZET0iWG+eW/pQebvw0aFiQB/C6Rydjtbt+eeFuwB2BBgOm7N0bdPffQIOOOVOebyexENHOHRvKxxN3YSfaXpLoEbfB35BHGQPwxxAC/zTgghfIif0Xsz9ehrfu8fPy0GIXXDevAyrPxxHC3e15xB2eVgIE2CxV6AYfUW7TKFlsmJSDymkM+7g2I+h7Df5xw7+heU1ha3QerPi4sLtiN8TGDKPtaP6W5nHj/DRgfRw2lrT6YSoAHQCY7EF5XqUtNJa5xV4lmymTJlNNc+FxXYid9w472b7kT1Dpt7dVurepaktm7J7jjO8hns+zSs+vXGK6G0/AW71HtX+tQdiqLMV3336nm+vr5e5uP+usFQzTL3i+c5yU/aEto3hZpKT1SlR1d+WXWz8V8K6z8dtOT7Krmq/5VrqDkJIa1K1wwLKIg6Gz7b6mt183zyk27mwmr+PrYCLZ6GvQouAJEfQjV/IogQkuCk7UNnD/+gQ9sXITy75y6osUxQVpzDB1DIjTfDoX95L+wqhqTIcSiDjAMCwrA7cyV0RZs/oZ/RE+uDzlHTRorYZZTWAA3cB8ueiTcVLNs+tgMsAufUY20yecjPjDXyPEZum+NbB488l6aYJ7gbzBnEfPCr6dHPd7Dv9GO61Yfv/GpDxIGl19Ou+N7SO7V0WpeiNS/Fc5e6pGoYXb9i5Rh2g60a2zzp8sY+SF8jeJM2Vwggf8I+xaHrhtT1KtxMOjTZ07TwBWTNGKc09bonz9MhL5OvswK65LlUqJ7aBBnlI3M1yXDnUhVKdkqnLzCSpUyMlvLNZrE/Qi/BC5XPjJbgcoRs6km76IzxuTWerMZxnOEcqcyDe7RtWhg9gJgQFPUCiZoVDDENukIzYJvWrcd951eCKgAFLjb9y617mW7QCods3oWNHJ4FmmRC6T8Ua0YxEzBZO9bCObtnWnAw7pafESKISQO3Ovkpvn4qPsgAnmWPq4VFZhHogHrY4NmYJkRTs1IB5NYgowCB8onC34Tbh5ggOHP6YHwszSJzsUTZ98yDlmbh5G2/hSJhkvkJ8mU7fZJ5onFyqiP3negJyeQ0CqdHtbUrGo4hyrAdJMDI31nqFeWld0UZNhqYqDKh3Ieau45iLJR4pwVmCV+8dMwtCb78BlPvut5H2f2Vmn4ea3Ap+K5L21cvjrv9PB7fvXv39t3r/f5adS8UIdIcnluQqbqg3laFgahHgjk5Tle5UTaXyOBVglXP8y4Hla/XVpWaSCl2rv2xOBV/4pVZtuWHRKV+c8VpGPRPS11WhpY56NzfxzTBLG9jB3Aj4iu8OSIMbg0WD2hVUk3HfPbMxw4PhwM6IKQkY20eumez2VA93EQwtM5kpGUdMZIsHOw8xgH1fb/f79frNaRoa4G0R0QIED5p8HTLz4jzP6af0dNjkC1URhl2EXxBvmVcsEwZQwH8owLkRiRnWFAuuwVD7AamLCSvOJNhQ393ph96rgnthm5kaLV8MdYm+iDbixDTLAfj3Sd+1BnWG3B5fiPbmhiW87PtmDPqNkpeUaXWflSIeXFSzSrc0+Yl55l4jSaBNf9mqX6aC5GAyR8Ox+NY0pCfD9v1apWGlbK0Zt8N/SrFFN12u94Oq2+meR4npQjROZ9rLrMryj7kQ+dUpkf/qcB8dVH8TfPYbuMm1qihZFYQmVyhW3qiWpJU7kF1E5ugxvYjubE5QUnZFeYWTHZnFM5OyAPBuWUp8K3wC0jQbBXMNVI/w4JJ6NwR7EbxFKZpwssUQey+GTh79p1Dc3M/v/2RRizNuZlNwBrECGgPyeBcWwQyshbw80aBBdHyK+rO83dn+8TLEaRjhzacNYebO6/1lCeeDINgfRlccJoXMHABhsAIdgbOnL/Naau8yX2HrA4wwcGaLIbsBsfIUNIOt9h6swvsDPPHZcAHchZnsPhwMWBk5GLzwbwaVwzHZG9hd0EuhmjoEVGHmSv2+eDQVXtB+nDrgqYIKvKCWWqUQ6/M9DKquxRSy2/tlU2j5WYWT6QfXF9d9ipIKHfAsWRl8RAnIhFsVrIxSV/Ns0YsTF7qPOVXn29r6Lbb7TIvbw+vY98dx/HFy+3FakgxPH/+zC2zD7Xr4zyFly9f7q+uUxzKNL969fL66uowXqtE4jAcxqk5TgQ9MQ76R6Y9l6LrfFElM0lns3AoyxtIHJcydISaWzKAEFV3rFblm40KqC/OtX3bqeKQgvFt4HXQUlHrQHXVhESnko22EUI2ECFDbf70GEBtupmvc9IyXuO9R559sbmmZTYS+BGahbU5u+OeQxxzbIHYbgTVWQt0BniyVQOq2itwiyV+Mcpk3VmGbCsKAnGer0pr6p6OPt2pJ8MglqIxeKhUCbQhZNz4he/n/sQ+Bg1BNwwZ1g14VEQqZp08iiaHm5MFFncSzVksogV80A54BKcDNwQWsIfw673TA3CAVlR6wE3Z8jNwF/wzbTIa3GhSPdwfYiydZIPSZa7GlHyu8zI6V+a8xLRudX3eIwpT2TbKw3QkFz7JR8qqobUbm/+PTOqhk8FKQKSg81LKfr+fi//Zr/5Soko/uM4rft6H7XYTg1tvhliGt69fh07m+au372S7UgRIzcvy/PlFfwyqDiSDuwLq+26QE1ANeZ6HlHzJyujafAViiK4stYgtUukzVxSc0WRFvJzantxMeERwnLQ4773sn9MX9nJ4FltNtoGBMoALVxrQfPggmBnHAO5cFQXvyWrF4/HDW/5+Vz6ZTlqJPhU9IHJB58cxDofGE52464/vrJnGaJx2TPNv7YE1ZOTApkb6HrSSaI5M0uYuLgbX2BwszwaRzeAIDCr7zyNSPfya5R5jLoEz8qixa/E4WDxiI7nGMAu0sj0KEVLsd/RZDjtyFJQRKynVfCtKamPw7YHyZ9zEecaTsUlBodGL0RCH0kJGb24QMZgNztU69Mm7MvQpyuhWfc1dSmgKsqqPLajVxlHpRLbbrepwhJinWcZ1gUztFHLRyqHOU20KqRMKK7KkGb+y88OkbQAAIABJREFUroxFgKg4XLFFkrhOMmlTfgl5ZemToY2ufquGv+n6n82/IAumFd6XnclcNBgHU2J87IuzEuHUIGZIkXbMpAMP8bGNf7/rn4wPgjsAuVmHeOIgYphb6l3U+MB+wxoAItYmLCsL3gzn/MpyonH4F+NyVWhmHG15w9AC+cy0MaXcjlqB9k04v7v/wOsiV5ukzYCgULQ4SRsEtjUwEXOsmeHg+wBQ+o/8P6t+jtgY1dVSOZvilMeDnoZQmoNiU6+IOVKieJm6pBduGhhF3Fc5Us9lkQUqhOJCqV4Jf0rIYpjmSaU1VA3j3bs3y1KOrox5cb504aIVDhMyjdM0NrtYdeE4T+uue/vmzcVmc3V1pUz3iwLZ5BAkPZCrSmmm8JAudW4uMQaFfvjsVX0st5hadQvgYeK0/JorUG76dYGSouilsm4Jjz6Qav70LjsHF/TiWGkJXUItyAYMrX7sG57nxgNxTPtuIgVsBPR2l84/9onfef2TYZBpUogdJxIdEzuZopAzLfXXd/bs1gVISWanN+HLhBRoF/ggEhreAbA3GRg/CKDBLO7IzEhMWMfMOIJqECbI5PxHJgbsMLs+u5bVz8RDDGRBZjRQo/9AuXHLt3BcF3vX9f0yzbKt15xiV10USwRHgwM0mS5a8FSLNz85NAbnO9/iT73KDc6Sr9xS3CJre225GEMpKkElk3yIX/7979bbizAqh89qPbiy7K7edV30w6AStc7tx+Pl5SXE+uqzz8oydnHYXb8ry7Hr4lH1WpVCv5ViUzoNFQJLLkkwcz6LrxHHRPYyqbla5rIbO1lTsSthmVcdkKgCRNFVP7d9+xZ1/Pl8ZR1BxtjyMHfEGAktMqe27yeLEb7LhmoqMJgG0oyc1334cWSxJ8MgXA1ZY4wOWnqMhWRNxv3cHBA+inCoZEA7rHPELgs4RGYupWBhpSwXNtf1eg3jwwRcX18TXYETAFhgdllCSYA2yzLFGwFkZrB4pP/IoUwhOxtncDgAmExXZTpFhEdTXZFnC1Sik0JJV2fVOE77/XGz6VUwvnk2S3gpCEDS8MpnUepdF1y8CehUocASSwtdb5mFGvckr2TlH2raGNUIHIpLq3Vfqj/sriUC59nH8OrFRfRuPO5rHfj77LPP5mm6fH3tvd9st9N+JwXWYf/8YnM45BCrCu60MNKW0770KWzW3Tpt5nFajgdpnYU6ITTXy5Y3CKWUxhVckzlMXt2KoNdLkXVWzN0jY/+n/RMQAGuMLAbpEjzEZsm2+v30quhtEbVgw2mHlQvtkU3J9N+fekCfTB/E+mSpsKjgHsdx3Gw2GInW6zXbPmLLR73b8Xhcr9cIX/hrKQw8Km0geX/oAA41rF4SvA5t08aDkcV/cXFhiVpQYzvnqCEVQsAnDR4KxRApzef2Zyzxrc7bG6HiQccMY8VPcF7ErBhPB5FRzhT0ZO2htEZ/ZO5q7I1NYyLNsRxJdocW3xRV7EN8kNJ3tGwYLedOy2cmbNIp4Y0adzEpWBQFr0xjTTEpHELbK5mrJ8Le9ynleRqkN67LNJdlkSzQMlEsy7Ifj3MrQAYoby82QVUP435/fTzsVNWsqPZOUpXCkkKJoSolSPMGkuFKWR6bfCUzvGJmb9hMRDgxdicFdGhZ7c9G/M8YgxDJIWx0c2hCLUCauTvXUZ4NzHcfgnFgDXIAaxYfAiz6pP2C9//uFn/wFU/GB6GFod+4QpgFCoET/QuXgUQf1Xn8dFzbqEFonAlttRtsmzoNaxdowgZiOiBLW2VSGFgGBMCpwQrRSWaIOTP+5d7+0wKRiraDAR9QD2CKGwidhyU2dDO7LIInCiZMGNqyliV13dKS5m22W/V/cX1ShFhLXqHciQ1xZHN32QfBtJZ3lH6opV9sKz8oGEyaJVm+ZW4LIfY1dLnUTnrveZ7HtaqMHT9/8VxRGmu3GeKLZ8/GcRyvr+f5cLh+1/f9dh1i6fI4uew/e/7s6nLaTXMfl7os8/51TK5f9ZvVdrWq3s8pT8vY+yxjWGnhY8Idf3I4lMnPyQ0ahZc01N4nZVNrxTyUgcg5mehTvJOUUWkhixwf/9T/zGwC9MBEW4p048GNzD72fUlWgUCHSgHiJKXfdBPh/Ii24WOf+J3XPxkGsZx4HiiOmcwC50ydbLLGrc6xJ7P1GUjBRLAazbkZNgG3dHguNNZ2Fy1jUIAFQ0t1Hu9DJQxEMBOOWOo8lPmACAA4e0cODJiMIMz5CGiDjGjN1D08kYnnJA+lb7RMO7wFt3NeQ+SV5kc/VbnOKI90CMvkVl3fTpQYhhBrS5mhundumeUo41UlVVxY7HMekxKE9aFMY1b4e9+FqUjtXFPq/fq4P8z+ejWEw7uvnj1frUKYq/vFZ/+k711X581qqKu0u96v18X5fdjmL9+8HS8PFy9eCmDqHDp3WMblePXXP1/9+lfPl+U6hetp+rosPqXnR7c9TOKKSuiWXGclVysqllGVYlVxIjLkh7nM4oIGVRhT4Pt2XVSGqLqQu9WcFzkytkFoqi6fAZ+Wnf82DkFX0AkDi7bO9nxm3/YJpoN5txlHlKYp5uWcVDgDL3nDzSnTAC3b9ecH1pSRx/mv7OX8ZDCEuwkKafpD93g1djhejQWIYYRFQd/M5ALvY92mTU7SMRsNnn7eN+Dp3m6fX/bhx0+GQQ890l7GxE6uNP0IX21K0JYhqZp+Hk9z4AzZxHDauC2YDobGtDnoXyiKwILnQdjgW9i3khmZ/+Hdt+D68xHnDP3k7cBEXvD8yrutPd2ZlkRI3kInm5gUPLkoCFTuyeLYfFbqsr7rFeEVlMon+RYyWhVVVn3vXZdiS20fXKrNThb641ST/KqXZbwu4zduWLlRdQ2Pl7/rXv6qX3W1HEue/r//838vy9spL7/8y3/axcPF4DadIiTyOL3eXXXlsBn8i2F5uZq+/vrL/XLl8nJx8XK73czr7vfTOB1KSNuuX9VZCnEf6zCsNLDVK79aSp2ER3kY5lpi16/WW71BKwCU+ll80Le6IxvUVtzIvr1/wEKlLi57hq1DSyPFdgWZ2dI1Rw3bh0Afmj+fbu+lzoc8MD+hvny/I6dvd+nKLuMnixZC7GI/4xhKQw5gp0fSp2NAFdeUUizYyN7aai6Yfe3cbnPyimhO9JhEsNJA6o8vFnuFjzp4Sn3QvQ9GD00hQAYXSed88owdQNSiHcoiopElB7BFcrDVzPNsiRAZTW7E3wdD42q1YjsCdOgAbodEq2ELN3K89xVudZVrnsrv6d4nfujJG9lDiVbFNqTGFamkTxdUpzSIW5BwVmToTqptGFKNKXuxNqoGH1INSn6mhIpKnBqG1DX90VLmXfTLxcr3YVx30xAPdfxjyN/E8josX4f6ekhXQ7heprehHvs0uuW6ju9C2cW8H+rU1+O0e+PcsfqjPMaccNA1G1mQM7ecBpQOP8YuegWXlBxayGytOUblrtYOpBxrtdWJlXe3MjEW5etovtcnkQ1RjpCzm/G4Z/zMdwRRF7Jk7UGQLFrY8Fv2IMy7LE5jc3iG4QUmEfgXEAE+656utFO21G9dYMR27ttNn23hoE+0CFt2ULZtkAvjBqoDzptyx7ZbeDSg1lgbDgx/zUEXBERdcA7Btzr//b7+GHwQyGLKEV7MoPdWv9HaMr7mB5RSomqQKeRQm5mgROPnEhmjud/vEaGNqWazQqyjmsX5tnCrM49/RfHE9JjLz+O3/MBfz9dY8/6RPbvFYTUQdj5L5SMwapGdKnPaai5LFlMoVowaFg29snCImFyZSp7JQC0volAUeloHH7L3Svued//w2y+n5Rj61ebis3/+z/+bYVj//d//x2X8/eH4ptTYrS/W/UWKaRuWKKdq//IXn9dl2B9f//HNl7tLt0z7bpWmpY5Lnq+PZbrOuUtxVXLMS1axnpSEI9JnN4eVfuhXQ/WuyY6hCzJEaM+fR6Uli7lTAZ97BvJxWxn0hoMlXnmm1jWJCUcwRBhMqAgv4MJdqcT2TqMu+O6U0n6/J+GBcSj39Pjm1C0gQyo3QQF1KhVZQDqAxtYCzZB/YrPZHA4HY+gszNDchtEHMRrmfcYjVhK7T0wJqYq5ADpnENBOQvM33f+h/35yDIoxwg1imXqkv0wkUb9wzmAKfA25u0EoQB0F0yP+PmhezAkC3EG9x262Wim7hcnb9/bN9iX7lX7CgjFnTLDpC+3KT3Mg7+a7LetF4qqUPrig7B0+uJZJ2svIJaOZZAqfmjvCIMRqjRSldJ4UYdECOIp8o13uQihTdfs+zUNc8vFtcuN49fqQr+bdb/IhTbvfuenrru5jv+3c8Z/+zT+rx7IuIU2zO+5C7sdj+s0XvwrL17FMdT7kfuVCjN3GlXUpfRe33XZYljQrn7TrB6Wdrk4ppVrYfz+sV6XlbwwhdGGIPgxD56WODyHl1WoxnfQ5KBNEfzdsxcYKzheWGc4X3me1WiFDwWhwPcIUx6b4OwcLa9YOKCSN0ZbMwsZ02DWPH0CKbLdslpA6XrhgE0Z0/O8hfiy5WDmIiUdsJBEtLo7che2YpQROcSXgiyctTwHgWGLm608yP2MYH3+XD//1k2PQOI6Y5BkFeGDjDO92dLPZsLzRriGFDsOw3+83m40JyTA+yKv3+vt0XWdBNwwrHCbaYmR+LqAPd7Hmbt84A6E8ld/TQ0/5gPNty6oyBkmL0nehDkvpWslnlWv3ytrjhs0m9Z1rkTTeR7l+LMqSoUJlygC0BOWKH32elpK9kvi4zVrGdJ/6zTB1Krl6HX32qfb+UMavi4+/+eXLd1//h+KyfBH99KsvnuWreV3dhdscX2c35pxWtZt/drGqMb/1VQs+XKxWL0t+0bkXB9/lPHTDkKYyl9x1bliFWtN6u9KkyyNapcZ6BcalUDtXytI8wlWqVQlFOgW9tXwf96Hx/SOHUWKapu12u9vJlYlFeJ5ZGEK1amJoFbkegkG6OX+AoVIIYb/fI38ZNwFGnF//+DFEeDgcULvw1Tyb4XSQrXguegbL1GFcEhbhw0Fll8Adnmt+J7A2LC58IGF5cFPkE1GDtcNys2yiH75YHn9ffv3k+iBAlzcBVuEa7srVDCt+Ot57xCgs62TkxA+o73uywfICtdZ7/X3MrYYD3BFRyzExFhgF2H3IYFmfsak9id/Thzz3vWuUhuO9E6I8yWTBdT50csgpwZeoKu0lpan4ViGj92HlfJflothll0ro5hqyKigrr1itCrJv8JpdKPOyz+UYw1LnQ10OoR47Nw5hCfVYp/0q1lWMKohRy7aLdTq6ZZfy1C37Vd4Py2GYD/14XAevn0pdjnmepB8vOflWK1F1fk4OSW2RSEJUmjPphBS6XxZXVQe2JRmafD7WeYkt3L65G80tWaONAnCkgbmHQbSrVFgtxrjb7Z49e8bCSym15PyKcOTYWCG4b+fcbrfbbrfm8PFtc+8fscOhuMHyaz7u7194+5uhGD8sixJUYsYyLxCCKsi1huQIZ4SSCwUNXmbkw8bJENw0RdU8z6CVeaicLwSkBNIkWQCjJT9CIWsM0dNi0Cfng+g3e469M6LWXeUWuVaZTsp+Y5UAmBl3Mj1b4DuEda+/jxkyoAkUjabAgxuHFi3B1W0CaX59dhJy4RNsNY8v83t62umxR3MgO1jT4ny7/7eQ+Opdt+lDHGodVOxYjjZRjn1S+wyDfDsTlK1UPk4aIfkchlCXINfB0qnUaU7FNbN36F0Ytt2zz5+t5v1R0tUybtbbaR6X415BpuXZf/ZXv/n73/3dcXafv7xw0/Wmi19s+s00delZv6yP1yGs41Lf/PbybefdoVSVlVZifGXsWG+HUlZLCSHXTn6KS/ZTLkv1i5P6vDRFVFBh6agUJTXKkNentWLFwj70s1g/kPe9AXpsQyUtLyaI6+trNL5w5axSpHK2GfYq4o0wnt6dX8jAphvNiwkviPwPuaGYIum97jdTlPkKonimfaDNUimycNCZkp6B9YWe2wzHKLzoiV2MgsLSZtM+ai+ABkkQdepqJc4UzZT591k00q3Of++vnxCDbHqYLeQvjsFyVKTmqWwSEwoX+4q/n/EgvCoja3o7VMJmiQDFbnWAmTONo9EB8i1EhkGBdugAk8HTzUEJILMMLAjPJut978n4oBulU25Z6+VyKI5oqQoMffHFq9R95v0qhG6/v+5iX1VXAktZWq83x+NRRQ0VFhbk6Zekf171stYf9qor38deiTuUpmOJ8SIqTf30l3/11z///ML7+d3l1TgtrtR5HLerdR/Tq5cvp7l2q4vn67gJ3c9frVdHf1FSHPfL5iIn92a//ttvEP06p/i0eZDSMx6PRd4Qqh3Uj8volcwjpz7ksDhpqGPs/CKRsoYupFUXlbgx5Dyv+i5G1w9ZgayNHaSMUSsMrYTXlLe/NYyQE1b5858gHmKMSimUVOBiJpr9yeiE6yFgO2kNnpMcey1YbxfcPYDNgXgQ8G1d8PV8k4bkaJk+IJRxxhgiy84OQwRVmyCJ3xA32ivYe7Gd2y083RRJ5v30iCLl7jt+yJlPiEHf+Xg2DQYR4RP2Fa4HhQ7DTeD4vQ0i05pno5GIwRN32XkeYdMP0FigCXI408NegaaZsEsUfpZT7d7+fOKTJ2GjCR1ND9TksurdsxcX/fCsWz2b59xtlEAjhT6Io+iU7rlKfOmHrnaq3iNq66NqQKsYfVYge8uy0QJIldE1lRJr/my7+exVv6y76sYXLz8/juNq89zHpEo+LTd9F0NdDnl6d/Hqi+fbsO3jRS3Tu8NUDkv067Xvh1AO8zxl38vVMbopxjysOo3/WHznN+t19fO03ys0TP+n2CXXKW+rd6FfdeuXay2w6OLi+n5IvnRDUg5qJYo8dwhqTFADpvcU1d81HxZrbfbs8wibu3dDSLa92QXsbexYkCvkbRfcOoDwcCACcWDNHtrJeKKRsXXANnIc5UzncL5no5YyPyO03SCOxX6bqpu1wLDYpn6r80/79SfDIFDDRCqMmmb5w8WZV2WwbPRvvT8zjSmRnxhxmyROsr8Zs8PMnVsuOb7bH5jYcwciqO2h/tzq3pN/FeZQ3sdqjQbnsuuH4OI85f0iL5q5JKVHDCnJdB8np7I6x1l6aGVXLU4XLWXyIUcvaUgGsiXrP5U5rZ1KPfu+X2VJf7GWuF5tZjU9DV04jjvJxfJ4LDHEZbmO4fk0ve3KwfeuHw61HHyKrT5Qzn4uwXcxr/u86kvWY8aqGmSpljJNc4kqTp+9cqklOSvJe6iU6lUCNoau1fapRRWtvVob5CrURMrT4DZcbmj6PUYbDgIAgk0AHR6a31t0ZU80Nt/2S1QHD7WDA9QtpQQQZm2eH9xqxxglE7hMyUD/jeDP/Yw4ichmfnPs1sZhfWD/z/v2A49/MgwCbuGQeW0bTROXDCluMTXn78zYYcLA/P+4/xH+Ech3oBV8DSL3vf2BlWWHQb31SH/O+/YJjm/KiSnM/VvdtA9uGFIaVr7vU/9MaohSp6mQMbXrFT0/7MVrthKH2bkkr9Gcl/kgNVmeUsxyaqyhpOR8XcdVmPvtti9l16qwuuv9rlsNz59f+Biqy+NhUtromHI+jLl+/Y3bfTNfuDH94sVvPtteXtX9IkDcT3s9OwZXxuiOm9WyPx5Xfb9ar2P3bA7d26tLiWP9ysXcdTHE5rPeFrqCSFLs5Gwg9U+dfVAZshJbXVmxPWLkxI/9kD9DARNqbq32Rxo/v9J7j2MODZpy+iFWgqhpOG5sUjjpPPK485+AQgMazHyQpUmFgJHRKu1D4dZz0kuAXx/V//PO/MDjnwyDTPgEjND/WdEuswuiLwSV7n3Vj/U/wspIU7Yt4FRtgi7O6UhhoJv1B+usGQju7dInPcmKMx89fW249Nnnz0Nad+uN7PQx7q72K7kahy4N+3321acUS3a+zrs8KoubmJGpG3KXfO86ZfWpy5JL7X0uZRWL0Kwr4/V+Hvfe5W6QVjul0HyXc4y1V0oNPy9L3/eXu6tvrl+v5jevLn7zL/7rfzH9w+5i9WL87X/85vrSdevNerPfjbXuLtZlsxkOUziMuzdvLn1/EWJcDek4L6knnl/8saJuXRkG/TS0UNzgoyJMlI8tKuE0FVllD7wbvfpxw2/QY5lzgQ/Of2Bb6Eow7cPLQ0uPxGqQJsG2W0u38NATDTVuXQCmnPNu6N2xlsAuodywwmosAW4xm0/f9x/V/1vd+CFffzIMMq8H+E++Yrwg3Q/Tg8YanL73PT/W/4jcCKjlYEqPx+MgLiJZbSYYH2aO9nELgH2lFtVDNHFvJ5/6JPkvSLgsOKouvHxxsTu6Lrp311efv3xxnY9Dv1akmNvHbupic1VcfAwpKONuHCaX51DzmHzpY9woYKJ3vrxTfe1p8GMfSl4OS96XosJhfb/yJf/xj29TF9++ffvq+UvF4FfHMrvc7/0yr/uUY71erv7nf/0/jW71h32J/bA7LMfrty1wZN5ffb2bDy9e/fUXX3y2m+P15C6Pk+/CxepiXsai/CFVOukoxFl1qd/G6stSFmUMCXXd976sluWyU4okBdjfZoKaveyjRhuuYbVaETiOmekh5uWhllEvws7b5opk99AtWFHAO6iR44euv3XeyA/o5FdjeUCZe/2Muq5DXMAl5VwI+Kj+3+rPD/n6k2GQuW+Bx7jGYz7H4xOVMCEqCM/3vic2cjzQ0A2ZQAujy102Z7haEO9H47jJskuYr/337s+9nXzKk4rmUuzmqcaqEEgRGvvDZQiflTyuh3jYX+ZpN1KUpvO+TFqyspPFUsfqlIh6XvaqEB9zDKUL5HrLuYy9EkfvY94Hvz8eXjs3Km601nkeh9UmdYpzeL69UCXDnKNP81xTCv1qPeXj1fjmME/DdrMkF7thvNpdH5bQX2xXyS05qJji4WLTO/d6f3RT7n3YhCgXgUXeh0qX5KSOHmKnmiFOiYqm1eq5y7kPaRrn6sOSD9Nxd+MgpQS0rSqibGjfiqYfM9yYpXC9gQ23nAePN2MUxWV4h2AXJ3k5Etaty6xNVMjQKsy1uU3aNR9yAKdDRIgZxUh0gzcQRhuQkZclboG1xo0kriHYFUA0X+KH+v8hffvAa34yDCLeF40vrJDJw6iribFAi/wIH/Sx/ke4JgIxWE+ZOcT4D+kP3fsR5uYDplC8gHLCV/f7v/v3P/tZ2Y+L9/7f/D//1zzKB/mv/snf/PLXvzy+e9fqLIft5kWLQV3mOdduUiqMOne+DqF2vkrbosRi0rvULCfr630e+pT6Luc8joepC8vxMOb867/4zdXVfhol24V+OE5H5dkvs1/KcZq/enP5//67v90tXVl97mJaxmXOc3T+anfYX++O49/+0//iv/z1X/y8hmEs/vLopjKrOkgfpzmHFNYrF3ulqRV756euHmPOXZ2ur15P8gy4Oo5/nA916FtB1xs0+nas7p759rd7jjAMQQnoH5G7H1IP36uTRiAy9aLZxR8hEvx0+KRbMCb3tn/eb9q0y4h9wxHJUpKbtIXjG9ewlPBUNOUGDsOKVR6UI8WERzjBR/p/3qUfePyTYRBzjDTEgGKh4LWBbfjkhyRzmwZuMcMEKiRaxkKJacB8KPjKTzTOZmLHBIuYAxsORKb/Y+sw50b2GcuTbSpJGGMeagZXHEDoG2ya2VB5CuRiTPVdNUFwfclLUJ1mFdMRBPshFvd//Ov/cbN+tUx1Po7TNL18+bwf0m//79918z+TbOP7f/tv/12Kq7/4i1///suvavWX7968ePHsb/7qN3k6XFxsX3/11d/89W9yWZyfxmW3P+6P02FYXeRxv99d1zIfd+/8sv/iiy+6bmjJZFW/51Dq4kpQuZ4xeHkyxzAcprR69qs8+3/4ZueX4Oc5hU7M1bgk71YxuP318evfTnOpPv7657/45t3lOE19Xfu0mvP+3R9+f7Ubs68hdSn1ZS7LNH/11VfjqMiD1Pl311+vQvOhlo9TsxMqr2KrFiRF0kfrqBltliVkaVanD1xd0Ma5p+t5C2b/NvkLSjNVIwRsj771UOjcyAP9KU+EgeIn4ANlEMd4Od3yPzIthC1AI3tWEBRLIuZH9v5bnfwhX38yDGId2sjaUsR/hzSmuGx+v9cjXSEyBgUtIIu70M4cG5DhlY+XeozxeDwSWM/tbDjkM2Lb5MZaK+I3fBacNrHOhAKaR9K56xee3Mw0eezNFMgGBZkSGtJGQwLHLKEkN2W0Chm6XOrsr97+cbq6qovycej63ZJHKaf/8Hf+8t11re73v//Ku+7y699dvX1Xa12v0tfvlnz5H+Ti84vPN+vh569+6Wrd75ddmY95XMd0eX2tSvC+dCnMoc6H3R/+/nAclzhcPP/sCx/XWu6Cw6XUaT7sQ1mc89PkY3fx8tmzv/3Dv5+Po7y3S53LMs5LNwxlmd989eW2j19++eXFetPlq7q4w9Xu6+NxcXE3Lm+u99fHeXFBTkE1hFKjSr8eXNTrhK4epqNwRtqgk/wlDbVOmNHwI0jGZh/tLDDxEfffXGpb1M0JZc5lmyH1B8e4gJjOyC7+zgPU3hYCadejyuArYMcZpELAyCj/nGKthcf7CULZxZ/i4CfDIFM5W0SFoYAtYPNaZkA/6v0RhvE5hPsw//Rb7RgqmT21b38kMLrloo7gRsDqZrPBtIkWiVgbthfLeA3RwM4YM0xP0AWATeZTa6IiwET1YWwcdFsRD6rBlZwrYltqUNaf5KZpKop0iF03lFJ313sfXOr78Me3X375ZfO4UcDvperOH52f4nq95Ov99R9cGZeDf/l8+3L7TclhPXx+eXV8/fXr7bOLUYV6XMnTsoyxKpn0er0WLGZ3eflmKu9qTP1qCC53eVrmaQgqe/bu3TsWpISaPkrTXOtm6IU+++t1Lf/5X/1Xb7/55sXFRXDhb//DfxzWz/7hyz/U2I3ZXR+n63HJUp0pTZAiAAAgAElEQVSvXFTNxMN+3yoU1TR0yucxTcsyCYOUHLINiUz1LWKlrXJlqn70z5YcB2wJ3IF3COeNKh5t7Nsf717PyocNYerBESjk2zs/7Ajm3fQAFu8GrLA1wqFjOXnI/+hT9/PD3ua9q34yDLINn5VvETrgrsliyKXfO1+JKbzN7/69tz8LBwMLsMdPInQpViAggnHoCVxSSon4fvgUY5RgmiA1e69zqZBmTRMJOfIUEjOCyJAsLZiICmcUfQpRITw5z13XDNfF5dyyCYXQ9UPwfZmm4zwrZDrEcVEVIO/dajXIxXA++rJ4n/e7y1764NKnXJdlSGu3HLuwSq6so0KzJENV4U+SP3Jd5qnE3rkSk5ywp2UKw3azWWd5DsoDUu8Sw5z95f747NUXu0kclILxVbxHXSzluF2t4zQqH2JjYxblHxqmZfYpdd1qPi7VLS29WazZ5ar8Qj6ttIUEpQxSTSAlgVXE67cY1Gb0xjf65t9b0/zwV5xCvjNP0MMN3P+LAZwK1a5WyPVmIwcs7r/zgbMgGj+iOSUphzn35pyx8Np+xv4HGUO3d+HvO/t5F7Me6OD3P/2TYRCgYFYqM0bABOEnbTvJ93g/1HKWQPccCKw1mwBUSHgJERPLhmOpMNHymHEB9gTjq2Vi7LqO5IokysJNFpbH5h5YQQKFOJDPUUmYQE4LDM40TUZnAmiVhC+xC801RjCj2uqdn5bFpxpkwtK6z7IT+XFa5ndvVcnUhTnnkpd5XEJLzLzqNym4ab/LQbngvy7l3de/LUtOvn/x4kXsBj+Kw7q+ulyvUslT36+6ECbBc95PucbO13y9u5Rn8zz1fg5eztVvpMupx9nVsHr52S9yd9gdR0FkDKq/6v3Fi5f/y//6v7188ULeRrHf7Q7V+dSt63zYT8vhmGelMlKwWC1+KUqxMSs1mz8epzR4p0SKCtRofouNiTGm6IQ/38EH2exzgE8Gx+d5gs5p49Yt9369d61CdRjd0Ftz7zmg3Nva3ZMP1R1Dgw61o0wk1QTUiLRhZcfvCow86JF+3u3Jk5/5yTCIUbPYCL7iuEVqDhv0c1v7h78/JX2QhzGxwa+et3CLbgC+vu/R4LCfwO90nUKciBhGMkJptyzL8Xi8uLgIIRyPR4jgvC4YCHKuaTZ/SFQPXECv8I2EIFB1T63OgeVdEyuUXeri8ag0fbvdbhjWKaaySCU7znPJcZnHGGXbrk5Vj2pWbjCVg8/S8zqlau1TCm/eXK6G5Ja67vou9cdpJVfGXFdd7tLYDeEw7jcX22UucTModm+/P/pZHF8/+Bjn7KbjKK/ruYQ6bzofq9sX9/dfvpmWP85LLXEofjVsutlNC0kzlsvdYcnLsb94MfmU5+LnuVttu9S/u9oVX6fFHYubXcw+KDV2LnNVcms1FuNhXjrVglaNoJPs5cWgKbytCWVKE6Cctecz/N3H2NTHcXw8T9B3N/T+FUZa6ARhdXG1N5vU+3d8xzeoDjaZxm3J4Jhi8j6bou1bPA5Rzmwj9rDv7KddYLc8+YG4+idv9PEGeSvKB7K2z/GIYPRbuco+aiC4+FY4PnqWu3OAppBPE8dyzvgrSsnSiiY650iihgLIuCqLJjOvNp6OJuvZM4VNoI06HxMkOM7AGTnnLi4urq+v4Z4ATbbiEML19TUsklgn6V59dSq+0/UrkdokN+efv/onTsGnq2Upfb9alETRzctYQ05dCL73OpFaoUDXxaQSOS67vChdT142q/VKCq0Slr2yefTDUspqs64ur4e+unm1Gnb7K0HSMByneXdchu0zWYLGnOejl42/dC10YpyX6tPVcd5P+biU1VoFiMS/lAUN2rPN9urqqtn752GzHo/znCVuzSqz4Wvoqo+LC3kRR8ekDEN3HA+rdXJhiXH54zd/24Q5WTJUDUh1jRR9q3m8zy4G38F42tzZV1sC2+1W2QUaYt5LKkzZvZ93WQzaJ/EYthGIEMMWTPS5MffeZo0+aQf1NopteGdsOEaWdJvFReYN4I8NGGK7tZoe7+efuU4aJsXiHgyJGGiTZR6am8fPYygFIwwXbEbv3gtXYvlY4WuQrZjXW/mMEOkRtZgnaALbBBwyUIJ6iE+Q0Wo5GTmWUq6vVdQUUR+FtNmMGSjkQQmt09Rix8O8zMGnrvPTqPw83tUUFNLggxz+FErRDcXP0zylWFPqghN/lBdVD6zFjUvuUhdTym6afPKhm8uy7i6mZUwldUO/nwVnk8pb9IvvaqzTPPkpHBcXulVKFwruEPMxuBzkpNRKTh7yqCz63UYWvHl0Oeact+uLbhVycGm9mlKaYp7LHLfbsZTtZ5/9/o9f+ZgWBK3UUrHJkzLnuQ5dt5SDUzxr7PoeRJfqSelfv/0TMJ/M8jf/fvvjY0fwmzCnu90OTdxdlvmxJtpvrOS7l83zjBst0j2sNNBz9+JHzuB/a/QMquIRwsKByCFLNk7UGpYs1Bj5e5/yUD9vAda99/7Ak08mi7FC+AR6z11jLDOALaS702BJpAiVYHey7YUFiQnf8vg84g7P9fQE6AEFrAMoZVDH4ApgP/HQ1appQ8Xqt3LIy8JzLZ8RJhVm3SR84IPGoW9uZz9HwMRL2361Ldde2fTQBkbw0prslryCIVK1Ldnotf5Kkd1qnI/L7NJF8t6N4zF2Sjs4pI2PybtQnNgMF1WvYi4lpLAoBr3WLuzrMs41yW3ZqcLFvIRjaT0fVTVROQp1oeJXvSpKq4DZ5WtfWxaNJhspvWpYxJcpN6M7LuPiok8Xs7LN1re7Wf6PShCdch7nWZq6GJ1KeL/bzS4tswLll+bzpHTWS56XHFOc8oSs4Vux1eD9erONzRqvCW11n1ui6VAW3w1hmpa+V2Ev+B1EEkvHYSMMW2GKOUtoZ85lt9aVLUWatXYMC5hNqNpsDrb5AUCnWWtEzPZDN3gWftWWoeEuqGGU4GL71WJQOQPlQJnooTlv9EnPacSWDyfh/bmXhWNvfWs0nvbrk2GQ7fa8GFKoSK7rGFbe04RhHMY/3H/HypB+eF4hptzSyjFwbA6mh2KGLOAD/2kmA3PY3fxBUM9DPCq7DZZRY2p4dwCFXoF3qKXZdXHwh1YQByyK0ntv4pt3ruvkUqy7FJKu/IRd5375y1/87ndflsm9fPnqzbs3UgqEMM9j6HqVUS1KdFqVt0N+K1lKlHZK6uJMneWWytkPqWsMhoS+6OVqpJv1p0+nSHXdq7UqRBMEJsGaiFa/1pqrUz7EuFG5sBAFS+1eeWIXvxzlQqB016nzMZbgZqGNl2WvJTaqKlLvhXbKxO8UwOHzvBxXq97Vueb6L//lv5SYOVeF1Et37dbDqlGdX7L8oxhtXCsIwTGbI2CEVgXK/FgTFZZWu8s2G+j/rv8Ouya0hyMyHgB4jSDs08h5sKtBjK12WzigpNln0TGxlRog0j30ACw0aAygxNZh+iN6zqDZ437Mg5b56SkeaNbN8y2I9HSGyriBMQcWzMK4mNr1bl8AY4sFMyUuC/Xu9ZwhpS4jCx08Xo8MaABA8Wk0Xy+qDnzgc61XEDovy65yzm2hpYYOLH0vwIRwylsTXmi5jZ1z2+16nvMNj6Z3rdUdx/rf/w//XYx+tU7H4257MSidkF9W69SFklxOLseak6vJ1VhLoB6ZhJmmJAoSf5zvFxf2uRxqnVpQ2eyV32yq4ZDzfnaHxR9zOGY3LvU4L+O0HKZ5ymWUj6SffZx9HF04ujBVNyohdJhrmfMil56apyLd0fEwzuNcFhnzYaxOtsvoWuxIdiX7PMvnKOQuupTKs4u+lun66o3zNUb/3/6rf5UXpTxTDiRZCRdxl8ssAHLSb0Jm+HwSEoRcbxxr1/5MCfAQCd173jYS1HzwsBzD7AAH2HmN+7AlcO51AUawmcFAQRV3AYi7sJYCOpArr2CczjkPDtN0rpDmdRhtCI91ce/j7n33T3TyyfggdhisRbybbd2gEvMEr3g3YPUh/x3EKKaQAbU8PngYPTSC+Fiz+OkAsh58CiI0eAEZ4fbOJsPjYOONZ/7A55raDwYK6mfiDdrMGRd6tW3ZNGJ0hu6ZyAaZ7nYH7x34iEIk5/+/vXtLciRX0gMcvOWlsqq7dRagB2khepVpDTKbDcxWxrRQHc2Z012VFybJkCG+zL/QwUsxmWRVdw/K2rKDEQiHw+H43eFwIPqbm8lms1pvljc3d8/LVd9N1uupDMZyGFiZU5V9rcNnBYdjpssCU9lvBekmJSO5X202634zn027svLUrSebcmDGdFpmYJtN8XZ0xjAzLV8mW5fXy6HQ83k/69bFZ+qLT1U2THTl04Wl3jJLHPIE5pPhALVJAYqSON1tpn3ZdDLtutV83kkrKPnfw97aSZlnlQX46Wz9vCqL+v/lbz+t1+v7h/KvZGhOutXzpijSdZl5LeaLvi9+UHotQTozIzLP7jAqGu06PLpISRlHOyBu9sS01HBT5+94mskg9qKQ1i4of7L5w0xdL/5p1848IMz4ZmycGtFr6gR3Mp9IEyhnKv3+F2fDIOCiYQaPsw21OUuD3M6cnv1iA6flYzPiJhn/ZBGIgWhivXExagd1W3bZGWz08qTAX0xils+gJ8RBSo1vrZf9iWkyALCtaaw0xzvVkRs/CG4mph4b/nKsRPk0e+96venKV3Cm5TOm//Iv/7ucE91P/+3f/s///X//mE5ni+t5V0byejgXdQha9+VcnrKGNNlM52XeNGwNLek2Rd1LLKZbbabDHKjgW5ntDeHtsul0VrITJpPSU/3wQelNmT+VrzOvN7OSRFjQpvwrGZGTyeb5iVkmkOmsTO76SX99W+aEfTmGdV0gqgSIysH15RyOvlvPCn6VSrsyWZzM18vlw7Cfe/nf/9t//dd//dfFYv4//9f/GBrezUtSwWK9fl73mwEQy0EiqjMIxf5N3uWR6lmfbIkObGsObKohIGopOJXc19iP9bqsVDIY+g6yzGYz5nD7e2EJMw/fcCy9tC8NRY9nSyp3SR7QfD7nFJta8q1A1c7vi8nJVHW9ZhLY2imNi94829o8lK29wQ8fPhgqjIAEh3/84x/ZReFrR+T78ePHhEW2GwyenCvEL/3ypXwnPppRv0J1Hh8fd36PbLFY5HtkUnv4QYlbWZy6vr72laHlcAKG/vZlmH314gH6QOS4zbAmwFTvg8scfjqdfvnyBVwqmflaYofF1k271Woznc2KbLtuuVyV3Z3lC6Vlnb0EWoavF67LNKWs2Zd0vzKkhr8cJ9fD374EZsqjsqi27ozt8nvY/1A2hA6rTCV0VLDhpfDgLb5QnliRGsiXmM4wuxti5KXwxCaK4Rx+PBTwGeaPpeqKoN2mL/xMSpBrUr6wUT6pOi/93JVY+3DxvCrxr5JSUp6WxbRPnz49Pi3n5VDH8vUeqcn/8R//Icxnmp/sCvERDu/XSP/A/74/NCp/V6vV3d0dvODReHR9ff3582f4xd/R0XIUoTnlScDRi5mw6/2w4amfHLcEWxPkVtHt7XDq9nSKnwwlwVAa7rQ/++Nvb2+TTg37sA1SDTdKGGYud3FODIoTJNTK+Nv2Kfk4Z8IzVvqDSflm/k7gBlg48WTnuUJ6TooECxO10yWEm11pQR8dbI4NPngrCH6zXp2k+2n8p0+fxOOzUzGSYYRjRRM+4LvVews3mw2ANmxK0KTr5oty0sLjU9muAVKWj89DY4dPP8+GDMXhQ0AlgWYY6mV4v2IEEBnmTANSDBj0ch5YSfobSpbzfga0KOo53Qy/CqYEvIDIq25mn9awlf3rtq2XNXO7TKcDcRy/0kEAbA0DowBQ4bSg1cBxNylZ0X23XBVur6669bqbvnrw5RMh85LH2K3K+YslR6AE38vONevNDECiPz5dJyRE915bsOP/NQp4/PQk57N8ODur3br1+fl5O3+nziBL56qXBiZa/NK/r19bHlX91jwgqoVIvB46LCkvMUrMY+PPjUHQ1PC2Av3zzz/Xp5Hpwr7vszKlwyARidST6mgEmpnr6UhKFgchhQNVtYlDto4BgZhhclGGQjw1dHjU1sWYC7NxcyXGdqQiYSB6SQhQUger7vHx8W9/+xvJZPrp/Cq5iBxpmoFzL7q+WsyWJeJTeL5/eJrNpv2mRGrLrGhYkB78yhKXHVaIuuHrE5vZcObpi5cRXl8vAh9lCb44Pq9wVQ6/LwfOD3dfNqlDhYJLX18v976azdcSfb8qO7sKlpWPhZW0gLINfpisDeBS4G6ouzSwRKeGPWEFcIYHQ1aEU7Ofl6vF1bxAz6vrtFz1i8XkeVWybwaGy6nV61VBr4Tkkh1KT8yGkmxFVfb142vjqna9tvHx8fGnn37Kcj6tcGYQ9zw0LTlBHB4KKQnQ2CaShRqalnfDAD7zxfNILJj1+Pj4888/Z82EUtFhxr5eRPMpx19++UX5ANAP9IPOti5G3FrC5vhgU0IeLP96XdZ0wC2/iUcTzXAz/cHamKzW3QNiOLEJ7CkQz1bn+ZljEjNLD1olWplerx1aGpbcMDPBmpO85SJyAJpqD9jZdm/vInWMUopP88aDyKRHdG4+r8r3MkwYb64XT48PZQN9CQOU3eZlCE4ni+v5ZNat1uX0i65EhLt+U75dOgBVcRJe9owOOFJOQXv9rwBQ+W+4V6Zns26yKA+HA/Q3mzIN3KyLJwSAgNfzc8lmfnp6fpFAqbMcKDKZzu8fn7puunpeT8pZPwWNiijKzK6Em0tqwWReTpEdAtDr581sMl0+PemaF8kMaFdiW5OSlygPuoTMy+75/sPNbbfpywEmZQGf+1TCUhxJuoQOmtn8nIWhRGEU1ms19EdPciHcE+3l5Hpq5BsFDE8UVYHAIgDKvtMovHejYFSRYBMEQMRkMJl3Xsw0KkKgUVTItelY1DVV0MAMQLM/SBcvKfS9fpa/Z5uLpUnhUpMiI8Mv1oOU7cxYrVb39/fmTfGSuC0UKPk7SffgvOQATZIyYgkxh1HSKngvJiVuF+ULWNQCrRU3M6N4RnXJA9eBHtTEv80RwDSEohni6zFchoFgWUKt6Mgbms/nd3d3ThGB0Ry0xERwW+YpwxkAgzEs/pEIQjnvI/9ePZeix3us0nq9KR8K4iSVhbnNrBzyXEiUL5qVHfzFZxpU/6WYWcXzc4nRlM22L7X8zmnKYGMbuI2JLQ4GYIDEF1Zf/CZTe73/8PAg9kw4ejNb/7quo1Gp6Guj44INOwEXi4UkCbE/1PKWn3CEq+uRfHovCveGDfI3HFIppAhePD8/M298JTli+WozHaj1M7gG2hQARvod9NAi3r04FK/cLEyZsJSWAlB/+ZLWdtE3oauXbkPhnRcXxyDrYnZ+6jZdyKEQLbNMlk1SYEubgx0J0HIHLH/q5gTC6bEBybuRh8rd1SXpV/LdByvRORSgQLwSftwxoq9hKFHMjLHa4dIK5aka20g7ZdmpcTqdinBhMrY30iBVurtaLQfcKbiA+Kv6Zi41HMb82pjyVebXfxGCzmI/BqwZTlArqdglCDWfl5M14g5k3mr4bTarwYFaLUqEvIziV/Iv/6cVuALECfMNKlF/OUOAfaBS0gJKCFaaX76hTqQ4x3Dch531YlIyrW5NWHBUvpa2VJ1Qjt2VlJRpTiBsJymhUhaIaiW2ICUts3JhddsYU96Eziu1E0f/o0i0KNjHWodI7htWwCvcarLFa9Yrxr7WjZQ/7WKP1TuN2K63SOT+/h4eiwFpuU0PtqfaRyPHQRJzugEFHoFsC8E/9jxCQfl14K2YhQCZKTFdYbWMasM1/ud2CxSwkOGaW7Fd0p1R34AbAyMJTeZr3DEMh4HAUw1ADGzuxBk07EF2pMFLqi2k5MzsVOIAcsFe/pZ8Qf+V/Jr8443nr3WDYcPKy5SCYRgYKwCnp8gHQAzNKZOuq/JR6dqjeakko9QFgpZTA3nhp74QQROF4SbbAaOLjc+c63yAVHA5AJSGjKrLcMWq8g8P5ZOzmWGlzO3tLVStiXhKQ+gAxp6engx+opNei7Hr62t4wRQ9D/+MAppDMzNv4sRRp4eHB4zF1CVmNOIqqqWL5RNEkuYcllmwraO3iZx25+IYZKHUuk8gwEWci5ub4Tvks2LxQIPzB2hSslpN1iJuZbzLUCfAJjuWQEWL4qNyfwgrpA7INPvmTe6YC39pyehvtHDUH1SW5SQNXWvU0RIdnL7PESLle4RDNnDtRcfvADfUzvmNyWka1He6WFxfXV1lFpaRUHFedoQN/70kDfX9evRfSXUu34h+Xq2Wk2Gf2Hq9mgyJy+Y7fb++ubnabFaL4dsb65JSNCmfLZx2T09PJAzER5IxwcGe4RdM4RsGBOsLI5OX7eN89VTIOCdtk53tSt1h5LHHmTpsY+QH8UNtGTWAu6778qV8flYYFBbsay/NdGx513WAxm5E+qajV6uVyRrhOEHYu/6yRmrkZXP5l8ORL7e3t7ZlRL3lmu0UBWudYcIMmLuJ5a9W5dgDlj4+0U5Sb715cQySIRYozXZT45ArlMHGlf38+XNMjdVxAqIu5JIPQnnX/O7q6so50Mo/PDxwK8CHCY4cRb63cXugY/SxKngxXF9Wqx4So+t0A1hUXZ1QC09pGO3BeTnxZ4hTTKdTZy+Us59vb8mBn5iS/EEzUCMhm6QNp/AZ19KA93fEs5+QaOTNIR5xxa1TzHK1jiafuELPz885DYpnGsnUF6FzfV3g0qDSdxVQ/u7SUoYVaxJjsfgFznK6v7/nPuzDAjzQSRqlp2reXEdW2cQXKO+6jjckaSiyFbQakQqd9Xp9e3ur4TximQRmsmLnVD0uPKMrpJBoJgjTIwIUsm1N3DJf++ZaCgUz+9PRrufzuUQ5LhW9ZVBHTTv558XjQfVMQXpC4jJmZ7whqsMy6BihxByCESGO8ncEBbfzj+J/JbYdjyPTN756+qwWIh7ok5Evtyj+SF1437VBQ1l5zjTv73//u5NA+FMcGaBcB2Xhl3OLLKUpjytPWaTMNajIP//5z6QFB80ptAU1DtfA9tgI9cM21LpFwcQ4a+bFuo87Jo5jwWXkrsvGyD6VOhKRWlLFNp3haNeEkMpueG/1fe/DOMn2iBhdQB99zZ9KdaGga5IL5ktzUbBReYUDMYAjGTcKByZDhFdbk9IEyJIvkSVy7JuacXaC5maa3BMJit5ld29vb5UkXgDte2HgLDNxAql7AT+RZ1ZgjA7iZYRYeiqny+p2nXx9cQwi3BiNV2NbUryySV2/Ap0s64AMAgJbcSnFGhJOpgdEEI3MfMeoWywW9SysHopYGkkwup64hhXZxJVTYPRifo46KQFj9iTNhK35SQMsKXLcGMaEfjBg2NA8Q44DEuKRBtgyIGk2Cq/sjTHoNbH6pR11M61sxtgSSIKpDgATprG8gKXPnz87hokH+lpv5PT1wji5u7uzy2c+nw8zmprDrxiEMbFhss36gwmFs72Z9MDH18qGFCRDqw4awll/FcZw5AD6TbvyCDQ4iI614MSRwM4mixb5FkuAkho8PT399NNPid3QQFb2n//8pywWSst5SeRUX7ABcnQVTvOpSj2jzyPjMWMqWEajjFADMIazFuZ7rusOfg+dklQWIyBKV3sBek7j467HOrEVYhlvzd8h98z16vwjFkA8CADRpAAQDnfGDmufmQ49D2fexAfJRbqEumtUvFlanoBxfGYigiyE42/t6cTgOOfBxCrFNFxFPHMFuNABfXzGZwk/ZD7sP10PC+dl9xYnKG1H3HCiHLSQT6cKTiLD646Jj1mAHuc3pTl10Nc1sj6ineiGoEbiytFOi0SJ0xktASANFBuKcF4b+9XiuqOlCdIZbzRZW3KtW3EbLzIaPpvNLO0DXy6SDgrNSLVuCA5zx0WSmPyMtJ+enhhj97GUpB70dYfW1XQ8TUU1pFLvaKYyuo8Q3GHAYupC6v0XVZLIu4nV68dgdTX8YwYzJzKDtaRKRyNl8SBdmBmvp3GCttnUkUKPFF0fcDFAe51/lMxUE594atuUD9zhpmUSlE+AxcvgEVCUTK09lZmmXTQgekC/qX78oIA7cSECXEx1zc8zTvKVIV4V/0U0ymQnBk295EALSYMAZdnoCO1NJybsLS6rZKxoLhITYbGRpceitnhLf+0UOFAbWl0ODMBJXz6Fdn97ewugdUQ9jwgp442l0U38DpNTEkjhXBi0oE3cTTiGR0mAOoIblRePv6DttQKEVRcjf/94yieXpHJhIx/7yxgk7X1CO63es/lB0+k0q1EMMp3mdMT8uuBsQ1aRC1NcDmSduQdfDgCQUzhvbm6YCEmPZGTkqyuflgaIhmuG4gmyA6+z2czOWMBaB63YTKOLsvLYjUD+DhFlU6X5Ng2Ij4a3TOANyNGUjfVjcmP8mQHUAuuhA1kEEUAbVgUyFIuTwthqoxkTBMGbWQPw0o8w0TDWmzAiLifJO/wfIhzogtduKkVwwt24vr7GYaZ+FG9EKsqQio6s1ywYxIitEBT0jyWoc51HVR/4SQPjvNCcdH3cGZ14gM4ZHxFmJhasS8JetFRf/0ExKFoFZQwnIdIsypjuKklNh4PNS3IETaVDb8rfQe34/COdzWkyrzktyB9wub+/jxlfLpemEtQ3HhZ8ND7F3RNc5LixrllFJhaKKEwmCsMKBaoyDMw3leeNgki+NMDCJOgRRkmSOm65VK5xwvnP3BkPoeb1eCV0lB5r1M3NjWlOJpsiF2DUalRmuPvGUkATguhuYzWzYMk4OylkumRRFYpJVcfGzrfqmxjQdvj+prybmlR9TSWw53PvGmjk69BMiMizfv3s1/Xs1YAlatNMtsrYscp8RgbO6QdZac6nQbke+/J9aIMO1lqCriPHmcQqsLPZWf9iDA0k421f/lGcMpB3eG1+Z6U6g+uXhSGOKw+/LmDACHaglmmazIvMJU1hrNM5QbF2PTyNs2O+RjLhJKBjvj1wjC4AACAASURBVCkOlaVJP9UOHYI7rzGRsvUs8olhNGuoHasaQa6vrzVhuSxnP2ujTyRxf3gKokLiO2QCtuJk7RR1Psu12ZSYIxw3SBKESghpJ4UENdI1x9SblakcwKBHJpPJm/Ju9rFkQYZjJYmURbH2T57kVk9s91F7/33ry6xm+YbBVUko031xje2prtNr3l9vUbazUAHhhlkOMIz+7cz38fFJa9X1SHtr/s4J+UfsGGNIw04QAsuQaYgcAuk5cIFzJ9+HV5L07tjkoEMSiJidBHRjD/mJgYyEEjL3XC6XfIq8y8ZmOQ9mQUwlQTALPzSnfAzViFWvv0yL9rIrNh/B2dvbW8k48piyBp8EPOtcGWDJz5BYaIG5dnZGfeE44GR+rVYrL8pjNFQyl3xF0q80mDGgI7viyHqzf82BZwkkvTXv5isrW1dW0LjAdV5SFhyjPFuvXuRGEs0TqxVIyVHCHz9+pAZMyNmYoNzv/yvkKc/VMOj7Pl6ra9PIKAp9lQeoPe4wAu4ovK2jBhhZJBdGYS4AO4a4wBA1yhlGLtTyJpmqOiyplE2m8T4VrbHZf5g9UHd35XtbcYtUHX+Q2kGHiFErzGjqjhcldSf8fPz4UfnXOEXJle267vb29v7+njPCmXLq+yuf5RSeyDyNAkDegtrC0oSspzCW+YKbWeDruu7Tp0+emmWrpe/73377TTBbInXcXjIh5/n8alI+H1ZOj/zy5Ysy9Orp6YkNIIe8VYsIpEYZhHKOqTeerOC3Hnl+fqY2usluNdPqOqNyxMDop3YlgFjzxp/NiABMZrsakqzuhC/eOnIpVRQ+QjMbIF6NLSfn3t9nC5Qvrynw1koPl385f/NwoWOeZtiwbAEdPcQFSCgruliPq3pExW2uVbnuy2BQxl6CDnorMztvhR/swUqRoFCo6R+4jg7xQSgrsgSVceK0upCKMmUTEA3AgIRUZp+igPX6oA9NUx5M1BPJ0Bc2MqUavrlaZjCGX7qDEhPL7e01Jl8TAMvmLyeHKh+0Al7pNTMjxDVKf3HTAp2IR84BOIICQyjTkAyM4aJ8Jg0G1e5b3kpjA4vRjfoia/wqjZbur7ccKUto/AIow5K5zrsurDBgPp2+fYEr+kkUXlFdsKl+0SOxPB13dgzSWRBWd0dDTLHZIXI7ufadSPI1Y6Ju8wnXYgf5a1kxgVtz/kwl6EFCuZnxinfurD2ZGqOnyeAylVVRghpZErbomL+10Q6FEeUoU8IiSYb0ip+M1a+//poxxu0yjOmNRZAR/fw08G5vb//xj+GbPEP6XGqvM55gUF785gUipiqZXmFeX0Dh2MDwSdocb5VmdRbupKNjV8KMSnO/Hj/KuANbE8/yyFK9uI/OQqfux4xVFRnSUY8D9bIW4oYJ50ekIzrQJ1+Cs5wSJiNDF7r+6enJiZd48Aj9tMKFVkdiLjQnEZnkfxksmJd4mRfT2Nz55oWOSwwuKxXp8TCMn28SfH+Bs+UHJduFishDsWUu6ykO0EmcyP4M9lavILKzVcRdy8UdG/kEKS3WsiSZ08K1jASBaiaLImZ07axXIFZD4oEzg8mBXC6XHz58yHp/vnKZpG3V7aQf5SYx7iSdzlu8SDpdS2AnQWKptdMZEXaf2d/AW6mTQSwRBHR2Un7rTfIRI0vkK24I7bcMhzJ0w4MoSTrdfnF5T/mu8T5+9tUrxGPpwOcx4m5vk5JGoHd0R7QFOugI+G4AW06xpOhFjaU8dAa0xfrurDfbj2IpLSYkQREnJ+clbVf6Y++cDYO4Z1mEjlUZrXxH73UV3QK9tdrtFMrO4SdslmUgExCLyroKSzwj61BMATAysHfaJTw49izpMMmRTZq8jTZJ7zZsEqaVjrSTc/TjNAUruU4ZtLLyOLExX9vyUYXBUDsF7stBz9neGdsQ1uDRNduUT7sTnzETt2yJiAyBbNZZcIX5iIU0zFlkTpuzK7zN2756AccBOgRFbylkdMYFlqQXaEJkTtPYOcBBsPoUEkXHMjS2mY/zBY6JQigdDpqkqyje6046f6KbZ1sXMy3n4xC6vSoW9gx4cKD/TA3ckYFyYIAdEGjc4Oya0dmw7yz5R/Xn4bPdX3whg5m6sH7CzxnS0HnUhLgDvDBaRQXdIZkcFCnuHj0eUfNihmXCNMZAfCss5Wl2kMQXC4Vt+m+9QxOyDJc9nJxfZkB1gikwvfY1+JXGOQg2veXz7uNnX71vpQMfs3RgKhR/ZPscH/oWNTBpkgbBw9WDFgoO9yNW1cWaupMVHrxZodsnhz/R/bNhEGSBRBxUCcr2UtOMmERDi/JZiRzZim0JpmPyyJ1L5x8lYXKxWMgQ4cDD0Hh5YU8Ql70FWBY+9g1vgWRaFeua+B+ETepqoCpC2HlR1wUQyT+4WZ8iggKc2knttJsSJuNBICLxJGlEtfcqX4YTYe6ZBSNisb5OFPXyxYi9ffWCabimd5wENHo9P03oLAsKt1uDc8SVia2+00eyB2BrFius9/nuoMzSTKtT0ehC3gP33MlZXOxz5SWNqvsj/DwbBoHt+IqZFS+XSzlsbHK2Gjp0Rnk2n87xVI/5y2G+urq6aP6RhrDSzFcOM/PIsFmtVhbFtcWswbBJHGe7UYTG+OdUIAgC+0CbdHP3t4mM7tCqLEDYWpG8HiEtWUhMAhuQjPZzKaWe9cktFWHJYTQ8ry9fvsho5S/41siXL1+MeSd4JanHx93MTAOp29zuq/etdISNbIV3zqFcpMlkAgGjtPHdfOQry0nc59cD3vqkF9OHbc7TcVKfGDnLcHz85G1APbOHfXT+RPfPti4GERKuE/XMbvVE+CyBCQEYVCbw1vy47t8UX+w819dA3T5vyFYySeiMmDvZN8Qv2Hl+UJqTSLNdmjyUpPwnidanxJh93ooxw1Rm9SFN4/eJXmnF6Pwg0RNJMZ8+fQJqca9CZ3RBMrV8MEOhP336lBFSv1jnphMmlhKiZt4NHlM5d3bGVlGQZatYvmsq5Ad5n5+f5S7ISoXvuP3tt99ub29RMPxUbezhLUIDwfl5oN6AxTF0BHRIKecKZWmCt5uoDcCSOVWfgaVPOc5ZB9Dp29OxWm6ycgwHPjJbHq3IeUDp67pDD1zrkcQ9opnpcZofeR4gda5HZ8MgsUNy5E/6vphGZvVd443VTBPIhW3c7htNRdn1aKQl/kcdAQR76A6aQASFHN8BYnZ2ZGqst4an6sfHR8f3wFPTCj2XiZXJpirqVoQIJBLsTCuETgAl/qHkYfsZblUUDI1U42aKN5ngOMfSsLFoHQlnVxpSWT08EoOSmhxcNmz0teg4BQjKOzDIiFVMo8RTTO0zkpMMNcKgA/W+iY41cugcyVPmm5ub7XN8wCtp0z2Ov6+b5nte+wAo/YX/nd8pqw9gIpmdehsF2HnxB8Sgs83FGBmaDQU4zMSU5TB2mLljTAQa46kmMKQMkQGRyF0tZv71glTUvd4M4S3bcPRKACjqaz6lRlpO22BKNs6kU03Os5CXKmI9MnvS/ABr3B86F0Oq0jBg2hLwUoyEw0OeuhPgy+glDbxFxRXGhgI8xLqzUsVpF2kjN0pnZTtFXL/kNOLNzIKjZxk73Q3lLcyDgzRqJ4c76w0byc53x2dX0UE2mMip1yli0hSmdg8TfsI/4aOspds5h9A8T9OW1A7IZLSwBOEhfEajSC9gVKsBbUxOQB5FaFpK+fHDThiMyrOFxm8EG55D6j0XZ1ubjzHPTCeRxX386bD7+/uPHz8yiVkGChG2i0+rv03rEmLIhCtLp4aTwxZ4Z5khCihycVGOVkmcSXAnA94CB/ctvp6kJBGBDCp+cixhhn2gap8cgiaJdudOIIxa+5mno/JRREDPDu+r9KL3o6PJSq3zgHZWDfTrR4jo7mzX+uZ5Q3kradNZN6iJu1bphw8fHh4eJF4TWtQg2ybq6AG/mL5lksjnravACX/KfYUTjoAyHulfVkEb3YfdtJG5FYUMkIlzBbuNqThuWZyt85igEgrU1cKO8RUwCropQ73NN+tmvv/6bH5QIj71gI9Psc1o4Pnjx48PDw88l9fjO8sOaYsLpJn0WcQzFLc1O8vPliR0HhtlPVUIlvIxJuDv8fGRzWEK8sWhLMFIYNdzVjoy1Xp8fMxblMC8hosRhdgWgv6uvTZ6EJNFt+ppEZ2mrBTXsHEdh672N3fWe6GbMD34qxbRjTzaWXUANE/dEbtJT0mKGXkBqkM/8MeMMd31zdDPTZ1lZ19uRp6UB524DLFtcRb28a+6DO+EmeKlBjVyPBsV9ddynr9KUgmYmFz8EMGP8cJWsdZaQdOopVfwg6a03oRNrAzGSCtjabiWf+R58sU5MSg5FEa1vL545lj0EwBBEFvnTe+ZLC3MZrkUS1qg0Aa12Jd/pNeRhUTyBugWUEeHCurOaHxOw7Bkk9Wx7CTmTPncoBPUdKdFbi4SUzkakKOuygCwYATpxD7FbukEDbBrFEuj8la+mCz56NsAPar6cj8zWsiTHm+P0gMMBLAC0EbdN88bMvy26w24qDSAJXbJnPg8hkRWekIJ6ZLliMTI+VlOiQAodXNq/qXva35UsT4nyHFOO+WT4zuit9KjqJkh8KbvkWVhWpODR9kua/RlHxKugK89z4dtai2EI6/PhkH60sZiXoYlxrrvayknWT7L3iD8rd8L25d/RFfqtBfjk1MaZ9twpbjyVuL44JbcDaokd3CyMKz8arWSTpasNj7gN1f6suXSRVJm5PLVMCQyfaC8LtdkE9Ja+EcqxLmK+Z66wWnOGGOe8V9f7KwX//Xrjm2uFWn04r56d1oC9C26O3tEDEXMKEkYXBLzSktg3G2rjZzZERt+aqBoOh1jp1HO1h86Y9gLXJoQQEPJXHauxRkxS+Dt3tzc0OpjvkfGiOoLFprEVquVrw9I1IqjrQmOgvijf1/MYF4sFiRi0BrqUbVMzdzJWZxRsslkcsL3wvblH9HXzWZze3tLD4Rmcn5QnWxiSgwZfWpKEz58+BBdZItEGcWJhdUpXNBQRJmDk2nITh01tRQXUFLfZ2ls57lC+8rDOyhG8tyBfVVf7j6XATrf3d3FyTcjiC9cX4yYySMjcz6fH3nuj5Bi13U7600t6PMFnO4k7mtO/fj4yFP23QuOBr8SFrANEfj23CT8Qy7uj5lBFMOMnsuME/LhW4E2XNlqc5bvkRkC7BkmrSDN5/N8H01/cbe/w/fFznZ2h/YYkznnCdKnP5I4x4CIAjoUhnJcXV3ZYJWz0M3afCoPnZz7k2xU1sx4M/ZyYHBWJSyXPj09+fCh3aTMKU877o9ez1kcKY9Pp6jUuhtSOTYo2WXAzs+67fU1xuKv5SykulHOqVFyX3kGtmaeeFH2V2hgp0eQwck8KMPMauyb6KQiZO/u7vTOAUzU3rCBAZNlN488b4gEjq8XWnHGqWt6PCHLT58+4ZxySmtKckBYrZnPTQEs/ov5PhWlb6owatLLtVrW8Q3OCzUzfXPEj/L1cJCPnjwsfZdjYTQw57HkGJN4lzFjYgIwmhpQKmzXavye67NhUOSYJgGLfczpbzMdjddbOeclmhedWA7/0M+CBd3VrxA9ip5t9DoPP0y02oWf6nd5N8rnPDZ94EXNlDira/M0WKOMKhDZJ4QEAqB2/EEDSUNG5woFWepcuHrgXV9ff/nyJTW+CTsyclycjEE6Qh+FN82JUzy6GPnIeRp9iCUjAUOC5tABr+jNLMBnDIdgfRE++Ti6bKTAQRYN8Tc6A23ztybuulbUiAJNS7oxLdHJx8dHCBUINjS4YOQQ3WMCM3bqiSF3Hl5kdw7lrE8ISr1JQwsRzVQjP50Pfl4MOls8KCvBwi4j1TE+zW44rla7OZkm4XxU05MoR316jkA9UsnAprupNBpjOT+7z20OAjo8XuM/MWa8JcGn5r/O4rHWACyEvfLUuA0Dtcq6mVEEIPyMXgppG05plFUwzjlWMU9LLNJhI34Ety4DIGwkHAZht0dLnJdMOZMEIPbpRVEw1RFXIuhQJrNUa4uZp+TFyE2NkUPqdSdNULu+S0cja+pqrGJGMbMJYk9oI/LPRZQNoon7uM6jdGvdZPGg3CGZdP3oQtx3JPb8rAc8CWQpIxkqonvhJK/o3MVikSpqstluQrfFkmkULbLeqtdktKXtxEvyxKVSNcZjGrX0tJ9nyw8ivmRzyL5JbrsNSvFEkt2wk2ntrHdj0Vo2zTpR/b0wHnI+fWX+ZSMSd1RgSBcSH4k7nNi1JFTmIhPynewdvhkJZIDV9Xo3o0u7spvEgbDikXZFZv1OWESYX+jNGpnIEVCjTCTPTrpj8ANlks+dDJ5oFfjbrpe1zIYV0kaNac3RCFBgn5SybBxlyJIfZ+Rq+Ae/aAJSvFpLHwSoFVmmIaJ99e68jw7w4npk7Vz3cXITYxLW2Ulq383aUxuVicyzW4VwEopm10ESaxrkJQeiG5HNzwxJYowN4NFQSyGtIHve/Z4XZ/ODrKFC3IwxrbVEFSw/3GAO6vHfC0ucP/rqCO5v0hGEdsAIlhz6wxiyAOH5+C4xJIQ26U0ANERiWPi0TG5S16bTqd2PxgY4oHwxd0n/SatpqvUR0CDYiRMWLykzmfjEtNZdtrNeNj8fTUn4jGGwwzureLAv7a0vJJ3DKcEv6EZKrIVJNyahZCYUesRPbhoUlr9XV3T4um6vkmiirxMzwkG/qcphsttPU9HoEXlqXe2JEL54MHsGO5QxcdPpr+eFjwi//CScICDF4MukOiBFtXZT+S53z4ZBcoKiItUnWcrnYiR3JAn1QLM9Ov57YQTqbD1QgsI+OnxR82fhPRaPp8bQ2bOT6dibOsIiGnOa5NptRaTxPCDFLFhEdWC6xLkkxVBQYjRoNYcflGAWzR4hkcTxnEMUHIyPbRK3r96k8CErOgYKQZuux5vpz065QR++p8hOMm60XYHMRq1OgAMNTGKeAWZAuqYMO+vdeRMQXF1dBW7iHdjnZZb3+fNn6r2TyPE3MwcEJQntocDnkpOR3rGUpo1vOj/IbCuZHAySXuMwcrrFd94qt+ObfEzJs2EQ1dRmoJvzg+rJdpZ19jF3wvfC5vN5VhmSIrCPjmFP0eUi6S1OEMfNkN7H4eH7CePp1/yMxzF6HQ4mxkkn6u95KZ+vAOA8Y8bIz0EfbCb7BqRMlKJk0CHeE+KZFAigZj5Sx/glT9V8Qm0nB0CHxFNi5EeNjR3GRqjVO5mBjkTkm5ub6+trK+WY0SitRjxJ5LBsu8bDdwQW+WLRXuEkPnLf9x8/fuQ1HyZ1/FO2RE4JC+Rd89B8Lk0og4Tfen4Q95kXnIC0Bj4+PgqtXl9fs0m1AhzfinOVPNu++do9Zpw/fPhgANze3upjx1kYP2k28MogyQbRhGATU6R/lMbr+vLz5893d3dyixwqzoWhqcfQIc2Hhwdqof9OmPwniMgTEVdKS+s+i2ekCRCK8ikWecKFRJdyohVTSXoJ59uPTuBGeA03cWFqjIgkD9drwohbEVkcmm8+PT398ssvjo5Osn/d3kCw6q6urv7+97/f3d2JAWmUdZyff/6Z8U9oVo/f3d19+fIFHZWuVis3swB0fEgoEpCv7ETw+/t7SJeuF1ZLQwgwP996MdIEWGCwGBRZ62S24w3pRFzRHHd0R+ZZ+NE0ZDOpVFKE4erqyseB5ceZptSzwprP7Ep5a2OPL382P0jnRTSghAdrO1h2WtRrFtuM2oOX17OJxiBUnsOfla+PHz8CIKtsunMfnXrCEjqcEd/PpAecuG32vnlH2ohkDcoRnyXvBoD4OxQloINDSoMaPci3BjluvhdG1VgzhW9vb2Go6Qz032w2v/32G4vKk8LMNgDtqzemAsSYhaUhEgg+fvzIh9puctoOGZfL5adPn+yzywqpo7tXq9Xt7S0A0ulsyZcvX+xtBkBw8MuXLzkB/k0hoQzvwJa907XF0gpzFp9CrQE9LTryoh7YAmc+UV3POl0/PDyYlpp1cl6kL4sQaSkJ7KvdgnL8YinUXs/WSN1XO2L7qF30/tn8IOMkGPz8/Oz8oIQbYLDJDrXTsCi3nwYVc8fxyajQDeKy+WSFGFANVdDQpO94OonXChXFZXir9GMqHx8fc2oMlUJqpItptQlg6k1giF7yE02yONhMZZovNpyf4NWAz4JIEkDcGTWtdg0ym0u9GbQMpk7BLcgTOjkQCUI/5/uEh5j30MEYGAJ5oIHoEmVTIKcOGmAHGBi1t67Fop5363otUQH3Otq4k9TOm5Fq/TT9KEwTKE+8Rl3xPZmlnecHWQXKNCL+pvvWMY0jKiFQ+/nzZzTpUlyHdHe4/Q5+0NkwKEwff6EnKDePqY5VE1yA/Hiyx5TM+h2f4phXjiyTkZY4RaYPOykQgsEMbg43+a30d1Z64OY+frwCepiTw+06UMX2I2T1OCGkuu3C7kQOmTcFvve9sn3/QL1noU9EVu4AqDbmL580P7c5zB0aG+OdV9Ij6Q6c58XRhRe3sWZULD+/Awadcy4WvttFk0CTQJPAkRJoGHSkoFqxJoEmgYtIoGHQRcTaiDYJNAkcKYGGQUcKqhVrEmgSuIgEGgZdRKyNaJNAk8CREmgYdKSgWrEmgSaBi0igYdBFxNqINgk0CRwpgbOd3ZH6JCBImavz8dyvk19ScjsH4RL5O8n4wOo2P2nCey725dfUoqjph6tRPpFsl+28ofrd+npfvcoki0R1xCs/W65aBL6v/E7+9SZJHpnXkzSWHMFTJ4XVLXId+RzIA0rqzQn8vIn+TiGET0mScji3G+IOCvlb5xbue2XnfR2685GbOuX4PKADpC79qPlBl5Zwo98k0CRwSAINgw5Jpz1rEmgSuLQEGgZdWsKNfpNAk8AhCTQMOiSd9qxJoEng0hJoGHRpCTf6TQJNAock0DDokHTasyaBJoFLS6Bh0KUl3Og3CTQJHJLAjzw/6BBfP+hZ0mROPlco+SajfJ8DqSU727ov32cfnUvXm7SXHCDtjvO3cIuH3HdxIK9nZ8MvcfPAOUHHVzeScBKd3Kc57z/fZx8/x+f7HObzrfS3c/f2UTj5fvODThZde7FJoEngDBJoGHQGITYSTQJNAidLoGHQyaJrLzYJNAmcQQINg84gxEaiSaBJ4GQJNAw6WXTtxSaBJoEzSKBh0BmE2Eg0CTQJnCyBhkEni6692CTQJHAGCZz//KAkkiRX4gxsnoNE8iYQ23l+UI5leeun8sLgufJ6kmWTjzWmip0X++pVePv8oAN5RgqP6t1Hv6az8/rII3LSO8fkEx3O99GzR55PlDSfUflk/eQiurFT/m+9eUI+EfH6q435+83vlGmFxp7le2dvbe+B8s0POiCc9qhJoEng4hJoGHRxEbcKmgSaBA5IoGHQAeG0R00CTQIXl0DDoIuLuFXQJNAkcEACDYMOCKc9ahJoEri4BBoGXVzErYImgSaBAxJoGHRAOO1Rk0CTwMUlcP78oGQijHjfmY8zKnPen1Ja+uHffD6XkXHeKo6nRixH5unUiTajKvbl6Si2TX/fd8r2VbGPzzflKx3O3xm1qOZ8dH3k98JGbfHzQF7SqPxOfi59k4i+mYa2bzR9k70T8o9qmifXWxM58rr5QUcKqhVrEmgSuIgEGgZdRKyNaJNAk8CREmgYdKSgWrEmgSaBi0igYdBFxNqINgk0CRwpgYZBRwqqFWsSaBK4iAQaBl1ErI1ok0CTwJESaBh0pKBasSaBJoGLSOD8+UHbbMoMkhDRdZ2MFTkashgmk8kJ3/OqM1lCbb1eJy1om5PvcCdHuhx5/g6Wjs/r2Vd+Z87LzpvfRwg5Rmqz2aTGE/KG8u7oIr1/zHlDo3cP/MThaXLDUrQ9Euj7/kCy0gFmDjzCYf7W9CMZX7jLAUnuj2juvDkqc+mfzQ+6tIQb/SaBJoFDEmgYdEg67VmTQJPApSXQMOjSEm70mwSaBA5JoGHQIem0Z00CTQKXlkDDoEtLuNFvEmgSOCSBhkGHpNOeNQk0CVxaAg2DLi3hRr9JoEngkAS+R37Qofp/xLNkcEiOOFe+kqaMsjP8rG+O8oZ2CiBZKlj95ikzzkiaTqfaMp1Ok3g1SnVJRknN0mq1Cp9vPW9oJ/9H3tzJW53qMqIzKj96euDn4bykCHky/KsTmg7QPPujUY+M8nrOdR7QO+mcvdVd1zU/6BJSbTSbBJoEjpVAw6BjJdXKNQk0CVxCAg2DLiHVRrNJoEngWAk0DDpWUq1ck0CTwCUk0DDoElJtNJsEmgSOlUDDoGMl1co1CTQJXEICDYMuIdVGs0mgSeBYCfxnzA+SZiIrpKQnTKdJPJFI0nXdKCUn6TYnnHOkK976XbCwNOrJc9EZkQ2TxJKUmRT7Zr3vOcfnhPwduTy4klmT83rC/DH5PnlXPo72RiX6vh+lC33n/Jpt9rSOeuRvnVR1OM+IqEfqnVwkdGrdm0wm24WjFWe5aH7QWcTYiDQJNAmcKIGGQScKrr3WJNAkcBYJNAw6ixgbkSaBJoETJdAw6ETBtdeaBJoEziKBhkFnEWMj0iTQJHCiBBoGnSi49lqTQJPAWSTQMOgsYmxEmgSaBE6UwPfID5JuIK/hyHycE1szvJaK3kPkD/uu1vlbJ27sy9+pcz2OadQou8TP+mZ9/tHhvJ5jqttZZsSzn3UKjLcihDoP6K15Q/vKp8mjvKekEakdb/lbMxkKO7/z5fXtfJxtgXyTzmazmc/neEDWK9ukML+zvK5crVbJFTpAZCflk282P+hk0bUXmwSaBM4ggYZBZxBiI9Ek0CRwsgQaBp0suvZik0CTwBkk0DDoDEJsJJoEmgROlkDDoJNF115sEmgSOIMEGgadQYiNRJNAk8DJEmgYdLLo2otNAk0CZ5DA2fKDnKsynRZQm0wmT09PV1dXT09PdZbBZDKpEyjOwP4bSdRf4PJRLbkbSa+o6Um48Mp6vZ7Pi9lJwgAADEZJREFU55vNpu/72WwmMWcymczn8+fnZ23fbDYOW5nP5+vh3/X19Xq9lnmR/J2rq6uHhwePptOp9JPpdPrw8PDhw4enp6dkoGAmeR/5iaWrq6tff/01dPKVtOVyGQ6T69F13fX19b//+7/f3Nw4Z0dP1e09cO0YHak0j4+Pf/vb3x4fH0P86upquVxqftd1DtyZTqfPz8+LxUJFaX6tD6mRABeLxfPzs/Z2XbdarQ73iwKhP5/PpbccQye1RAEw1vc9OilA2pPJxKFCk8nk8fFxsVgsl0v8p0CaU18gO5//bqBp72w2QypJPev1ejabPTw8/PLLL6Gv8Gl0bm9vQ2fEZzoiGVIafnV1tV6v87Ruy4WuJ6Mjmk6uhgpOp1OaQUFpw8k0z/hiLVPqFU1dLpfz+bwuoF7FMpBcTCYTLxp4XddFZdHJ8Ve6drFYGE6oJbHt+fnZcWiz2Qx8kBhOnp+fd7bd6xn8fd/XdFIFJlOvkQwN/d05tnfWmJsZCWnXZDJZLpdYAqa//fbb9fX11dXVarXKdxbn8/nd3d3Dw4PUODARstoicxWy933/+fPnm5sb+D4avTmoLEKbzWZ3d3f39/fgIymU76RjHLI69/f319fXs9lstVqt1+vr62tC0GrwVOeL1q3bvqZpqPV9v1qtZrMZKPT3SPoXosMo6u4o83Yrznjnd/D8HrqRKSKbzWY2m+0bS++p6LR3jU/v3t7ePj09rdfroEk0e5v49fX109MTe75cLr0ym82Wy+XV1ZWREDrcH45PPeQMj9TS9/1isVCM7hqZdLpmdcTPYTo762X9uq7jHBk88VlG9A/85Dbmg66r1Up1+n0+n//6668//fSTNgYNN5vN7e3tly9fgt3bVaCj7YvF4uHh4ePHjwYnKW2/4g5X68OHD+gzBovFQs++nw6rwz8F94vFQi0sB78+qLePz533V6vV7e2tDoV0rsnzePpnpHNzc0MxuL3r9frq6mon8+e9eU4/KPMsLiX7cC4/6/3NZjd40bPZjMtm8EPMURUG0nK5vLm5Wa/XMIXzkqYps1gsnp6elsvl9fU1IvTy48ePq9WKBIw0Q3Qz/AMHHAGOw9XVlXEVfwe12kfbR0eZ7Xrj9htF5pIHYG4khPqnmeZ0Ol0sFiw2gDNLXa/XgIkr1/c9yJ7NZsZt3ZaAVOjDZXOxuNI7sdK70+kU/el0Gvr4YRKgGDfqNDrm1JvNBhjxK6fDP9NwvXa8huuj/GWx4kh2Xcer5UJqVExIBBXP8RJ06E+UPPtU6trPfn22mDQzu1wu8c1lPb57zt6wfQRNH/S3zp5Op0HP7bfMLDabzWKxqJujmVQcQl1fX282mzgIHBxzn+l0en19zYkwQqjycrmMB4S4n9RrmxlhnX10wNOoXuGS3ERZLTvp77vJpeWtGI0mUK43m40qwNPj42Pf9zUi17PdIGAuVBqveTKZPD8/H45K9H0fKx3zQIbnoqPvdP1qtXp4eJjP5yJ3/BTwenxkTXv95WUIJj49PT0/P5uUHUP/QnQS3Fwul2R4YFzs05MT7p/ND2IkIREcPb5vTuD7hFcysMmahamBf0RTTxt1addkMoFK0QOTNbjAn0rMhbVUhdozY6VwbBoIM3pNJWqwG3F1mA5/flQvvONiZLaP/xHxAz/5U0Y7+rw5fW02wctL/B5I8SZMBrePiI9VD1Y+Pz8nBrSTSTe5NrPZbLFYBMdFvn2S4P10+KS8LTTFR3iCwfFMbw9Ir36kB/XU4+NjxrnZQ2b336R/Xjo6Cz8om31/h1F8NgzS/WwXvnkZO9Wo7pLveW3wWDlaLBbMtYGxLWucm2GZyAgWYphJjFfFAzLeEmamnZk9AaBEhWhb3F1KqdLtWGDEKAZBQd0MnZ315kWuX2aR2+093BH6Ny6YC/MIc7GHhwc9HjZgcbAVCNLvUV31hNHKIO9jNCf1lhaxecJMujVramDx/XTg5mq1Qoona54oUBVTEZwdtevwT/NZkM0mMVfz+fxN9M9CR79YRAssRlcPN+SdT8+GQdSFMkVft8fSO9l9z+ukTG8MoajOzgFJ19MEPR0T3XWdsLTVaA6C+TzbnuiJjkztQvWJtkJAwzg+V4Ajg9Cd2PmE/Gs6++rVKSHO3qaKI0Wa5tfmmjBDGdqKkmg1OCAi2LSNQZEMOvoCz/GSaiZxTjLpnUT0gsjvpKOZsRB6EyppDvqj6mo+XWvdtrStKloI1wp/a2mkIszsRIQz0kkYjpH+bj7E2TBoW/rtTpNAk0CTwDclcLaY9DdragWaBJoEmgS2JdAwaFsm7U6TQJPA95NAw6DvJ+tWU5NAk8C2BBoGbcuk3WkSaBL4fhJoGPT9ZN1qahJoEtiWQMOgbZm0O00CTQLfTwINg76frFtNTQJNAtsSONu++W3S7U6TQJPA2yUwGV7pS35m+dN1k81XIn1xGnpFuq8lvxb4E141P+hP2GmN5SaBv5AEGgb9hTqzNaVJ4E8ogYZBf8JOayw3CfyFJNDiQX+hzmxN+WtJQNznJfgzNO01EvSXamfzg/5S3dka0yTwp5NA84P+dF32Noatrfwl7efbBPHDSr9t9aofOuxlRQzPw1rYC/uVU9RPlC3LZ3/q/m1+0A/TzVZxk8A7JdBPXtfv30noh77+1/GDcrTVD5Xn7spzlKLH9YlW22d67Sax/25NbfvQr5enQ6bJy3lagy19v7hGFEY/9/O748kLk8OX6XY8fsut97Dxlnp2l03tOXxuMun6vusrR2Uy6aunE8fpIbdTGSKckhk0lNsuVlyhfkgpKtRLofqt7fK7uf9Bd/86GPSDBPhHqfaberazwAgcdzYmyj16upPgqMx/np81rICAVxQokDCp5lBOR6yl5936zn8euZUv9P2nau0PbOyrRhYWvoO2pbrpSP1fs29Z1BjM78DSMcI/BhN30kl7dz79bjdHYsSVHvCXTzS4LMUbCmOuCxh16+Hm1yBJPynXL0QGTwjZvpM/PQsRFy8RwNHd15+1oGoGXp//gP83DPoBQv8OVcYs76vrmwVGL74Op6/DZlTgXD9HFdVjpq7iDzJ+AuI1b/V1cGbAnTIvq//ta11d5vB1TaGWSX1dl3Ht6cmIf5iltz5tGPRWif3w8tsoUO5Q7mj8V29rpPW/Z7/WSMOp1t3fl/2uv745PL5Z4GLsVru3XuoouPIq/7p3+smkuKEe1f0wCPn3aPR7dsV0frc6VhWogku/301Wd39V/jWO5FbN4e8K/agfDYN+lOQvUm/fj0MPtQ38Ckxvr/zS2LTPL9tXbz4upCn7Xn97Q9/2BvEGEGtp10AzTMEK6GhOgEllsQTl4o0QkapHfG9xkudfK9gn2xT9Phd/GgyqZVqL5g8ix5qlndc1n/vaUr9Yl6/v77veawJ//0JUttjYvtv0v4tK1K7QDxzVx7Q9Mjym8O9lcJFfYWO0zjWgT6kxBV6dJhGfr95QumYnf69u1ABkUzjib6mwJu71l2dbtLZLbhX53je+hr6+d83vq6+fdH03/Z1T+j6CP/rtd3UERa7/bspirf++rv4WoU26zbBSvJl2m6HOQYXrJLdjOXkdbF/tKhnum0EcL+Hgy4FXXle7v3L7fUbXNm/u+J4lhl8lU3716yHGPOmKg+O/MnErN/tJaYTXC44M6+tvkd6066Zd/7v/Bssyzd9SYPxv070Es8cPftTvP5wfpA9echxewHzS9920dHK3XvfTaSmy7vvptFuvu8W0oNHwr1juHyXHnfUGIgtbQ1sw+DJaNuV2P5mWD+lNikuyWMxWq81sVuvNdou+3nmRUj/ZTLr1aj2Zz6ZlWaWfdZN110/7bjabbNb9tMQlpt2sWw0JtbMivc3TMAyuZ4tZ163KWJgUVdgYJ4MgiyIXpsn3tSvK/8uTNKnrnp/XV4t5ccQ2/WQyQNx0CiNMLV4oDIz3L6fhlDa+pLIMUigmhS83AOUgz6GOvsu394q9n3Z9qaGfdtPNej2bd5t1N51N1qtN6f7S0CJjMsLza9e49/rr5P9PZ/3r2uLktXmlBeuB/qSfTibT2fDZvtIt5bO4Xdc99ptuOp11fb/ZLIY2bIoMC4PTSTdZT0rJoXcmxcd5gYnNoDQDkeQiFrvLJ9pMumk/UN28tHewMdPSa2UprbzX9YXyIOoB7Cab8o4ufIGnCIl8RLtooEdnktt+gf9/o2/aErtAojcAAAAASUVORK5CYII=
" alt="" width="200" height="200" />
 

The wound is the place where the Light enters you. ~Rumi

.caret,
.dropup > .btn > .caret {
border-top-color: #000 !important;
}
.label {
border: 1px solid #000;
}
.table {
border-collapse: collapse !important;
}
.table td,
.table th {
background-color: #fff !important;
}
.table-bordered th,
.table-bordered td {
border: 1px solid #ddd !important;
}
}
@font-face {
font-family: 'Glyphicons Halflings';
src: url('../components/bootstrap/fonts/glyphicons-halflings-regular.eot');
src: url('../components/bootstrap/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.woff') format('woff'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
}
.glyphicon {
position: relative;
top: 1px;
display: inline-block;
font-family: 'Glyphicons Halflings';
font-style: normal;
font-weight: normal;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.glyphicon-asterisk:before {
content: "\002a";
}
.glyphicon-plus:before {
content: "\002b";
}
.glyphicon-euro:before,
.glyphicon-eur:before {
content: "\20ac";
}
.glyphicon-minus:before {
content: "\2212";
}
.glyphicon-cloud:before {
content: "\2601";
}
.glyphicon-envelope:before {
content: "\2709";
}
.glyphicon-pencil:before {
content: "\270f";
}
.glyphicon-glass:before {
content: "\e001";
}
.glyphicon-music:before {
content: "\e002";
}
.glyphicon-search:before {
content: "\e003";
}
.glyphicon-heart:before {
content: "\e005";
}
.glyphicon-star:before {
content: "\e006";
}
.glyphicon-star-empty:before {
content: "\e007";
}
.glyphicon-user:before {
content: "\e008";
}
.glyphicon-film:before {
content: "\e009";
}
.glyphicon-th-large:before {
content: "\e010";
}
.glyphicon-th:before {
content: "\e011";
}
.glyphicon-th-list:before {
content: "\e012";
}
.glyphicon-ok:before {
content: "\e013";
}
.glyphicon-remove:before {
content: "\e014";
}
.glyphicon-zoom-in:before {
content: "\e015";
}
.glyphicon-zoom-out:before {
content: "\e016";
}
.glyphicon-off:before {
content: "\e017";
}
.glyphicon-signal:before {
content: "\e018";
}
.glyphicon-cog:before {
content: "\e019";
}
.glyphicon-trash:before {
content: "\e020";
}
.glyphicon-home:before {
content: "\e021";
}
.glyphicon-file:before {
content: "\e022";
}
.glyphicon-time:before {
content: "\e023";
}
.glyphicon-road:before {
content: "\e024";
}
.glyphicon-download-alt:before {
content: "\e025";
}
.glyphicon-download:before {
content: "\e026";
}
.glyphicon-upload:before {
content: "\e027";
}
.glyphicon-inbox:before {
content: "\e028";
}
.glyphicon-play-circle:before {
content: "\e029";
}
.glyphicon-repeat:before {
content: "\e030";
}
.glyphicon-refresh:before {
content: "\e031";
}
.glyphicon-list-alt:before {
content: "\e032";
}
.glyphicon-lock:before {
content: "\e033";
}
.glyphicon-flag:before {
content: "\e034";
}
.glyphicon-headphones:before {
content: "\e035";
}
.glyphicon-volume-off:before {
content: "\e036";
}
.glyphicon-volume-down:before {
content: "\e037";
}
.glyphicon-volume-up:before {
content: "\e038";
}
.glyphicon-qrcode:before {
content: "\e039";
}
.glyphicon-barcode:before {
content: "\e040";
}
.glyphicon-tag:before {
content: "\e041";
}
.glyphicon-tags:before {
content: "\e042";
}
.glyphicon-book:before {
content: "\e043";
}
.glyphicon-bookmark:before {
content: "\e044";
}
.glyphicon-print:before {
content: "\e045";
}
.glyphicon-camera:before {
content: "\e046";
}
.glyphicon-font:before {
content: "\e047";
}
.glyphicon-bold:before {
content: "\e048";
}
.glyphicon-italic:before {
content: "\e049";
}
.glyphicon-text-height:before {
content: "\e050";
}
.glyphicon-text-width:before {
content: "\e051";
}
.glyphicon-align-left:before {
content: "\e052";
}
.glyphicon-align-center:before {
content: "\e053";
}
.glyphicon-align-right:before {
content: "\e054";
}
.glyphicon-align-justify:before {
content: "\e055";
}
.glyphicon-list:before {
content: "\e056";
}
.glyphicon-indent-left:before {
content: "\e057";
}
.glyphicon-indent-right:before {
content: "\e058";
}
.glyphicon-facetime-video:before {
content: "\e059";
}
.glyphicon-picture:before {
content: "\e060";
}
.glyphicon-map-marker:before {
content: "\e062";
}
.glyphicon-adjust:before {
content: "\e063";
}
.glyphicon-tint:before {
content: "\e064";
}
.glyphicon-edit:before {
content: "\e065";
}
.glyphicon-share:before {
content: "\e066";
}
.glyphicon-check:before {
content: "\e067";
}
.glyphicon-move:before {
content: "\e068";
}
.glyphicon-step-backward:before {
content: "\e069";
}
.glyphicon-fast-backward:before {
content: "\e070";
}
.glyphicon-backward:before {
content: "\e071";
}
.glyphicon-play:before {
content: "\e072";
}
.glyphicon-pause:before {
content: "\e073";
}
.glyphicon-stop:before {
content: "\e074";
}
.glyphicon-forward:before {
content: "\e075";
}
.glyphicon-fast-forward:before {
content: "\e076";
}
.glyphicon-step-forward:before {
content: "\e077";
}
.glyphicon-eject:before {
content: "\e078";
}
.glyphicon-chevron-left:before {
content: "\e079";
}
.glyphicon-chevron-right:before {
content: "\e080";
}
.glyphicon-plus-sign:before {
content: "\e081";
}
.glyphicon-minus-sign:before {
content: "\e082";
}
.glyphicon-remove-sign:before {
content: "\e083";
}
.glyphicon-ok-sign:before {
content: "\e084";
}
.glyphicon-question-sign:before {
content: "\e085";
}
.glyphicon-info-sign:before {
content: "\e086";
}
.glyphicon-screenshot:before {
content: "\e087";
}
.glyphicon-remove-circle:before {
content: "\e088";
}
.glyphicon-ok-circle:before {
content: "\e089";
}
.glyphicon-ban-circle:before {
content: "\e090";
}
.glyphicon-arrow-left:before {
content: "\e091";
}
.glyphicon-arrow-right:before {
content: "\e092";
}
.glyphicon-arrow-up:before {
content: "\e093";
}
.glyphicon-arrow-down:before {
content: "\e094";
}
.glyphicon-share-alt:before {
content: "\e095";
}
.glyphicon-resize-full:before {
content: "\e096";
}
.glyphicon-resize-small:before {
content: "\e097";
}
.glyphicon-exclamation-sign:before {
content: "\e101";
}
.glyphicon-gift:before {
content: "\e102";
}
.glyphicon-leaf:before {
content: "\e103";
}
.glyphicon-fire:before {
content: "\e104";
}
.glyphicon-eye-open:before {
content: "\e105";
}
.glyphicon-eye-close:before {
content: "\e106";
}
.glyphicon-warning-sign:before {
content: "\e107";
}
.glyphicon-plane:before {
content: "\e108";
}
.glyphicon-calendar:before {
content: "\e109";
}
.glyphicon-random:before {
content: "\e110";
}
.glyphicon-comment:before {
content: "\e111";
}
.glyphicon-magnet:before {
content: "\e112";
}
.glyphicon-chevron-up:before {
content: "\e113";
}
.glyphicon-chevron-down:before {
content: "\e114";
}
.glyphicon-retweet:before {
content: "\e115";
}
.glyphicon-shopping-cart:before {
content: "\e116";
}
.glyphicon-folder-close:before {
content: "\e117";
}
.glyphicon-folder-open:before {
content: "\e118";
}
.glyphicon-resize-vertical:before {
content: "\e119";
}
.glyphicon-resize-horizontal:before {
content: "\e120";
}
.glyphicon-hdd:before {
content: "\e121";
}
.glyphicon-bullhorn:before {
content: "\e122";
}
.glyphicon-bell:before {
content: "\e123";
}
.glyphicon-certificate:before {
content: "\e124";
}
.glyphicon-thumbs-up:before {
content: "\e125";
}
.glyphicon-thumbs-down:before {
content: "\e126";
}
.glyphicon-hand-right:before {
content: "\e127";
}
.glyphicon-hand-left:before {
content: "\e128";
}
.glyphicon-hand-up:before {
content: "\e129";
}
.glyphicon-hand-down:before {
content: "\e130";
}
.glyphicon-circle-arrow-right:before {
content: "\e131";
}
.glyphicon-circle-arrow-left:before {
content: "\e132";
}
.glyphicon-circle-arrow-up:before {
content: "\e133";
}
.glyphicon-circle-arrow-down:before {
content: "\e134";
}
.glyphicon-globe:before {
content: "\e135";
}
.glyphicon-wrench:before {
content: "\e136";
}
.glyphicon-tasks:before {
content: "\e137";
}
.glyphicon-filter:before {
content: "\e138";
}
.glyphicon-briefcase:before {
content: "\e139";
}
.glyphicon-fullscreen:before {
content: "\e140";
}
.glyphicon-dashboard:before {
content: "\e141";
}
.glyphicon-paperclip:before {
content: "\e142";
}
.glyphicon-heart-empty:before {
content: "\e143";
}
.glyphicon-link:before {
content: "\e144";
}
.glyphicon-phone:before {
content: "\e145";
}
.glyphicon-pushpin:before {
content: "\e146";
}
.glyphicon-usd:before {
content: "\e148";
}
.glyphicon-gbp:before {
content: "\e149";
}
.glyphicon-sort:before {
content: "\e150";
}
.glyphicon-sort-by-alphabet:before {
content: "\e151";
}
.glyphicon-sort-by-alphabet-alt:before {
content: "\e152";
}
.glyphicon-sort-by-order:before {
content: "\e153";
}
.glyphicon-sort-by-order-alt:before {
content: "\e154";
}
.glyphicon-sort-by-attributes:before {
content: "\e155";
}
.glyphicon-sort-by-attributes-alt:before {
content: "\e156";
}
.glyphicon-unchecked:before {
content: "\e157";
}
.glyphicon-expand:before {
content: "\e158";
}
.glyphicon-collapse-down:before {
content: "\e159";
}
.glyphicon-collapse-up:before {
content: "\e160";
}
.glyphicon-log-in:before {
content: "\e161";
}
.glyphicon-flash:before {
content: "\e162";
}
.glyphicon-log-out:before {
content: "\e163";
}
.glyphicon-new-window:before {
content: "\e164";
}
.glyphicon-record:before {
content: "\e165";
}
.glyphicon-save:before {
content: "\e166";
}
.glyphicon-open:before {
content: "\e167";
}
.glyphicon-saved:before {
content: "\e168";
}
.glyphicon-import:before {
content: "\e169";
}
.glyphicon-export:before {
content: "\e170";
}
.glyphicon-send:before {
content: "\e171";
}
.glyphicon-floppy-disk:before {
content: "\e172";
}
.glyphicon-floppy-saved:before {
content: "\e173";
}
.glyphicon-floppy-remove:before {
content: "\e174";
}
.glyphicon-floppy-save:before {
content: "\e175";
}
.glyphicon-floppy-open:before {
content: "\e176";
}
.glyphicon-credit-card:before {
content: "\e177";
}
.glyphicon-transfer:before {
content: "\e178";
}
.glyphicon-cutlery:before {
content: "\e179";
}
.glyphicon-header:before {
content: "\e180";
}
.glyphicon-compressed:before {
content: "\e181";
}
.glyphicon-earphone:before {
content: "\e182";
}
.glyphicon-phone-alt:before {
content: "\e183";
}
.glyphicon-tower:before {
content: "\e184";
}
.glyphicon-stats:before {
content: "\e185";
}
.glyphicon-sd-video:before {
content: "\e186";
}
.glyphicon-hd-video:before {
content: "\e187";
}
.glyphicon-subtitles:before {
content: "\e188";
}
.glyphicon-sound-stereo:before {
content: "\e189";
}
.glyphicon-sound-dolby:before {
content: "\e190";
}
.glyphicon-sound-5-1:before {
content: "\e191";
}
.glyphicon-sound-6-1:before {
content: "\e192";
}
.glyphicon-sound-7-1:before {
content: "\e193";
}
.glyphicon-copyright-mark:before {
content: "\e194";
}
.glyphicon-registration-mark:before {
content: "\e195";
}
.glyphicon-cloud-download:before {
content: "\e197";
}
.glyphicon-cloud-upload:before {
content: "\e198";
}
.glyphicon-tree-conifer:before {
content: "\e199";
}
.glyphicon-tree-deciduous:before {
content: "\e200";
}
.glyphicon-cd:before {
content: "\e201";
}
.glyphicon-save-file:before {
content: "\e202";
}
.glyphicon-open-file:before {
content: "\e203";
}
.glyphicon-level-up:before {
content: "\e204";
}
.glyphicon-copy:before {
content: "\e205";
}
.glyphicon-paste:before {
content: "\e206";
}
.glyphicon-alert:before {
content: "\e209";
}
.glyphicon-equalizer:before {
content: "\e210";
}
.glyphicon-king:before {
content: "\e211";
}
.glyphicon-queen:before {
content: "\e212";
}
.glyphicon-pawn:before {
content: "\e213";
}
.glyphicon-bishop:before {
content: "\e214";
}
.glyphicon-knight:before {
content: "\e215";
}
.glyphicon-baby-formula:before {
content: "\e216";
}
.glyphicon-tent:before {
content: "\26fa";
}
.glyphicon-blackboard:before {
content: "\e218";
}
.glyphicon-bed:before {
content: "\e219";
}
.glyphicon-apple:before {
content: "\f8ff";
}
.glyphicon-erase:before {
content: "\e221";
}
.glyphicon-hourglass:before {
content: "\231b";
}
.glyphicon-lamp:before {
content: "\e223";
}
.glyphicon-duplicate:before {
content: "\e224";
}
.glyphicon-piggy-bank:before {
content: "\e225";
}
.glyphicon-scissors:before {
content: "\e226";
}
.glyphicon-bitcoin:before {
content: "\e227";
}
.glyphicon-btc:before {
content: "\e227";
}
.glyphicon-xbt:before {
content: "\e227";
}
.glyphicon-yen:before {
content: "\00a5";
}
.glyphicon-jpy:before {
content: "\00a5";
}
.glyphicon-ruble:before {
content: "\20bd";
}
.glyphicon-rub:before {
content: "\20bd";
}
.glyphicon-scale:before {
content: "\e230";
}
.glyphicon-ice-lolly:before {
content: "\e231";
}
.glyphicon-ice-lolly-tasted:before {
content: "\e232";
}
.glyphicon-education:before {
content: "\e233";
}
.glyphicon-option-horizontal:before {
content: "\e234";
}
.glyphicon-option-vertical:before {
content: "\e235";
}
.glyphicon-menu-hamburger:before {
content: "\e236";
}
.glyphicon-modal-window:before {
content: "\e237";
}
.glyphicon-oil:before {
content: "\e238";
}
.glyphicon-grain:before {
content: "\e239";
}
.glyphicon-sunglasses:before {
content: "\e240";
}
.glyphicon-text-size:before {
content: "\e241";
}
.glyphicon-text-color:before {
content: "\e242";
}
.glyphicon-text-background:before {
content: "\e243";
}
.glyphicon-object-align-top:before {
content: "\e244";
}
.glyphicon-object-align-bottom:before {
content: "\e245";
}
.glyphicon-object-align-horizontal:before {
content: "\e246";
}
.glyphicon-object-align-left:before {
content: "\e247";
}
.glyphicon-object-align-vertical:before {
content: "\e248";
}
.glyphicon-object-align-right:before {
content: "\e249";
}
.glyphicon-triangle-right:before {
content: "\e250";
}
.glyphicon-triangle-left:before {
content: "\e251";
}
.glyphicon-triangle-bottom:before {
content: "\e252";
}
.glyphicon-triangle-top:before {
content: "\e253";
}
.glyphicon-console:before {
content: "\e254";
}
.glyphicon-superscript:before {
content: "\e255";
}
.glyphicon-subscript:before {
content: "\e256";
}
.glyphicon-menu-left:before {
content: "\e257";
}
.glyphicon-menu-right:before {
content: "\e258";
}
.glyphicon-menu-down:before {
content: "\e259";
}
.glyphicon-menu-up:before {
content: "\e260";
}
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
*:before,
*:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
html {
font-size: 10px;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 13px;
line-height: 1.42857143;
color: #000;
background-color: #fff;
}
input,
button,
select,
textarea {
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
a {
color: #337ab7;
text-decoration: none;
}
a:hover,
a:focus {
color: #23527c;
text-decoration: underline;
}
a:focus {
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
figure {
margin: 0;
}
img {
vertical-align: middle;
}
.img-responsive,
.thumbnail > img,
.thumbnail a > img,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
display: block;
max-width: 100%;
height: auto;
}
.img-rounded {
border-radius: 3px;
}
.img-thumbnail {
padding: 4px;
line-height: 1.42857143;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 2px;
-webkit-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
display: inline-block;
max-width: 100%;
height: auto;
}
.img-circle {
border-radius: 50%;
}
hr {
margin-top: 18px;
margin-bottom: 18px;
border: 0;
border-top: 1px solid #eeeeee;
}
.sr-only {
position: absolute;
width: 1px;
height: 1px;
margin: -1px;
padding: 0;
overflow: hidden;
clip: rect(0, 0, 0, 0);
border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
position: static;
width: auto;
height: auto;
margin: 0;
overflow: visible;
clip: auto;
}
[role="button"] {
cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
font-family: inherit;
font-weight: 500;
line-height: 1.1;
color: inherit;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 .small,
h2 .small,
h3 .small,
h4 .small,
h5 .small,
h6 .small,
.h1 .small,
.h2 .small,
.h3 .small,
.h4 .small,
.h5 .small,
.h6 .small {
font-weight: normal;
line-height: 1;
color: #777777;
}
h1,
.h1,
h2,
.h2,
h3,
.h3 {
margin-top: 18px;
margin-bottom: 9px;
}
h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h1 .small,
.h1 .small,
h2 .small,
.h2 .small,
h3 .small,
.h3 .small {
font-size: 65%;
}
h4,
.h4,
h5,
.h5,
h6,
.h6 {
margin-top: 9px;
margin-bottom: 9px;
}
h4 small,
.h4 small,
h5 small,
.h5 small,
h6 small,
.h6 small,
h4 .small,
.h4 .small,
h5 .small,
.h5 .small,
h6 .small,
.h6 .small {
font-size: 75%;
}
h1,
.h1 {
font-size: 33px;
}
h2,
.h2 {
font-size: 27px;
}
h3,
.h3 {
font-size: 23px;
}
h4,
.h4 {
font-size: 17px;
}
h5,
.h5 {
font-size: 13px;
}
h6,
.h6 {
font-size: 12px;
}
p {
margin: 0 0 9px;
}
.lead {
margin-bottom: 18px;
font-size: 14px;
font-weight: 300;
line-height: 1.4;
}
@media (min-width: 768px) {
.lead {
font-size: 19.5px;
}
}
small,
.small {
font-size: 92%;
}
mark,
.mark {
background-color: #fcf8e3;
padding: .2em;
}
.text-left {
text-align: left;
}
.text-right {
text-align: right;
}
.text-center {
text-align: center;
}
.text-justify {
text-align: justify;
}
.text-nowrap {
white-space: nowrap;
}
.text-lowercase {
text-transform: lowercase;
}
.text-uppercase {
text-transform: uppercase;
}
.text-capitalize {
text-transform: capitalize;
}
.text-muted {
color: #777777;
}
.text-primary {
color: #337ab7;
}
a.text-primary:hover,
a.text-primary:focus {
color: #286090;
}
.text-success {
color: #3c763d;
}
a.text-success:hover,
a.text-success:focus {
color: #2b542c;
}
.text-info {
color: #31708f;
}
a.text-info:hover,
a.text-info:focus {
color: #245269;
}
.text-warning {
color: #8a6d3b;
}
a.text-warning:hover,
a.text-warning:focus {
color: #66512c;
}
.text-danger {
color: #a94442;
}
a.text-danger:hover,
a.text-danger:focus {
color: #843534;
}
.bg-primary {
color: #fff;
background-color: #337ab7;
}
a.bg-primary:hover,
a.bg-primary:focus {
background-color: #286090;
}
.bg-success {
background-color: #dff0d8;
}
a.bg-success:hover,
a.bg-success:focus {
background-color: #c1e2b3;
}
.bg-info {
background-color: #d9edf7;
}
a.bg-info:hover,
a.bg-info:focus {
background-color: #afd9ee;
}
.bg-warning {
background-color: #fcf8e3;
}
a.bg-warning:hover,
a.bg-warning:focus {
background-color: #f7ecb5;
}
.bg-danger {
background-color: #f2dede;
}
a.bg-danger:hover,
a.bg-danger:focus {
background-color: #e4b9b9;
}
.page-header {
padding-bottom: 8px;
margin: 36px 0 18px;
border-bottom: 1px solid #eeeeee;
}
ul,
ol {
margin-top: 0;
margin-bottom: 9px;
}
ul ul,
ol ul,
ul ol,
ol ol {
margin-bottom: 0;
}
.list-unstyled {
padding-left: 0;
list-style: none;
}
.list-inline {
padding-left: 0;
list-style: none;
margin-left: -5px;
}
.list-inline > li {
display: inline-block;
padding-left: 5px;
padding-right: 5px;
}
dl {
margin-top: 0;
margin-bottom: 18px;
}
dt,
dd {
line-height: 1.42857143;
}
dt {
font-weight: bold;
}
dd {
margin-left: 0;
}
@media (min-width: 541px) {
.dl-horizontal dt {
float: left;
width: 160px;
clear: left;
text-align: right;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.dl-horizontal dd {
margin-left: 180px;
}
}
abbr[title],
abbr[data-original-title] {
cursor: help;
border-bottom: 1px dotted #777777;
}
.initialism {
font-size: 90%;
text-transform: uppercase;
}
blockquote {
padding: 9px 18px;
margin: 0 0 18px;
font-size: inherit;
border-left: 5px solid #eeeeee;
}
blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
margin-bottom: 0;
}
blockquote footer,
blockquote small,
blockquote .small {
display: block;
font-size: 80%;
line-height: 1.42857143;
color: #777777;
}
blockquote footer:before,
blockquote small:before,
blockquote .small:before {
content: '\2014 \00A0';
}
.blockquote-reverse,
blockquote.pull-right {
padding-right: 15px;
padding-left: 0;
border-right: 5px solid #eeeeee;
border-left: 0;
text-align: right;
}
.blockquote-reverse footer:before,
blockquote.pull-right footer:before,
.blockquote-reverse small:before,
blockquote.pull-right small:before,
.blockquote-reverse .small:before,
blockquote.pull-right .small:before {
content: '';
}
.blockquote-reverse footer:after,
blockquote.pull-right footer:after,
.blockquote-reverse small:after,
blockquote.pull-right small:after,
.blockquote-reverse .small:after,
blockquote.pull-right .small:after {
content: '\00A0 \2014';
}
address {
margin-bottom: 18px;
font-style: normal;
line-height: 1.42857143;
}
code,
kbd,
pre,
samp {
font-family: monospace;
}
code {
padding: 2px 4px;
font-size: 90%;
color: #c7254e;
background-color: #f9f2f4;
border-radius: 2px;
}
kbd {
padding: 2px 4px;
font-size: 90%;
color: #888;
background-color: transparent;
border-radius: 1px;
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
}
kbd kbd {
padding: 0;
font-size: 100%;
font-weight: bold;
box-shadow: none;
}
pre {
display: block;
padding: 8.5px;
margin: 0 0 9px;
font-size: 12px;
line-height: 1.42857143;
word-break: break-all;
word-wrap: break-word;
color: #333333;
background-color: #f5f5f5;
border: 1px solid #ccc;
border-radius: 2px;
}
pre code {
padding: 0;
font-size: inherit;
color: inherit;
white-space: pre-wrap;
background-color: transparent;
border-radius: 0;
}
.pre-scrollable {
max-height: 340px;
overflow-y: scroll;
}
.container {
margin-right: auto;
margin-left: auto;
padding-left: 0px;
padding-right: 0px;
}
@media (min-width: 768px) {
.container {
width: 768px;
}
}
@media (min-width: 992px) {
.container {
width: 940px;
}
}
@media (min-width: 1200px) {
.container {
width: 1140px;
}
}
.container-fluid {
margin-right: auto;
margin-left: auto;
padding-left: 0px;
padding-right: 0px;
}
.row {
margin-left: 0px;
margin-right: 0px;
}
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
position: relative;
min-height: 1px;
padding-left: 0px;
padding-right: 0px;
}
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
float: left;
}
.col-xs-12 {
width: 100%;
}
.col-xs-11 {
width: 91.66666667%;
}
.col-xs-10 {
width: 83.33333333%;
}
.col-xs-9 {
width: 75%;
}
.col-xs-8 {
width: 66.66666667%;
}
.col-xs-7 {
width: 58.33333333%;
}
.col-xs-6 {
width: 50%;
}
.col-xs-5 {
width: 41.66666667%;
}
.col-xs-4 {
width: 33.33333333%;
}
.col-xs-3 {
width: 25%;
}
.col-xs-2 {
width: 16.66666667%;
}
.col-xs-1 {
width: 8.33333333%;
}
.col-xs-pull-12 {
right: 100%;
}
.col-xs-pull-11 {
right: 91.66666667%;
}
.col-xs-pull-10 {
right: 83.33333333%;
}
.col-xs-pull-9 {
right: 75%;
}
.col-xs-pull-8 {
right: 66.66666667%;
}
.col-xs-pull-7 {
right: 58.33333333%;
}
.col-xs-pull-6 {
right: 50%;
}
.col-xs-pull-5 {
right: 41.66666667%;
}
.col-xs-pull-4 {
right: 33.33333333%;
}
.col-xs-pull-3 {
right: 25%;
}
.col-xs-pull-2 {
right: 16.66666667%;
}
.col-xs-pull-1 {
right: 8.33333333%;
}
.col-xs-pull-0 {
right: auto;
}
.col-xs-push-12 {
left: 100%;
}
.col-xs-push-11 {
left: 91.66666667%;
}
.col-xs-push-10 {
left: 83.33333333%;
}
.col-xs-push-9 {
left: 75%;
}
.col-xs-push-8 {
left: 66.66666667%;
}
.col-xs-push-7 {
left: 58.33333333%;
}
.col-xs-push-6 {
left: 50%;
}
.col-xs-push-5 {
left: 41.66666667%;
}
.col-xs-push-4 {
left: 33.33333333%;
}
.col-xs-push-3 {
left: 25%;
}
.col-xs-push-2 {
left: 16.66666667%;
}
.col-xs-push-1 {
left: 8.33333333%;
}
.col-xs-push-0 {
left: auto;
}
.col-xs-offset-12 {
margin-left: 100%;
}
.col-xs-offset-11 {
margin-left: 91.66666667%;
}
.col-xs-offset-10 {
margin-left: 83.33333333%;
}
.col-xs-offset-9 {
margin-left: 75%;
}
.col-xs-offset-8 {
margin-left: 66.66666667%;
}
.col-xs-offset-7 {
margin-left: 58.33333333%;
}
.col-xs-offset-6 {
margin-left: 50%;
}
.col-xs-offset-5 {
margin-left: 41.66666667%;
}
.col-xs-offset-4 {
margin-left: 33.33333333%;
}
.col-xs-offset-3 {
margin-left: 25%;
}
.col-xs-offset-2 {
margin-left: 16.66666667%;
}
.col-xs-offset-1 {
margin-left: 8.33333333%;
}
.col-xs-offset-0 {
margin-left: 0%;
}
@media (min-width: 768px) {
.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
float: left;
}
.col-sm-12 {
width: 100%;
}
.col-sm-11 {
width: 91.66666667%;
}
.col-sm-10 {
width: 83.33333333%;
}
.col-sm-9 {
width: 75%;
}
.col-sm-8 {
width: 66.66666667%;
}
.col-sm-7 {
width: 58.33333333%;
}
.col-sm-6 {
width: 50%;
}
.col-sm-5 {
width: 41.66666667%;
}
.col-sm-4 {
width: 33.33333333%;
}
.col-sm-3 {
width: 25%;
}
.col-sm-2 {
width: 16.66666667%;
}
.col-sm-1 {
width: 8.33333333%;
}
.col-sm-pull-12 {
right: 100%;
}
.col-sm-pull-11 {
right: 91.66666667%;
}
.col-sm-pull-10 {
right: 83.33333333%;
}
.col-sm-pull-9 {
right: 75%;
}
.col-sm-pull-8 {
right: 66.66666667%;
}
.col-sm-pull-7 {
right: 58.33333333%;
}
.col-sm-pull-6 {
right: 50%;
}
.col-sm-pull-5 {
right: 41.66666667%;
}
.col-sm-pull-4 {
right: 33.33333333%;
}
.col-sm-pull-3 {
right: 25%;
}
.col-sm-pull-2 {
right: 16.66666667%;
}
.col-sm-pull-1 {
right: 8.33333333%;
}
.col-sm-pull-0 {
right: auto;
}
.col-sm-push-12 {
left: 100%;
}
.col-sm-push-11 {
left: 91.66666667%;
}
.col-sm-push-10 {
left: 83.33333333%;
}
.col-sm-push-9 {
left: 75%;
}
.col-sm-push-8 {
left: 66.66666667%;
}
.col-sm-push-7 {
left: 58.33333333%;
}
.col-sm-push-6 {
left: 50%;
}
.col-sm-push-5 {
left: 41.66666667%;
}
.col-sm-push-4 {
left: 33.33333333%;
}
.col-sm-push-3 {
left: 25%;
}
.col-sm-push-2 {
left: 16.66666667%;
}
.col-sm-push-1 {
left: 8.33333333%;
}
.col-sm-push-0 {
left: auto;
}
.col-sm-offset-12 {
margin-left: 100%;
}
.col-sm-offset-11 {
margin-left: 91.66666667%;
}
.col-sm-offset-10 {
margin-left: 83.33333333%;
}
.col-sm-offset-9 {
margin-left: 75%;
}
.col-sm-offset-8 {
margin-left: 66.66666667%;
}
.col-sm-offset-7 {
margin-left: 58.33333333%;
}
.col-sm-offset-6 {
margin-left: 50%;
}
.col-sm-offset-5 {
margin-left: 41.66666667%;
}
.col-sm-offset-4 {
margin-left: 33.33333333%;
}
.col-sm-offset-3 {
margin-left: 25%;
}
.col-sm-offset-2 {
margin-left: 16.66666667%;
}
.col-sm-offset-1 {
margin-left: 8.33333333%;
}
.col-sm-offset-0 {
margin-left: 0%;
}
}
@media (min-width: 992px) {
.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
float: left;
}
.col-md-12 {
width: 100%;
}
.col-md-11 {
width: 91.66666667%;
}
.col-md-10 {
width: 83.33333333%;
}
.col-md-9 {
width: 75%;
}
.col-md-8 {
width: 66.66666667%;
}
.col-md-7 {
width: 58.33333333%;
}
.col-md-6 {
width: 50%;
}
.col-md-5 {
width: 41.66666667%;
}
.col-md-4 {
width: 33.33333333%;
}
.col-md-3 {
width: 25%;
}
.col-md-2 {
width: 16.66666667%;
}
.col-md-1 {
width: 8.33333333%;
}
.col-md-pull-12 {
right: 100%;
}
.col-md-pull-11 {
right: 91.66666667%;
}
.col-md-pull-10 {
right: 83.33333333%;
}
.col-md-pull-9 {
right: 75%;
}
.col-md-pull-8 {
right: 66.66666667%;
}
.col-md-pull-7 {
right: 58.33333333%;
}
.col-md-pull-6 {
right: 50%;
}
.col-md-pull-5 {
right: 41.66666667%;
}
.col-md-pull-4 {
right: 33.33333333%;
}
.col-md-pull-3 {
right: 25%;
}
.col-md-pull-2 {
right: 16.66666667%;
}
.col-md-pull-1 {
right: 8.33333333%;
}
.col-md-pull-0 {
right: auto;
}
.col-md-push-12 {
left: 100%;
}
.col-md-push-11 {
left: 91.66666667%;
}
.col-md-push-10 {
left: 83.33333333%;
}
.col-md-push-9 {
left: 75%;
}
.col-md-push-8 {
left: 66.66666667%;
}
.col-md-push-7 {
left: 58.33333333%;
}
.col-md-push-6 {
left: 50%;
}
.col-md-push-5 {
left: 41.66666667%;
}
.col-md-push-4 {
left: 33.33333333%;
}
.col-md-push-3 {
left: 25%;
}
.col-md-push-2 {
left: 16.66666667%;
}
.col-md-push-1 {
left: 8.33333333%;
}
.col-md-push-0 {
left: auto;
}
.col-md-offset-12 {
margin-left: 100%;
}
.col-md-offset-11 {
margin-left: 91.66666667%;
}
.col-md-offset-10 {
margin-left: 83.33333333%;
}
.col-md-offset-9 {
margin-left: 75%;
}
.col-md-offset-8 {
margin-left: 66.66666667%;
}
.col-md-offset-7 {
margin-left: 58.33333333%;
}
.col-md-offset-6 {
margin-left: 50%;
}
.col-md-offset-5 {
margin-left: 41.66666667%;
}
.col-md-offset-4 {
margin-left: 33.33333333%;
}
.col-md-offset-3 {
margin-left: 25%;
}
.col-md-offset-2 {
margin-left: 16.66666667%;
}
.col-md-offset-1 {
margin-left: 8.33333333%;
}
.col-md-offset-0 {
margin-left: 0%;
}
}
@media (min-width: 1200px) {
.col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
float: left;
}
.col-lg-12 {
width: 100%;
}
.col-lg-11 {
width: 91.66666667%;
}
.col-lg-10 {
width: 83.33333333%;
}
.col-lg-9 {
width: 75%;
}
.col-lg-8 {
width: 66.66666667%;
}
.col-lg-7 {
width: 58.33333333%;
}
.col-lg-6 {
width: 50%;
}
.col-lg-5 {
width: 41.66666667%;
}
.col-lg-4 {
width: 33.33333333%;
}
.col-lg-3 {
width: 25%;
}
.col-lg-2 {
width: 16.66666667%;
}
.col-lg-1 {
width: 8.33333333%;
}
.col-lg-pull-12 {
right: 100%;
}
.col-lg-pull-11 {
right: 91.66666667%;
}
.col-lg-pull-10 {
right: 83.33333333%;
}
.col-lg-pull-9 {
right: 75%;
}
.col-lg-pull-8 {
right: 66.66666667%;
}
.col-lg-pull-7 {
right: 58.33333333%;
}
.col-lg-pull-6 {
right: 50%;
}
.col-lg-pull-5 {
right: 41.66666667%;
}
.col-lg-pull-4 {
right: 33.33333333%;
}
.col-lg-pull-3 {
right: 25%;
}
.col-lg-pull-2 {
right: 16.66666667%;
}
.col-lg-pull-1 {
right: 8.33333333%;
}
.col-lg-pull-0 {
right: auto;
}
.col-lg-push-12 {
left: 100%;
}
.col-lg-push-11 {
left: 91.66666667%;
}
.col-lg-push-10 {
left: 83.33333333%;
}
.col-lg-push-9 {
left: 75%;
}
.col-lg-push-8 {
left: 66.66666667%;
}
.col-lg-push-7 {
left: 58.33333333%;
}
.col-lg-push-6 {
left: 50%;
}
.col-lg-push-5 {
left: 41.66666667%;
}
.col-lg-push-4 {
left: 33.33333333%;
}
.col-lg-push-3 {
left: 25%;
}
.col-lg-push-2 {
left: 16.66666667%;
}
.col-lg-push-1 {
left: 8.33333333%;
}
.col-lg-push-0 {
left: auto;
}
.col-lg-offset-12 {
margin-left: 100%;
}
.col-lg-offset-11 {
margin-left: 91.66666667%;
}
.col-lg-offset-10 {
margin-left: 83.33333333%;
}
.col-lg-offset-9 {
margin-left: 75%;
}
.col-lg-offset-8 {
margin-left: 66.66666667%;
}
.col-lg-offset-7 {
margin-left: 58.33333333%;
}
.col-lg-offset-6 {
margin-left: 50%;
}
.col-lg-offset-5 {
margin-left: 41.66666667%;
}
.col-lg-offset-4 {
margin-left: 33.33333333%;
}
.col-lg-offset-3 {
margin-left: 25%;
}
.col-lg-offset-2 {
margin-left: 16.66666667%;
}
.col-lg-offset-1 {
margin-left: 8.33333333%;
}
.col-lg-offset-0 {
margin-left: 0%;
}
}
table {
background-color: transparent;
}
caption {
padding-top: 8px;
padding-bottom: 8px;
color: #777777;
text-align: left;
}
th {
text-align: left;
}
.table {
width: 100%;
max-width: 100%;
margin-bottom: 18px;
}
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
padding: 8px;
line-height: 1.42857143;
vertical-align: top;
border-top: 1px solid #ddd;
}
.table > thead > tr > th {
vertical-align: bottom;
border-bottom: 2px solid #ddd;
}
.table > caption + thead > tr:first-child > th,
.table > colgroup + thead > tr:first-child > th,
.table > thead:first-child > tr:first-child > th,
.table > caption + thead > tr:first-child > td,
.table > colgroup + thead > tr:first-child > td,
.table > thead:first-child > tr:first-child > td {
border-top: 0;
}
.table > tbody + tbody {
border-top: 2px solid #ddd;
}
.table .table {
background-color: #fff;
}
.table-condensed > thead > tr > th,
.table-condensed > tbody > tr > th,
.table-condensed > tfoot > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > td {
padding: 5px;
}
.table-bordered {
border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > td {
border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td {
border-bottom-width: 2px;
}
.table-striped > tbody > tr:nth-of-type(odd) {
background-color: #f9f9f9;
}
.table-hover > tbody > tr:hover {
background-color: #f5f5f5;
}
table col[class*="col-"] {
position: static;
float: none;
display: table-column;
}
table td[class*="col-"],
table th[class*="col-"] {
position: static;
float: none;
display: table-cell;
}
.table > thead > tr > td.active,
.table > tbody > tr > td.active,
.table > tfoot > tr > td.active,
.table > thead > tr > th.active,
.table > tbody > tr > th.active,
.table > tfoot > tr > th.active,
.table > thead > tr.active > td,
.table > tbody > tr.active > td,
.table > tfoot > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr.active > th,
.table > tfoot > tr.active > th {
background-color: #f5f5f5;
}
.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover,
.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr.active:hover > th {
background-color: #e8e8e8;
}
.table > thead > tr > td.success,
.table > tbody > tr > td.success,
.table > tfoot > tr > td.success,
.table > thead > tr > th.success,
.table > tbody > tr > th.success,
.table > tfoot > tr > th.success,
.table > thead > tr.success > td,
.table > tbody > tr.success > td,
.table > tfoot > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr.success > th,
.table > tfoot > tr.success > th {
background-color: #dff0d8;
}
.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover,
.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr.success:hover > th {
background-color: #d0e9c6;
}
.table > thead > tr > td.info,
.table > tbody > tr > td.info,
.table > tfoot > tr > td.info,
.table > thead > tr > th.info,
.table > tbody > tr > th.info,
.table > tfoot > tr > th.info,
.table > thead > tr.info > td,
.table > tbody > tr.info > td,
.table > tfoot > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr.info > th,
.table > tfoot > tr.info > th {
background-color: #d9edf7;
}
.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover,
.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr.info:hover > th {
background-color: #c4e3f3;
}
.table > thead > tr > td.warning,
.table > tbody > tr > td.warning,
.table > tfoot > tr > td.warning,
.table > thead > tr > th.warning,
.table > tbody > tr > th.warning,
.table > tfoot > tr > th.warning,
.table > thead > tr.warning > td,
.table > tbody > tr.warning > td,
.table > tfoot > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr.warning > th,
.table > tfoot > tr.warning > th {
background-color: #fcf8e3;
}
.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover,
.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr.warning:hover > th {
background-color: #faf2cc;
}
.table > thead > tr > td.danger,
.table > tbody > tr > td.danger,
.table > tfoot > tr > td.danger,
.table > thead > tr > th.danger,
.table > tbody > tr > th.danger,
.table > tfoot > tr > th.danger,
.table > thead > tr.danger > td,
.table > tbody > tr.danger > td,
.table > tfoot > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr.danger > th,
.table > tfoot > tr.danger > th {
background-color: #f2dede;
}
.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover,
.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr.danger:hover > th {
background-color: #ebcccc;
}
.table-responsive {
overflow-x: auto;
min-height: 0.01%;
}
@media screen and (max-width: 767px) {
.table-responsive {
width: 100%;
margin-bottom: 13.5px;
overflow-y: hidden;
-ms-overflow-style: -ms-autohiding-scrollbar;
border: 1px solid #ddd;
}
.table-responsive > .table {
margin-bottom: 0;
}
.table-responsive > .table > thead > tr > th,
.table-responsive > .table > tbody > tr > th,
.table-responsive > .table > tfoot > tr > th,
.table-responsive > .table > thead > tr > td,
.table-responsive > .table > tbody > tr > td,
.table-responsive > .table > tfoot > tr > td {
white-space: nowrap;
}
.table-responsive > .table-bordered {
border: 0;
}
.table-responsive > .table-bordered > thead > tr > th:first-child,
.table-responsive > .table-bordered > tbody > tr > th:first-child,
.table-responsive > .table-bordered > tfoot > tr > th:first-child,
.table-responsive > .table-bordered > thead > tr > td:first-child,
.table-responsive > .table-bordered > tbody > tr > td:first-child,
.table-responsive > .table-bordered > tfoot > tr > td:first-child {
border-left: 0;
}
.table-responsive > .table-bordered > thead > tr > th:last-child,
.table-responsive > .table-bordered > tbody > tr > th:last-child,
.table-responsive > .table-bordered > tfoot > tr > th:last-child,
.table-responsive > .table-bordered > thead > tr > td:last-child,
.table-responsive > .table-bordered > tbody > tr > td:last-child,
.table-responsive > .table-bordered > tfoot > tr > td:last-child {
border-right: 0;
}
.table-responsive > .table-bordered > tbody > tr:last-child > th,
.table-responsive > .table-bordered > tfoot > tr:last-child > th,
.table-responsive > .table-bordered > tbody > tr:last-child > td,
.table-responsive > .table-bordered > tfoot > tr:last-child > td {
border-bottom: 0;
}
}
fieldset {
padding: 0;
margin: 0;
border: 0;
min-width: 0;
}
legend {
display: block;
width: 100%;
padding: 0;
margin-bottom: 18px;
font-size: 19.5px;
line-height: inherit;
color: #333333;
border: 0;
border-bottom: 1px solid #e5e5e5;
}
label {
display: inline-block;
max-width: 100%;
margin-bottom: 5px;
font-weight: bold;
}
input[type="search"] {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
input[type="radio"],
input[type="checkbox"] {
margin: 4px 0 0;
margin-top: 1px \9;
line-height: normal;
}
input[type="file"] {
display: block;
}
input[type="range"] {
display: block;
width: 100%;
}
select[multiple],
select[size] {
height: auto;
}
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
output {
display: block;
padding-top: 7px;
font-size: 13px;
line-height: 1.42857143;
color: #555555;
}
.form-control {
display: block;
width: 100%;
height: 32px;
padding: 6px 12px;
font-size: 13px;
line-height: 1.42857143;
color: #555555;
background-color: #fff;
background-image: none;
border: 1px solid #ccc;
border-radius: 2px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.form-control:focus {
border-color: #66afe9;
outline: 0;
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.form-control::-moz-placeholder {
color: #999;
opacity: 1;
}
.form-control:-ms-input-placeholder {
color: #999;
}
.form-control::-webkit-input-placeholder {
color: #999;
}
.form-control::-ms-expand {
border: 0;
background-color: transparent;
}
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
background-color: #eeeeee;
opacity: 1;
}
.form-control[disabled],
fieldset[disabled] .form-control {
cursor: not-allowed;
}
textarea.form-control {
height: auto;
}
input[type="search"] {
-webkit-appearance: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
input[type="date"].form-control,
input[type="time"].form-control,
input[type="datetime-local"].form-control,
input[type="month"].form-control {
line-height: 32px;
}
input[type="date"].input-sm,
input[type="time"].input-sm,
input[type="datetime-local"].input-sm,
input[type="month"].input-sm,
.input-group-sm input[type="date"],
.input-group-sm input[type="time"],
.input-group-sm input[type="datetime-local"],
.input-group-sm input[type="month"] {
line-height: 30px;
}
input[type="date"].input-lg,
input[type="time"].input-lg,
input[type="datetime-local"].input-lg,
input[type="month"].input-lg,
.input-group-lg input[type="date"],
.input-group-lg input[type="time"],
.input-group-lg input[type="datetime-local"],
.input-group-lg input[type="month"] {
line-height: 45px;
}
}
.form-group {
margin-bottom: 15px;
}
.radio,
.checkbox {
position: relative;
display: block;
margin-top: 10px;
margin-bottom: 10px;
}
.radio label,
.checkbox label {
min-height: 18px;
padding-left: 20px;
margin-bottom: 0;
font-weight: normal;
cursor: pointer;
}
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
position: absolute;
margin-left: -20px;
margin-top: 4px \9;
}
.radio + .radio,
.checkbox + .checkbox {
margin-top: -5px;
}
.radio-inline,
.checkbox-inline {
position: relative;
display: inline-block;
padding-left: 20px;
margin-bottom: 0;
vertical-align: middle;
font-weight: normal;
cursor: pointer;
}
.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
margin-top: 0;
margin-left: 10px;
}
input[type="radio"][disabled],
input[type="checkbox"][disabled],
input[type="radio"].disabled,
input[type="checkbox"].disabled,
fieldset[disabled] input[type="radio"],
fieldset[disabled] input[type="checkbox"] {
cursor: not-allowed;
}
.radio-inline.disabled,
.checkbox-inline.disabled,
fieldset[disabled] .radio-inline,
fieldset[disabled] .checkbox-inline {
cursor: not-allowed;
}
.radio.disabled label,
.checkbox.disabled label,
fieldset[disabled] .radio label,
fieldset[disabled] .checkbox label {
cursor: not-allowed;
}
.form-control-static {
padding-top: 7px;
padding-bottom: 7px;
margin-bottom: 0;
min-height: 31px;
}
.form-control-static.input-lg,
.form-control-static.input-sm {
padding-left: 0;
padding-right: 0;
}
.input-sm {
height: 30px;
padding: 5px 10px;
font-size: 12px;
line-height: 1.5;
border-radius: 1px;
}
select.input-sm {
height: 30px;
line-height: 30px;
}
textarea.input-sm,
select[multiple].input-sm {
height: auto;
}
.form-group-sm .form-control {
height: 30px;
padding: 5px 10px;
font-size: 12px;
line-height: 1.5;
border-radius: 1px;
}
.form-group-sm select.form-control {
height: 30px;
line-height: 30px;
}
.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
height: auto;
}
.form-group-sm .form-control-static {
height: 30px;
min-height: 30px;
padding: 6px 10px;
font-size: 12px;
line-height: 1.5;
}
.input-lg {
height: 45px;
padding: 10px 16px;
font-size: 17px;
line-height: 1.3333333;
border-radius: 3px;
}
select.input-lg {
height: 45px;
line-height: 45px;
}
textarea.input-lg,
select[multiple].input-lg {
height: auto;
}
.form-group-lg .form-control {
height: 45px;
padding: 10px 16px;
font-size: 17px;
line-height: 1.3333333;
border-radius: 3px;
}
.form-group-lg select.form-control {
height: 45px;
line-height: 45px;
}
.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
height: auto;
}
.form-group-lg .form-control-static {
height: 45px;
min-height: 35px;
padding: 11px 16px;
font-size: 17px;
line-height: 1.3333333;
}
.has-feedback {
position: relative;
}
.has-feedback .form-control {
padding-right: 40px;
}
.form-control-feedback {
position: absolute;
top: 0;
right: 0;
z-index: 2;
display: block;
width: 32px;
height: 32px;
line-height: 32px;
text-align: center;
pointer-events: none;
}
.input-lg + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
width: 45px;
height: 45px;
line-height: 45px;
}
.input-sm + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
width: 30px;
height: 30px;
line-height: 30px;
}
.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
color: #3c763d;
}
.has-success .form-control {
border-color: #3c763d;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-success .form-control:focus {
border-color: #2b542c;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
}
.has-success .input-group-addon {
color: #3c763d;
border-color: #3c763d;
background-color: #dff0d8;
}
.has-success .form-control-feedback {
color: #3c763d;
}
.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
color: #8a6d3b;
}
.has-warning .form-control {
border-color: #8a6d3b;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-warning .form-control:focus {
border-color: #66512c;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
}
.has-warning .input-group-addon {
color: #8a6d3b;
border-color: #8a6d3b;
background-color: #fcf8e3;
}
.has-warning .form-control-feedback {
color: #8a6d3b;
}
.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
color: #a94442;
}
.has-error .form-control {
border-color: #a94442;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-error .form-control:focus {
border-color: #843534;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
color: #a94442;
border-color: #a94442;
background-color: #f2dede;
}
.has-error .form-control-feedback {
color: #a94442;
}
.has-feedback label ~ .form-control-feedback {
top: 23px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
top: 0;
}
.help-block {
display: block;
margin-top: 5px;
margin-bottom: 10px;
color: #404040;
}
@media (min-width: 768px) {
.form-inline .form-group {
display: inline-block;
margin-bottom: 0;
vertical-align: middle;
}
.form-inline .form-control {
display: inline-block;
width: auto;
vertical-align: middle;
}
.form-inline .form-control-static {
display: inline-block;
}
.form-inline .input-group {
display: inline-table;
vertical-align: middle;
}
.form-inline .input-group .input-group-addon,
.form-inline .input-group .input-group-btn,
.form-inline .input-group .form-control {
width: auto;
}
.form-inline .input-group > .form-control {
width: 100%;
}
.form-inline .control-label {
margin-bottom: 0;
vertical-align: middle;
}
.form-inline .radio,
.form-inline .checkbox {
display: inline-block;
margin-top: 0;
margin-bottom: 0;
vertical-align: middle;
}
.form-inline .radio label,
.form-inline .checkbox label {
padding-left: 0;
}
.form-inline .radio input[type="radio"],
.form-inline .checkbox input[type="checkbox"] {
position: relative;
margin-left: 0;
}
.form-inline .has-feedback .form-control-feedback {
top: 0;
}
}
.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
margin-top: 0;
margin-bottom: 0;
padding-top: 7px;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
min-height: 25px;
}
.form-horizontal .form-group {
margin-left: 0px;
margin-right: 0px;
}
@media (min-width: 768px) {
.form-horizontal .control-label {
text-align: right;
margin-bottom: 0;
padding-top: 7px;
}
}
.form-horizontal .has-feedback .form-control-feedback {
right: 0px;
}
@media (min-width: 768px) {
.form-horizontal .form-group-lg .control-label {
padding-top: 11px;
font-size: 17px;
}
}
@media (min-width: 768px) {
.form-horizontal .form-group-sm .control-label {
padding-top: 6px;
font-size: 12px;
}
}
.btn {
display: inline-block;
margin-bottom: 0;
font-weight: normal;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 13px;
line-height: 1.42857143;
border-radius: 2px;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
.btn:hover,
.btn:focus,
.btn.focus {
color: #333;
text-decoration: none;
}
.btn:active,
.btn.active {
outline: 0;
background-image: none;
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
cursor: not-allowed;
opacity: 0.65;
filter: alpha(opacity=65);
-webkit-box-shadow: none;
box-shadow: none;
}
a.btn.disabled,
fieldset[disabled] a.btn {
pointer-events: none;
}
.btn-default {
color: #333;
background-color: #fff;
border-color: #ccc;
}
.btn-default:focus,
.btn-default.focus {
color: #333;
background-color: #e6e6e6;
border-color: #8c8c8c;
}
.btn-default:hover {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
.btn-default:active:hover,
.btn-default.active:hover,
.open > .dropdown-toggle.btn-default:hover,
.btn-default:active:focus,
.btn-default.active:focus,
.open > .dropdown-toggle.btn-default:focus,
.btn-default:active.focus,
.btn-default.active.focus,
.open > .dropdown-toggle.btn-default.focus {
color: #333;
background-color: #d4d4d4;
border-color: #8c8c8c;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
background-image: none;
}
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus {
background-color: #fff;
border-color: #ccc;
}
.btn-default .badge {
color: #fff;
background-color: #333;
}
.btn-primary {
color: #fff;
background-color: #337ab7;
border-color: #2e6da4;
}
.btn-primary:focus,
.btn-primary.focus {
color: #fff;
background-color: #286090;
border-color: #122b40;
}
.btn-primary:hover {
color: #fff;
background-color: #286090;
border-color: #204d74;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
color: #fff;
background-color: #286090;
border-color: #204d74;
}
.btn-primary:active:hover,
.btn-primary.active:hover,
.open > .dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.open > .dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.open > .dropdown-toggle.btn-primary.focus {
color: #fff;
background-color: #204d74;
border-color: #122b40;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
background-image: none;
}
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus {
background-color: #337ab7;
border-color: #2e6da4;
}
.btn-primary .badge {
color: #337ab7;
background-color: #fff;
}
.btn-success {
color: #fff;
background-color: #5cb85c;
border-color: #4cae4c;
}
.btn-success:focus,
.btn-success.focus {
color: #fff;
background-color: #449d44;
border-color: #255625;
}
.btn-success:hover {
color: #fff;
background-color: #449d44;
border-color: #398439;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
color: #fff;
background-color: #449d44;
border-color: #398439;
}
.btn-success:active:hover,
.btn-success.active:hover,
.open > .dropdown-toggle.btn-success:hover,
.btn-success:active:focus,
.btn-success.active:focus,
.open > .dropdown-toggle.btn-success:focus,
.btn-success:active.focus,
.btn-success.active.focus,
.open > .dropdown-toggle.btn-success.focus {
color: #fff;
background-color: #398439;
border-color: #255625;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
background-image: none;
}
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus {
background-color: #5cb85c;
border-color: #4cae4c;
}
.btn-success .badge {
color: #5cb85c;
background-color: #fff;
}
.btn-info {
color: #fff;
background-color: #5bc0de;
border-color: #46b8da;
}
.btn-info:focus,
.btn-info.focus {
color: #fff;
background-color: #31b0d5;
border-color: #1b6d85;
}
.btn-info:hover {
color: #fff;
background-color: #31b0d5;
border-color: #269abc;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
color: #fff;
background-color: #31b0d5;
border-color: #269abc;
}
.btn-info:active:hover,
.btn-info.active:hover,
.open > .dropdown-toggle.btn-info:hover,
.btn-info:active:focus,
.btn-info.active:focus,
.open > .dropdown-toggle.btn-info:focus,
.btn-info:active.focus,
.btn-info.active.focus,
.open > .dropdown-toggle.btn-info.focus {
color: #fff;
background-color: #269abc;
border-color: #1b6d85;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
background-image: none;
}
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled.focus,
.btn-info[disabled].focus,
fieldset[disabled] .btn-info.focus {
background-color: #5bc0de;
border-color: #46b8da;
}
.btn-info .badge {
color: #5bc0de;
background-color: #fff;
}
.btn-warning {
color: #fff;
background-color: #f0ad4e;
border-color: #eea236;
}
.btn-warning:focus,
.btn-warning.focus {
color: #fff;
background-color: #ec971f;
border-color: #985f0d;
}
.btn-warning:hover {
color: #fff;
background-color: #ec971f;
border-color: #d58512;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
color: #fff;
background-color: #ec971f;
border-color: #d58512;
}
.btn-warning:active:hover,
.btn-warning.active:hover,
.open > .dropdown-toggle.btn-warning:hover,
.btn-warning:active:focus,
.btn-warning.active:focus,
.open > .dropdown-toggle.btn-warning:focus,
.btn-warning:active.focus,
.btn-warning.active.focus,
.open > .dropdown-toggle.btn-warning.focus {
color: #fff;
background-color: #d58512;
border-color: #985f0d;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
background-image: none;
}
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled.focus,
.btn-warning[disabled].focus,
fieldset[disabled] .btn-warning.focus {
background-color: #f0ad4e;
border-color: #eea236;
}
.btn-warning .badge {
color: #f0ad4e;
background-color: #fff;
}
.btn-danger {
color: #fff;
background-color: #d9534f;
border-color: #d43f3a;
}
.btn-danger:focus,
.btn-danger.focus {
color: #fff;
background-color: #c9302c;
border-color: #761c19;
}
.btn-danger:hover {
color: #fff;
background-color: #c9302c;
border-color: #ac2925;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
color: #fff;
background-color: #c9302c;
border-color: #ac2925;
}
.btn-danger:active:hover,
.btn-danger.active:hover,
.open > .dropdown-toggle.btn-danger:hover,
.btn-danger:active:focus,
.btn-danger.active:focus,
.open > .dropdown-toggle.btn-danger:focus,
.btn-danger:active.focus,
.btn-danger.active.focus,
.open > .dropdown-toggle.btn-danger.focus {
color: #fff;
background-color: #ac2925;
border-color: #761c19;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
background-image: none;
}
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled.focus,
.btn-danger[disabled].focus,
fieldset[disabled] .btn-danger.focus {
background-color: #d9534f;
border-color: #d43f3a;
}
.btn-danger .badge {
color: #d9534f;
background-color: #fff;
}
.btn-link {
color: #337ab7;
font-weight: normal;
border-radius: 0;
}
.btn-link,
.btn-link:active,
.btn-link.active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
background-color: transparent;
-webkit-box-shadow: none;
box-shadow: none;
}
.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-link:active {
border-color: transparent;
}
.btn-link:hover,
.btn-link:focus {
color: #23527c;
text-decoration: underline;
background-color: transparent;
}
.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
color: #777777;
text-decoration: none;
}
.btn-lg,
.btn-group-lg > .btn {
padding: 10px 16px;
font-size: 17px;
line-height: 1.3333333;
border-radius: 3px;
}
.btn-sm,
.btn-group-sm > .btn {
padding: 5px 10px;
font-size: 12px;
line-height: 1.5;
border-radius: 1px;
}
.btn-xs,
.btn-group-xs > .btn {
padding: 1px 5px;
font-size: 12px;
line-height: 1.5;
border-radius: 1px;
}
.btn-block {
display: block;
width: 100%;
}
.btn-block + .btn-block {
margin-top: 5px;
}
input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
width: 100%;
}
.fade {
opacity: 0;
-webkit-transition: opacity 0.15s linear;
-o-transition: opacity 0.15s linear;
transition: opacity 0.15s linear;
}
.fade.in {
opacity: 1;
}
.collapse {
display: none;
}
.collapse.in {
display: block;
}
tr.collapse.in {
display: table-row;
}
tbody.collapse.in {
display: table-row-group;
}
.collapsing {
position: relative;
height: 0;
overflow: hidden;
-webkit-transition-property: height, visibility;
transition-property: height, visibility;
-webkit-transition-duration: 0.35s;
transition-duration: 0.35s;
-webkit-transition-timing-function: ease;
transition-timing-function: ease;
}
.caret {
display: inline-block;
width: 0;
height: 0;
margin-left: 2px;
vertical-align: middle;
border-top: 4px dashed;
border-top: 4px solid \9;
border-right: 4px solid transparent;
border-left: 4px solid transparent;
}
.dropup,
.dropdown {
position: relative;
}
.dropdown-toggle:focus {
outline: 0;
}
.dropdown-menu {
position: absolute;
top: 100%;
left: 0;
z-index: 1000;
display: none;
float: left;
min-width: 160px;
padding: 5px 0;
margin: 2px 0 0;
list-style: none;
font-size: 13px;
text-align: left;
background-color: #fff;
border: 1px solid #ccc;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 2px;
-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
background-clip: padding-box;
}
.dropdown-menu.pull-right {
right: 0;
left: auto;
}
.dropdown-menu .divider {
height: 1px;
margin: 8px 0;
overflow: hidden;
background-color: #e5e5e5;
}
.dropdown-menu > li > a {
display: block;
padding: 3px 20px;
clear: both;
font-weight: normal;
line-height: 1.42857143;
color: #333333;
white-space: nowrap;
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
text-decoration: none;
color: #262626;
background-color: #f5f5f5;
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
color: #fff;
text-decoration: none;
outline: 0;
background-color: #337ab7;
}
.dropdown-menu > .disabled > a,
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
color: #777777;
}
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
text-decoration: none;
background-color: transparent;
background-image: none;
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
cursor: not-allowed;
}
.open > .dropdown-menu {
display: block;
}
.open > a {
outline: 0;
}
.dropdown-menu-right {
left: auto;
right: 0;
}
.dropdown-menu-left {
left: 0;
right: auto;
}
.dropdown-header {
display: block;
padding: 3px 20px;
font-size: 12px;
line-height: 1.42857143;
color: #777777;
white-space: nowrap;
}
.dropdown-backdrop {
position: fixed;
left: 0;
right: 0;
bottom: 0;
top: 0;
z-index: 990;
}
.pull-right > .dropdown-menu {
right: 0;
left: auto;
}
.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
border-top: 0;
border-bottom: 4px dashed;
border-bottom: 4px solid \9;
content: "";
}
.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
top: auto;
bottom: 100%;
margin-bottom: 2px;
}
@media (min-width: 541px) {
.navbar-right .dropdown-menu {
left: auto;
right: 0;
}
.navbar-right .dropdown-menu-left {
left: 0;
right: auto;
}
}
.btn-group,
.btn-group-vertical {
position: relative;
display: inline-block;
vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
position: relative;
float: left;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover,
.btn-group > .btn:focus,
.btn-group-vertical > .btn:focus,
.btn-group > .btn:active,
.btn-group-vertical > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn.active {
z-index: 2;
}
.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
margin-left: -1px;
}
.btn-toolbar {
margin-left: -5px;
}
.btn-toolbar .btn,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
float: left;
}
.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
margin-left: 5px;
}
.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
border-radius: 0;
}
.btn-group > .btn:first-child {
margin-left: 0;
}
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
border-bottom-right-radius: 0;
border-top-right-radius: 0;
}
.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
border-bottom-left-radius: 0;
border-top-left-radius: 0;
}
.btn-group > .btn-group {
float: left;
}
.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
border-radius: 0;
}
.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
border-bottom-right-radius: 0;
border-top-right-radius: 0;
}
.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
border-bottom-left-radius: 0;
border-top-left-radius: 0;
}
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
outline: 0;
}
.btn-group > .btn + .dropdown-toggle {
padding-left: 8px;
padding-right: 8px;
}
.btn-group > .btn-lg + .dropdown-toggle {
padding-left: 12px;
padding-right: 12px;
}
.btn-group.open .dropdown-toggle {
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-group.open .dropdown-toggle.btn-link {
-webkit-box-shadow: none;
box-shadow: none;
}
.btn .caret {
margin-left: 0;
}
.btn-lg .caret {
border-width: 5px 5px 0;
border-bottom-width: 0;
}
.dropup .btn-lg .caret {
border-width: 0 5px 5px;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
display: block;
float: none;
width: 100%;
max-width: 100%;
}
.btn-group-vertical > .btn-group > .btn {
float: none;
}
.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
margin-top: -1px;
margin-left: 0;
}
.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
border-radius: 0;
}
.btn-group-vertical > .btn:first-child:not(:last-child) {
border-top-right-radius: 2px;
border-top-left-radius: 2px;
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:last-child:not(:first-child) {
border-top-right-radius: 0;
border-top-left-radius: 0;
border-bottom-right-radius: 2px;
border-bottom-left-radius: 2px;
}
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
border-radius: 0;
}
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
border-top-right-radius: 0;
border-top-left-radius: 0;
}
.btn-group-justified {
display: table;
width: 100%;
table-layout: fixed;
border-collapse: separate;
}
.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
float: none;
display: table-cell;
width: 1%;
}
.btn-group-justified > .btn-group .btn {
width: 100%;
}
.btn-group-justified > .btn-group .dropdown-menu {
left: auto;
}
[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
position: absolute;
clip: rect(0, 0, 0, 0);
pointer-events: none;
}
.input-group {
position: relative;
display: table;
border-collapse: separate;
}
.input-group[class*="col-"] {
float: none;
padding-left: 0;
padding-right: 0;
}
.input-group .form-control {
position: relative;
z-index: 2;
float: left;
width: 100%;
margin-bottom: 0;
}
.input-group .form-control:focus {
z-index: 3;
}
.input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
height: 45px;
padding: 10px 16px;
font-size: 17px;
line-height: 1.3333333;
border-radius: 3px;
}
select.input-group-lg > .form-control,
select.input-group-lg > .input-group-addon,
select.input-group-lg > .input-group-btn > .btn {
height: 45px;
line-height: 45px;
}
textarea.input-group-lg > .form-control,
textarea.input-group-lg > .input-group-addon,
textarea.input-group-lg > .input-group-btn > .btn,
select[multiple].input-group-lg > .form-control,
select[multiple].input-group-lg > .input-group-addon,
select[multiple].input-group-lg > .input-group-btn > .btn {
height: auto;
}
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
height: 30px;
padding: 5px 10px;
font-size: 12px;
line-height: 1.5;
border-radius: 1px;
}
select.input-group-sm > .form-control,
select.input-group-sm > .input-group-addon,
select.input-group-sm > .input-group-btn > .btn {
height: 30px;
line-height: 30px;
}
textarea.input-group-sm > .form-control,
textarea.input-group-sm > .input-group-addon,
textarea.input-group-sm > .input-group-btn > .btn,
select[multiple].input-group-sm > .form-control,
select[multiple].input-group-sm > .input-group-addon,
select[multiple].input-group-sm > .input-group-btn > .btn {
height: auto;
}
.input-group-addon,
.input-group-btn,
.input-group .form-control {
display: table-cell;
}
.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
border-radius: 0;
}
.input-group-addon,
.input-group-btn {
width: 1%;
white-space: nowrap;
vertical-align: middle;
}
.input-group-addon {
padding: 6px 12px;
font-size: 13px;
font-weight: normal;
line-height: 1;
color: #555555;
text-align: center;
background-color: #eeeeee;
border: 1px solid #ccc;
border-radius: 2px;
}
.input-group-addon.input-sm {
padding: 5px 10px;
font-size: 12px;
border-radius: 1px;
}
.input-group-addon.input-lg {
padding: 10px 16px;
font-size: 17px;
border-radius: 3px;
}
.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
margin-top: 0;
}
.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
border-bottom-right-radius: 0;
border-top-right-radius: 0;
}
.input-group-addon:first-child {
border-right: 0;
}
.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
border-bottom-left-radius: 0;
border-top-left-radius: 0;
}
.input-group-addon:last-child {
border-left: 0;
}
.input-group-btn {
position: relative;
font-size: 0;
white-space: nowrap;
}
.input-group-btn > .btn {
position: relative;
}
.input-group-btn > .btn + .btn {
margin-left: -1px;
}
.input-group-btn > .btn:hover,
.input-group-btn > .btn:focus,
.input-group-btn > .btn:active {
z-index: 2;
}
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
margin-right: -1px;
}
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
z-index: 2;
margin-left: -1px;
}
.nav {
margin-bottom: 0;
padding-left: 0;
list-style: none;
}
.nav > li {
position: relative;
display: block;
}
.nav > li > a {
position: relative;
display: block;
padding: 10px 15px;
}
.nav > li > a:hover,
.nav > li > a:focus {
text-decoration: none;
background-color: #eeeeee;
}
.nav > li.disabled > a {
color: #777777;
}
.nav > li.disabled > a:hover,
.nav > li.disabled > a:focus {
color: #777777;
text-decoration: none;
background-color: transparent;
cursor: not-allowed;
}
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
background-color: #eeeeee;
border-color: #337ab7;
}
.nav .nav-divider {
height: 1px;
margin: 8px 0;
overflow: hidden;
background-color: #e5e5e5;
}
.nav > li > a > img {
max-width: none;
}
.nav-tabs {
border-bottom: 1px solid #ddd;
}
.nav-tabs > li {
float: left;
margin-bottom: -1px;
}
.nav-tabs > li > a {
margin-right: 2px;
line-height: 1.42857143;
border: 1px solid transparent;
border-radius: 2px 2px 0 0;
}
.nav-tabs > li > a:hover {
border-color: #eeeeee #eeeeee #ddd;
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
color: #555555;
background-color: #fff;
border: 1px solid #ddd;
border-bottom-color: transparent;
cursor: default;
}
.nav-tabs.nav-justified {
width: 100%;
border-bottom: 0;
}
.nav-tabs.nav-justified > li {
float: none;
}
.nav-tabs.nav-justified > li > a {
text-align: center;
margin-bottom: 5px;
}
.nav-tabs.nav-justified > .dropdown .dropdown-menu {
top: auto;
left: auto;
}
@media (min-width: 768px) {
.nav-tabs.nav-justified > li {
display: table-cell;
width: 1%;
}
.nav-tabs.nav-justified > li > a {
margin-bottom: 0;
}
}
.nav-tabs.nav-justified > li > a {
margin-right: 0;
border-radius: 2px;
}
.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:focus {
border: 1px solid #ddd;
}
@media (min-width: 768px) {
.nav-tabs.nav-justified > li > a {
border-bottom: 1px solid #ddd;
border-radius: 2px 2px 0 0;
}
.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:focus {
border-bottom-color: #fff;
}
}
.nav-pills > li {
float: left;
}
.nav-pills > li > a {
border-radius: 2px;
}
.nav-pills > li + li {
margin-left: 2px;
}
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
color: #fff;
background-color: #337ab7;
}
.nav-stacked > li {
float: none;
}
.nav-stacked > li + li {
margin-top: 2px;
margin-left: 0;
}
.nav-justified {
width: 100%;
}
.nav-justified > li {
float: none;
}
.nav-justified > li > a {
text-align: center;
margin-bottom: 5px;
}
.nav-justified > .dropdown .dropdown-menu {
top: auto;
left: auto;
}
@media (min-width: 768px) {
.nav-justified > li {
display: table-cell;
width: 1%;
}
.nav-justified > li > a {
margin-bottom: 0;
}
}
.nav-tabs-justified {
border-bottom: 0;
}
.nav-tabs-justified > li > a {
margin-right: 0;
border-radius: 2px;
}
.nav-tabs-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus {
border: 1px solid #ddd;
}
@media (min-width: 768px) {
.nav-tabs-justified > li > a {
border-bottom: 1px solid #ddd;
border-radius: 2px 2px 0 0;
}
.nav-tabs-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus {
border-bottom-color: #fff;
}
}
.tab-content > .tab-pane {
display: none;
}
.tab-content > .active {
display: block;
}
.nav-tabs .dropdown-menu {
margin-top: -1px;
border-top-right-radius: 0;
border-top-left-radius: 0;
}
.navbar {
position: relative;
min-height: 30px;
margin-bottom: 18px;
border: 1px solid transparent;
}
@media (min-width: 541px) {
.navbar {
border-radius: 2px;
}
}
@media (min-width: 541px) {
.navbar-header {
float: left;
}
}
.navbar-collapse {
overflow-x: visible;
padding-right: 0px;
padding-left: 0px;
border-top: 1px solid transparent;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
-webkit-overflow-scrolling: touch;
}
.navbar-collapse.in {
overflow-y: auto;
}
@media (min-width: 541px) {
.navbar-collapse {
width: auto;
border-top: 0;
box-shadow: none;
}
.navbar-collapse.collapse {
display: block !important;
height: auto !important;
padding-bottom: 0;
overflow: visible !important;
}
.navbar-collapse.in {
overflow-y: visible;
}
.navbar-fixed-top .navbar-collapse,
.navbar-static-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
padding-left: 0;
padding-right: 0;
}
}
.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
max-height: 340px;
}
@media (max-device-width: 540px) and (orientation: landscape) {
.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
max-height: 200px;
}
}
.container > .navbar-header,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
margin-right: 0px;
margin-left: 0px;
}
@media (min-width: 541px) {
.container > .navbar-header,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
margin-right: 0;
margin-left: 0;
}
}
.navbar-static-top {
z-index: 1000;
border-width: 0 0 1px;
}
@media (min-width: 541px) {
.navbar-static-top {
border-radius: 0;
}
}
.navbar-fixed-top,
.navbar-fixed-bottom {
position: fixed;
right: 0;
left: 0;
z-index: 1030;
}
@media (min-width: 541px) {
.navbar-fixed-top,
.navbar-fixed-bottom {
border-radius: 0;
}
}
.navbar-fixed-top {
top: 0;
border-width: 0 0 1px;
}
.navbar-fixed-bottom {
bottom: 0;
margin-bottom: 0;
border-width: 1px 0 0;
}
.navbar-brand {
float: left;
padding: 6px 0px;
font-size: 17px;
line-height: 18px;
height: 30px;
}
.navbar-brand:hover,
.navbar-brand:focus {
text-decoration: none;
}
.navbar-brand > img {
display: block;
}
@media (min-width: 541px) {
.navbar > .container .navbar-brand,
.navbar > .container-fluid .navbar-brand {
margin-left: 0px;
}
}
.navbar-toggle {
position: relative;
float: right;
margin-right: 0px;
padding: 9px 10px;
margin-top: -2px;
margin-bottom: -2px;
background-color: transparent;
background-image: none;
border: 1px solid transparent;
border-radius: 2px;
}
.navbar-toggle:focus {
outline: 0;
}
.navbar-toggle .icon-bar {
display: block;
width: 22px;
height: 2px;
border-radius: 1px;
}
.navbar-toggle .icon-bar + .icon-bar {
margin-top: 4px;
}
@media (min-width: 541px) {
.navbar-toggle {
display: none;
}
}
.navbar-nav {
margin: 3px 0px;
}
.navbar-nav > li > a {
padding-top: 10px;
padding-bottom: 10px;
line-height: 18px;
}
@media (max-width: 540px) {
.navbar-nav .open .dropdown-menu {
position: static;
float: none;
width: auto;
margin-top: 0;
background-color: transparent;
border: 0;
box-shadow: none;
}
.navbar-nav .open .dropdown-menu > li > a,
.navbar-nav .open .dropdown-menu .dropdown-header {
padding: 5px 15px 5px 25px;
}
.navbar-nav .open .dropdown-menu > li > a {
line-height: 18px;
}
.navbar-nav .open .dropdown-menu > li > a:hover,
.navbar-nav .open .dropdown-menu > li > a:focus {
background-image: none;
}
}
@media (min-width: 541px) {
.navbar-nav {
float: left;
margin: 0;
}
.navbar-nav > li {
float: left;
}
.navbar-nav > li > a {
padding-top: 6px;
padding-bottom: 6px;
}
}
.navbar-form {
margin-left: 0px;
margin-right: 0px;
padding: 10px 0px;
border-top: 1px solid transparent;
border-bottom: 1px solid transparent;
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
margin-top: -1px;
margin-bottom: -1px;
}
@media (min-width: 768px) {
.navbar-form .form-group {
display: inline-block;
margin-bottom: 0;
vertical-align: middle;
}
.navbar-form .form-control {
display: inline-block;
width: auto;
vertical-align: middle;
}
.navbar-form .form-control-static {
display: inline-block;
}
.navbar-form .input-group {
display: inline-table;
vertical-align: middle;
}
.navbar-form .input-group .input-group-addon,
.navbar-form .input-group .input-group-btn,
.navbar-form .input-group .form-control {
width: auto;
}
.navbar-form .input-group > .form-control {
width: 100%;
}
.navbar-form .control-label {
margin-bottom: 0;
vertical-align: middle;
}
.navbar-form .radio,
.navbar-form .checkbox {
display: inline-block;
margin-top: 0;
margin-bottom: 0;
vertical-align: middle;
}
.navbar-form .radio label,
.navbar-form .checkbox label {
padding-left: 0;
}
.navbar-form .radio input[type="radio"],
.navbar-form .checkbox input[type="checkbox"] {
position: relative;
margin-left: 0;
}
.navbar-form .has-feedback .form-control-feedback {
top: 0;
}
}
@media (max-width: 540px) {
.navbar-form .form-group {
margin-bottom: 5px;
}
.navbar-form .form-group:last-child {
margin-bottom: 0;
}
}
@media (min-width: 541px) {
.navbar-form {
width: auto;
border: 0;
margin-left: 0;
margin-right: 0;
padding-top: 0;
padding-bottom: 0;
-webkit-box-shadow: none;
box-shadow: none;
}
}
.navbar-nav > li > .dropdown-menu {
margin-top: 0;
border-top-right-radius: 0;
border-top-left-radius: 0;
}
.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
margin-bottom: 0;
border-top-right-radius: 2px;
border-top-left-radius: 2px;
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
}
.navbar-btn {
margin-top: -1px;
margin-bottom: -1px;
}
.navbar-btn.btn-sm {
margin-top: 0px;
margin-bottom: 0px;
}
.navbar-btn.btn-xs {
margin-top: 4px;
margin-bottom: 4px;
}
.navbar-text {
margin-top: 6px;
margin-bottom: 6px;
}
@media (min-width: 541px) {
.navbar-text {
float: left;
margin-left: 0px;
margin-right: 0px;
}
}
@media (min-width: 541px) {
.navbar-left {
float: left !important;
float: left;
}
.navbar-right {
float: right !important;
float: right;
margin-right: 0px;
}
.navbar-right ~ .navbar-right {
margin-right: 0;
}
}
.navbar-default {
background-color: #f8f8f8;
border-color: #e7e7e7;
}
.navbar-default .navbar-brand {
color: #777;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
color: #5e5e5e;
background-color: transparent;
}
.navbar-default .navbar-text {
color: #777;
}
.navbar-default .navbar-nav > li > a {
color: #777;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
color: #333;
background-color: transparent;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
color: #555;
background-color: #e7e7e7;
}
.navbar-default .navbar-nav > .disabled > a,
.navbar-default .navbar-nav > .disabled > a:hover,
.navbar-default .navbar-nav > .disabled > a:focus {
color: #ccc;
background-color: transparent;
}
.navbar-default .navbar-toggle {
border-color: #ddd;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
background-color: #ddd;
}
.navbar-default .navbar-toggle .icon-bar {
background-color: #888;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
border-color: #e7e7e7;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
background-color: #e7e7e7;
color: #555;
}
@media (max-width: 540px) {
.navbar-default .navbar-nav .open .dropdown-menu > li > a {
color: #777;
}
.navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
.navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
color: #333;
background-color: transparent;
}
.navbar-default .navbar-nav .open .dropdown-menu > .active > a,
.navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
.navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
color: #555;
background-color: #e7e7e7;
}
.navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,
.navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,
.navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
color: #ccc;
background-color: transparent;
}
}
.navbar-default .navbar-link {
color: #777;
}
.navbar-default .navbar-link:hover {
color: #333;
}
.navbar-default .btn-link {
color: #777;
}
.navbar-default .btn-link:hover,
.navbar-default .btn-link:focus {
color: #333;
}
.navbar-default .btn-link[disabled]:hover,
fieldset[disabled] .navbar-default .btn-link:hover,
.navbar-default .btn-link[disabled]:focus,
fieldset[disabled] .navbar-default .btn-link:focus {
color: #ccc;
}
.navbar-inverse {
background-color: #222;
border-color: #080808;
}
.navbar-inverse .navbar-brand {
color: #9d9d9d;
}
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
color: #fff;
background-color: transparent;
}
.navbar-inverse .navbar-text {
color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a {
color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus {
color: #fff;
background-color: transparent;
}
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus {
color: #fff;
background-color: #080808;
}
.navbar-inverse .navbar-nav > .disabled > a,
.navbar-inverse .navbar-nav > .disabled > a:hover,
.navbar-inverse .navbar-nav > .disabled > a:focus {
color: #444;
background-color: transparent;
}
.navbar-inverse .navbar-toggle {
border-color: #333;
}
.navbar-inverse .navbar-toggle:hover,
.navbar-inverse .navbar-toggle:focus {
background-color: #333;
}
.navbar-inverse .navbar-toggle .icon-bar {
background-color: #fff;
}
.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
border-color: #101010;
}
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
background-color: #080808;
color: #fff;
}
@media (max-width: 540px) {
.navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
border-color: #080808;
}
.navbar-inverse .navbar-nav .open .dropdown-menu .divider {
background-color: #080808;
}
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
color: #9d9d9d;
}
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
color: #fff;
background-color: transparent;
}
.navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
.navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,
.navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
color: #fff;
background-color: #080808;
}
.navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,
.navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,
.navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
color: #444;
background-color: transparent;
}
}
.navbar-inverse .navbar-link {
color: #9d9d9d;
}
.navbar-inverse .navbar-link:hover {
color: #fff;
}
.navbar-inverse .btn-link {
color: #9d9d9d;
}
.navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link:focus {
color: #fff;
}
.navbar-inverse .btn-link[disabled]:hover,
fieldset[disabled] .navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link[disabled]:focus,
fieldset[disabled] .navbar-inverse .btn-link:focus {
color: #444;
}
.breadcrumb {
padding: 8px 15px;
margin-bottom: 18px;
list-style: none;
background-color: #f5f5f5;
border-radius: 2px;
}
.breadcrumb > li {
display: inline-block;
}
.breadcrumb > li + li:before {
content: "/\00a0";
padding: 0 5px;
color: #5e5e5e;
}
.breadcrumb > .active {
color: #777777;
}
.pagination {
display: inline-block;
padding-left: 0;
margin: 18px 0;
border-radius: 2px;
}
.pagination > li {
display: inline;
}
.pagination > li > a,
.pagination > li > span {
position: relative;
float: left;
padding: 6px 12px;
line-height: 1.42857143;
text-decoration: none;
color: #337ab7;
background-color: #fff;
border: 1px solid #ddd;
margin-left: -1px;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
margin-left: 0;
border-bottom-left-radius: 2px;
border-top-left-radius: 2px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
border-bottom-right-radius: 2px;
border-top-right-radius: 2px;
}
.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
z-index: 2;
color: #23527c;
background-color: #eeeeee;
border-color: #ddd;
}
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
z-index: 3;
color: #fff;
background-color: #337ab7;
border-color: #337ab7;
cursor: default;
}
.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
color: #777777;
background-color: #fff;
border-color: #ddd;
cursor: not-allowed;
}
.pagination-lg > li > a,
.pagination-lg > li > span {
padding: 10px 16px;
font-size: 17px;
line-height: 1.3333333;
}
.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
border-bottom-left-radius: 3px;
border-top-left-radius: 3px;
}
.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
border-bottom-right-radius: 3px;
border-top-right-radius: 3px;
}
.pagination-sm > li > a,
.pagination-sm > li > span {
padding: 5px 10px;
font-size: 12px;
line-height: 1.5;
}
.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
border-bottom-left-radius: 1px;
border-top-left-radius: 1px;
}
.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
border-bottom-right-radius: 1px;
border-top-right-radius: 1px;
}
.pager {
padding-left: 0;
margin: 18px 0;
list-style: none;
text-align: center;
}
.pager li {
display: inline;
}
.pager li > a,
.pager li > span {
display: inline-block;
padding: 5px 14px;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 15px;
}
.pager li > a:hover,
.pager li > a:focus {
text-decoration: none;
background-color: #eeeeee;
}
.pager .next > a,
.pager .next > span {
float: right;
}
.pager .previous > a,
.pager .previous > span {
float: left;
}
.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
color: #777777;
background-color: #fff;
cursor: not-allowed;
}
.label {
display: inline;
padding: .2em .6em .3em;
font-size: 75%;
font-weight: bold;
line-height: 1;
color: #fff;
text-align: center;
white-space: nowrap;
vertical-align: baseline;
border-radius: .25em;
}
a.label:hover,
a.label:focus {
color: #fff;
text-decoration: none;
cursor: pointer;
}
.label:empty {
display: none;
}
.btn .label {
position: relative;
top: -1px;
}
.label-default {
background-color: #777777;
}
.label-default[href]:hover,
.label-default[href]:focus {
background-color: #5e5e5e;
}
.label-primary {
background-color: #337ab7;
}
.label-primary[href]:hover,
.label-primary[href]:focus {
background-color: #286090;
}
.label-success {
background-color: #5cb85c;
}
.label-success[href]:hover,
.label-success[href]:focus {
background-color: #449d44;
}
.label-info {
background-color: #5bc0de;
}
.label-info[href]:hover,
.label-info[href]:focus {
background-color: #31b0d5;
}
.label-warning {
background-color: #f0ad4e;
}
.label-warning[href]:hover,
.label-warning[href]:focus {
background-color: #ec971f;
}
.label-danger {
background-color: #d9534f;
}
.label-danger[href]:hover,
.label-danger[href]:focus {
background-color: #c9302c;
}
.badge {
display: inline-block;
min-width: 10px;
padding: 3px 7px;
font-size: 12px;
font-weight: bold;
color: #fff;
line-height: 1;
vertical-align: middle;
white-space: nowrap;
text-align: center;
background-color: #777777;
border-radius: 10px;
}
.badge:empty {
display: none;
}
.btn .badge {
position: relative;
top: -1px;
}
.btn-xs .badge,
.btn-group-xs > .btn .badge {
top: 0;
padding: 1px 5px;
}
a.badge:hover,
a.badge:focus {
color: #fff;
text-decoration: none;
cursor: pointer;
}
.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
color: #337ab7;
background-color: #fff;
}
.list-group-item > .badge {
float: right;
}
.list-group-item > .badge + .badge {
margin-right: 5px;
}
.nav-pills > li > a > .badge {
margin-left: 3px;
}
.jumbotron {
padding-top: 30px;
padding-bottom: 30px;
margin-bottom: 30px;
color: inherit;
background-color: #eeeeee;
}
.jumbotron h1,
.jumbotron .h1 {
color: inherit;
}
.jumbotron p {
margin-bottom: 15px;
font-size: 20px;
font-weight: 200;
}
.jumbotron > hr {
border-top-color: #d5d5d5;
}
.container .jumbotron,
.container-fluid .jumbotron {
border-radius: 3px;
padding-left: 0px;
padding-right: 0px;
}
.jumbotron .container {
max-width: 100%;
}
@media screen and (min-width: 768px) {
.jumbotron {
padding-top: 48px;
padding-bottom: 48px;
}
.container .jumbotron,
.container-fluid .jumbotron {
padding-left: 60px;
padding-right: 60px;
}
.jumbotron h1,
.jumbotron .h1 {
font-size: 59px;
}
}
.thumbnail {
display: block;
padding: 4px;
margin-bottom: 18px;
line-height: 1.42857143;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 2px;
-webkit-transition: border 0.2s ease-in-out;
-o-transition: border 0.2s ease-in-out;
transition: border 0.2s ease-in-out;
}
.thumbnail > img,
.thumbnail a > img {
margin-left: auto;
margin-right: auto;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
border-color: #337ab7;
}
.thumbnail .caption {
padding: 9px;
color: #000;
}
.alert {
padding: 15px;
margin-bottom: 18px;
border: 1px solid transparent;
border-radius: 2px;
}
.alert h4 {
margin-top: 0;
color: inherit;
}
.alert .alert-link {
font-weight: bold;
}
.alert > p,
.alert > ul {
margin-bottom: 0;
}
.alert > p + p {
margin-top: 5px;
}
.alert-dismissable,
.alert-dismissible {
padding-right: 35px;
}
.alert-dismissable .close,
.alert-dismissible .close {
position: relative;
top: -2px;
right: -21px;
color: inherit;
}
.alert-success {
background-color: #dff0d8;
border-color: #d6e9c6;
color: #3c763d;
}
.alert-success hr {
border-top-color: #c9e2b3;
}
.alert-success .alert-link {
color: #2b542c;
}
.alert-info {
background-color: #d9edf7;
border-color: #bce8f1;
color: #31708f;
}
.alert-info hr {
border-top-color: #a6e1ec;
}
.alert-info .alert-link {
color: #245269;
}
.alert-warning {
background-color: #fcf8e3;
border-color: #faebcc;
color: #8a6d3b;
}
.alert-warning hr {
border-top-color: #f7e1b5;
}
.alert-warning .alert-link {
color: #66512c;
}
.alert-danger {
background-color: #f2dede;
border-color: #ebccd1;
color: #a94442;
}
.alert-danger hr {
border-top-color: #e4b9c0;
}
.alert-danger .alert-link {
color: #843534;
}
@-webkit-keyframes progress-bar-stripes {
from {
background-position: 40px 0;
}
to {
background-position: 0 0;
}
}
@keyframes progress-bar-stripes {
from {
background-position: 40px 0;
}
to {
background-position: 0 0;
}
}
.progress {
overflow: hidden;
height: 18px;
margin-bottom: 18px;
background-color: #f5f5f5;
border-radius: 2px;
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}
.progress-bar {
float: left;
width: 0%;
height: 100%;
font-size: 12px;
line-height: 18px;
color: #fff;
text-align: center;
background-color: #337ab7;
-webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
-webkit-transition: width 0.6s ease;
-o-transition: width 0.6s ease;
transition: width 0.6s ease;
}
.progress-striped .progress-bar,
.progress-bar-striped {
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-size: 40px 40px;
}
.progress.active .progress-bar,
.progress-bar.active {
-webkit-animation: progress-bar-stripes 2s linear infinite;
-o-animation: progress-bar-stripes 2s linear infinite;
animation: progress-bar-stripes 2s linear infinite;
}
.progress-bar-success {
background-color: #5cb85c;
}
.progress-striped .progress-bar-success {
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-info {
background-color: #5bc0de;
}
.progress-striped .progress-bar-info {
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-warning {
background-color: #f0ad4e;
}
.progress-striped .progress-bar-warning {
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-danger {
background-color: #d9534f;
}
.progress-striped .progress-bar-danger {
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.media {
margin-top: 15px;
}
.media:first-child {
margin-top: 0;
}
.media,
.media-body {
zoom: 1;
overflow: hidden;
}
.media-body {
width: 10000px;
}
.media-object {
display: block;
}
.media-object.img-thumbnail {
max-width: none;
}
.media-right,
.media > .pull-right {
padding-left: 10px;
}
.media-left,
.media > .pull-left {
padding-right: 10px;
}
.media-left,
.media-right,
.media-body {
display: table-cell;
vertical-align: top;
}
.media-middle {
vertical-align: middle;
}
.media-bottom {
vertical-align: bottom;
}
.media-heading {
margin-top: 0;
margin-bottom: 5px;
}
.media-list {
padding-left: 0;
list-style: none;
}
.list-group {
margin-bottom: 20px;
padding-left: 0;
}
.list-group-item {
position: relative;
display: block;
padding: 10px 15px;
margin-bottom: -1px;
background-color: #fff;
border: 1px solid #ddd;
}
.list-group-item:first-child {
border-top-right-radius: 2px;
border-top-left-radius: 2px;
}
.list-group-item:last-child {
margin-bottom: 0;
border-bottom-right-radius: 2px;
border-bottom-left-radius: 2px;
}
a.list-group-item,
button.list-group-item {
color: #555;
}
a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
color: #333;
}
a.list-group-item:hover,
button.list-group-item:hover,
a.list-group-item:focus,
button.list-group-item:focus {
text-decoration: none;
color: #555;
background-color: #f5f5f5;
}
button.list-group-item {
width: 100%;
text-align: left;
}
.list-group-item.disabled,
.list-group-item.disabled:hover,
.list-group-item.disabled:focus {
background-color: #eeeeee;
color: #777777;
cursor: not-allowed;
}
.list-group-item.disabled .list-group-item-heading,
.list-group-item.disabled:hover .list-group-item-heading,
.list-group-item.disabled:focus .list-group-item-heading {
color: inherit;
}
.list-group-item.disabled .list-group-item-text,
.list-group-item.disabled:hover .list-group-item-text,
.list-group-item.disabled:focus .list-group-item-text {
color: #777777;
}
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
z-index: 2;
color: #fff;
background-color: #337ab7;
border-color: #337ab7;
}
.list-group-item.active .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small,
.list-group-item.active:hover .list-group-item-heading > .small,
.list-group-item.active:focus .list-group-item-heading > .small {
color: inherit;
}
.list-group-item.active .list-group-item-text,
.list-group-item.active:hover .list-group-item-text,
.list-group-item.active:focus .list-group-item-text {
color: #c7ddef;
}
.list-group-item-success {
color: #3c763d;
background-color: #dff0d8;
}
a.list-group-item-success,
button.list-group-item-success {
color: #3c763d;
}
a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
color: inherit;
}
a.list-group-item-success:hover,
button.list-group-item-success:hover,
a.list-group-item-success:focus,
button.list-group-item-success:focus {
color: #3c763d;
background-color: #d0e9c6;
}
a.list-group-item-success.active,
button.list-group-item-success.active,
a.list-group-item-success.active:hover,
button.list-group-item-success.active:hover,
a.list-group-item-success.active:focus,
button.list-group-item-success.active:focus {
color: #fff;
background-color: #3c763d;
border-color: #3c763d;
}
.list-group-item-info {
color: #31708f;
background-color: #d9edf7;
}
a.list-group-item-info,
button.list-group-item-info {
color: #31708f;
}
a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
color: inherit;
}
a.list-group-item-info:hover,
button.list-group-item-info:hover,
a.list-group-item-info:focus,
button.list-group-item-info:focus {
color: #31708f;
background-color: #c4e3f3;
}
a.list-group-item-info.active,
button.list-group-item-info.active,
a.list-group-item-info.active:hover,
button.list-group-item-info.active:hover,
a.list-group-item-info.active:focus,
button.list-group-item-info.active:focus {
color: #fff;
background-color: #31708f;
border-color: #31708f;
}
.list-group-item-warning {
color: #8a6d3b;
background-color: #fcf8e3;
}
a.list-group-item-warning,
button.list-group-item-warning {
color: #8a6d3b;
}
a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
color: inherit;
}
a.list-group-item-warning:hover,
button.list-group-item-warning:hover,
a.list-group-item-warning:focus,
button.list-group-item-warning:focus {
color: #8a6d3b;
background-color: #faf2cc;
}
a.list-group-item-warning.active,
button.list-group-item-warning.active,
a.list-group-item-warning.active:hover,
button.list-group-item-warning.active:hover,
a.list-group-item-warning.active:focus,
button.list-group-item-warning.active:focus {
color: #fff;
background-color: #8a6d3b;
border-color: #8a6d3b;
}
.list-group-item-danger {
color: #a94442;
background-color: #f2dede;
}
a.list-group-item-danger,
button.list-group-item-danger {
color: #a94442;
}
a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
color: inherit;
}
a.list-group-item-danger:hover,
button.list-group-item-danger:hover,
a.list-group-item-danger:focus,
button.list-group-item-danger:focus {
color: #a94442;
background-color: #ebcccc;
}
a.list-group-item-danger.active,
button.list-group-item-danger.active,
a.list-group-item-danger.active:hover,
button.list-group-item-danger.active:hover,
a.list-group-item-danger.active:focus,
button.list-group-item-danger.active:focus {
color: #fff;
background-color: #a94442;
border-color: #a94442;
}
.list-group-item-heading {
margin-top: 0;
margin-bottom: 5px;
}
.list-group-item-text {
margin-bottom: 0;
line-height: 1.3;
}
.panel {
margin-bottom: 18px;
background-color: #fff;
border: 1px solid transparent;
border-radius: 2px;
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.panel-body {
padding: 15px;
}
.panel-heading {
padding: 10px 15px;
border-bottom: 1px solid transparent;
border-top-right-radius: 1px;
border-top-left-radius: 1px;
}
.panel-heading > .dropdown .dropdown-toggle {
color: inherit;
}
.panel-title {
margin-top: 0;
margin-bottom: 0;
font-size: 15px;
color: inherit;
}
.panel-title > a,
.panel-title > small,
.panel-title > .small,
.panel-title > small > a,
.panel-title > .small > a {
color: inherit;
}
.panel-footer {
padding: 10px 15px;
background-color: #f5f5f5;
border-top: 1px solid #ddd;
border-bottom-right-radius: 1px;
border-bottom-left-radius: 1px;
}
.panel > .list-group,
.panel > .panel-collapse > .list-group {
margin-bottom: 0;
}
.panel > .list-group .list-group-item,
.panel > .panel-collapse > .list-group .list-group-item {
border-width: 1px 0;
border-radius: 0;
}
.panel > .list-group:first-child .list-group-item:first-child,
.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
border-top: 0;
border-top-right-radius: 1px;
border-top-left-radius: 1px;
}
.panel > .list-group:last-child .list-group-item:last-child,
.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
border-bottom: 0;
border-bottom-right-radius: 1px;
border-bottom-left-radius: 1px;
}
.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
border-top-right-radius: 0;
border-top-left-radius: 0;
}
.panel-heading + .list-group .list-group-item:first-child {
border-top-width: 0;
}
.list-group + .panel-footer {
border-top-width: 0;
}
.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
margin-bottom: 0;
}
.panel > .table caption,
.panel > .table-responsive > .table caption,
.panel > .panel-collapse > .table caption {
padding-left: 15px;
padding-right: 15px;
}
.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
border-top-right-radius: 1px;
border-top-left-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
border-top-left-radius: 1px;
border-top-right-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
border-top-left-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
border-top-right-radius: 1px;
}
.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
border-bottom-right-radius: 1px;
border-bottom-left-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
border-bottom-left-radius: 1px;
border-bottom-right-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
border-bottom-left-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
border-bottom-right-radius: 1px;
}
.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
border-top: 1px solid #ddd;
}
.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
border-top: 0;
}
.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
border: 0;
}
.panel > .table-bordered > thead > tr > th:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
.panel > .table-bordered > tbody > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
.panel > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-bordered > thead > tr > td:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
.panel > .table-bordered > tbody > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
.panel > .table-bordered > tfoot > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
border-left: 0;
}
.panel > .table-bordered > thead > tr > th:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
.panel > .table-bordered > tbody > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
.panel > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-bordered > thead > tr > td:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
.panel > .table-bordered > tbody > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
.panel > .table-bordered > tfoot > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
border-right: 0;
}
.panel > .table-bordered > thead > tr:first-child > td,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
.panel > .table-bordered > tbody > tr:first-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
.panel > .table-bordered > thead > tr:first-child > th,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
.panel > .table-bordered > tbody > tr:first-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
border-bottom: 0;
}
.panel > .table-bordered > tbody > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
.panel > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-bordered > tbody > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
.panel > .table-bordered > tfoot > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
border-bottom: 0;
}
.panel > .table-responsive {
border: 0;
margin-bottom: 0;
}
.panel-group {
margin-bottom: 18px;
}
.panel-group .panel {
margin-bottom: 0;
border-radius: 2px;
}
.panel-group .panel + .panel {
margin-top: 5px;
}
.panel-group .panel-heading {
border-bottom: 0;
}
.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group {
border-top: 1px solid #ddd;
}
.panel-group .panel-footer {
border-top: 0;
}
.panel-group .panel-footer + .panel-collapse .panel-body {
border-bottom: 1px solid #ddd;
}
.panel-default {
border-color: #ddd;
}
.panel-default > .panel-heading {
color: #333333;
background-color: #f5f5f5;
border-color: #ddd;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body {
border-top-color: #ddd;
}
.panel-default > .panel-heading .badge {
color: #f5f5f5;
background-color: #333333;
}
.panel-default > .panel-footer + .panel-collapse > .panel-body {
border-bottom-color: #ddd;
}
.panel-primary {
border-color: #337ab7;
}
.panel-primary > .panel-heading {
color: #fff;
background-color: #337ab7;
border-color: #337ab7;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
border-top-color: #337ab7;
}
.panel-primary > .panel-heading .badge {
color: #337ab7;
background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
border-bottom-color: #337ab7;
}
.panel-success {
border-color: #d6e9c6;
}
.panel-success > .panel-heading {
color: #3c763d;
background-color: #dff0d8;
border-color: #d6e9c6;
}
.panel-success > .panel-heading + .panel-collapse > .panel-body {
border-top-color: #d6e9c6;
}
.panel-success > .panel-heading .badge {
color: #dff0d8;
background-color: #3c763d;
}
.panel-success > .panel-footer + .panel-collapse > .panel-body {
border-bottom-color: #d6e9c6;
}
.panel-info {
border-color: #bce8f1;
}
.panel-info > .panel-heading {
color: #31708f;
background-color: #d9edf7;
border-color: #bce8f1;
}
.panel-info > .panel-heading + .panel-collapse > .panel-body {
border-top-color: #bce8f1;
}
.panel-info > .panel-heading .badge {
color: #d9edf7;
background-color: #31708f;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
border-bottom-color: #bce8f1;
}
.panel-warning {
border-color: #faebcc;
}
.panel-warning > .panel-heading {
color: #8a6d3b;
background-color: #fcf8e3;
border-color: #faebcc;
}
.panel-warning > .panel-heading + .panel-collapse > .panel-body {
border-top-color: #faebcc;
}
.panel-warning > .panel-heading .badge {
color: #fcf8e3;
background-color: #8a6d3b;
}
.panel-warning > .panel-footer + .panel-collapse > .panel-body {
border-bottom-color: #faebcc;
}
.panel-danger {
border-color: #ebccd1;
}
.panel-danger > .panel-heading {
color: #a94442;
background-color: #f2dede;
border-color: #ebccd1;
}
.panel-danger > .panel-heading + .panel-collapse > .panel-body {
border-top-color: #ebccd1;
}
.panel-danger > .panel-heading .badge {
color: #f2dede;
background-color: #a94442;
}
.panel-danger > .panel-footer + .panel-collapse > .panel-body {
border-bottom-color: #ebccd1;
}
.embed-responsive {
position: relative;
display: block;
height: 0;
padding: 0;
overflow: hidden;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
position: absolute;
top: 0;
left: 0;
bottom: 0;
height: 100%;
width: 100%;
border: 0;
}
.embed-responsive-16by9 {
padding-bottom: 56.25%;
}
.embed-responsive-4by3 {
padding-bottom: 75%;
}
.well {
min-height: 20px;
padding: 19px;
margin-bottom: 20px;
background-color: #f5f5f5;
border: 1px solid #e3e3e3;
border-radius: 2px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}
.well blockquote {
border-color: #ddd;
border-color: rgba(0, 0, 0, 0.15);
}
.well-lg {
padding: 24px;
border-radius: 3px;
}
.well-sm {
padding: 9px;
border-radius: 1px;
}
.close {
float: right;
font-size: 19.5px;
font-weight: bold;
line-height: 1;
color: #000;
text-shadow: 0 1px 0 #fff;
opacity: 0.2;
filter: alpha(opacity=20);
}
.close:hover,
.close:focus {
color: #000;
text-decoration: none;
cursor: pointer;
opacity: 0.5;
filter: alpha(opacity=50);
}
button.close {
padding: 0;
cursor: pointer;
background: transparent;
border: 0;
-webkit-appearance: none;
}
.modal-open {
overflow: hidden;
}
.modal {
display: none;
overflow: hidden;
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1050;
-webkit-overflow-scrolling: touch;
outline: 0;
}
.modal.fade .modal-dialog {
-webkit-transform: translate(0, -25%);
-ms-transform: translate(0, -25%);
-o-transform: translate(0, -25%);
transform: translate(0, -25%);
-webkit-transition: -webkit-transform 0.3s ease-out;
-moz-transition: -moz-transform 0.3s ease-out;
-o-transition: -o-transform 0.3s ease-out;
transition: transform 0.3s ease-out;
}
.modal.in .modal-dialog {
-webkit-transform: translate(0, 0);
-ms-transform: translate(0, 0);
-o-transform: translate(0, 0);
transform: translate(0, 0);
}
.modal-open .modal {
overflow-x: hidden;
overflow-y: auto;
}
.modal-dialog {
position: relative;
width: auto;
margin: 10px;
}
.modal-content {
position: relative;
background-color: #fff;
border: 1px solid #999;
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 3px;
-webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
background-clip: padding-box;
outline: 0;
}
.modal-backdrop {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1040;
background-color: #000;
}
.modal-backdrop.fade {
opacity: 0;
filter: alpha(opacity=0);
}
.modal-backdrop.in {
opacity: 0.5;
filter: alpha(opacity=50);
}
.modal-header {
padding: 15px;
border-bottom: 1px solid #e5e5e5;
}
.modal-header .close {
margin-top: -2px;
}
.modal-title {
margin: 0;
line-height: 1.42857143;
}
.modal-body {
position: relative;
padding: 15px;
}
.modal-footer {
padding: 15px;
text-align: right;
border-top: 1px solid #e5e5e5;
}
.modal-footer .btn + .btn {
margin-left: 5px;
margin-bottom: 0;
}
.modal-footer .btn-group .btn + .btn {
margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
margin-left: 0;
}
.modal-scrollbar-measure {
position: absolute;
top: -9999px;
width: 50px;
height: 50px;
overflow: scroll;
}
@media (min-width: 768px) {
.modal-dialog {
width: 600px;
margin: 30px auto;
}
.modal-content {
-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
}
.modal-sm {
width: 300px;
}
}
@media (min-width: 992px) {
.modal-lg {
width: 900px;
}
}
.tooltip {
position: absolute;
z-index: 1070;
display: block;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-style: normal;
font-weight: normal;
letter-spacing: normal;
line-break: auto;
line-height: 1.42857143;
text-align: left;
text-align: start;
text-decoration: none;
text-shadow: none;
text-transform: none;
white-space: normal;
word-break: normal;
word-spacing: normal;
word-wrap: normal;
font-size: 12px;
opacity: 0;
filter: alpha(opacity=0);
}
.tooltip.in {
opacity: 0.9;
filter: alpha(opacity=90);
}
.tooltip.top {
margin-top: -3px;
padding: 5px 0;
}
.tooltip.right {
margin-left: 3px;
padding: 0 5px;
}
.tooltip.bottom {
margin-top: 3px;
padding: 5px 0;
}
.tooltip.left {
margin-left: -3px;
padding: 0 5px;
}
.tooltip-inner {
max-width: 200px;
padding: 3px 8px;
color: #fff;
text-align: center;
background-color: #000;
border-radius: 2px;
}
.tooltip-arrow {
position: absolute;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
}
.tooltip.top .tooltip-arrow {
bottom: 0;
left: 50%;
margin-left: -5px;
border-width: 5px 5px 0;
border-top-color: #000;
}
.tooltip.top-left .tooltip-arrow {
bottom: 0;
right: 5px;
margin-bottom: -5px;
border-width: 5px 5px 0;
border-top-color: #000;
}
.tooltip.top-right .tooltip-arrow {
bottom: 0;
left: 5px;
margin-bottom: -5px;
border-width: 5px 5px 0;
border-top-color: #000;
}
.tooltip.right .tooltip-arrow {
top: 50%;
left: 0;
margin-top: -5px;
border-width: 5px 5px 5px 0;
border-right-color: #000;
}
.tooltip.left .tooltip-arrow {
top: 50%;
right: 0;
margin-top: -5px;
border-width: 5px 0 5px 5px;
border-left-color: #000;
}
.tooltip.bottom .tooltip-arrow {
top: 0;
left: 50%;
margin-left: -5px;
border-width: 0 5px 5px;
border-bottom-color: #000;
}
.tooltip.bottom-left .tooltip-arrow {
top: 0;
right: 5px;
margin-top: -5px;
border-width: 0 5px 5px;
border-bottom-color: #000;
}
.tooltip.bottom-right .tooltip-arrow {
top: 0;
left: 5px;
margin-top: -5px;
border-width: 0 5px 5px;
border-bottom-color: #000;
}
.popover {
position: absolute;
top: 0;
left: 0;
z-index: 1060;
display: none;
max-width: 276px;
padding: 1px;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-style: normal;
font-weight: normal;
letter-spacing: normal;
line-break: auto;
line-height: 1.42857143;
text-align: left;
text-align: start;
text-decoration: none;
text-shadow: none;
text-transform: none;
white-space: normal;
word-break: normal;
word-spacing: normal;
word-wrap: normal;
font-size: 13px;
background-color: #fff;
background-clip: padding-box;
border: 1px solid #ccc;
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 3px;
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}
.popover.top {
margin-top: -10px;
}
.popover.right {
margin-left: 10px;
}
.popover.bottom {
margin-top: 10px;
}
.popover.left {
margin-left: -10px;
}
.popover-title {
margin: 0;
padding: 8px 14px;
font-size: 13px;
background-color: #f7f7f7;
border-bottom: 1px solid #ebebeb;
border-radius: 2px 2px 0 0;
}
.popover-content {
padding: 9px 14px;
}
.popover > .arrow,
.popover > .arrow:after {
position: absolute;
display: block;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
}
.popover > .arrow {
border-width: 11px;
}
.popover > .arrow:after {
border-width: 10px;
content: "";
}
.popover.top > .arrow {
left: 50%;
margin-left: -11px;
border-bottom-width: 0;
border-top-color: #999999;
border-top-color: rgba(0, 0, 0, 0.25);
bottom: -11px;
}
.popover.top > .arrow:after {
content: " ";
bottom: 1px;
margin-left: -10px;
border-bottom-width: 0;
border-top-color: #fff;
}
.popover.right > .arrow {
top: 50%;
left: -11px;
margin-top: -11px;
border-left-width: 0;
border-right-color: #999999;
border-right-color: rgba(0, 0, 0, 0.25);
}
.popover.right > .arrow:after {
content: " ";
left: 1px;
bottom: -10px;
border-left-width: 0;
border-right-color: #fff;
}
.popover.bottom > .arrow {
left: 50%;
margin-left: -11px;
border-top-width: 0;
border-bottom-color: #999999;
border-bottom-color: rgba(0, 0, 0, 0.25);
top: -11px;
}
.popover.bottom > .arrow:after {
content: " ";
top: 1px;
margin-left: -10px;
border-top-width: 0;
border-bottom-color: #fff;
}
.popover.left > .arrow {
top: 50%;
right: -11px;
margin-top: -11px;
border-right-width: 0;
border-left-color: #999999;
border-left-color: rgba(0, 0, 0, 0.25);
}
.popover.left > .arrow:after {
content: " ";
right: 1px;
border-right-width: 0;
border-left-color: #fff;
bottom: -10px;
}
.carousel {
position: relative;
}
.carousel-inner {
position: relative;
overflow: hidden;
width: 100%;
}
.carousel-inner > .item {
display: none;
position: relative;
-webkit-transition: 0.6s ease-in-out left;
-o-transition: 0.6s ease-in-out left;
transition: 0.6s ease-in-out left;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
line-height: 1;
}
@media all and (transform-3d), (-webkit-transform-3d) {
.carousel-inner > .item {
-webkit-transition: -webkit-transform 0.6s ease-in-out;
-moz-transition: -moz-transform 0.6s ease-in-out;
-o-transition: -o-transform 0.6s ease-in-out;
transition: transform 0.6s ease-in-out;
-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
backface-visibility: hidden;
-webkit-perspective: 1000px;
-moz-perspective: 1000px;
perspective: 1000px;
}
.carousel-inner > .item.next,
.carousel-inner > .item.active.right {
-webkit-transform: translate3d(100%, 0, 0);
transform: translate3d(100%, 0, 0);
left: 0;
}
.carousel-inner > .item.prev,
.carousel-inner > .item.active.left {
-webkit-transform: translate3d(-100%, 0, 0);
transform: translate3d(-100%, 0, 0);
left: 0;
}
.carousel-inner > .item.next.left,
.carousel-inner > .item.prev.right,
.carousel-inner > .item.active {
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
left: 0;
}
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
display: block;
}
.carousel-inner > .active {
left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
position: absolute;
top: 0;
width: 100%;
}
.carousel-inner > .next {
left: 100%;
}
.carousel-inner > .prev {
left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
left: 0;
}
.carousel-inner > .active.left {
left: -100%;
}
.carousel-inner > .active.right {
left: 100%;
}
.carousel-control {
position: absolute;
top: 0;
left: 0;
bottom: 0;
width: 15%;
opacity: 0.5;
filter: alpha(opacity=50);
font-size: 20px;
color: #fff;
text-align: center;
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
background-color: rgba(0, 0, 0, 0);
}
.carousel-control.left {
background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
}
.carousel-control.right {
left: auto;
right: 0;
background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
}
.carousel-control:hover,
.carousel-control:focus {
outline: 0;
color: #fff;
text-decoration: none;
opacity: 0.9;
filter: alpha(opacity=90);
}
.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
position: absolute;
top: 50%;
margin-top: -10px;
z-index: 5;
display: inline-block;
}
.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
left: 50%;
margin-left: -10px;
}
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
right: 50%;
margin-right: -10px;
}
.carousel-control .icon-prev,
.carousel-control .icon-next {
width: 20px;
height: 20px;
line-height: 1;
font-family: serif;
}
.carousel-control .icon-prev:before {
content: '\2039';
}
.carousel-control .icon-next:before {
content: '\203a';
}
.carousel-indicators {
position: absolute;
bottom: 10px;
left: 50%;
z-index: 15;
width: 60%;
margin-left: -30%;
padding-left: 0;
list-style: none;
text-align: center;
}
.carousel-indicators li {
display: inline-block;
width: 10px;
height: 10px;
margin: 1px;
text-indent: -999px;
border: 1px solid #fff;
border-radius: 10px;
cursor: pointer;
background-color: #000 \9;
background-color: rgba(0, 0, 0, 0);
}
.carousel-indicators .active {
margin: 0;
width: 12px;
height: 12px;
background-color: #fff;
}
.carousel-caption {
position: absolute;
left: 15%;
right: 15%;
bottom: 20px;
z-index: 10;
padding-top: 20px;
padding-bottom: 20px;
color: #fff;
text-align: center;
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.carousel-caption .btn {
text-shadow: none;
}
@media screen and (min-width: 768px) {
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right,
.carousel-control .icon-prev,
.carousel-control .icon-next {
width: 30px;
height: 30px;
margin-top: -10px;
font-size: 30px;
}
.carousel-control .glyphicon-chevron-left,
.carousel-control .icon-prev {
margin-left: -10px;
}
.carousel-control .glyphicon-chevron-right,
.carousel-control .icon-next {
margin-right: -10px;
}
.carousel-caption {
left: 20%;
right: 20%;
padding-bottom: 30px;
}
.carousel-indicators {
bottom: 20px;
}
}
.clearfix:before,
.clearfix:after,
.dl-horizontal dd:before,
.dl-horizontal dd:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
.btn-toolbar:before,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:before,
.btn-group-vertical > .btn-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after,
.pager:before,
.pager:after,
.panel-body:before,
.panel-body:after,
.modal-header:before,
.modal-header:after,
.modal-footer:before,
.modal-footer:after,
.item_buttons:before,
.item_buttons:after {
content: " ";
display: table;
}
.clearfix:after,
.dl-horizontal dd:after,
.container:after,
.container-fluid:after,
.row:after,
.form-horizontal .form-group:after,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:after,
.nav:after,
.navbar:after,
.navbar-header:after,
.navbar-collapse:after,
.pager:after,
.panel-body:after,
.modal-header:after,
.modal-footer:after,
.item_buttons:after {
clear: both;
}
.center-block {
display: block;
margin-left: auto;
margin-right: auto;
}
.pull-right {
float: right !important;
}
.pull-left {
float: left !important;
}
.hide {
display: none !important;
}
.show {
display: block !important;
}
.invisible {
visibility: hidden;
}
.text-hide {
font: 0/0 a;
color: transparent;
text-shadow: none;
background-color: transparent;
border: 0;
}
.hidden {
display: none !important;
}
.affix {
position: fixed;
}
@-ms-viewport {
width: device-width;
}
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
display: none !important;
}
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
display: none !important;
}
@media (max-width: 767px) {
.visible-xs {
display: block !important;
}
table.visible-xs {
display: table !important;
}
tr.visible-xs {
display: table-row !important;
}
th.visible-xs,
td.visible-xs {
display: table-cell !important;
}
}
@media (max-width: 767px) {
.visible-xs-block {
display: block !important;
}
}
@media (max-width: 767px) {
.visible-xs-inline {
display: inline !important;
}
}
@media (max-width: 767px) {
.visible-xs-inline-block {
display: inline-block !important;
}
}
@media (min-width: 768px) and (max-width: 991px) {
.visible-sm {
display: block !important;
}
table.visible-sm {
display: table !important;
}
tr.visible-sm {
display: table-row !important;
}
th.visible-sm,
td.visible-sm {
display: table-cell !important;
}
}
@media (min-width: 768px) and (max-width: 991px) {
.visible-sm-block {
display: block !important;
}
}
@media (min-width: 768px) and (max-width: 991px) {
.visible-sm-inline {
display: inline !important;
}
}
@media (min-width: 768px) and (max-width: 991px) {
.visible-sm-inline-block {
display: inline-block !important;
}
}
@media (min-width: 992px) and (max-width: 1199px) {
.visible-md {
display: block !important;
}
table.visible-md {
display: table !important;
}
tr.visible-md {
display: table-row !important;
}
th.visible-md,
td.visible-md {
display: table-cell !important;
}
}
@media (min-width: 992px) and (max-width: 1199px) {
.visible-md-block {
display: block !important;
}
}
@media (min-width: 992px) and (max-width: 1199px) {
.visible-md-inline {
display: inline !important;
}
}
@media (min-width: 992px) and (max-width: 1199px) {
.visible-md-inline-block {
display: inline-block !important;
}
}
@media (min-width: 1200px) {
.visible-lg {
display: block !important;
}
table.visible-lg {
display: table !important;
}
tr.visible-lg {
display: table-row !important;
}
th.visible-lg,
td.visible-lg {
display: table-cell !important;
}
}
@media (min-width: 1200px) {
.visible-lg-block {
display: block !important;
}
}
@media (min-width: 1200px) {
.visible-lg-inline {
display: inline !important;
}
}
@media (min-width: 1200px) {
.visible-lg-inline-block {
display: inline-block !important;
}
}
@media (max-width: 767px) {
.hidden-xs {
display: none !important;
}
}
@media (min-width: 768px) and (max-width: 991px) {
.hidden-sm {
display: none !important;
}
}
@media (min-width: 992px) and (max-width: 1199px) {
.hidden-md {
display: none !important;
}
}
@media (min-width: 1200px) {
.hidden-lg {
display: none !important;
}
}
.visible-print {
display: none !important;
}
@media print {
.visible-print {
display: block !important;
}
table.visible-print {
display: table !important;
}
tr.visible-print {
display: table-row !important;
}
th.visible-print,
td.visible-print {
display: table-cell !important;
}
}
.visible-print-block {
display: none !important;
}
@media print {
.visible-print-block {
display: block !important;
}
}
.visible-print-inline {
display: none !important;
}
@media print {
.visible-print-inline {
display: inline !important;
}
}
.visible-print-inline-block {
display: none !important;
}
@media print {
.visible-print-inline-block {
display: inline-block !important;
}
}
@media print {
.hidden-print {
display: none !important;
}
}
/*!
*
* Font Awesome
*
*/
/*!
* Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/
/* FONT PATH
* -------------------------- */
@font-face {
font-family: 'FontAwesome';
src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?v=4.2.0');
src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'), url('../components/font-awesome/fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'), url('../components/font-awesome/fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'), url('../components/font-awesome/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular') format('svg');
font-weight: normal;
font-style: normal;
}
.fa {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
font-size: 1.33333333em;
line-height: 0.75em;
vertical-align: -15%;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-fw {
width: 1.28571429em;
text-align: center;
}
.fa-ul {
padding-left: 0;
margin-left: 2.14285714em;
list-style-type: none;
}
.fa-ul > li {
position: relative;
}
.fa-li {
position: absolute;
left: -2.14285714em;
width: 2.14285714em;
top: 0.14285714em;
text-align: center;
}
.fa-li.fa-lg {
left: -1.85714286em;
}
.fa-border {
padding: .2em .25em .15em;
border: solid 0.08em #eee;
border-radius: .1em;
}
.pull-right {
float: right;
}
.pull-left {
float: left;
}
.fa.pull-left {
margin-right: .3em;
}
.fa.pull-right {
margin-left: .3em;
}
.fa-spin {
-webkit-animation: fa-spin 2s infinite linear;
animation: fa-spin 2s infinite linear;
}
@-webkit-keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
@keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
.fa-rotate-90 {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
-webkit-transform: rotate(90deg);
-ms-transform: rotate(90deg);
transform: rotate(90deg);
}
.fa-rotate-180 {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
-webkit-transform: rotate(180deg);
-ms-transform: rotate(180deg);
transform: rotate(180deg);
}
.fa-rotate-270 {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
-webkit-transform: rotate(270deg);
-ms-transform: rotate(270deg);
transform: rotate(270deg);
}
.fa-flip-horizontal {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
-webkit-transform: scale(-1, 1);
-ms-transform: scale(-1, 1);
transform: scale(-1, 1);
}
.fa-flip-vertical {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
-webkit-transform: scale(1, -1);
-ms-transform: scale(1, -1);
transform: scale(1, -1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
filter: none;
}
.fa-stack {
position: relative;
display: inline-block;
width: 2em;
height: 2em;
line-height: 2em;
vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
position: absolute;
left: 0;
width: 100%;
text-align: center;
}
.fa-stack-1x {
line-height: inherit;
}
.fa-stack-2x {
font-size: 2em;
}
.fa-inverse {
color: #fff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.fa-glass:before {
content: "\f000";
}
.fa-music:before {
content: "\f001";
}
.fa-search:before {
content: "\f002";
}
.fa-envelope-o:before {
content: "\f003";
}
.fa-heart:before {
content: "\f004";
}
.fa-star:before {
content: "\f005";
}
.fa-star-o:before {
content: "\f006";
}
.fa-user:before {
content: "\f007";
}
.fa-film:before {
content: "\f008";
}
.fa-th-large:before {
content: "\f009";
}
.fa-th:before {
content: "\f00a";
}
.fa-th-list:before {
content: "\f00b";
}
.fa-check:before {
content: "\f00c";
}
.fa-remove:before,
.fa-close:before,
.fa-times:before {
content: "\f00d";
}
.fa-search-plus:before {
content: "\f00e";
}
.fa-search-minus:before {
content: "\f010";
}
.fa-power-off:before {
content: "\f011";
}
.fa-signal:before {
content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
content: "\f013";
}
.fa-trash-o:before {
content: "\f014";
}
.fa-home:before {
content: "\f015";
}
.fa-file-o:before {
content: "\f016";
}
.fa-clock-o:before {
content: "\f017";
}
.fa-road:before {
content: "\f018";
}
.fa-download:before {
content: "\f019";
}
.fa-arrow-circle-o-down:before {
content: "\f01a";
}
.fa-arrow-circle-o-up:before {
content: "\f01b";
}
.fa-inbox:before {
content: "\f01c";
}
.fa-play-circle-o:before {
content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
content: "\f01e";
}
.fa-refresh:before {
content: "\f021";
}
.fa-list-alt:before {
content: "\f022";
}
.fa-lock:before {
content: "\f023";
}
.fa-flag:before {
content: "\f024";
}
.fa-headphones:before {
content: "\f025";
}
.fa-volume-off:before {
content: "\f026";
}
.fa-volume-down:before {
content: "\f027";
}
.fa-volume-up:before {
content: "\f028";
}
.fa-qrcode:before {
content: "\f029";
}
.fa-barcode:before {
content: "\f02a";
}
.fa-tag:before {
content: "\f02b";
}
.fa-tags:before {
content: "\f02c";
}
.fa-book:before {
content: "\f02d";
}
.fa-bookmark:before {
content: "\f02e";
}
.fa-print:before {
content: "\f02f";
}
.fa-camera:before {
content: "\f030";
}
.fa-font:before {
content: "\f031";
}
.fa-bold:before {
content: "\f032";
}
.fa-italic:before {
content: "\f033";
}
.fa-text-height:before {
content: "\f034";
}
.fa-text-width:before {
content: "\f035";
}
.fa-align-left:before {
content: "\f036";
}
.fa-align-center:before {
content: "\f037";
}
.fa-align-right:before {
content: "\f038";
}
.fa-align-justify:before {
content: "\f039";
}
.fa-list:before {
content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
content: "\f03b";
}
.fa-indent:before {
content: "\f03c";
}
.fa-video-camera:before {
content: "\f03d";
}
.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
content: "\f03e";
}
.fa-pencil:before {
content: "\f040";
}
.fa-map-marker:before {
content: "\f041";
}
.fa-adjust:before {
content: "\f042";
}
.fa-tint:before {
content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
content: "\f044";
}
.fa-share-square-o:before {
content: "\f045";
}
.fa-check-square-o:before {
content: "\f046";
}
.fa-arrows:before {
content: "\f047";
}
.fa-step-backward:before {
content: "\f048";
}
.fa-fast-backward:before {
content: "\f049";
}
.fa-backward:before {
content: "\f04a";
}
.fa-play:before {
content: "\f04b";
}
.fa-pause:before {
content: "\f04c";
}
.fa-stop:before {
content: "\f04d";
}
.fa-forward:before {
content: "\f04e";
}
.fa-fast-forward:before {
content: "\f050";
}
.fa-step-forward:before {
content: "\f051";
}
.fa-eject:before {
content: "\f052";
}
.fa-chevron-left:before {
content: "\f053";
}
.fa-chevron-right:before {
content: "\f054";
}
.fa-plus-circle:before {
content: "\f055";
}
.fa-minus-circle:before {
content: "\f056";
}
.fa-times-circle:before {
content: "\f057";
}
.fa-check-circle:before {
content: "\f058";
}
.fa-question-circle:before {
content: "\f059";
}
.fa-info-circle:before {
content: "\f05a";
}
.fa-crosshairs:before {
content: "\f05b";
}
.fa-times-circle-o:before {
content: "\f05c";
}
.fa-check-circle-o:before {
content: "\f05d";
}
.fa-ban:before {
content: "\f05e";
}
.fa-arrow-left:before {
content: "\f060";
}
.fa-arrow-right:before {
content: "\f061";
}
.fa-arrow-up:before {
content: "\f062";
}
.fa-arrow-down:before {
content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
content: "\f064";
}
.fa-expand:before {
content: "\f065";
}
.fa-compress:before {
content: "\f066";
}
.fa-plus:before {
content: "\f067";
}
.fa-minus:before {
content: "\f068";
}
.fa-asterisk:before {
content: "\f069";
}
.fa-exclamation-circle:before {
content: "\f06a";
}
.fa-gift:before {
content: "\f06b";
}
.fa-leaf:before {
content: "\f06c";
}
.fa-fire:before {
content: "\f06d";
}
.fa-eye:before {
content: "\f06e";
}
.fa-eye-slash:before {
content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
content: "\f071";
}
.fa-plane:before {
content: "\f072";
}
.fa-calendar:before {
content: "\f073";
}
.fa-random:before {
content: "\f074";
}
.fa-comment:before {
content: "\f075";
}
.fa-magnet:before {
content: "\f076";
}
.fa-chevron-up:before {
content: "\f077";
}
.fa-chevron-down:before {
content: "\f078";
}
.fa-retweet:before {
content: "\f079";
}
.fa-shopping-cart:before {
content: "\f07a";
}
.fa-folder:before {
content: "\f07b";
}
.fa-folder-open:before {
content: "\f07c";
}
.fa-arrows-v:before {
content: "\f07d";
}
.fa-arrows-h:before {
content: "\f07e";
}
.fa-bar-chart-o:before,
.fa-bar-chart:before {
content: "\f080";
}
.fa-twitter-square:before {
content: "\f081";
}
.fa-facebook-square:before {
content: "\f082";
}
.fa-camera-retro:before {
content: "\f083";
}
.fa-key:before {
content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
content: "\f085";
}
.fa-comments:before {
content: "\f086";
}
.fa-thumbs-o-up:before {
content: "\f087";
}
.fa-thumbs-o-down:before {
content: "\f088";
}
.fa-star-half:before {
content: "\f089";
}
.fa-heart-o:before {
content: "\f08a";
}
.fa-sign-out:before {
content: "\f08b";
}
.fa-linkedin-square:before {
content: "\f08c";
}
.fa-thumb-tack:before {
content: "\f08d";
}
.fa-external-link:before {
content: "\f08e";
}
.fa-sign-in:before {
content: "\f090";
}
.fa-trophy:before {
content: "\f091";
}
.fa-github-square:before {
content: "\f092";
}
.fa-upload:before {
content: "\f093";
}
.fa-lemon-o:before {
content: "\f094";
}
.fa-phone:before {
content: "\f095";
}
.fa-square-o:before {
content: "\f096";
}
.fa-bookmark-o:before {
content: "\f097";
}
.fa-phone-square:before {
content: "\f098";
}
.fa-twitter:before {
content: "\f099";
}
.fa-facebook:before {
content: "\f09a";
}
.fa-github:before {
content: "\f09b";
}
.fa-unlock:before {
content: "\f09c";
}
.fa-credit-card:before {
content: "\f09d";
}
.fa-rss:before {
content: "\f09e";
}
.fa-hdd-o:before {
content: "\f0a0";
}
.fa-bullhorn:before {
content: "\f0a1";
}
.fa-bell:before {
content: "\f0f3";
}
.fa-certificate:before {
content: "\f0a3";
}
.fa-hand-o-right:before {
content: "\f0a4";
}
.fa-hand-o-left:before {
content: "\f0a5";
}
.fa-hand-o-up:before {
content: "\f0a6";
}
.fa-hand-o-down:before {
content: "\f0a7";
}
.fa-arrow-circle-left:before {
content: "\f0a8";
}
.fa-arrow-circle-right:before {
content: "\f0a9";
}
.fa-arrow-circle-up:before {
content: "\f0aa";
}
.fa-arrow-circle-down:before {
content: "\f0ab";
}
.fa-globe:before {
content: "\f0ac";
}
.fa-wrench:before {
content: "\f0ad";
}
.fa-tasks:before {
content: "\f0ae";
}
.fa-filter:before {
content: "\f0b0";
}
.fa-briefcase:before {
content: "\f0b1";
}
.fa-arrows-alt:before {
content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
content: "\f0c1";
}
.fa-cloud:before {
content: "\f0c2";
}
.fa-flask:before {
content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
content: "\f0c5";
}
.fa-paperclip:before {
content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
content: "\f0c7";
}
.fa-square:before {
content: "\f0c8";
}
.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
content: "\f0c9";
}
.fa-list-ul:before {
content: "\f0ca";
}
.fa-list-ol:before {
content: "\f0cb";
}
.fa-strikethrough:before {
content: "\f0cc";
}
.fa-underline:before {
content: "\f0cd";
}
.fa-table:before {
content: "\f0ce";
}
.fa-magic:before {
content: "\f0d0";
}
.fa-truck:before {
content: "\f0d1";
}
.fa-pinterest:before {
content: "\f0d2";
}
.fa-pinterest-square:before {
content: "\f0d3";
}
.fa-google-plus-square:before {
content: "\f0d4";
}
.fa-google-plus:before {
content: "\f0d5";
}
.fa-money:before {
content: "\f0d6";
}
.fa-caret-down:before {
content: "\f0d7";
}
.fa-caret-up:before {
content: "\f0d8";
}
.fa-caret-left:before {
content: "\f0d9";
}
.fa-caret-right:before {
content: "\f0da";
}
.fa-columns:before {
content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-desc:before {
content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-asc:before {
content: "\f0de";
}
.fa-envelope:before {
content: "\f0e0";
}
.fa-linkedin:before {
content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
content: "\f0e4";
}
.fa-comment-o:before {
content: "\f0e5";
}
.fa-comments-o:before {
content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
content: "\f0e7";
}
.fa-sitemap:before {
content: "\f0e8";
}
.fa-umbrella:before {
content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
content: "\f0ea";
}
.fa-lightbulb-o:before {
content: "\f0eb";
}
.fa-exchange:before {
content: "\f0ec";
}
.fa-cloud-download:before {
content: "\f0ed";
}
.fa-cloud-upload:before {
content: "\f0ee";
}
.fa-user-md:before {
content: "\f0f0";
}
.fa-stethoscope:before {
content: "\f0f1";
}
.fa-suitcase:before {
content: "\f0f2";
}
.fa-bell-o:before {
content: "\f0a2";
}
.fa-coffee:before {
content: "\f0f4";
}
.fa-cutlery:before {
content: "\f0f5";
}
.fa-file-text-o:before {
content: "\f0f6";
}
.fa-building-o:before {
content: "\f0f7";
}
.fa-hospital-o:before {
content: "\f0f8";
}
.fa-ambulance:before {
content: "\f0f9";
}
.fa-medkit:before {
content: "\f0fa";
}
.fa-fighter-jet:before {
content: "\f0fb";
}
.fa-beer:before {
content: "\f0fc";
}
.fa-h-square:before {
content: "\f0fd";
}
.fa-plus-square:before {
content: "\f0fe";
}
.fa-angle-double-left:before {
content: "\f100";
}
.fa-angle-double-right:before {
content: "\f101";
}
.fa-angle-double-up:before {
content: "\f102";
}
.fa-angle-double-down:before {
content: "\f103";
}
.fa-angle-left:before {
content: "\f104";
}
.fa-angle-right:before {
content: "\f105";
}
.fa-angle-up:before {
content: "\f106";
}
.fa-angle-down:before {
content: "\f107";
}
.fa-desktop:before {
content: "\f108";
}
.fa-laptop:before {
content: "\f109";
}
.fa-tablet:before {
content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
content: "\f10b";
}
.fa-circle-o:before {
content: "\f10c";
}
.fa-quote-left:before {
content: "\f10d";
}
.fa-quote-right:before {
content: "\f10e";
}
.fa-spinner:before {
content: "\f110";
}
.fa-circle:before {
content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
content: "\f112";
}
.fa-github-alt:before {
content: "\f113";
}
.fa-folder-o:before {
content: "\f114";
}
.fa-folder-open-o:before {
content: "\f115";
}
.fa-smile-o:before {
content: "\f118";
}
.fa-frown-o:before {
content: "\f119";
}
.fa-meh-o:before {
content: "\f11a";
}
.fa-gamepad:before {
content: "\f11b";
}
.fa-keyboard-o:before {
content: "\f11c";
}
.fa-flag-o:before {
content: "\f11d";
}
.fa-flag-checkered:before {
content: "\f11e";
}
.fa-terminal:before {
content: "\f120";
}
.fa-code:before {
content: "\f121";
}
.fa-mail-reply-all:before,
.fa-reply-all:before {
content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
content: "\f123";
}
.fa-location-arrow:before {
content: "\f124";
}
.fa-crop:before {
content: "\f125";
}
.fa-code-fork:before {
content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
content: "\f127";
}
.fa-question:before {
content: "\f128";
}
.fa-info:before {
content: "\f129";
}
.fa-exclamation:before {
content: "\f12a";
}
.fa-superscript:before {
content: "\f12b";
}
.fa-subscript:before {
content: "\f12c";
}
.fa-eraser:before {
content: "\f12d";
}
.fa-puzzle-piece:before {
content: "\f12e";
}
.fa-microphone:before {
content: "\f130";
}
.fa-microphone-slash:before {
content: "\f131";
}
.fa-shield:before {
content: "\f132";
}
.fa-calendar-o:before {
content: "\f133";
}
.fa-fire-extinguisher:before {
content: "\f134";
}
.fa-rocket:before {
content: "\f135";
}
.fa-maxcdn:before {
content: "\f136";
}
.fa-chevron-circle-left:before {
content: "\f137";
}
.fa-chevron-circle-right:before {
content: "\f138";
}
.fa-chevron-circle-up:before {
content: "\f139";
}
.fa-chevron-circle-down:before {
content: "\f13a";
}
.fa-html5:before {
content: "\f13b";
}
.fa-css3:before {
content: "\f13c";
}
.fa-anchor:before {
content: "\f13d";
}
.fa-unlock-alt:before {
content: "\f13e";
}
.fa-bullseye:before {
content: "\f140";
}
.fa-ellipsis-h:before {
content: "\f141";
}
.fa-ellipsis-v:before {
content: "\f142";
}
.fa-rss-square:before {
content: "\f143";
}
.fa-play-circle:before {
content: "\f144";
}
.fa-ticket:before {
content: "\f145";
}
.fa-minus-square:before {
content: "\f146";
}
.fa-minus-square-o:before {
content: "\f147";
}
.fa-level-up:before {
content: "\f148";
}
.fa-level-down:before {
content: "\f149";
}
.fa-check-square:before {
content: "\f14a";
}
.fa-pencil-square:before {
content: "\f14b";
}
.fa-external-link-square:before {
content: "\f14c";
}
.fa-share-square:before {
content: "\f14d";
}
.fa-compass:before {
content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
content: "\f153";
}
.fa-gbp:before {
content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
content: "\f158";
}
.fa-won:before,
.fa-krw:before {
content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
content: "\f15a";
}
.fa-file:before {
content: "\f15b";
}
.fa-file-text:before {
content: "\f15c";
}
.fa-sort-alpha-asc:before {
content: "\f15d";
}
.fa-sort-alpha-desc:before {
content: "\f15e";
}
.fa-sort-amount-asc:before {
content: "\f160";
}
.fa-sort-amount-desc:before {
content: "\f161";
}
.fa-sort-numeric-asc:before {
content: "\f162";
}
.fa-sort-numeric-desc:before {
content: "\f163";
}
.fa-thumbs-up:before {
content: "\f164";
}
.fa-thumbs-down:before {
content: "\f165";
}
.fa-youtube-square:before {
content: "\f166";
}
.fa-youtube:before {
content: "\f167";
}
.fa-xing:before {
content: "\f168";
}
.fa-xing-square:before {
content: "\f169";
}
.fa-youtube-play:before {
content: "\f16a";
}
.fa-dropbox:before {
content: "\f16b";
}
.fa-stack-overflow:before {
content: "\f16c";
}
.fa-instagram:before {
content: "\f16d";
}
.fa-flickr:before {
content: "\f16e";
}
.fa-adn:before {
content: "\f170";
}
.fa-bitbucket:before {
content: "\f171";
}
.fa-bitbucket-square:before {
content: "\f172";
}
.fa-tumblr:before {
content: "\f173";
}
.fa-tumblr-square:before {
content: "\f174";
}
.fa-long-arrow-down:before {
content: "\f175";
}
.fa-long-arrow-up:before {
content: "\f176";
}
.fa-long-arrow-left:before {
content: "\f177";
}
.fa-long-arrow-right:before {
content: "\f178";
}
.fa-apple:before {
content: "\f179";
}
.fa-windows:before {
content: "\f17a";
}
.fa-android:before {
content: "\f17b";
}
.fa-linux:before {
content: "\f17c";
}
.fa-dribbble:before {
content: "\f17d";
}
.fa-skype:before {
content: "\f17e";
}
.fa-foursquare:before {
content: "\f180";
}
.fa-trello:before {
content: "\f181";
}
.fa-female:before {
content: "\f182";
}
.fa-male:before {
content: "\f183";
}
.fa-gittip:before {
content: "\f184";
}
.fa-sun-o:before {
content: "\f185";
}
.fa-moon-o:before {
content: "\f186";
}
.fa-archive:before {
content: "\f187";
}
.fa-bug:before {
content: "\f188";
}
.fa-vk:before {
content: "\f189";
}
.fa-weibo:before {
content: "\f18a";
}
.fa-renren:before {
content: "\f18b";
}
.fa-pagelines:before {
content: "\f18c";
}
.fa-stack-exchange:before {
content: "\f18d";
}
.fa-arrow-circle-o-right:before {
content: "\f18e";
}
.fa-arrow-circle-o-left:before {
content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
content: "\f191";
}
.fa-dot-circle-o:before {
content: "\f192";
}
.fa-wheelchair:before {
content: "\f193";
}
.fa-vimeo-square:before {
content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
content: "\f195";
}
.fa-plus-square-o:before {
content: "\f196";
}
.fa-space-shuttle:before {
content: "\f197";
}
.fa-slack:before {
content: "\f198";
}
.fa-envelope-square:before {
content: "\f199";
}
.fa-wordpress:before {
content: "\f19a";
}
.fa-openid:before {
content: "\f19b";
}
.fa-institution:before,
.fa-bank:before,
.fa-university:before {
content: "\f19c";
}
.fa-mortar-board:before,
.fa-graduation-cap:before {
content: "\f19d";
}
.fa-yahoo:before {
content: "\f19e";
}
.fa-google:before {
content: "\f1a0";
}
.fa-reddit:before {
content: "\f1a1";
}
.fa-reddit-square:before {
content: "\f1a2";
}
.fa-stumbleupon-circle:before {
content: "\f1a3";
}
.fa-stumbleupon:before {
content: "\f1a4";
}
.fa-delicious:before {
content: "\f1a5";
}
.fa-digg:before {
content: "\f1a6";
}
.fa-pied-piper:before {
content: "\f1a7";
}
.fa-pied-piper-alt:before {
content: "\f1a8";
}
.fa-drupal:before {
content: "\f1a9";
}
.fa-joomla:before {
content: "\f1aa";
}
.fa-language:before {
content: "\f1ab";
}
.fa-fax:before {
content: "\f1ac";
}
.fa-building:before {
content: "\f1ad";
}
.fa-child:before {
content: "\f1ae";
}
.fa-paw:before {
content: "\f1b0";
}
.fa-spoon:before {
content: "\f1b1";
}
.fa-cube:before {
content: "\f1b2";
}
.fa-cubes:before {
content: "\f1b3";
}
.fa-behance:before {
content: "\f1b4";
}
.fa-behance-square:before {
content: "\f1b5";
}
.fa-steam:before {
content: "\f1b6";
}
.fa-steam-square:before {
content: "\f1b7";
}
.fa-recycle:before {
content: "\f1b8";
}
.fa-automobile:before,
.fa-car:before {
content: "\f1b9";
}
.fa-cab:before,
.fa-taxi:before {
content: "\f1ba";
}
.fa-tree:before {
content: "\f1bb";
}
.fa-spotify:before {
content: "\f1bc";
}
.fa-deviantart:before {
content: "\f1bd";
}
.fa-soundcloud:before {
content: "\f1be";
}
.fa-database:before {
content: "\f1c0";
}
.fa-file-pdf-o:before {
content: "\f1c1";
}
.fa-file-word-o:before {
content: "\f1c2";
}
.fa-file-excel-o:before {
content: "\f1c3";
}
.fa-file-powerpoint-o:before {
content: "\f1c4";
}
.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
content: "\f1c5";
}
.fa-file-zip-o:before,
.fa-file-archive-o:before {
content: "\f1c6";
}
.fa-file-sound-o:before,
.fa-file-audio-o:before {
content: "\f1c7";
}
.fa-file-movie-o:before,
.fa-file-video-o:before {
content: "\f1c8";
}
.fa-file-code-o:before {
content: "\f1c9";
}
.fa-vine:before {
content: "\f1ca";
}
.fa-codepen:before {
content: "\f1cb";
}
.fa-jsfiddle:before {
content: "\f1cc";
}
.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
content: "\f1cd";
}
.fa-circle-o-notch:before {
content: "\f1ce";
}
.fa-ra:before,
.fa-rebel:before {
content: "\f1d0";
}
.fa-ge:before,
.fa-empire:before {
content: "\f1d1";
}
.fa-git-square:before {
content: "\f1d2";
}
.fa-git:before {
content: "\f1d3";
}
.fa-hacker-news:before {
content: "\f1d4";
}
.fa-tencent-weibo:before {
content: "\f1d5";
}
.fa-qq:before {
content: "\f1d6";
}
.fa-wechat:before,
.fa-weixin:before {
content: "\f1d7";
}
.fa-send:before,
.fa-paper-plane:before {
content: "\f1d8";
}
.fa-send-o:before,
.fa-paper-plane-o:before {
content: "\f1d9";
}
.fa-history:before {
content: "\f1da";
}
.fa-circle-thin:before {
content: "\f1db";
}
.fa-header:before {
content: "\f1dc";
}
.fa-paragraph:before {
content: "\f1dd";
}
.fa-sliders:before {
content: "\f1de";
}
.fa-share-alt:before {
content: "\f1e0";
}
.fa-share-alt-square:before {
content: "\f1e1";
}
.fa-bomb:before {
content: "\f1e2";
}
.fa-soccer-ball-o:before,
.fa-futbol-o:before {
content: "\f1e3";
}
.fa-tty:before {
content: "\f1e4";
}
.fa-binoculars:before {
content: "\f1e5";
}
.fa-plug:before {
content: "\f1e6";
}
.fa-slideshare:before {
content: "\f1e7";
}
.fa-twitch:before {
content: "\f1e8";
}
.fa-yelp:before {
content: "\f1e9";
}
.fa-newspaper-o:before {
content: "\f1ea";
}
.fa-wifi:before {
content: "\f1eb";
}
.fa-calculator:before {
content: "\f1ec";
}
.fa-paypal:before {
content: "\f1ed";
}
.fa-google-wallet:before {
content: "\f1ee";
}
.fa-cc-visa:before {
content: "\f1f0";
}
.fa-cc-mastercard:before {
content: "\f1f1";
}
.fa-cc-discover:before {
content: "\f1f2";
}
.fa-cc-amex:before {
content: "\f1f3";
}
.fa-cc-paypal:before {
content: "\f1f4";
}
.fa-cc-stripe:before {
content: "\f1f5";
}
.fa-bell-slash:before {
content: "\f1f6";
}
.fa-bell-slash-o:before {
content: "\f1f7";
}
.fa-trash:before {
content: "\f1f8";
}
.fa-copyright:before {
content: "\f1f9";
}
.fa-at:before {
content: "\f1fa";
}
.fa-eyedropper:before {
content: "\f1fb";
}
.fa-paint-brush:before {
content: "\f1fc";
}
.fa-birthday-cake:before {
content: "\f1fd";
}
.fa-area-chart:before {
content: "\f1fe";
}
.fa-pie-chart:before {
content: "\f200";
}
.fa-line-chart:before {
content: "\f201";
}
.fa-lastfm:before {
content: "\f202";
}
.fa-lastfm-square:before {
content: "\f203";
}
.fa-toggle-off:before {
content: "\f204";
}
.fa-toggle-on:before {
content: "\f205";
}
.fa-bicycle:before {
content: "\f206";
}
.fa-bus:before {
content: "\f207";
}
.fa-ioxhost:before {
content: "\f208";
}
.fa-angellist:before {
content: "\f209";
}
.fa-cc:before {
content: "\f20a";
}
.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
content: "\f20b";
}
.fa-meanpath:before {
content: "\f20c";
}
/*!
*
* IPython base
*
*/
.modal.fade .modal-dialog {
-webkit-transform: translate(0, 0);
-ms-transform: translate(0, 0);
-o-transform: translate(0, 0);
transform: translate(0, 0);
}
code {
color: #000;
}
pre {
font-size: inherit;
line-height: inherit;
}
label {
font-weight: normal;
}
/* Make the page background atleast 100% the height of the view port */
/* Make the page itself atleast 70% the height of the view port */
.border-box-sizing {
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
.corner-all {
border-radius: 2px;
}
.no-padding {
padding: 0px;
}
/* Flexible box model classes */
/* Taken from Alex Russell http://infrequently.org/2009/08/css-3-progress/ */
/* This file is a compatability layer. It allows the usage of flexible box
model layouts accross multiple browsers, including older browsers. The newest,
universal implementation of the flexible box model is used when available (see
`Modern browsers` comments below). Browsers that are known to implement this
new spec completely include:

Firefox 28.0+
Chrome 29.0+
Internet Explorer 11+
Opera 17.0+

Browsers not listed, including Safari, are supported via the styling under the
`Old browsers` comments below.
*/
.hbox {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
}
.hbox > * {
/* Old browsers */
-webkit-box-flex: 0;
-moz-box-flex: 0;
box-flex: 0;
/* Modern browsers */
flex: none;
}
.vbox {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
}
.vbox > * {
/* Old browsers */
-webkit-box-flex: 0;
-moz-box-flex: 0;
box-flex: 0;
/* Modern browsers */
flex: none;
}
.hbox.reverse,
.vbox.reverse,
.reverse {
/* Old browsers */
-webkit-box-direction: reverse;
-moz-box-direction: reverse;
box-direction: reverse;
/* Modern browsers */
flex-direction: row-reverse;
}
.hbox.box-flex0,
.vbox.box-flex0,
.box-flex0 {
/* Old browsers */
-webkit-box-flex: 0;
-moz-box-flex: 0;
box-flex: 0;
/* Modern browsers */
flex: none;
width: auto;
}
.hbox.box-flex1,
.vbox.box-flex1,
.box-flex1 {
/* Old browsers */
-webkit-box-flex: 1;
-moz-box-flex: 1;
box-flex: 1;
/* Modern browsers */
flex: 1;
}
.hbox.box-flex,
.vbox.box-flex,
.box-flex {
/* Old browsers */
/* Old browsers */
-webkit-box-flex: 1;
-moz-box-flex: 1;
box-flex: 1;
/* Modern browsers */
flex: 1;
}
.hbox.box-flex2,
.vbox.box-flex2,
.box-flex2 {
/* Old browsers */
-webkit-box-flex: 2;
-moz-box-flex: 2;
box-flex: 2;
/* Modern browsers */
flex: 2;
}
.box-group1 {
/* Deprecated */
-webkit-box-flex-group: 1;
-moz-box-flex-group: 1;
box-flex-group: 1;
}
.box-group2 {
/* Deprecated */
-webkit-box-flex-group: 2;
-moz-box-flex-group: 2;
box-flex-group: 2;
}
.hbox.start,
.vbox.start,
.start {
/* Old browsers */
-webkit-box-pack: start;
-moz-box-pack: start;
box-pack: start;
/* Modern browsers */
justify-content: flex-start;
}
.hbox.end,
.vbox.end,
.end {
/* Old browsers */
-webkit-box-pack: end;
-moz-box-pack: end;
box-pack: end;
/* Modern browsers */
justify-content: flex-end;
}
.hbox.center,
.vbox.center,
.center {
/* Old browsers */
-webkit-box-pack: center;
-moz-box-pack: center;
box-pack: center;
/* Modern browsers */
justify-content: center;
}
.hbox.baseline,
.vbox.baseline,
.baseline {
/* Old browsers */
-webkit-box-pack: baseline;
-moz-box-pack: baseline;
box-pack: baseline;
/* Modern browsers */
justify-content: baseline;
}
.hbox.stretch,
.vbox.stretch,
.stretch {
/* Old browsers */
-webkit-box-pack: stretch;
-moz-box-pack: stretch;
box-pack: stretch;
/* Modern browsers */
justify-content: stretch;
}
.hbox.align-start,
.vbox.align-start,
.align-start {
/* Old browsers */
-webkit-box-align: start;
-moz-box-align: start;
box-align: start;
/* Modern browsers */
align-items: flex-start;
}
.hbox.align-end,
.vbox.align-end,
.align-end {
/* Old browsers */
-webkit-box-align: end;
-moz-box-align: end;
box-align: end;
/* Modern browsers */
align-items: flex-end;
}
.hbox.align-center,
.vbox.align-center,
.align-center {
/* Old browsers */
-webkit-box-align: center;
-moz-box-align: center;
box-align: center;
/* Modern browsers */
align-items: center;
}
.hbox.align-baseline,
.vbox.align-baseline,
.align-baseline {
/* Old browsers */
-webkit-box-align: baseline;
-moz-box-align: baseline;
box-align: baseline;
/* Modern browsers */
align-items: baseline;
}
.hbox.align-stretch,
.vbox.align-stretch,
.align-stretch {
/* Old browsers */
-webkit-box-align: stretch;
-moz-box-align: stretch;
box-align: stretch;
/* Modern browsers */
align-items: stretch;
}
div.error {
margin: 2em;
text-align: center;
}
div.error > h1 {
font-size: 500%;
line-height: normal;
}
div.error > p {
font-size: 200%;
line-height: normal;
}
div.traceback-wrapper {
text-align: left;
max-width: 800px;
margin: auto;
}
/**
* Primary styles
*
* Author: Jupyter Development Team
*/
body {
background-color: #fff;
/* This makes sure that the body covers the entire window and needs to
be in a different element than the display: box in wrapper below */
position: absolute;
left: 0px;
right: 0px;
top: 0px;
bottom: 0px;
overflow: visible;
}
body > #header {
/* Initially hidden to prevent FLOUC */
display: none;
background-color: #fff;
/* Display over codemirror */
position: relative;
z-index: 100;
}
body > #header #header-container {
padding-bottom: 5px;
padding-top: 5px;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
body > #header .header-bar {
width: 100%;
height: 1px;
background: #e7e7e7;
margin-bottom: -1px;
}
@media print {
body > #header {
display: none !important;
}
}
#header-spacer {
width: 100%;
visibility: hidden;
}
@media print {
#header-spacer {
display: none;
}
}
#ipython_notebook {
padding-left: 0px;
padding-top: 1px;
padding-bottom: 1px;
}
@media (max-width: 991px) {
#ipython_notebook {
margin-left: 10px;
}
}
[dir="rtl"] #ipython_notebook {
float: right !important;
}
#noscript {
width: auto;
padding-top: 16px;
padding-bottom: 16px;
text-align: center;
font-size: 22px;
color: red;
font-weight: bold;
}
#ipython_notebook img {
height: 28px;
}
#site {
width: 100%;
display: none;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
overflow: auto;
}
@media print {
#site {
height: auto !important;
}
}
/* Smaller buttons */
.ui-button .ui-button-text {
padding: 0.2em 0.8em;
font-size: 77%;
}
input.ui-button {
padding: 0.3em 0.9em;
}
span#login_widget {
float: right;
}
span#login_widget > .button,
#logout {
color: #333;
background-color: #fff;
border-color: #ccc;
}
span#login_widget > .button:focus,
#logout:focus,
span#login_widget > .button.focus,
#logout.focus {
color: #333;
background-color: #e6e6e6;
border-color: #8c8c8c;
}
span#login_widget > .button:hover,
#logout:hover {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
span#login_widget > .button:active,
#logout:active,
span#login_widget > .button.active,
#logout.active,
.open > .dropdown-togglespan#login_widget > .button,
.open > .dropdown-toggle#logout {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
span#login_widget > .button:active:hover,
#logout:active:hover,
span#login_widget > .button.active:hover,
#logout.active:hover,
.open > .dropdown-togglespan#login_widget > .button:hover,
.open > .dropdown-toggle#logout:hover,
span#login_widget > .button:active:focus,
#logout:active:focus,
span#login_widget > .button.active:focus,
#logout.active:focus,
.open > .dropdown-togglespan#login_widget > .button:focus,
.open > .dropdown-toggle#logout:focus,
span#login_widget > .button:active.focus,
#logout:active.focus,
span#login_widget > .button.active.focus,
#logout.active.focus,
.open > .dropdown-togglespan#login_widget > .button.focus,
.open > .dropdown-toggle#logout.focus {
color: #333;
background-color: #d4d4d4;
border-color: #8c8c8c;
}
span#login_widget > .button:active,
#logout:active,
span#login_widget > .button.active,
#logout.active,
.open > .dropdown-togglespan#login_widget > .button,
.open > .dropdown-toggle#logout {
background-image: none;
}
span#login_widget > .button.disabled:hover,
#logout.disabled:hover,
span#login_widget > .button[disabled]:hover,
#logout[disabled]:hover,
fieldset[disabled] span#login_widget > .button:hover,
fieldset[disabled] #logout:hover,
span#login_widget > .button.disabled:focus,
#logout.disabled:focus,
span#login_widget > .button[disabled]:focus,
#logout[disabled]:focus,
fieldset[disabled] span#login_widget > .button:focus,
fieldset[disabled] #logout:focus,
span#login_widget > .button.disabled.focus,
#logout.disabled.focus,
span#login_widget > .button[disabled].focus,
#logout[disabled].focus,
fieldset[disabled] span#login_widget > .button.focus,
fieldset[disabled] #logout.focus {
background-color: #fff;
border-color: #ccc;
}
span#login_widget > .button .badge,
#logout .badge {
color: #fff;
background-color: #333;
}
.nav-header {
text-transform: none;
}
#header > span {
margin-top: 10px;
}
.modal_stretch .modal-dialog {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
min-height: 80vh;
}
.modal_stretch .modal-dialog .modal-body {
max-height: calc(100vh - 200px);
overflow: auto;
flex: 1;
}
@media (min-width: 768px) {
.modal .modal-dialog {
width: 700px;
}
}
@media (min-width: 768px) {
select.form-control {
margin-left: 12px;
margin-right: 12px;
}
}
/*!
*
* IPython auth
*
*/
.center-nav {
display: inline-block;
margin-bottom: -4px;
}
/*!
*
* IPython tree view
*
*/
/* We need an invisible input field on top of the sentense*/
/* "Drag file onto the list ..." */
.alternate_upload {
background-color: none;
display: inline;
}
.alternate_upload.form {
padding: 0;
margin: 0;
}
.alternate_upload input.fileinput {
text-align: center;
vertical-align: middle;
display: inline;
opacity: 0;
z-index: 2;
width: 12ex;
margin-right: -12ex;
}
.alternate_upload .btn-upload {
height: 22px;
}
/**
* Primary styles
*
* Author: Jupyter Development Team
*/
[dir="rtl"] #tabs li {
float: right;
}
ul#tabs {
margin-bottom: 4px;
}
[dir="rtl"] ul#tabs {
margin-right: 0px;
}
ul#tabs a {
padding-top: 6px;
padding-bottom: 4px;
}
ul.breadcrumb a:focus,
ul.breadcrumb a:hover {
text-decoration: none;
}
ul.breadcrumb i.icon-home {
font-size: 16px;
margin-right: 4px;
}
ul.breadcrumb span {
color: #5e5e5e;
}
.list_toolbar {
padding: 4px 0 4px 0;
vertical-align: middle;
}
.list_toolbar .tree-buttons {
padding-top: 1px;
}
[dir="rtl"] .list_toolbar .tree-buttons {
float: left !important;
}
[dir="rtl"] .list_toolbar .pull-right {
padding-top: 1px;
float: left !important;
}
[dir="rtl"] .list_toolbar .pull-left {
float: right !important;
}
.dynamic-buttons {
padding-top: 3px;
display: inline-block;
}
.list_toolbar [class*="span"] {
min-height: 24px;
}
.list_header {
font-weight: bold;
background-color: #EEE;
}
.list_placeholder {
font-weight: bold;
padding-top: 4px;
padding-bottom: 4px;
padding-left: 7px;
padding-right: 7px;
}
.list_container {
margin-top: 4px;
margin-bottom: 20px;
border: 1px solid #ddd;
border-radius: 2px;
}
.list_container > div {
border-bottom: 1px solid #ddd;
}
.list_container > div:hover .list-item {
background-color: red;
}
.list_container > div:last-child {
border: none;
}
.list_item:hover .list_item {
background-color: #ddd;
}
.list_item a {
text-decoration: none;
}
.list_item:hover {
background-color: #fafafa;
}
.list_header > div,
.list_item > div {
padding-top: 4px;
padding-bottom: 4px;
padding-left: 7px;
padding-right: 7px;
line-height: 22px;
}
.list_header > div input,
.list_item > div input {
margin-right: 7px;
margin-left: 14px;
vertical-align: baseline;
line-height: 22px;
position: relative;
top: -1px;
}
.list_header > div .item_link,
.list_item > div .item_link {
margin-left: -1px;
vertical-align: baseline;
line-height: 22px;
}
.new-file input[type=checkbox] {
visibility: hidden;
}
.item_name {
line-height: 22px;
height: 24px;
}
.item_icon {
font-size: 14px;
color: #5e5e5e;
margin-right: 7px;
margin-left: 7px;
line-height: 22px;
vertical-align: baseline;
}
.item_buttons {
line-height: 1em;
margin-left: -5px;
}
.item_buttons .btn,
.item_buttons .btn-group,
.item_buttons .input-group {
float: left;
}
.item_buttons > .btn,
.item_buttons > .btn-group,
.item_buttons > .input-group {
margin-left: 5px;
}
.item_buttons .btn {
min-width: 13ex;
}
.item_buttons .running-indicator {
padding-top: 4px;
color: #5cb85c;
}
.item_buttons .kernel-name {
padding-top: 4px;
color: #5bc0de;
margin-right: 7px;
float: left;
}
.toolbar_info {
height: 24px;
line-height: 24px;
}
.list_item input:not([type=checkbox]) {
padding-top: 3px;
padding-bottom: 3px;
height: 22px;
line-height: 14px;
margin: 0px;
}
.highlight_text {
color: blue;
}
#project_name {
display: inline-block;
padding-left: 7px;
margin-left: -2px;
}
#project_name > .breadcrumb {
padding: 0px;
margin-bottom: 0px;
background-color: transparent;
font-weight: bold;
}
#tree-selector {
padding-right: 0px;
}
[dir="rtl"] #tree-selector a {
float: right;
}
#button-select-all {
min-width: 50px;
}
#select-all {
margin-left: 7px;
margin-right: 2px;
}
.menu_icon {
margin-right: 2px;
}
.tab-content .row {
margin-left: 0px;
margin-right: 0px;
}
.folder_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f114";
}
.folder_icon:before.pull-left {
margin-right: .3em;
}
.folder_icon:before.pull-right {
margin-left: .3em;
}
.notebook_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f02d";
position: relative;
top: -1px;
}
.notebook_icon:before.pull-left {
margin-right: .3em;
}
.notebook_icon:before.pull-right {
margin-left: .3em;
}
.running_notebook_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f02d";
position: relative;
top: -1px;
color: #5cb85c;
}
.running_notebook_icon:before.pull-left {
margin-right: .3em;
}
.running_notebook_icon:before.pull-right {
margin-left: .3em;
}
.file_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f016";
position: relative;
top: -2px;
}
.file_icon:before.pull-left {
margin-right: .3em;
}
.file_icon:before.pull-right {
margin-left: .3em;
}
#notebook_toolbar .pull-right {
padding-top: 0px;
margin-right: -1px;
}
ul#new-menu {
left: auto;
right: 0;
}
[dir="rtl"] #new-menu {
text-align: right;
}
.kernel-menu-icon {
padding-right: 12px;
width: 24px;
content: "\f096";
}
.kernel-menu-icon:before {
content: "\f096";
}
.kernel-menu-icon-current:before {
content: "\f00c";
}
#tab_content {
padding-top: 20px;
}
#running .panel-group .panel {
margin-top: 3px;
margin-bottom: 1em;
}
#running .panel-group .panel .panel-heading {
background-color: #EEE;
padding-top: 4px;
padding-bottom: 4px;
padding-left: 7px;
padding-right: 7px;
line-height: 22px;
}
#running .panel-group .panel .panel-heading a:focus,
#running .panel-group .panel .panel-heading a:hover {
text-decoration: none;
}
#running .panel-group .panel .panel-body {
padding: 0px;
}
#running .panel-group .panel .panel-body .list_container {
margin-top: 0px;
margin-bottom: 0px;
border: 0px;
border-radius: 0px;
}
#running .panel-group .panel .panel-body .list_container .list_item {
border-bottom: 1px solid #ddd;
}
#running .panel-group .panel .panel-body .list_container .list_item:last-child {
border-bottom: 0px;
}
[dir="rtl"] #running .col-sm-8 {
float: right !important;
}
.delete-button {
display: none;
}
.duplicate-button {
display: none;
}
.rename-button {
display: none;
}
.shutdown-button {
display: none;
}
.dynamic-instructions {
display: inline-block;
padding-top: 4px;
}
/*!
*
* IPython text editor webapp
*
*/
.selected-keymap i.fa {
padding: 0px 5px;
}
.selected-keymap i.fa:before {
content: "\f00c";
}
#mode-menu {
overflow: auto;
max-height: 20em;
}
.edit_app #header {
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
.edit_app #menubar .navbar {
/* Use a negative 1 bottom margin, so the border overlaps the border of the
header */
margin-bottom: -1px;
}
.dirty-indicator {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
width: 20px;
}
.dirty-indicator.pull-left {
margin-right: .3em;
}
.dirty-indicator.pull-right {
margin-left: .3em;
}
.dirty-indicator-dirty {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
width: 20px;
}
.dirty-indicator-dirty.pull-left {
margin-right: .3em;
}
.dirty-indicator-dirty.pull-right {
margin-left: .3em;
}
.dirty-indicator-clean {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
width: 20px;
}
.dirty-indicator-clean.pull-left {
margin-right: .3em;
}
.dirty-indicator-clean.pull-right {
margin-left: .3em;
}
.dirty-indicator-clean:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f00c";
}
.dirty-indicator-clean:before.pull-left {
margin-right: .3em;
}
.dirty-indicator-clean:before.pull-right {
margin-left: .3em;
}
#filename {
font-size: 16pt;
display: table;
padding: 0px 5px;
}
#current-mode {
padding-left: 5px;
padding-right: 5px;
}
#texteditor-backdrop {
padding-top: 20px;
padding-bottom: 20px;
}
@media not print {
#texteditor-backdrop {
background-color: #EEE;
}
}
@media print {
#texteditor-backdrop #texteditor-container .CodeMirror-gutter,
#texteditor-backdrop #texteditor-container .CodeMirror-gutters {
background-color: #fff;
}
}
@media not print {
#texteditor-backdrop #texteditor-container .CodeMirror-gutter,
#texteditor-backdrop #texteditor-container .CodeMirror-gutters {
background-color: #fff;
}
}
@media not print {
#texteditor-backdrop #texteditor-container {
padding: 0px;
background-color: #fff;
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
}
/*!
*
* IPython notebook
*
*/
/* CSS font colors for translated ANSI colors. */
.ansibold {
font-weight: bold;
}
/* use dark versions for foreground, to improve visibility */
.ansiblack {
color: black;
}
.ansired {
color: darkred;
}
.ansigreen {
color: darkgreen;
}
.ansiyellow {
color: #c4a000;
}
.ansiblue {
color: darkblue;
}
.ansipurple {
color: darkviolet;
}
.ansicyan {
color: steelblue;
}
.ansigray {
color: gray;
}
/* and light for background, for the same reason */
.ansibgblack {
background-color: black;
}
.ansibgred {
background-color: red;
}
.ansibggreen {
background-color: green;
}
.ansibgyellow {
background-color: yellow;
}
.ansibgblue {
background-color: blue;
}
.ansibgpurple {
background-color: magenta;
}
.ansibgcyan {
background-color: cyan;
}
.ansibggray {
background-color: gray;
}
div.cell {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
border-radius: 2px;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
border-width: 1px;
border-style: solid;
border-color: transparent;
width: 100%;
padding: 5px;
/* This acts as a spacer between cells, that is outside the border */
margin: 0px;
outline: none;
border-left-width: 1px;
padding-left: 5px;
background: linear-gradient(to right, transparent -40px, transparent 1px, transparent 1px, transparent 100%);
}
div.cell.jupyter-soft-selected {
border-left-color: #90CAF9;
border-left-color: #E3F2FD;
border-left-width: 1px;
padding-left: 5px;
border-right-color: #E3F2FD;
border-right-width: 1px;
background: #E3F2FD;
}
@media print {
div.cell.jupyter-soft-selected {
border-color: transparent;
}
}
div.cell.selected {
border-color: #ababab;
border-left-width: 0px;
padding-left: 6px;
background: linear-gradient(to right, #42A5F5 -40px, #42A5F5 5px, transparent 5px, transparent 100%);
}
@media print {
div.cell.selected {
border-color: transparent;
}
}
div.cell.selected.jupyter-soft-selected {
border-left-width: 0;
padding-left: 6px;
background: linear-gradient(to right, #42A5F5 -40px, #42A5F5 7px, #E3F2FD 7px, #E3F2FD 100%);
}
.edit_mode div.cell.selected {
border-color: #66BB6A;
border-left-width: 0px;
padding-left: 6px;
background: linear-gradient(to right, #66BB6A -40px, #66BB6A 5px, transparent 5px, transparent 100%);
}
@media print {
.edit_mode div.cell.selected {
border-color: transparent;
}
}
.prompt {
/* This needs to be wide enough for 3 digit prompt numbers: In[100]: */
min-width: 14ex;
/* This padding is tuned to match the padding on the CodeMirror editor. */
padding: 0.4em;
margin: 0px;
font-family: monospace;
text-align: right;
/* This has to match that of the the CodeMirror class line-height below */
line-height: 1.21429em;
/* Don't highlight prompt number selection */
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
/* Use default cursor */
cursor: default;
}
@media (max-width: 540px) {
.prompt {
text-align: left;
}
}
div.inner_cell {
min-width: 0;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
/* Old browsers */
-webkit-box-flex: 1;
-moz-box-flex: 1;
box-flex: 1;
/* Modern browsers */
flex: 1;
}
/* input_area and input_prompt must match in top border and margin for alignment */
div.input_area {
border: 1px solid #cfcfcf;
border-radius: 2px;
background: #f7f7f7;
line-height: 1.21429em;
}
/* This is needed so that empty prompt areas can collapse to zero height when there
is no content in the output_subarea and the prompt. The main purpose of this is
to make sure that empty JavaScript output_subareas have no height. */
div.prompt:empty {
padding-top: 0;
padding-bottom: 0;
}
div.unrecognized_cell {
padding: 5px 5px 5px 0px;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
}
div.unrecognized_cell .inner_cell {
border-radius: 2px;
padding: 5px;
font-weight: bold;
color: red;
border: 1px solid #cfcfcf;
background: #eaeaea;
}
div.unrecognized_cell .inner_cell a {
color: inherit;
text-decoration: none;
}
div.unrecognized_cell .inner_cell a:hover {
color: inherit;
text-decoration: none;
}
@media (max-width: 540px) {
div.unrecognized_cell > div.prompt {
display: none;
}
}
div.code_cell {
/* avoid page breaking on code cells when printing */
}
@media print {
div.code_cell {
page-break-inside: avoid;
}
}
/* any special styling for code cells that are currently running goes here */
div.input {
page-break-inside: avoid;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
}
@media (max-width: 540px) {
div.input {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
}
}
/* input_area and input_prompt must match in top border and margin for alignment */
div.input_prompt {
color: #303F9F;
border-top: 1px solid transparent;
}
div.input_area > div.highlight {
margin: 0.4em;
border: none;
padding: 0px;
background-color: transparent;
}
div.input_area > div.highlight > pre {
margin: 0px;
border: none;
padding: 0px;
background-color: transparent;
}
/* The following gets added to the if it is detected that the user has a
* monospace font with inconsistent normal/bold/italic height. See
* notebookmain.js. Such fonts will have keywords vertically offset with
* respect to the rest of the text. The user should select a better font.
* See: https://github.com/ipython/ipython/issues/1503
*
* .CodeMirror span {
* vertical-align: bottom;
* }
*/
.CodeMirror {
line-height: 1.21429em;
/* Changed from 1em to our global default */
font-size: 14px;
height: auto;
/* Changed to auto to autogrow */
background: none;
/* Changed from white to allow our bg to show through */
}
.CodeMirror-scroll {
/* The CodeMirror docs are a bit fuzzy on if overflow-y should be hidden or visible.*/
/* We have found that if it is visible, vertical scrollbars appear with font size changes.*/
overflow-y: hidden;
overflow-x: auto;
}
.CodeMirror-lines {
/* In CM2, this used to be 0.4em, but in CM3 it went to 4px. We need the em value because */
/* we have set a different line-height and want this to scale with that. */
padding: 0.4em;
}
.CodeMirror-linenumber {
padding: 0 8px 0 4px;
}
.CodeMirror-gutters {
border-bottom-left-radius: 2px;
border-top-left-radius: 2px;
}
.CodeMirror pre {
/* In CM3 this went to 4px from 0 in CM2. We need the 0 value because of how we size */
/* .CodeMirror-lines */
padding: 0;
border: 0;
border-radius: 0;
}
/*

Original style from softwaremaniacs.org (c) Ivan Sagalaev
Adapted from GitHub theme

*/
.highlight-base {
color: #000;
}
.highlight-variable {
color: #000;
}
.highlight-variable-2 {
color: #1a1a1a;
}
.highlight-variable-3 {
color: #333333;
}
.highlight-string {
color: #BA2121;
}
.highlight-comment {
color: #408080;
font-style: italic;
}
.highlight-number {
color: #080;
}
.highlight-atom {
color: #88F;
}
.highlight-keyword {
color: #008000;
font-weight: bold;
}
.highlight-builtin {
color: #008000;
}
.highlight-error {
color: #f00;
}
.highlight-operator {
color: #AA22FF;
font-weight: bold;
}
.highlight-meta {
color: #AA22FF;
}
/* previously not defined, copying from default codemirror */
.highlight-def {
color: #00f;
}
.highlight-string-2 {
color: #f50;
}
.highlight-qualifier {
color: #555;
}
.highlight-bracket {
color: #997;
}
.highlight-tag {
color: #170;
}
.highlight-attribute {
color: #00c;
}
.highlight-header {
color: blue;
}
.highlight-quote {
color: #090;
}
.highlight-link {
color: #00c;
}
/* apply the same style to codemirror */
.cm-s-ipython span.cm-keyword {
color: #008000;
font-weight: bold;
}
.cm-s-ipython span.cm-atom {
color: #88F;
}
.cm-s-ipython span.cm-number {
color: #080;
}
.cm-s-ipython span.cm-def {
color: #00f;
}
.cm-s-ipython span.cm-variable {
color: #000;
}
.cm-s-ipython span.cm-operator {
color: #AA22FF;
font-weight: bold;
}
.cm-s-ipython span.cm-variable-2 {
color: #1a1a1a;
}
.cm-s-ipython span.cm-variable-3 {
color: #333333;
}
.cm-s-ipython span.cm-comment {
color: #408080;
font-style: italic;
}
.cm-s-ipython span.cm-string {
color: #BA2121;
}
.cm-s-ipython span.cm-string-2 {
color: #f50;
}
.cm-s-ipython span.cm-meta {
color: #AA22FF;
}
.cm-s-ipython span.cm-qualifier {
color: #555;
}
.cm-s-ipython span.cm-builtin {
color: #008000;
}
.cm-s-ipython span.cm-bracket {
color: #997;
}
.cm-s-ipython span.cm-tag {
color: #170;
}
.cm-s-ipython span.cm-attribute {
color: #00c;
}
.cm-s-ipython span.cm-header {
color: blue;
}
.cm-s-ipython span.cm-quote {
color: #090;
}
.cm-s-ipython span.cm-link {
color: #00c;
}
.cm-s-ipython span.cm-error {
color: #f00;
}
.cm-s-ipython span.cm-tab {
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAYAAAAkuj5RAAAAAXNSR0IArs4c6QAAAGFJREFUSMft1LsRQFAQheHPowAKoACx3IgEKtaEHujDjORSgWTH/ZOdnZOcM/sgk/kFFWY0qV8foQwS4MKBCS3qR6ixBJvElOobYAtivseIE120FaowJPN75GMu8j/LfMwNjh4HUpwg4LUAAAAASUVORK5CYII=);
background-position: right;
background-repeat: no-repeat;
}
div.output_wrapper {
/* this position must be relative to enable descendents to be absolute within it */
position: relative;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
z-index: 1;
}
/* class for the output area when it should be height-limited */
div.output_scroll {
/* ideally, this would be max-height, but FF barfs all over that */
height: 24em;
/* FF needs this *and the wrapper* to specify full width, or it will shrinkwrap */
width: 100%;
overflow: auto;
border-radius: 2px;
-webkit-box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8);
box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8);
display: block;
}
/* output div while it is collapsed */
div.output_collapsed {
margin: 0px;
padding: 0px;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
}
div.out_prompt_overlay {
height: 100%;
padding: 0px 0.4em;
position: absolute;
border-radius: 2px;
}
div.out_prompt_overlay:hover {
/* use inner shadow to get border that is computed the same on WebKit/FF */
-webkit-box-shadow: inset 0 0 1px #000;
box-shadow: inset 0 0 1px #000;
background: rgba(240, 240, 240, 0.5);
}
div.output_prompt {
color: #D84315;
}
/* This class is the outer container of all output sections. */
div.output_area {
padding: 0px;
page-break-inside: avoid;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
}
div.output_area .MathJax_Display {
text-align: left !important;
}
div.output_area .rendered_html table {
margin-left: 0;
margin-right: 0;
}
div.output_area .rendered_html img {
margin-left: 0;
margin-right: 0;
}
div.output_area img,
div.output_area svg {
max-width: 100%;
height: auto;
}
div.output_area img.unconfined,
div.output_area svg.unconfined {
max-width: none;
}
/* This is needed to protect the pre formating from global settings such
as that of bootstrap */
.output {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
}
@media (max-width: 540px) {
div.output_area {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
}
}
div.output_area pre {
margin: 0;
padding: 0;
border: 0;
vertical-align: baseline;
color: black;
background-color: transparent;
border-radius: 0;
}
/* This class is for the output subarea inside the output_area and after
the prompt div. */
div.output_subarea {
overflow-x: auto;
padding: 0.4em;
/* Old browsers */
-webkit-box-flex: 1;
-moz-box-flex: 1;
box-flex: 1;
/* Modern browsers */
flex: 1;
max-width: calc(100% - 14ex);
}
div.output_scroll div.output_subarea {
overflow-x: visible;
}
/* The rest of the output_* classes are for special styling of the different
output types */
/* all text output has this class: */
div.output_text {
text-align: left;
color: #000;
/* This has to match that of the the CodeMirror class line-height below */
line-height: 1.21429em;
}
/* stdout/stderr are 'text' as well as 'stream', but execute_result/error are *not* streams */
div.output_stderr {
background: #fdd;
/* very light red background for stderr */
}
div.output_latex {
text-align: left;
}
/* Empty output_javascript divs should have no height */
div.output_javascript:empty {
padding: 0;
}
.js-error {
color: darkred;
}
/* raw_input styles */
div.raw_input_container {
line-height: 1.21429em;
padding-top: 5px;
}
pre.raw_input_prompt {
/* nothing needed here. */
}
input.raw_input {
font-family: monospace;
font-size: inherit;
color: inherit;
width: auto;
/* make sure input baseline aligns with prompt */
vertical-align: baseline;
/* padding + margin = 0.5em between prompt and cursor */
padding: 0em 0.25em;
margin: 0em 0.25em;
}
input.raw_input:focus {
box-shadow: none;
}
p.p-space {
margin-bottom: 10px;
}
div.output_unrecognized {
padding: 5px;
font-weight: bold;
color: red;
}
div.output_unrecognized a {
color: inherit;
text-decoration: none;
}
div.output_unrecognized a:hover {
color: inherit;
text-decoration: none;
}
.rendered_html {
color: #000;
/* any extras will just be numbers: */
}
.rendered_html em {
font-style: italic;
}
.rendered_html strong {
font-weight: bold;
}
.rendered_html u {
text-decoration: underline;
}
.rendered_html :link {
text-decoration: underline;
}
.rendered_html :visited {
text-decoration: underline;
}
.rendered_html h1 {
font-size: 185.7%;
margin: 1.08em 0 0 0;
font-weight: bold;
line-height: 1.0;
}
.rendered_html h2 {
font-size: 157.1%;
margin: 1.27em 0 0 0;
font-weight: bold;
line-height: 1.0;
}
.rendered_html h3 {
font-size: 128.6%;
margin: 1.55em 0 0 0;
font-weight: bold;
line-height: 1.0;
}
.rendered_html h4 {
font-size: 100%;
margin: 2em 0 0 0;
font-weight: bold;
line-height: 1.0;
}
.rendered_html h5 {
font-size: 100%;
margin: 2em 0 0 0;
font-weight: bold;
line-height: 1.0;
font-style: italic;
}
.rendered_html h6 {
font-size: 100%;
margin: 2em 0 0 0;
font-weight: bold;
line-height: 1.0;
font-style: italic;
}
.rendered_html h1:first-child {
margin-top: 0.538em;
}
.rendered_html h2:first-child {
margin-top: 0.636em;
}
.rendered_html h3:first-child {
margin-top: 0.777em;
}
.rendered_html h4:first-child {
margin-top: 1em;
}
.rendered_html h5:first-child {
margin-top: 1em;
}
.rendered_html h6:first-child {
margin-top: 1em;
}
.rendered_html ul {
list-style: disc;
margin: 0em 2em;
padding-left: 0px;
}
.rendered_html ul ul {
list-style: square;
margin: 0em 2em;
}
.rendered_html ul ul ul {
list-style: circle;
margin: 0em 2em;
}
.rendered_html ol {
list-style: decimal;
margin: 0em 2em;
padding-left: 0px;
}
.rendered_html ol ol {
list-style: upper-alpha;
margin: 0em 2em;
}
.rendered_html ol ol ol {
list-style: lower-alpha;
margin: 0em 2em;
}
.rendered_html ol ol ol ol {
list-style: lower-roman;
margin: 0em 2em;
}
.rendered_html ol ol ol ol ol {
list-style: decimal;
margin: 0em 2em;
}
.rendered_html * + ul {
margin-top: 1em;
}
.rendered_html * + ol {
margin-top: 1em;
}
.rendered_html hr {
color: black;
background-color: black;
}
.rendered_html pre {
margin: 1em 2em;
}
.rendered_html pre,
.rendered_html code {
border: 0;
background-color: #fff;
color: #000;
font-size: 100%;
padding: 0px;
}
.rendered_html blockquote {
margin: 1em 2em;
}
.rendered_html table {
margin-left: auto;
margin-right: auto;
border: 1px solid black;
border-collapse: collapse;
}
.rendered_html tr,
.rendered_html th,
.rendered_html td {
border: 1px solid black;
border-collapse: collapse;
margin: 1em 2em;
}
.rendered_html td,
.rendered_html th {
text-align: left;
vertical-align: middle;
padding: 4px;
}
.rendered_html th {
font-weight: bold;
}
.rendered_html * + table {
margin-top: 1em;
}
.rendered_html p {
text-align: left;
}
.rendered_html * + p {
margin-top: 1em;
}
.rendered_html img {
display: block;
margin-left: auto;
margin-right: auto;
}
.rendered_html * + img {
margin-top: 1em;
}
.rendered_html img,
.rendered_html svg {
max-width: 100%;
height: auto;
}
.rendered_html img.unconfined,
.rendered_html svg.unconfined {
max-width: none;
}
div.text_cell {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
}
@media (max-width: 540px) {
div.text_cell > div.prompt {
display: none;
}
}
div.text_cell_render {
/*font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;*/
outline: none;
resize: none;
width: inherit;
border-style: none;
padding: 0.5em 0.5em 0.5em 0.4em;
color: #000;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
a.anchor-link:link {
text-decoration: none;
padding: 0px 20px;
visibility: hidden;
}
h1:hover .anchor-link,
h2:hover .anchor-link,
h3:hover .anchor-link,
h4:hover .anchor-link,
h5:hover .anchor-link,
h6:hover .anchor-link {
visibility: visible;
}
.text_cell.rendered .input_area {
display: none;
}
.text_cell.rendered .rendered_html {
overflow-x: auto;
overflow-y: hidden;
}
.text_cell.unrendered .text_cell_render {
display: none;
}
.cm-header-1,
.cm-header-2,
.cm-header-3,
.cm-header-4,
.cm-header-5,
.cm-header-6 {
font-weight: bold;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.cm-header-1 {
font-size: 185.7%;
}
.cm-header-2 {
font-size: 157.1%;
}
.cm-header-3 {
font-size: 128.6%;
}
.cm-header-4 {
font-size: 110%;
}
.cm-header-5 {
font-size: 100%;
font-style: italic;
}
.cm-header-6 {
font-size: 100%;
font-style: italic;
}
/*!
*
* IPython notebook webapp
*
*/
@media (max-width: 767px) {
.notebook_app {
padding-left: 0px;
padding-right: 0px;
}
}
#ipython-main-app {
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
height: 100%;
}
div#notebook_panel {
margin: 0px;
padding: 0px;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
height: 100%;
}
div#notebook {
font-size: 14px;
line-height: 20px;
overflow-y: hidden;
overflow-x: auto;
width: 100%;
/* This spaces the page away from the edge of the notebook area */
padding-top: 20px;
margin: 0px;
outline: none;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
min-height: 100%;
}
@media not print {
#notebook-container {
padding: 15px;
background-color: #fff;
min-height: 0;
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
}
@media print {
#notebook-container {
width: 100%;
}
}
div.ui-widget-content {
border: 1px solid #ababab;
outline: none;
}
pre.dialog {
background-color: #f7f7f7;
border: 1px solid #ddd;
border-radius: 2px;
padding: 0.4em;
padding-left: 2em;
}
p.dialog {
padding: 0.2em;
}
/* Word-wrap output correctly. This is the CSS3 spelling, though Firefox seems
to not honor it correctly. Webkit browsers (Chrome, rekonq, Safari) do.
*/
pre,
code,
kbd,
samp {
white-space: pre-wrap;
}
#fonttest {
font-family: monospace;
}
p {
margin-bottom: 0;
}
.end_space {
min-height: 100px;
transition: height .2s ease;
}
.notebook_app > #header {
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
@media not print {
.notebook_app {
background-color: #EEE;
}
}
kbd {
border-style: solid;
border-width: 1px;
box-shadow: none;
margin: 2px;
padding-left: 2px;
padding-right: 2px;
padding-top: 1px;
padding-bottom: 1px;
}
/* CSS for the cell toolbar */
.celltoolbar {
border: thin solid #CFCFCF;
border-bottom: none;
background: #EEE;
border-radius: 2px 2px 0px 0px;
width: 100%;
height: 29px;
padding-right: 4px;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
/* Old browsers */
-webkit-box-pack: end;
-moz-box-pack: end;
box-pack: end;
/* Modern browsers */
justify-content: flex-end;
display: -webkit-flex;
}
@media print {
.celltoolbar {
display: none;
}
}
.ctb_hideshow {
display: none;
vertical-align: bottom;
}
/* ctb_show is added to the ctb_hideshow div to show the cell toolbar.
Cell toolbars are only shown when the ctb_global_show class is also set.
*/
.ctb_global_show .ctb_show.ctb_hideshow {
display: block;
}
.ctb_global_show .ctb_show + .input_area,
.ctb_global_show .ctb_show + div.text_cell_input,
.ctb_global_show .ctb_show ~ div.text_cell_render {
border-top-right-radius: 0px;
border-top-left-radius: 0px;
}
.ctb_global_show .ctb_show ~ div.text_cell_render {
border: 1px solid #cfcfcf;
}
.celltoolbar {
font-size: 87%;
padding-top: 3px;
}
.celltoolbar select {
display: block;
width: 100%;
height: 32px;
padding: 6px 12px;
font-size: 13px;
line-height: 1.42857143;
color: #555555;
background-color: #fff;
background-image: none;
border: 1px solid #ccc;
border-radius: 2px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
height: 30px;
padding: 5px 10px;
font-size: 12px;
line-height: 1.5;
border-radius: 1px;
width: inherit;
font-size: inherit;
height: 22px;
padding: 0px;
display: inline-block;
}
.celltoolbar select:focus {
border-color: #66afe9;
outline: 0;
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.celltoolbar select::-moz-placeholder {
color: #999;
opacity: 1;
}
.celltoolbar select:-ms-input-placeholder {
color: #999;
}
.celltoolbar select::-webkit-input-placeholder {
color: #999;
}
.celltoolbar select::-ms-expand {
border: 0;
background-color: transparent;
}
.celltoolbar select[disabled],
.celltoolbar select[readonly],
fieldset[disabled] .celltoolbar select {
background-color: #eeeeee;
opacity: 1;
}
.celltoolbar select[disabled],
fieldset[disabled] .celltoolbar select {
cursor: not-allowed;
}
textarea.celltoolbar select {
height: auto;
}
select.celltoolbar select {
height: 30px;
line-height: 30px;
}
textarea.celltoolbar select,
select[multiple].celltoolbar select {
height: auto;
}
.celltoolbar label {
margin-left: 5px;
margin-right: 5px;
}
.completions {
position: absolute;
z-index: 110;
overflow: hidden;
border: 1px solid #ababab;
border-radius: 2px;
-webkit-box-shadow: 0px 6px 10px -1px #adadad;
box-shadow: 0px 6px 10px -1px #adadad;
line-height: 1;
}
.completions select {
background: white;
outline: none;
border: none;
padding: 0px;
margin: 0px;
overflow: auto;
font-family: monospace;
font-size: 110%;
color: #000;
width: auto;
}
.completions select option.context {
color: #286090;
}
#kernel_logo_widget {
float: right !important;
float: right;
}
#kernel_logo_widget .current_kernel_logo {
display: none;
margin-top: -1px;
margin-bottom: -1px;
width: 32px;
height: 32px;
}
#menubar {
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
margin-top: 1px;
}
#menubar .navbar {
border-top: 1px;
border-radius: 0px 0px 2px 2px;
margin-bottom: 0px;
}
#menubar .navbar-toggle {
float: left;
padding-top: 7px;
padding-bottom: 7px;
border: none;
}
#menubar .navbar-collapse {
clear: left;
}
.nav-wrapper {
border-bottom: 1px solid #e7e7e7;
}
i.menu-icon {
padding-top: 4px;
}
ul#help_menu li a {
overflow: hidden;
padding-right: 2.2em;
}
ul#help_menu li a i {
margin-right: -1.2em;
}
.dropdown-submenu {
position: relative;
}
.dropdown-submenu > .dropdown-menu {
top: 0;
left: 100%;
margin-top: -6px;
margin-left: -1px;
}
.dropdown-submenu:hover > .dropdown-menu {
display: block;
}
.dropdown-submenu > a:after {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
display: block;
content: "\f0da";
float: right;
color: #333333;
margin-top: 2px;
margin-right: -10px;
}
.dropdown-submenu > a:after.pull-left {
margin-right: .3em;
}
.dropdown-submenu > a:after.pull-right {
margin-left: .3em;
}
.dropdown-submenu:hover > a:after {
color: #262626;
}
.dropdown-submenu.pull-left {
float: none;
}
.dropdown-submenu.pull-left > .dropdown-menu {
left: -100%;
margin-left: 10px;
}
#notification_area {
float: right !important;
float: right;
z-index: 10;
}
.indicator_area {
float: right !important;
float: right;
color: #777;
margin-left: 5px;
margin-right: 5px;
width: 11px;
z-index: 10;
text-align: center;
width: auto;
}
#kernel_indicator {
float: right !important;
float: right;
color: #777;
margin-left: 5px;
margin-right: 5px;
width: 11px;
z-index: 10;
text-align: center;
width: auto;
border-left: 1px solid;
}
#kernel_indicator .kernel_indicator_name {
padding-left: 5px;
padding-right: 5px;
}
#modal_indicator {
float: right !important;
float: right;
color: #777;
margin-left: 5px;
margin-right: 5px;
width: 11px;
z-index: 10;
text-align: center;
width: auto;
}
#readonly-indicator {
float: right !important;
float: right;
color: #777;
margin-left: 5px;
margin-right: 5px;
width: 11px;
z-index: 10;
text-align: center;
width: auto;
margin-top: 2px;
margin-bottom: 0px;
margin-left: 0px;
margin-right: 0px;
display: none;
}
.modal_indicator:before {
width: 1.28571429em;
text-align: center;
}
.edit_mode .modal_indicator:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f040";
}
.edit_mode .modal_indicator:before.pull-left {
margin-right: .3em;
}
.edit_mode .modal_indicator:before.pull-right {
margin-left: .3em;
}
.command_mode .modal_indicator:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: ' ';
}
.command_mode .modal_indicator:before.pull-left {
margin-right: .3em;
}
.command_mode .modal_indicator:before.pull-right {
margin-left: .3em;
}
.kernel_idle_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f10c";
}
.kernel_idle_icon:before.pull-left {
margin-right: .3em;
}
.kernel_idle_icon:before.pull-right {
margin-left: .3em;
}
.kernel_busy_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f111";
}
.kernel_busy_icon:before.pull-left {
margin-right: .3em;
}
.kernel_busy_icon:before.pull-right {
margin-left: .3em;
}
.kernel_dead_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f1e2";
}
.kernel_dead_icon:before.pull-left {
margin-right: .3em;
}
.kernel_dead_icon:before.pull-right {
margin-left: .3em;
}
.kernel_disconnected_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f127";
}
.kernel_disconnected_icon:before.pull-left {
margin-right: .3em;
}
.kernel_disconnected_icon:before.pull-right {
margin-left: .3em;
}
.notification_widget {
color: #777;
z-index: 10;
background: rgba(240, 240, 240, 0.5);
margin-right: 4px;
color: #333;
background-color: #fff;
border-color: #ccc;
}
.notification_widget:focus,
.notification_widget.focus {
color: #333;
background-color: #e6e6e6;
border-color: #8c8c8c;
}
.notification_widget:hover {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
.notification_widget:active,
.notification_widget.active,
.open > .dropdown-toggle.notification_widget {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
.notification_widget:active:hover,
.notification_widget.active:hover,
.open > .dropdown-toggle.notification_widget:hover,
.notification_widget:active:focus,
.notification_widget.active:focus,
.open > .dropdown-toggle.notification_widget:focus,
.notification_widget:active.focus,
.notification_widget.active.focus,
.open > .dropdown-toggle.notification_widget.focus {
color: #333;
background-color: #d4d4d4;
border-color: #8c8c8c;
}
.notification_widget:active,
.notification_widget.active,
.open > .dropdown-toggle.notification_widget {
background-image: none;
}
.notification_widget.disabled:hover,
.notification_widget[disabled]:hover,
fieldset[disabled] .notification_widget:hover,
.notification_widget.disabled:focus,
.notification_widget[disabled]:focus,
fieldset[disabled] .notification_widget:focus,
.notification_widget.disabled.focus,
.notification_widget[disabled].focus,
fieldset[disabled] .notification_widget.focus {
background-color: #fff;
border-color: #ccc;
}
.notification_widget .badge {
color: #fff;
background-color: #333;
}
.notification_widget.warning {
color: #fff;
background-color: #f0ad4e;
border-color: #eea236;
}
.notification_widget.warning:focus,
.notification_widget.warning.focus {
color: #fff;
background-color: #ec971f;
border-color: #985f0d;
}
.notification_widget.warning:hover {
color: #fff;
background-color: #ec971f;
border-color: #d58512;
}
.notification_widget.warning:active,
.notification_widget.warning.active,
.open > .dropdown-toggle.notification_widget.warning {
color: #fff;
background-color: #ec971f;
border-color: #d58512;
}
.notification_widget.warning:active:hover,
.notification_widget.warning.active:hover,
.open > .dropdown-toggle.notification_widget.warning:hover,
.notification_widget.warning:active:focus,
.notification_widget.warning.active:focus,
.open > .dropdown-toggle.notification_widget.warning:focus,
.notification_widget.warning:active.focus,
.notification_widget.warning.active.focus,
.open > .dropdown-toggle.notification_widget.warning.focus {
color: #fff;
background-color: #d58512;
border-color: #985f0d;
}
.notification_widget.warning:active,
.notification_widget.warning.active,
.open > .dropdown-toggle.notification_widget.warning {
background-image: none;
}
.notification_widget.warning.disabled:hover,
.notification_widget.warning[disabled]:hover,
fieldset[disabled] .notification_widget.warning:hover,
.notification_widget.warning.disabled:focus,
.notification_widget.warning[disabled]:focus,
fieldset[disabled] .notification_widget.warning:focus,
.notification_widget.warning.disabled.focus,
.notification_widget.warning[disabled].focus,
fieldset[disabled] .notification_widget.warning.focus {
background-color: #f0ad4e;
border-color: #eea236;
}
.notification_widget.warning .badge {
color: #f0ad4e;
background-color: #fff;
}
.notification_widget.success {
color: #fff;
background-color: #5cb85c;
border-color: #4cae4c;
}
.notification_widget.success:focus,
.notification_widget.success.focus {
color: #fff;
background-color: #449d44;
border-color: #255625;
}
.notification_widget.success:hover {
color: #fff;
background-color: #449d44;
border-color: #398439;
}
.notification_widget.success:active,
.notification_widget.success.active,
.open > .dropdown-toggle.notification_widget.success {
color: #fff;
background-color: #449d44;
border-color: #398439;
}
.notification_widget.success:active:hover,
.notification_widget.success.active:hover,
.open > .dropdown-toggle.notification_widget.success:hover,
.notification_widget.success:active:focus,
.notification_widget.success.active:focus,
.open > .dropdown-toggle.notification_widget.success:focus,
.notification_widget.success:active.focus,
.notification_widget.success.active.focus,
.open > .dropdown-toggle.notification_widget.success.focus {
color: #fff;
background-color: #398439;
border-color: #255625;
}
.notification_widget.success:active,
.notification_widget.success.active,
.open > .dropdown-toggle.notification_widget.success {
background-image: none;
}
.notification_widget.success.disabled:hover,
.notification_widget.success[disabled]:hover,
fieldset[disabled] .notification_widget.success:hover,
.notification_widget.success.disabled:focus,
.notification_widget.success[disabled]:focus,
fieldset[disabled] .notification_widget.success:focus,
.notification_widget.success.disabled.focus,
.notification_widget.success[disabled].focus,
fieldset[disabled] .notification_widget.success.focus {
background-color: #5cb85c;
border-color: #4cae4c;
}
.notification_widget.success .badge {
color: #5cb85c;
background-color: #fff;
}
.notification_widget.info {
color: #fff;
background-color: #5bc0de;
border-color: #46b8da;
}
.notification_widget.info:focus,
.notification_widget.info.focus {
color: #fff;
background-color: #31b0d5;
border-color: #1b6d85;
}
.notification_widget.info:hover {
color: #fff;
background-color: #31b0d5;
border-color: #269abc;
}
.notification_widget.info:active,
.notification_widget.info.active,
.open > .dropdown-toggle.notification_widget.info {
color: #fff;
background-color: #31b0d5;
border-color: #269abc;
}
.notification_widget.info:active:hover,
.notification_widget.info.active:hover,
.open > .dropdown-toggle.notification_widget.info:hover,
.notification_widget.info:active:focus,
.notification_widget.info.active:focus,
.open > .dropdown-toggle.notification_widget.info:focus,
.notification_widget.info:active.focus,
.notification_widget.info.active.focus,
.open > .dropdown-toggle.notification_widget.info.focus {
color: #fff;
background-color: #269abc;
border-color: #1b6d85;
}
.notification_widget.info:active,
.notification_widget.info.active,
.open > .dropdown-toggle.notification_widget.info {
background-image: none;
}
.notification_widget.info.disabled:hover,
.notification_widget.info[disabled]:hover,
fieldset[disabled] .notification_widget.info:hover,
.notification_widget.info.disabled:focus,
.notification_widget.info[disabled]:focus,
fieldset[disabled] .notification_widget.info:focus,
.notification_widget.info.disabled.focus,
.notification_widget.info[disabled].focus,
fieldset[disabled] .notification_widget.info.focus {
background-color: #5bc0de;
border-color: #46b8da;
}
.notification_widget.info .badge {
color: #5bc0de;
background-color: #fff;
}
.notification_widget.danger {
color: #fff;
background-color: #d9534f;
border-color: #d43f3a;
}
.notification_widget.danger:focus,
.notification_widget.danger.focus {
color: #fff;
background-color: #c9302c;
border-color: #761c19;
}
.notification_widget.danger:hover {
color: #fff;
background-color: #c9302c;
border-color: #ac2925;
}
.notification_widget.danger:active,
.notification_widget.danger.active,
.open > .dropdown-toggle.notification_widget.danger {
color: #fff;
background-color: #c9302c;
border-color: #ac2925;
}
.notification_widget.danger:active:hover,
.notification_widget.danger.active:hover,
.open > .dropdown-toggle.notification_widget.danger:hover,
.notification_widget.danger:active:focus,
.notification_widget.danger.active:focus,
.open > .dropdown-toggle.notification_widget.danger:focus,
.notification_widget.danger:active.focus,
.notification_widget.danger.active.focus,
.open > .dropdown-toggle.notification_widget.danger.focus {
color: #fff;
background-color: #ac2925;
border-color: #761c19;
}
.notification_widget.danger:active,
.notification_widget.danger.active,
.open > .dropdown-toggle.notification_widget.danger {
background-image: none;
}
.notification_widget.danger.disabled:hover,
.notification_widget.danger[disabled]:hover,
fieldset[disabled] .notification_widget.danger:hover,
.notification_widget.danger.disabled:focus,
.notification_widget.danger[disabled]:focus,
fieldset[disabled] .notification_widget.danger:focus,
.notification_widget.danger.disabled.focus,
.notification_widget.danger[disabled].focus,
fieldset[disabled] .notification_widget.danger.focus {
background-color: #d9534f;
border-color: #d43f3a;
}
.notification_widget.danger .badge {
color: #d9534f;
background-color: #fff;
}
div#pager {
background-color: #fff;
font-size: 14px;
line-height: 20px;
overflow: hidden;
display: none;
position: fixed;
bottom: 0px;
width: 100%;
max-height: 50%;
padding-top: 8px;
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
/* Display over codemirror */
z-index: 100;
/* Hack which prevents jquery ui resizable from changing top. */
top: auto !important;
}
div#pager pre {
line-height: 1.21429em;
color: #000;
background-color: #f7f7f7;
padding: 0.4em;
}
div#pager #pager-button-area {
position: absolute;
top: 8px;
right: 20px;
}
div#pager #pager-contents {
position: relative;
overflow: auto;
width: 100%;
height: 100%;
}
div#pager #pager-contents #pager-container {
position: relative;
padding: 15px 0px;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
div#pager .ui-resizable-handle {
top: 0px;
height: 8px;
background: #f7f7f7;
border-top: 1px solid #cfcfcf;
border-bottom: 1px solid #cfcfcf;
/* This injects handle bars (a short, wide = symbol) for
the resize handle. */
}
div#pager .ui-resizable-handle::after {
content: '';
top: 2px;
left: 50%;
height: 3px;
width: 30px;
margin-left: -15px;
position: absolute;
border-top: 1px solid #cfcfcf;
}
.quickhelp {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
line-height: 1.8em;
}
.shortcut_key {
display: inline-block;
width: 21ex;
text-align: right;
font-family: monospace;
}
.shortcut_descr {
display: inline-block;
/* Old browsers */
-webkit-box-flex: 1;
-moz-box-flex: 1;
box-flex: 1;
/* Modern browsers */
flex: 1;
}
span.save_widget {
margin-top: 6px;
}
span.save_widget span.filename {
height: 1em;
line-height: 1em;
padding: 3px;
margin-left: 16px;
border: none;
font-size: 146.5%;
border-radius: 2px;
}
span.save_widget span.filename:hover {
background-color: #e6e6e6;
}
span.checkpoint_status,
span.autosave_status {
font-size: small;
}
@media (max-width: 767px) {
span.save_widget {
font-size: small;
}
span.checkpoint_status,
span.autosave_status {
display: none;
}
}
@media (min-width: 768px) and (max-width: 991px) {
span.checkpoint_status {
display: none;
}
span.autosave_status {
font-size: x-small;
}
}
.toolbar {
padding: 0px;
margin-left: -5px;
margin-top: 2px;
margin-bottom: 5px;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
.toolbar select,
.toolbar label {
width: auto;
vertical-align: middle;
margin-right: 2px;
margin-bottom: 0px;
display: inline;
font-size: 92%;
margin-left: 0.3em;
margin-right: 0.3em;
padding: 0px;
padding-top: 3px;
}
.toolbar .btn {
padding: 2px 8px;
}
.toolbar .btn-group {
margin-top: 0px;
margin-left: 5px;
}
#maintoolbar {
margin-bottom: -3px;
margin-top: -8px;
border: 0px;
min-height: 27px;
margin-left: 0px;
padding-top: 11px;
padding-bottom: 3px;
}
#maintoolbar .navbar-text {
float: none;
vertical-align: middle;
text-align: right;
margin-left: 5px;
margin-right: 0px;
margin-top: 0px;
}
.select-xs {
height: 24px;
}
.pulse,
.dropdown-menu > li > a.pulse,
li.pulse > a.dropdown-toggle,
li.pulse.open > a.dropdown-toggle {
background-color: #F37626;
color: white;
}
/**
* Primary styles
*
* Author: Jupyter Development Team
*/
/** WARNING IF YOU ARE EDITTING THIS FILE, if this is a .css file, It has a lot
* of chance of beeing generated from the ../less/[samename].less file, you can
* try to get back the less file by reverting somme commit in history
**/
/*
* We'll try to get something pretty, so we
* have some strange css to have the scroll bar on
* the left with fix button on the top right of the tooltip
*/
@-moz-keyframes fadeOut {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
@-webkit-keyframes fadeOut {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
@-moz-keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@-webkit-keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
/*properties of tooltip after "expand"*/
.bigtooltip {
overflow: auto;
height: 200px;
-webkit-transition-property: height;
-webkit-transition-duration: 500ms;
-moz-transition-property: height;
-moz-transition-duration: 500ms;
transition-property: height;
transition-duration: 500ms;
}
/*properties of tooltip before "expand"*/
.smalltooltip {
-webkit-transition-property: height;
-webkit-transition-duration: 500ms;
-moz-transition-property: height;
-moz-transition-duration: 500ms;
transition-property: height;
transition-duration: 500ms;
text-overflow: ellipsis;
overflow: hidden;
height: 80px;
}
.tooltipbuttons {
position: absolute;
padding-right: 15px;
top: 0px;
right: 0px;
}
.tooltiptext {
/*avoid the button to overlap on some docstring*/
padding-right: 30px;
}
.ipython_tooltip {
max-width: 700px;
/*fade-in animation when inserted*/
-webkit-animation: fadeOut 400ms;
-moz-animation: fadeOut 400ms;
animation: fadeOut 400ms;
-webkit-animation: fadeIn 400ms;
-moz-animation: fadeIn 400ms;
animation: fadeIn 400ms;
vertical-align: middle;
background-color: #f7f7f7;
overflow: visible;
border: #ababab 1px solid;
outline: none;
padding: 3px;
margin: 0px;
padding-left: 7px;
font-family: monospace;
min-height: 50px;
-moz-box-shadow: 0px 6px 10px -1px #adadad;
-webkit-box-shadow: 0px 6px 10px -1px #adadad;
box-shadow: 0px 6px 10px -1px #adadad;
border-radius: 2px;
position: absolute;
z-index: 1000;
}
.ipython_tooltip a {
float: right;
}
.ipython_tooltip .tooltiptext pre {
border: 0;
border-radius: 0;
font-size: 100%;
background-color: #f7f7f7;
}
.pretooltiparrow {
left: 0px;
margin: 0px;
top: -16px;
width: 40px;
height: 16px;
overflow: hidden;
position: absolute;
}
.pretooltiparrow:before {
background-color: #f7f7f7;
border: 1px #ababab solid;
z-index: 11;
content: "";
position: absolute;
left: 15px;
top: 10px;
width: 25px;
height: 25px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
}
ul.typeahead-list i {
margin-left: -10px;
width: 18px;
}
ul.typeahead-list {
max-height: 80vh;
overflow: auto;
}
ul.typeahead-list > li > a {
/** Firefox bug **/
/* see https://github.com/jupyter/notebook/issues/559 */
white-space: normal;
}
.cmd-palette .modal-body {
padding: 7px;
}
.cmd-palette form {
background: white;
}
.cmd-palette input {
outline: none;
}
.no-shortcut {
display: none;
}
.command-shortcut:before {
content: "(command)";
padding-right: 3px;
color: #777777;
}
.edit-shortcut:before {
content: "(edit)";
padding-right: 3px;
color: #777777;
}
#find-and-replace #replace-preview .match,
#find-and-replace #replace-preview .insert {
background-color: #BBDEFB;
border-color: #90CAF9;
border-style: solid;
border-width: 1px;
border-radius: 0px;
}
#find-and-replace #replace-preview .replace .match {
background-color: #FFCDD2;
border-color: #EF9A9A;
border-radius: 0px;
}
#find-and-replace #replace-preview .replace .insert {
background-color: #C8E6C9;
border-color: #A5D6A7;
border-radius: 0px;
}
#find-and-replace #replace-preview {
max-height: 60vh;
overflow: auto;
}
#find-and-replace #replace-preview pre {
padding: 5px 10px;
}
.terminal-app {
background: #EEE;
}
.terminal-app #header {
background: #fff;
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
.terminal-app .terminal {
width: 100%;
float: left;
font-family: monospace;
color: white;
background: black;
padding: 0.4em;
border-radius: 2px;
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.4);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.4);
}
.terminal-app .terminal,
.terminal-app .terminal dummy-screen {
line-height: 1em;
font-size: 14px;
}
.terminal-app .terminal .xterm-rows {
padding: 10px;
}
.terminal-app .terminal-cursor {
color: black;
background: white;
}
.terminal-app #terminado-container {
margin-top: 20px;
}
/*# sourceMappingURL=style.min.css.map */
-->


[pytorch] PyTorch Hook的更多相关文章

  1. [Pytorch]Pytorch中tensor常用语法

    原文地址:https://zhuanlan.zhihu.com/p/31494491 上次我总结了在PyTorch中建立随机数Tensor的多种方法的区别. 这次我把常用的Tensor的数学运算总结到 ...

  2. [pytorch]pytorch loss function 总结

    原文: http://www.voidcn.com/article/p-rtzqgqkz-bpg.html 最近看了下 PyTorch 的损失函数文档,整理了下自己的理解,重新格式化了公式如下,以便以 ...

  3. [Pytorch]Pytorch的tensor变量类型转换

    原文:https://blog.csdn.net/hustchenze/article/details/79154139 Pytorch的数据类型为各式各样的Tensor,Tensor可以理解为高维矩 ...

  4. [Pytorch]Pytorch中图像的基本操作(TenCrop)

    转自:https://www.jianshu.com/p/73686691cf13 下面是几种常写的方式 第一种方式 normalize = transforms.Normalize([0.485, ...

  5. [Pytorch]Pytorch加载预训练模型(转)

    转自:https://blog.csdn.net/Vivianyzw/article/details/81061765 东风的地方 1. 直接加载预训练模型 在训练的时候可能需要中断一下,然后继续训练 ...

  6. [Pytorch]Pytorch 细节记录(转)

    文章来源 https://www.cnblogs.com/king-lps/p/8570021.html 1. PyTorch进行训练和测试时指定实例化的model模式为:train/eval eg: ...

  7. [PyTorch]PyTorch中反卷积的用法

    文章来源:https://www.jianshu.com/p/01577e86e506 pytorch中的 2D 卷积层 和 2D 反卷积层 函数分别如下: class torch.nn.Conv2d ...

  8. [Pytorch]PyTorch Dataloader自定义数据读取

    整理一下看到的自定义数据读取的方法,较好的有一下三篇文章, 其实自定义的方法就是把现有数据集的train和test分别用 含有图像路径与label的list返回就好了,所以需要根据数据集随机应变. 所 ...

  9. [PyTorch]PyTorch中模型的参数初始化的几种方法(转)

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 本文目录 1. xavier初始化 2. kaiming初始化 3. 实际使用中看到的初始化 3.1 ResNeXt,de ...

随机推荐

  1. StoneTab标签页CAD插件 3.2.5

    //////////////////////////////////////////////////////////////////////////////////////////////////// ...

  2. css的一些基础方法

    1.css样式表分别有: 内联样式表 <!DOCTYPE html> <html lang="en"> <head> <meta char ...

  3. SVG学习之stroke-dasharray 和 stroke-dashoffset 详解

    本文适合对SVG已经有所了解,但是对stoke-dasharray和stroke-dashoffset用法有疑问的童鞋 第一:概念解释 1. stroke意思是:画短线于,在...上划线 2. str ...

  4. PLSQL导入导出数据库

    使用sql脚本和plsql完成数据库的导入导出 1. 准备数据库创建脚本 [SQL] 创建数据库表空间: 格式:create tablespace 表空间名 datafile ‘数据文件位置及名称’ ...

  5. 捕捉Promise reject 错误

    var sleep = function (time) { return new Promise(function (resolve, reject) { setTimeout(function () ...

  6. python读取ubuntu系统磁盘挂载情况

    磁盘挂载 利用df -h  的命令 此功能主要实现了python 命令行执行函数进行解析df 返回的数据   代码如下 : # liunx 系统获取 磁盘挂载的情况 代码 #!/usr/bin/pyt ...

  7. 安卓开发之Toolbar返回键

    本文前三步演示了为Toolbar添加返回键并实现返回的步骤,第四步给出了设置返回键颜色的方法. 1.在xml布局中引用toolbar: <android.support.design.widge ...

  8. Hadoop Shell 操作

    此随笔仅记录一下常用的Hadoop shell 操作的命令 参考官方文档    http://hadoop.apache.org/docs/r1.0.4/cn/hdfs_shell.html FS S ...

  9. CHD-5.3.6集群上Flume的文件监控

    收集hive的log     hive的运行日志:    /home/hadoop/CDH5.3.6/hive-0.13.1-cdh5.3.6/log/hive.log * memory *hdfs  ...

  10. Hadoop_23_MapReduce倒排索引实现

    1.1.倒排索引  根据属性的值来查找记录.这种索引表中的每一项都包括一个属性值和具有该属性值的各记录的地址.由于不是由记录来确 定属性值,而是由属性值来确定记录的位置,因而称为倒排索引(invert ...