diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent.html b/doc/Turning the database inside-out with Apache Samza - Confluent.html new file mode 100644 index 0000000..a1a04a9 --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent.html @@ -0,0 +1,144 @@ +Turning the database inside-out with Apache Samza - Confluent
Project Metamorphosis: Unveiling the next-gen event streaming platform.Learn More
Connecting to Apache Kafka

Turning the database inside-out with Apache Samza

This is an edited and expanded transcript of a talk I gave at Strange Loop 2014. The video recording (embedded below) has been watched over 8,000 times. For those of you who prefer reading, I thought it would be worth writing down the talk.

+

+
+

 

+

Databases are global, shared, mutable state. That’s the way it has been since the 1960s, and no amount of NoSQL has changed that. However, most self-respecting developers have got rid of mutable global variables in their code long ago. So why do we tolerate databases as they are?

+

A more promising model, used in some systems, is to think of a database as an always-growing collection of immutable facts. You can query it at some point in time — but that’s still old, imperative style thinking. A more fruitful approach is to take the streams of facts as they come in, and functionally process them in real-time.

+

This talk introduces Apache Samza, a distributed stream processing framework developed at LinkedIn. At first it looks like yet another tool for computing real-time analytics, but it’s more than that. Really it’s a surreptitious attempt to take the database architecture we know, and turn it inside out.

+

At its core is a distributed, durable commit log, implemented by Apache Kafka. Layered on top are simple but powerful tools for joining streams and managing large amounts of data reliably.

+

What do we have to gain from turning the database inside out? Simpler code, better scalability, better robustness, lower latency, and more flexibility for doing interesting things with data. After this talk, you’ll see the architecture of your own applications in a new light.

+

Turning the database inside-out with Apache Samza

+

This talk is about database architecture and application architecture. It’s somewhat related to an open source project I’ve been working on, called Apache Samza. I’m Martin Kleppmann, and I was until recently at LinkedIn working on Samza. At the moment I’m taking a sabbatical to write a book for O’Reilly, called Designing Data-Intensive Applications.

+

Let’s talk about databases. What I mean is not any particular brand of database — I don’t mind whether you’re using relational, or NoSQL, or whatever. I’m really talking about the general concept of a database, as we use it when building applications.

+

Take, for example, the stereotypical web application architecture:

+

Overview of event-based technologies

+

You have a client, which may be a web browser or a mobile app, and that client talks to some kind of server-side system (which you may call a “backend” or whatever you like). The backend typically implements some kind of business logic, performs access control, accepts input, produces output. When the backend needs to remember something for the future, it stores that data in a database, and when it needs to look something up, it queries a database. That’s all very familiar stuff.

+

The way we typically build these sorts of applications is that we make the backend layer stateless. That has a lot of advantages: you can scale out the backend by just running more processes in parallel, and you can route any request to any backend instance (they are all equally well qualified to handle the request), so it’s easy to spread the load across multiple machines. Any state that is required to handle a request will be looked up from the database on each request. That also works nicely with HTTP, since HTTP is a stateless protocol.

+

However, the big problem with this approach is: the state has to go somewhere, and so we have to put it in the database. We are now using the database as a kind of gigantic, global, shared, mutable state. It’s like a global variable that’s shared between all your application servers. It’s exactly the kind of horrendous thing that, in shared-memory concurrency, we’ve been trying to get rid of for ages. Actors, channels, goroutines, etc. are all attempts to get away from shared-memory concurrency, avoiding the problems of locking, deadlock, concurrent modifications, race conditions, and so on.

+

We’re trying to get away from shared-memory concurrency, but with databases we’re still stuck with this big, shared, mutable state. So it’s worth thinking about this: if we’re trying to get rid of shared memory in our single-process application architecture, what would happen if we tried to get rid of this shared mutable state on a whole-system level?"It's always been that way"?At the moment, it seems to me that the main reason why systems are still being built with mutable databases is just inertia: that’s the way we’ve building applications for decades, and we don’t really have good tools to do it differently. So, let’s think about what other possibilities we have for building stateful systems.

+

In order to try to figure out what routes we could take, I’d like to look at four different examples of things that databases currently do, and things that we do with databases. And these four examples might give us an indicator of the directions in which we could take these systems forward in future.1. Replication

+

The first example I’d like to look at is replication. You probably know about the basics of replication: the idea is that you have a copy of the same data on multiple machines (nodes), so that you can serve reads in parallel, and so that the system keeps running if you lose a machine.

+

It’s the database’s job to keep those replicas in sync. A common architecture for replication is that you send your writes to one designated node (which you may call the leader, master or primary), and it’s the leader’s responsibility to ensure that the writes are copied to the other nodes (which you may call followers, slaves or standbys). There are also other ways of doing it, but leader-based replication is familiar — many systems are built that way.

+

Let’s look at an example of replication to see what’s actually happening under the hood. Take a shopping cart, for instance.

+

Shopping cart example

+

This is using a relational data model, but the same principles apply with other data models too. Say you have a table with three columns: customers, products, and quantity. Each row indicates that a particular customer has a particular quantity of a particular product in their shopping cart.

+

Now say customer 123 changes their mind, and instead of wanting quantity 1 of product 999, they actually want quantity 3 of that product. So they issue an update query to the database, which matches the row for customer 123 and product 999, and it changes the value of the quantity column from 1 to 3.

+

Updating quantity of item in shopping cart

+

The result is that the database overwrites the quantity value with the new value, i.e. it applies the update in the appropriate place.

+

Now, I was talking about replication. What does this update do in the context of replication? Well, first of all, you send this update query to your leader, and it executes the query, figures out which rows match the condition, and applies the write locally:

+

 

+

Streaming aggregation via event stream

+

Now, how does this write get applied to the other replicas? There are several different ways how you can implement replication. One option is to send the same update query to the follower, and it executes the same statement on its own copy of the database. Another option is to ship the write-ahead log from the leader to the follower.

+

A third option for replication, which I’ll focus on here, is called a logical log. In this case, the leader writes out the effect that the query had — i.e. which rows were inserted, updated or deleted — like a kind of diff. For an update, like in this example, the logical log identifies the row that was changed (using a primary key or some kind of internal tuple identifier), gives the new value of that row, and perhaps also the old value.

+

This might seem like nothing special, but notice that something interesting has happened here:

+

Update statement is imperative, replication event is immutableAt the top we have the update statement, an imperative statement describing the state mutation. It is an instruction to the database, telling it to modify certain rows in the database that match certain conditions.

+

On the other hand, when the write is replicated from the leader to the follower as part of the logical log, it takes a different form: it becomes an event, stating that at a particular point in time, a particular customer changed the quantity of a particular product in their cart from 1 to 3. And this is a fact — even if the customer later removes the item from their cart, or changes the quantity again, or goes away and never comes back, that doesn’t change the fact that this state change occurred. The fact always remains true.

+

This distinction between an imperative modification and an immutable fact is something you may have seen in the context of event sourcing. That’s a method of database design that says you should structure all of your data as immutable facts, and it’s an interesting idea.

+

However, what I’m saying here is: even if you use your database in the traditional way, overwriting old state with new state, the database’s internal replication mechanism may still be translating those imperative statements into a stream of immutable events.

+

Hold that thought for now: I’m going to talk about some completely different things, and return to this idea later.2. Secondary indexesThe second one of the four things I want to talk about is secondary indexing. You’re probably familiar with secondary indexes — they are the bread and butter of relational databases. Using the shopping cart example again:Two indexes on one tableYou have a table with different columns, and you may have several different indexes on that table in order to be able to efficiently find rows that match a particular query. For example, you may run some SQL to create two indexes: one on the customer_id column, and a separate index on the product_id column.

+

Using the index on customer_id you can then efficiently find all the items that a particular customer has in their cart. Using the index on product_id you can efficiently find all the carts that contain a particular product.

+

What does the database do when you run one of these CREATE INDEX queries?

+

Shopping cart example: updating quantity

+

The database scans over the entire table, and it creates an auxiliary data structure for each index. An index is a data structure that represents the information in the base table in some different way. In this case, the index is a key-value-like structure: the keys are the contents of the column that you’re indexing, and the values are the rows that contain this particular key.Values in table cells become keys in the index

+

Put another way: to build the index for the customer_id column, the database takes all the values that appear in that column, and uses them as keys in a dictionary. A value points at all of the occurrences of that value — for example, the index entry 123 points at all of the rows which have a customer_id of 123. Similarly for the other index.

+

The important point here is that the process of going from the base table to the indexes is completely mechanical. You simply tell the database that you want a particular index to exist, and it goes away and builds that index for you.Index is generated from table through a derivation functionThe index doesn’t add any new information to the database — it just represents the existing data in a different structure. (Put another way, if you drop the index, that doesn’t delete any data from your database.) It’s a redundant data structure that only exists to make certain queries faster. And that data structure can be entirely derived from the original table.

+

Creating an index is essentially a transformation which takes a database table as input, and produces an index as output. The transformation consists of going through all the rows in the table, picking out the field that you want to index, and restructuring the data so that you can look up by that field. That transformation is built into the database, so you don’t need to implement it yourself. You just tell the database that you want an index on a particular field to exist, and it does all the work of building it.

+

Another great thing about indexes: whenever the data in the underlying table changes, the database automatically updates the indexes to be consistent with the new data in the table. In other words, this transformation function which derives the index from the original table is not just applied once when you create the index, but applied continuously.

+

With many databases, these index updates are even done in a transactionally consistent way. This means that any later transactions will see the data in the index in the same state as it is in the underlying table. If a transaction aborts and rolls back, the index modifications are also rolled back. That’s a really great feature which we often don’t appreciate!Create index concurrently...What’s even better is that some databases let you build an index at the same time as continuing to process write queries. In PostgreSQL, for example, you can say CREATE INDEX CONCURRENTLY. On a large table, creating an index could take several hours, and on a production database you wouldn’t want to have to stop writing to the table while the index is being built. The index builder really needs to be a background process which can run while your application is simultaneously reading and writing to the database as usual.

+

The fact that databases can do this is quite impressive. After all, to build an index, the database has to scan the entire table contents, but those contents are changing at the same time as the scan is happening. The index builder is tracking a moving target. At the end, the database ends up with a transactionally consistent index, despite the fact that the data was changing concurrently.

+

In order to do this, the database needs to build the index from a consistent snapshot at one point in time, and also keep track of all the changes that occurred since that snapshot while the index build was in progress. That’s a really cool feature.

+

So far we’ve discussed two aspects of databases: replication and secondary indexing. Let’s move on to number 3: caching.3. CachingWhat I’m talking about here is caching that is explicitly done by the application. (You also get caching happening automatically at various levels, such as the operating system’s page cache and the CPU caches, but that’s not what I’m talking about here.)

+

Say you have a website that becomes popular, and it becomes too expensive or too slow to hit the database for every web request, so you introduce a caching layer — often using memcached or Redis or something of that sort. And often this cache is managed in application code, which typically looks something like this:

+

Advantages of event sourcing

+

When a request arrives at the application, you first look in a cache to see whether the data you want is already there. The cache lookup is typically by some key that describes the data you want. If the data is in the cache, you can return it straight to the client.

+

If the data you want isn’t in the cache, that’s a cache miss. You then go to the underlying database, and query the data that you want. On the way out, the application also writes that data to the cache, so that it’s there for the next request that needs it. The thing it writes to the cache is whatever the application would have wanted to see there in the first place. Then the application returns the data to the client.

+

This is a very common pattern, but there are several big problems with it.

+

Problems with read-through cachingThe first problem is that clichéd quote about there being only two hard problems in computer science (which I can’t stand any more). But seriously, if you’re managing a cache like this, then cache invalidation really is tricky. When data in the underlying database changes, how do you know what entries in the cache to expire or update? One option is to have an expiry algorithm which figures out which database change affects which cache entries, but those algorithms are brittle and error-prone. Alternatively, you can just have a time-to-live (expiry time) and accept that you sometimes read stale data from the cache, but such staleness is often unacceptable.

+

Another problem is that this architecture is very prone to race conditions. For example, say you have two processes concurrently writing to the database and also updating the cache. They might update the database in one order, and the cache in the other order, and now the two are inconsistent. Or if you fill the cache on read, you may read and write concurrently, and so the cache is updated with a stale value while the concurrent write is occurring. I suspect that most of us building these systems just pretend that the race conditions don’t exist, because they are just too much to think about.

+

A third problem is cold start. If you reboot your memcached servers and they lose all their cached contents, suddenly every request is a cache miss, the database is overloaded because of the sudden surge in requests, and you’re in a world of pain. If you want to create a new cache, you need some way of bootstrapping its contents without overloading other parts of the system.

+

 

+

Kafka and Samza

+

So, here we have a contrast: on the one hand, creating a secondary index in a database is beautifully simple, one line of SQL — the database handles it automatically, keeping everything up-to-date, and even making the index transactionally consistent. On the other hand, application-level cache maintenance is a complete mess of complicated invalidation logic, race conditions and operational problems.

+

Why should it be that way? Secondary indexes and caches are not fundamentally different. We said earlier that a secondary index is just a redundant data structure on the side, which structures the same data in a different way, in order to speed up read queries. A cache is just the same.

+

 

+

Distributed stream processing frameworks overview

+

If you think about it, a cache is also the result of taking your data in one form (the form in which it’s stored in the database) and transforming it into a different form for faster reads. In other words, the contents of the cache are derived from the contents of the database.

+

We said that a secondary index is built by picking out one field from every record, and using that as the key in a dictionary. In the case of a cache, we may apply an arbitrary function to the data: the data from the database may have gone through some kind of business logic or rendering before it’s put in the cache, and it may be the result of joining several records from different tables. But the end result is similar: if you lose your cache, you can rebuild it from the underlying database; thus, the contents of the cache are derived from the database.

+

In a read-through cache, this transformation happens on the fly, when there is a cache miss. But we could perhaps imagine making the process of building and updating a cache more systematic, and more similar to secondary indexes. Let’s return to that idea later.

+

I said I was going to talk about four different aspects of database. Let’s move on to the fourth: materialized views.

+

 

+

4. Materialized views

+

You may already know what materialized views are, but let me explain them briefly in case you’ve not previously come across them. You may be more familiar with “normal” views — non-materialized views, or virtual views, or whatever you want to call them. They work like this:

+

Event-based technologies

+

In a relational database, where views are common, you would create a view by saying “CREATE VIEW viewname…” followed by a SELECT query. When you now look at this view in the database, it looks somewhat like a table — you can use it in read queries like any other table. And when you do this, say you SELECT * from that view, the database’s query planner actually rewrites the query into the underlying query that you used in the definition of the view.

+

So you can think of a view as a kind of convenient alias, a wrapper that allows you to create an abstraction, hiding a complicated query behind a simpler interface.

+

Contrast that with a materialized view, which is defined using almost identical syntax:Creating a materialized views: copy of data

+

You also define a materialized view in terms of a SELECT query; the only syntactic difference is that you say CREATE MATERIALIZED VIEW instead of CREATE VIEW. However, the implementation is totally different.

+

When you create a materialized view, the database starts with the underlying tables — that is, the tables you’re querying in the SELECT statement of the view (“bar” in the example). The database scans over the entire contents of those tables, executes that SELECT query on all of the data, and copies the results of that query into something like a temporary table.

+

The results of this query are actually written to disk, in a form that’s very similar to a normal table. And that’s really what “materialized” means in this context: it just means that the view’s query has been executed and the results written to disk.

+

Remember that with the non-materialized view, the database would expand the view into the underlying query at query time. On the other hand, when you query a materialized view, the database can read its contents directly from disk, just like a table. The view’s underlying query has already been executed ahead of time, so the database now just needs to read the result. This is especially useful if the view’s underlying query is expensive.

+

Derivation function for materialized view

+

If you’re thinking “this seems like a cache of query results”, you would be right — that’s exactly what it is. However, the big difference between a materialized view and application-managed caches is the responsibility for keeping it up-to-date.

+

With a materialized view, you declare once how you want the materialized view to be defined, and the database takes care of building that view from a consistent snapshot of the underlying tables (much like building a secondary index). Moreover, when the data in the underlying tables changes, the database takes responsibility for maintaining the materialized view, keeping it up-to-date. Some databases do this materialized view maintenance on an ongoing basis, and some require you to periodically refresh the view so that changes take effect. But you certainly don’t have to do cache invalidation in your application code.

+

Another feature of application-managed caches is that you can apply arbitrary business logic to the data before storing it in the cache, so that you can do less work at query time, or reduce the amount of data you need to cache. Could a materialized view do something similar?Use JavaScript stored procedure in derivation functionIn a relational database, materialized views are defined using SQL, so the transformations they can apply to the data are limited to the operations that are built into SQL (which are very restricted compared to a general-purpose programming language). However, many databases can also be extended using stored procedures — code that runs inside the database and can be called from SQL. For example, you can use JavaScript to write PostgreSQL stored procedures. This would let you implement something like an application-level cache, including arbitrary business logic, running as a materialized view inside a database.

+

I am not convinced that this is necessarily a good idea: with code running inside your database, it’s much harder to reason about monitoring, versioning, deployments, performance impact, multi-tenant resource isolation, and so on. I don’t think I would advocate stored procedures as an application development platform. However, the idea of materialized views is nevertheless interesting.

+

Comparison of replication, secondary indexing, caching and materialized viewsLet’s recap the four aspects of databases that we discussed: replication, secondary indexing, caching, and materialized views. What they all have in common is that they are dealing with derived data in some way: some secondary data structure is derived from an underlying, primary dataset, via a transformation process.

+
    +
  1. We first discussed replication, i.e. keeping a copy of the same data on multiple machines. It generally works very well, so we’ll give it a green smiley. There are some operational quirks with some databases, and some of the tooling is a bit weird, but on the whole it’s mature, well-understood, and well-supported.
  2. +
  3. Similarly, secondary indexing works very well. You can build a secondary index concurrently with processing write queries, and the database somehow manages to do this in a transactionally consistent way.
  4. +
  5. On the other hand, application-level caching is a complete mess. Red frowny face.
  6. +
  7. And materialized views are so-so: the idea is good, but the way they’re implemented is not what you’d want from a modern application development platform. Maintaining the materialized view puts additional load on the database, while actually the whole point of a cache is to reduce load on the database!
  8. +
+

Magically self-updating cache...However, there’s something really compelling about this idea of materialized views. I see a materialized view almost as a kind of cache that magically keeps itself up-to-date. Instead of putting all of the complexity of cache invalidation in the application (risking race conditions and all the discussed problems), materialized views say that cache maintenance should be the responsibility of the data infrastructure.

+

Let's rethink materialized views!So let’s think about this: can we reinvent materialized views, implement them in a modern and scalable way, and use them as a general mechanism for cache maintenance?

+

If we started with a clean slate, without the historical baggage of existing databases, what would the ideal architecture for applications look like?Traditionally, the replication stream is an implementation detailThink back to leader-based replication which we discussed earlier. You make your writes to a leader, which first applies the writes locally, and then sends those writes over the network to follower nodes. In other words, the leader sends a stream of data changes to the followers. We discussed a logical log as one way of implementing this.

+

In a traditional database architecture, application developers are not supposed to think about that replication stream. It’s an implementation detail that is hidden by the database abstraction. SQL queries and responses are the database’s public interface — and the replication stream is not part of the public interface. You’re not supposed to go and parse that stream, and use it for your own purposes. (Yes, there are tools that do this, but in traditional databases they are on the periphery of what is supported, whereas the SQL interface is the dominant access method.)

+

And in some ways this is reasonable — the relational model is a pretty good abstraction, which is why it has been so popular for several decades. But SQL is not the last word in databases.

+

What if we took that replication stream, and made it a first-class citizen in our data architecture? What if we changed our infrastructure so that the replication stream was not an implementation detail, but a key part of the public interface of the database? What if we turn the database inside out, take the implementation detail that was previously hidden, and make it a top-level concern? What would that look like?Unbundle the database: make the transaction log a first-class componentWell, you could call that replication stream a “transaction log” or an “event stream”. You can format all your writes as immutable events (facts), like we saw earlier in the context of a logical log. Now each write is just an immutable event that you can append to the end of the transaction log. The transaction log is a really simple, append-only data structure.

+

There are various ways of implementing this, but one good choice for the transaction log is to use Apache Kafka. It provides an append-only log data structure, but it does so in a reliable and scalable manner — it durably writes everything to disk, it replicates data across multiple machines (so that you don’t lose any data if you lose a machine), and it partitions the stream across multiple machines for horizontal scalability. It easily handles millions of writes per second on very modest hardware.

+

When you do this, you don’t need to necessarily make your writes through a leader database — you could also imagine directly appending your writes to the log. (Going through a leader would still be useful if you want to validate that writes meet certain constraints before writing them to the log.)

+

Writing to this system is now super fast and scalable, because the only thing you’re doing is appending an event to a log. But what about reads? Reading data that has been written to the log is now really inconvenient, because you have to scan the entire log to find the thing that you want.

+

The solution is to build materialized views from the writes in the transaction log. The materialized views are just like the secondary indexes we talked about earlier: data structures that are derived from the data in the log, and optimized for fast reading. A materialized view is just a cached subset of the log, and you could rebuild it from the log at any time. There could be many different materialized views onto the same data: a key-value store, a full-text search index, a graph index, an analytics system, and so on.

+

You can think of this as “unbundling” the database. All the stuff that was previously packed into a single monolithic software package is being broken out into modular components that can be composed in flexible ways.Derive materialized views from the transaction log using SamzaIf you use Kafka to implement the log, how do you implement these materialized views? That’s where Apache Samza comes in. It’s a stream processing framework that is designed to go well with Kafka. With Samza, you write jobs that consume the events in a log, and build cached views of the data in the log. When a job first starts up, it can build up its state by consuming all the events in the log. And on an ongoing basis, whenever a new event appears in the stream, it can update the view accordingly. The view can be any existing database or index — Samza just provides the framework for processing the stream.

+

Anyone who wants to read data can now query those materialized views that are maintained by the Samza jobs. Those views are just databases, indexes or caches, and you can send read-only requests to them in the usual way. The difference to traditional database architecture is that if you want to write to the system, you don’t write directly to the same databases that you read from. Instead, you write to the log, and there is an explicit transformation process which takes the data on the log and applies it to the materialized views.Make writes an append-only stream of immutable factsThis separation of reads and writes is really the key idea here. By putting writes only in the log, we can make them much simpler: we don’t need to update state in place, so we move away from the problems of concurrent mutation of global shared state. Instead, we just keep an append-only log of immutable events. This gives excellent performance (appending to a file is sequential I/O, which is much faster than random-access I/O), is easily scalable (independent events can be put in separate partitions), and is much easier to make reliable.

+

If it’s too expensive for you to keep the entire history of every change that ever happened to your data, Kafka supports compaction, which is a kind of garbage collection process that runs in the background. It’s very similar to the log compaction that databases do internally. But that doesn’t change the basic principle of working with streams of immutable events.

+

These ideas are nothing new. To mention just a few examples, Event Sourcing is a data modelling technique based on the same principle; query languages like Datalog have been based on immutable facts for decades; databases like Datomic are built on immutability, enabling neat features like point-in-time historical queries; and the Lambda Architecture is one possible approach for dealing with immutable datasets at scale. At many levels of the stack, immutability is being applied successfully.

+

Make reads from materialized views

+

On the read side, we need to start thinking less about querying databases, and more about consuming and joining streams, and maintaining materialized views of the data in the form in which we want to read it.

+

To be clear, I think querying databases will continue to be important: for example, when an analyst is running exploratory ad-hoc queries against a data warehouse of historical data, it doesn’t make much sense to use materialized views — for those kinds of queries it’s better to just keep all the raw events, and to build databases which can scan over them very quickly. Modern column stores have become very good at that.

+

But in situations where you might use application-managed caches (namely, an OLTP context where the queries are known in advance and predictable), materialized views are very helpful.Precompute and maintain materialized views from the logThere are a few differences between a read-through cache (which gets invalidated or updated within the application code) and a materialized view (which is maintained by consuming a log):

+
    +
  • With the materialized view, there is a principled translation process from the write-optimized data in the log into the read-optimized data in the view. That translation runs in a separate process which you can monitor, debug, scale and maintain independently from the rest of your application. By contrast, in the typical read-through caching approach, the cache management logic is deeply intertwined with the rest of the application, it’s easy to introduce bugs, and it’s difficult to understand what is happening.
  • +
  • A cache is filled on demand when there is a cache miss (so the first request for a given object is always slow). By contrast, a materialized view is precomputed, i.e. its entire contents are computed before anyone asks for it — just like a secondary index. This means there is no such thing as a cache miss: if an item doesn’t exist in the materialized view, it doesn’t exist in the database. There is no need to fall back to some kind of underlying database.
  • +
  • Once you have this process for translating logs into views, you have great flexibility to create new views: if you want to present your existing data in some new way, you can simply create a new stream processing job, consume the input log from the beginning, and thus build a completely new view onto all the existing data. (If you think about it, this is pretty much what a database does internally when you create a new secondary index on an existing table.) You can then maintain both views in parallel, gradually move applications to the new view, and eventually discard the old view. No more scary stop-the-world schema migrations.
  • +
+

Mechanics that need to be solved for practical adoptionOf course, such a big change in application architecture and database architecture means that many practical details need to be figured out: how do you deploy and monitor these stream processing jobs, how do you make the system robust to various kinds of fault, how do you integrate with existing systems, and so on? But the good news is that all of these issues are being worked on. It’s a fast-moving area with lots of activity, so if you find it interesting, we’d love your contributions to the open source projects.HappinessWe are still figuring out how to build large-scale applications well — what techniques we can use to make our systems scalable, reliable and maintainable. Put more bluntly, we need to figure out ways to stop our applications turning into big balls of mud.

+

However, to me, this approach of immutable events and materialized views seems like a very promising route forwards. I am optimistic that this kind of application architecture will help us build better (more powerful and more reliable) software faster.Why?The changes I’ve proposed are quite radical, and it’s going to be a lot of work to put them into practice. If we are going to completely change the way we use databases, we had better have some very good reasons. So let me give three reasons why I think it’s worth moving towards a log of immutable events.Reason 1: Better data

+

Firstly, I think that writing data as a log produces better-quality data than if you update a database directly. For example, if someone adds an item to their shopping cart and then removes it again, those actions have information value. If you delete that information from the database when a customer removes an item from the cart, you’ve just thrown away information that would have been valuable for analytics and recommendation systems.

+

The entire long-standing debate about normalization in databases is predicated on the assumption that data is going to be written and read in the same schema. A normalized database (with no redundancy) is optimized for writing, whereas a denormalized database is optimized for reading. If you separate the writing side (the log) from the reading side (materialized views), you can denormalize the reading side to your heart’s content, but still retain the ability to process writes efficiently.

+

Another very nice feature of an append-only log is that it allows much easier recovery from errors. If you deploy some bad code that writes incorrect data to the database, or if a human enters some incorrect data, you can look at the log to see the exact history of what happened, and undo it. That kind of recovery is much harder if you’ve overwritten old data with new data, or even deleted data incorrectly. Also, any kind of audit is much easier if you only ever append to a log — that’s why accountants don’t use erasers.Reason 2: Fully precomputed cachesSecondly, we can fix all the problems of read-through caches that we discussed earlier. The cold start problem goes away, because we can simply precompute the entire contents of the cache (which also means there’s no such thing as a cache miss).

+

If materialized views are only ever updated via the log, then a whole class of race conditions goes away: the log defines the order in which writes are applied, so all the views that are based on the same log apply the changes in the same order, so they end up being consistent with each other. The log squeezes the non-determinism of concurrency out of the stream of writes.

+

What I particularly like is that this architecture helps enable agile, incremental software development. If you want to experiment with a new product feature, for which you need to present existing data in a new way, you can just build a new view onto your data without affecting any of the existing views. You can then show that view to a subset of users, and test whether it’s better than the old thing. If yes, you can gradually move users to the new view; if not, you can just drop the view as if nothing had happened. This is much more flexible than schema migrations, which are generally an all-or-nothing affair. Being able to experiment freely with new features, without onerous migration processes, is a tremendous enabler.Reason 3: Streams everywhere!My third reason for wanting to change database architecture is that it allows us to put streams everywhere. This point needs a bit more explanation.

+

Imagine what happens when a user of your application views some data. In a traditional database architecture, the data is loaded from a database, perhaps transformed with some business logic, and perhaps written to a cache. Data in the cache is rendered into a user interface in some way — for example, by rendering it to HTML on the server, or by transferring it to the client as JSON and rendering it on the client.

+

The result of template rendering is some kind of structure describing the user interface layout: in a web browser, this would be the HTML DOM, and in a native application this would be using the operating system’s UI components. Either way, a rendering engine eventually turns this description of UI components into pixels in video memory, and this is what the user actually sees.Transformation pipeline of materialized views
+When you look at it like this, it looks very much like a data transformation pipeline. In fact, you can think of each lower layer as a materialized view of the upper layer: the cache is a materialized view of the database (the cache contents are derived from the database contents); the HTML DOM is a materialized view of the cache (the HTML is derived from the JSON stored in the cache); and the pixels in video memory are a materialized view of the HTML DOM (the rendering engine derives the pixels from the UI layout).

+

Now, how well does each of these transformation steps work? I would argue that web browser rendering engines are brilliant feats of engineering. You can use JavaScript to change some CSS class, or have some CSS rules conditional on mouse-over, and the rendering engine automatically figures out which rectangle of the page needs to be re-rendered as a result of the changes. It does hardware-accelerated animations and even 3D transformations. The pixels in video memory are automatically kept up-to-date with the underlying DOM state, and this very complex transformation process works remarkably well.

+

What about the transformation from data objects to user interface components? I’ve given it a yellow “so-so” smiley for now, as the techniques for updating user interface based on data changes are still quite new. However, they are rapidly maturing: on the web, frameworks like Facebook’s React, Angular and Ember are enabling user interfaces that can be updated from a stream, and Functional Reactive Programming (FRP) languages like Elm are in the same area. There is a lot of activity in this field, and it is rapidly maturing towards a green smiley.

+

However, the transformation from database writes to cache/materialized view updates is still mostly stuck in the dark ages. That’s what this entire talk is about: database-driven backend services are currently the weakest link in this entire data transformation pipeline. Even if the user interface can dynamically update when the underlying data changes, that’s not much use if the application can’t detect when data changes!

+

Clients subscribe to materialized view changesIf we move to an architecture where materialized views are updated from a stream of changes, that opens up an exciting new prospect: when a client reads from one of these views, it can keep the connection open. If that view is later updated, due to some change that appeared in the stream, the server can use this connection to notify the client about the change (for example, using a WebSocket or Server-Sent Events). The client can then update its user interface accordingly.

+

This means that the client is not just reading the view at one point in time, but actually subscribing to the stream of changes that may subsequently happen. Provided that the client’s internet connection remains active, the server can push any changes to the client. After all, why would you ever want outdated information on your screen if more recent information is available? The notion of static web pages, which are requested once and then never change, is looking increasingly anachronistic.Move from request/response to subscribe/notify

+

However, allowing clients to subscribe to changes in data requires a big rethink of the way we write applications. The request-response model is very deeply engrained in our thinking, in our network protocols and in our programming languages: whether it’s a request to a RESTful service, or a method call on an object, the assumption is generally that you’re going to make one request, and get one response. There’s generally no provision for an ongoing stream of responses. Basically, I’m saying that in the future, REST is not going to cut the mustard, because it’s based on a request-response model.

+

Instead of thinking of requests and responses, we need to start thinking of subscribing to streams and notifying subscribers of new events. And this needs to happen through all the layers of the stack — the databases, the client libraries, the application servers, the business logic, the frontends, and so on. If you want the user interface to dynamically update in response to data changes, that will only be possible if we systematically apply stream thinking everywhere, so that data changes can propagate through all the layers. I think we’re going to see a lot more people using stream-friendly programming models based on actors and channels, or reactive frameworks such as RxJava.

+

I’m glad to see that some people are already working on this. A few weeks ago RethinkDB announced that they are going to support clients subscribing to query results, and being notified if the query results change. Meteor and Firebase are also worth mentioning, as frameworks which integrate the database backend and user interface layers so as to be able to push changes into the user interface. These are excellent efforts. We need many more like them.Streams everywhere!This brings us to the end of this talk. We started by observing that traditional databases and caches are like global variables, a kind of shared mutable state that becomes messy at scale. We explored four aspects of databases — replication, secondary indexing, caching and materialized views — which naturally led us to the idea of streams of immutable events. We then looked at how things would get better if we oriented our database architecture around streams and materialized views, and found some compelling directions for the future.

+

Fortunately, this is not science fiction — it’s happening now. People are working on various parts of the problem and finding good solutions. The tools at our disposal are rapidly becoming better. It’s an exciting time to be building software.

+

If this excessively long article was not enough, and you want to read even more on the topic, I would recommend:

+
    +
  • My upcoming book, Designing Data-Intensive Applications, systematically explores the architecture of data systems. If you enjoyed this article, you’ll enjoy the book too.
  • +
  • I previously wrote about similar ideas in 2012, from a different perspective, in a blog post called “Rethinking caching in web apps.”
  • +
  • Jay Kreps has written several highly relevant articles, in particular about logs as a fundamental data abstraction, about the lambda architecture, and about stateful stream processing.
  • +
  • The most common question people ask is: “but what about transactions?” — This is a somewhat open research problem, but I think a promising way forward would be to layer a transaction protocol on top of the asynchronous log. Tango (from Microsoft Research) describes one way of doing that, and Peter Bailis et al.’s work on highly available transactions is also relevant.
  • +
  • Pat Helland has been preaching this gospel for ages. His latest CIDR paper Immutability Changes Everything is a good summary.
  • +
  • There is a a more applied guide to putting stream data to work in a company here.
  • +
  • Those in the Bay Area who are interested in learning more about Apache Samza should consider attending the Samza meet-up tonight.
  • +
+

Did you like this blog post? Share it now

Subscribe to the Confluent blog

More Articles Like This

ksqlDB: The Missing Link Between Real-Time Data and Big Data Streaming

Is event streaming or batch processing more efficient in data processing? Is an IoT system the same as a data analytics system, and a fast data system the same as […]

Integrating Apache Kafka With Python Asyncio Web Applications

Modern Python has very good support for cooperative multitasking. Coroutines were first added to the language in version 2.5 with PEP 342 and their use is becoming mainstream following the […]

Introducing ksqlDB

Today marks a new release of KSQL, one so significant that we’re giving it a new name: ksqlDB. Like KSQL, ksqlDB remains freely available and community licensed, and you can […]

This website uses cookies to enhance user experience and to analyze performance and traffic on our website. We also share information about your use of our site with our social media, advertising, and analytics partners.

More Information
\ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/00dc103ff4417d6b8e8d920e4ee9a05e79cc988d-7b0b5d7b0b802b7782c9.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/00dc103ff4417d6b8e8d920e4ee9a05e79cc988d-7b0b5d7b0b802b7782c9.js new file mode 100644 index 0000000..ac9d880 --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/00dc103ff4417d6b8e8d920e4ee9a05e79cc988d-7b0b5d7b0b802b7782c9.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{"/U4J":function(e,t,a){"use strict";a.d(t,"a",(function(){return E}));a("91GP");var l=a("q1tI"),n=a.n(l),o=a("TSYQ"),r=a.n(o),s=a("QPh0"),m=a("dntC"),c=(a("rGqo"),a("yt8O"),a("Btvt"),a("RW0V"),a("4qC0")),i=a.n(c),u=a("510Z"),d=a("4YCT"),y=a("KpYb"),g=a.n(y);function f(e){var t=e.icon,a=function(e,t){if(null==e)return{};var a,l,n={},o=Object.keys(e);for(l=0;l=0||(n[a]=e[a]);return n}(e,["icon"]);return t?i()(t)?n.a.createElement("div",{className:g.a.icon},n.a.createElement(d.a,Object.assign({name:t},a))):n.a.createElement("div",{className:g.a.icon},n.a.createElement(u.a,t)):null}function p(e){var t=e.title;return t?"string"==typeof t?n.a.createElement("h4",{className:g.a.title},t):n.a.createElement("h4",{className:g.a.title},n.a.createElement(m.a,{href:t.url},t.text)):null}function E(e){var t=e.items,a=e.containerClassName,l=e.copyClassName,o=e.itemClassName,c=e.itemContainerClassName;if(!t||0===t.length)return null;return n.a.createElement("ul",{className:r()(g.a.itemsWrapper,a)},t.map((function(e,a){var i=e.containerTag,u=void 0===i?"div":i,y=e.containerProps,E=void 0===y?{}:y,C=e.icon,b=e.iconProps,N=void 0===b?{}:b,h=e.tagline,v=e.title,x=e.list,_=e.summary,P=e.ctaTitle,O=e.url,k=e.ctaProps,w=e.ctaIcon;return n.a.createElement("li",{key:a,className:r()(g.a.itemWrapper,o),style:{flex:"0 1 calc((100% / "+t.length+") - 20px)"}},n.a.createElement(u,Object.assign({className:r()(g.a.itemContainer,c)},E),n.a.createElement(f,Object.assign({icon:C},N)),n.a.createElement("div",{className:g.a.itemContent},h?n.a.createElement("h5",{className:g.a.tagline},h):null,n.a.createElement(p,{title:v}),x&&x.length?n.a.createElement("ul",{className:g.a.bulletPointList},x.map((function(e,t){var a=e;return a.url&&(a=n.a.createElement(m.a,{href:a.url},a.text)),n.a.createElement("li",{key:t,className:g.a.bulletPointListItem},a)}))):null,_?n.a.createElement("p",{className:r()(g.a.summary,l)},n.a.createElement(s.a,null,_)):null,P?n.a.createElement("div",{className:g.a.ctaContainer},n.a.createElement(m.a,Object.assign({},k,{href:O}),P)):null),w?n.a.createElement("div",{className:g.a.ctaIcon},n.a.createElement(d.a,{name:w})):null))})))}f.defaultProps={},p.defaultProps={},E.defaultProps={}},"1uWx":function(e,t,a){e.exports={card:"style-module--card--34klN",clickable:"style-module--clickable--2Yaw8",label:"style-module--label--1lqnK",denim:"style-module--denim--urWOq",academy:"style-module--academy--88tr5",island:"style-module--island--3Prwv",robinSEggBlue:"style-module--robinSEggBlue--1da6r",sahara:"style-module--sahara--iUZFc",canary:"style-module--canary--28W1H",wrapper:"style-module--wrapper--1at_H",image_left:"style-module--image_left--19IAJ",image_right:"style-module--image_right--3cHGD",imageWrapper:"style-module--imageWrapper--1FRHo",copy:"style-module--copy--3YFnP",image_top:"style-module--image_top--39SWu",meta:"style-module--meta--2DoOH",contentContainer:"style-module--contentContainer--WACfF",noCta:"style-module--noCta--_nvte",buttonContainer:"style-module--buttonContainer--GiF5v"}},"4qC0":function(e,t,a){var l=a("NykK"),n=a("Z0cm"),o=a("ExA7");e.exports=function(e){return"string"==typeof e||!n(e)&&o(e)&&"[object String]"==l(e)}},"BA+R":function(e,t,a){"use strict";a.d(t,"a",(function(){return E}));a("rGqo"),a("yt8O"),a("Btvt"),a("RW0V"),a("91GP");var l,n=a("q1tI"),o=a.n(n),r=(a("Hsqg"),a("TSYQ")),s=a.n(r),m=(a("510Z"),a("ww3E")),c=a("/B5T"),i=a("MGXT"),u=a("IFCj"),d=a("QPh0"),y=a("UYmo"),g=a.n(y);function f(e,t){if(null==e)return{};var a,l,n={},o=Object.keys(e);for(l=0;l=0||(n[a]=e[a]);return n}var p=((l={})[u.m]={primary:c.f},l[u.k]={primary:c.f,secondary:c.g},l);function E(e){var t=e.afterContent,a=t.className,l=t.content,n=t.position,r=void 0===n?i.g:n,u=e.children,y=e.className,E=e.contentClassName,C=e.image,b=C.component,N=C.position,h=void 0===N?i.b:N,v=e.imageContainerClassName,x=e.primaryCta,_=x.text,P=x.url,O=f(x,["text","url"]),k=e.secondaryCta,w=k.text,W=k.url,q=f(k,["text","url"]),B=e.theme,S=e.title,j=e.tagline,I=e.url,T=b?o.a.cloneElement(b,{alt:b.props.alt||"Hero image",className:s()(b.props.className,g.a[h])}):null;return o.a.createElement("div",{className:s()(g.a.hero,y,B?g.a[B]:null)},o.a.createElement("div",{className:s()("container",g.a.container,l&&r===i.g||T&&h===i.d?g.a.textLeft:null,l&&r===i.f?g.a.afterContentBottom:null,T&&h===i.b?g.a.containerImageBottom:null)},o.a.createElement("div",{className:s()(g.a.content,E)},j?o.a.createElement("div",{className:s()(g.a.tagline)},j):null,S?o.a.createElement("h1",{className:g.a.title},I?o.a.createElement("a",{href:I},o.a.createElement(d.a,null,S)):o.a.createElement(d.a,null,S)):null,u,_||w?o.a.createElement("div",{className:g.a.ctaContainer},_?o.a.createElement(m.a,Object.assign({asAnchor:!0,buttonStyle:p[B]&&p[B].primary?p[B].primary:c.a,className:g.a.button,href:P,theme:c.h},O),o.a.createElement("span",null,_)):null,w?o.a.createElement(m.a,Object.assign({asAnchor:!0,buttonStyle:p[B]&&p[B].secondary?p[B].secondary:c.b,className:g.a.button,href:W,theme:c.h},q),w):null):null,T&&h===i.b?T:null),l?o.a.createElement("div",{className:s()(g.a.afterContent,a)},l):null,T&&h===i.d?o.a.createElement("div",{className:s()(g.a.imageContainer,v)},T):null))}E.defaultProps={afterContent:{},image:{},primaryCta:{},secondaryCta:{}}},ErQj:function(e,t,a){e.exports={testimonials:"style-module--testimonials--2eY00",header:"style-module--header--C0_Br",pager:"style-module--pager--1Lh_S",logo_demonware:"style-module--logo_demonware--2NWgW",logo_euronext:"style-module--logo_euronext--3Amyq",logo_audi:"style-module--logo_audi--1TXrG",logo_tivo:"style-module--logo_tivo--2zWPP",logo_recursion:"style-module--logo_recursion--WqzQK",logo_lyft:"style-module--logo_lyft--1JA6P",logo_bosch:"style-module--logo_bosch--1am6O",logo_nuuly:"style-module--logo_nuuly--9d-UE",logo_forbes:"style-module--logo_forbes--3sEAE",logo_morganstanley:"style-module--logo_morganstanley--3pcg6",logo_linkedin:"style-module--logo_linkedin--vbRj2",logo_googlecloud:"style-module--logo_googlecloud--2trjN",testimonial:"style-module--testimonial--qVXIA",name:"style-module--name--1KjXx",ctaContainer:"style-module--ctaContainer--305F4",card:"style-module--card--1fsSo"}},KpYb:function(e,t,a){e.exports={itemsWrapper:"style-module--itemsWrapper--14yen",itemWrapper:"style-module--itemWrapper--RRnC6",itemContainer:"style-module--itemContainer--2depM",icon:"style-module--icon--1rFOr",itemContent:"style-module--itemContent--8xqYY",title:"style-module--title--28I2K",summary:"style-module--summary--RCDk6",tagline:"style-module--tagline--2UXR8",bulletPointList:"style-module--bulletPointList--ppPyb",ctaContainer:"style-module--ctaContainer--QdgIZ",ctaIcon:"style-module--ctaIcon--3oViO"}},NoCk:function(e,t,a){e.exports={titleEyebrow:"style-module--titleEyebrow--q6e4Y",purple:"style-module--purple--_tOwO"}},UYmo:function(e,t,a){e.exports={hero:"style-module--hero--1-5tM",container:"style-module--container--1DQNS",afterContentBottom:"style-module--afterContentBottom--17AtZ",afterContent:"style-module--afterContent--3246P",content:"style-module--content--1UI13",imageContainer:"style-module--imageContainer--2VvtK",tagline:"style-module--tagline--3L-7D",ctaContainer:"style-module--ctaContainer--BdGxT",button:"style-module--button--3P4EH",textLeft:"style-module--textLeft--2Tool",containerImageBottom:"style-module--containerImageBottom--3VGcL",image_bottom:"style-module--image_bottom--1aU5x",denim:"style-module--denim--2yE5G",academy:"style-module--academy--mSz_s",island:"style-module--island--1aBEn",ice:"style-module--ice--1PQVs",darkPurple:"style-module--darkPurple--3fEgX"}},"Wt/H":function(e,t,a){"use strict";a.d(t,"a",(function(){return i}));var l=a("q1tI"),n=a.n(l),o=a("TSYQ"),r=a.n(o),s=a("QPh0"),m=a("NoCk"),c=a.n(m);a("wqoN");function i(e){var t=e.className,a=e.theme,l=e.title;if(l)return n.a.createElement("h2",{className:r()(c.a.titleEyebrow,c.a[a],t)},n.a.createElement(s.a,null,l))}i.defaultProps={}},XOXK:function(e,t,a){"use strict";a.d(t,"a",(function(){return d}));a("f3/d");var l=a("q1tI"),n=a.n(l),o=a("TSYQ"),r=a.n(o),s=a("m13s"),m=a("QPh0"),c=a("dntC"),i=a("ErQj"),u=a.n(i);function d(e){var t=e.card,a=e.carouselClassName,l=e.className,o=e.customers,i=e.pagerClassName,d=e.readMoreText;return n.a.createElement("div",{className:r()(t?u.a.card:null,u.a.testimonials,l)},n.a.createElement(s.a,{containerClassName:a,dots:function(e){if(o[e]){var t=o[e].slug;return n.a.createElement("div",{key:t,className:r()(u.a["logo_"+t])},n.a.createElement("span",null))}},dotsClass:r()(t?null:"container",u.a.pager,i),fade:!0},o.map((function(e){var t=e.company,a=e.slug,l=e.quotes,o=e.name,s=e.role,i=e.tagline,y=e.url;return n.a.createElement("section",{key:a,className:r()(u.a.testimonial,a)},n.a.createElement("header",{className:u.a.header},o?n.a.createElement("div",{className:u.a.name},o):null,i?n.a.createElement("div",null,i):null,s?n.a.createElement("div",null,n.a.createElement(m.a,null,s)," at ",n.a.createElement(m.a,null,t)):null),n.a.createElement("blockquote",null,n.a.createElement(m.a,null,l)),d?n.a.createElement("span",{className:u.a.ctaContainer},n.a.createElement(c.a,{href:y},d)):null)}))))}d.defaultProps={card:!1}},ZO1O:function(e,t,a){"use strict";a.d(t,"a",(function(){return f}));a("rGqo"),a("yt8O"),a("Btvt"),a("RW0V"),a("91GP");var l=a("q1tI"),n=a.n(l),o=a("TSYQ"),r=a.n(o),s=a("ww3E"),m=a("QPh0"),c=a("dntC"),i=a("Mnaz"),u=a("/B5T"),d=a("MGXT"),y=(a("wqoN"),a("1uWx")),g=a.n(y);function f(e){var t=e.children,a=e.className,l=e.contentClassName,o=e.cta,d=o.text,y=o.url,f=function(e,t){if(null==e)return{};var a,l,n={},o=Object.keys(e);for(l=0;l=0||(n[a]=e[a]);return n}(o,["text","url"]),p=e.ctaContainerClassName,E=e.image,C=e.imageContainerClassName,b=e.imagePosition,N=e.label,h=N.className,v=N.text,x=N.theme,_=e.metaData,P=e.metaTag,O=e.onClick,k=e.title,w=e.url,W=function(){return n.a.createElement(m.a,null,k)};return n.a.createElement("div",{className:r()(g.a.card,w||O?g.a.clickable:null,a),onClick:function(){O?O():w&&Object(i.a)(w,!0)}},v?n.a.createElement("div",{className:r()(g.a.label,g.a[x],h)},n.a.createElement("h4",null,v)):null,n.a.createElement("div",{className:r()(g.a.wrapper,g.a[b])},E?n.a.createElement("div",{className:r()(g.a.imageWrapper,C)},E):null,n.a.createElement("div",{className:g.a.copy},_?n.a.createElement(P,{className:g.a.meta},_):null,k?n.a.createElement("h3",null,w?n.a.createElement(c.a,{href:w},W()):W()):null,n.a.createElement("div",{className:r()(g.a.contentContainer,d?null:g.a.noCta,l)},t),d?n.a.createElement("div",{className:r()(g.a.buttonContainer,p)},n.a.createElement(s.a,Object.assign({asAnchor:!0,href:y,buttonStyle:u.a,theme:u.h},f),d)):null)))}f.defaultProps={cta:{},imagePosition:d.e,label:{},metaTag:"div"}},cDQF:function(e,t,a){e.exports={customerStories:"style-module--customerStories--WM-QE",card:"style-module--card--T-iTb",noCard:"style-module--noCard--1o0Rp",imageContainer:"style-module--imageContainer--2lXR1",fullWidth:"style-module--fullWidth--1_LRn"}},eZua:function(e,t,a){"use strict";a.d(t,"a",(function(){return f}));a("rGqo"),a("yt8O"),a("Btvt"),a("RW0V"),a("91GP");var l=a("q1tI"),n=a.n(l),o=a("TSYQ"),r=a.n(o),s=a("ry8I"),m=a("ww3E"),c=a("Wt/H"),i=a("foRq"),u=a.n(i);function d(e){var t=e.children,a=e.disableEyebrow,o=Object(l.useContext)(s.b).sectionContentEyebrowColor;return t?a?n.a.createElement("div",{className:u.a.title},n.a.createElement("h3",null,t)):n.a.createElement(c.a,{theme:o,title:t}):null}d.defaultProps={disableEyebrow:!1};var y=a("/B5T");a("wqoN");function g(e,t){if(null==e)return{};var a,l,n={},o=Object.keys(e);for(l=0;l=0||(n[a]=e[a]);return n}function f(e){var t,a=e.background,o=e.children,c=e.className,i=e.contentClassName,f=e.cta,p=f.text,E=f.url,C=g(f,["text","url"]),b=e.disableBackground,N=e.disableEyebrow,h=e.id,v=e.secondaryCta,x=v.text,_=v.url,P=g(v,["text","url"]),O=e.title,k=Object(l.useContext)(s.b).sectionContentBgColor;return n.a.createElement("section",{id:h,className:r()((t={},t[u.a.sectionContent]=!0,t[c]=!!c,t)),style:{background:b?"none":a||k}},n.a.createElement(d,{disableEyebrow:N},O),"string"==typeof o?n.a.createElement("p",{className:u.a.paragraph},o):n.a.createElement("div",{className:r()(u.a.contentContainer,b?u.a.noBackground:null,i)},o),p||x?n.a.createElement("div",{className:u.a.ctaContainer},p?n.a.createElement(m.a,Object.assign({theme:y.h,buttonStyle:y.a,href:E},C),p):null,x?n.a.createElement(m.a,Object.assign({theme:y.h,buttonStyle:y.b,href:_},P),x):null):null)}f.defaultProps={cta:{},disableBackground:!1,disableEyebrow:!1,secondaryCta:{}}},foRq:function(e,t,a){e.exports={sectionContent:"style-module--sectionContent--3CzBg",contentContainer:"style-module--contentContainer--NXLbe",noBackground:"style-module--noBackground--2v_Ea",paragraph:"style-module--paragraph--3Uuc4",title:"style-module--title--1sbHU",ctaContainer:"style-module--ctaContainer--MtFCh"}},ugpf:function(e,t,a){"use strict";a.d(t,"a",(function(){return d}));a("91GP");var l=a("q1tI"),n=a.n(l),o=a("TSYQ"),r=a.n(o),s=a("ZO1O"),m=a("510Z"),c=a("/B5T"),i=a("cDQF"),u=a.n(i);function d(e){var t=e.customers,a=e.disableCardStyle,l=e.fullWidthImage;return n.a.createElement("div",{className:u.a.customerStories},t.map((function(e){var t=e.cta,o=e.image,i=e.summary,d=e.title,y=t||{},g=y.text,f=y.url;return n.a.createElement(s.a,{key:d,className:r()(u.a.card,a?u.a.noCard:null),cta:{text:g||"Read the story",url:f,buttonStyle:c.b},image:n.a.createElement(m.a,Object.assign({alt:"Story"},o)),imageContainerClassName:r()(u.a.imageContainer,l?u.a.fullWidth:null),title:d},i)})))}d.defaultProps={disableCardStyle:!1,fullWidthImage:!1}}}]); \ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/0a5ba0307a3154e22ba090595971ee9e8996100d-81be20b7a27cf50e6477.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/0a5ba0307a3154e22ba090595971ee9e8996100d-81be20b7a27cf50e6477.js new file mode 100644 index 0000000..43871fd --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/0a5ba0307a3154e22ba090595971ee9e8996100d-81be20b7a27cf50e6477.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[9],{"/U4J":function(e,t,a){"use strict";a.d(t,"a",(function(){return C}));a("91GP");var n=a("q1tI"),l=a.n(n),r=a("TSYQ"),o=a.n(r),c=a("QPh0"),i=a("dntC"),s=(a("rGqo"),a("yt8O"),a("Btvt"),a("RW0V"),a("4qC0")),m=a.n(s),u=a("510Z"),d=a("4YCT"),y=a("KpYb"),f=a.n(y);function p(e){var t=e.icon,a=function(e,t){if(null==e)return{};var a,n,l={},r=Object.keys(e);for(n=0;n=0||(l[a]=e[a]);return l}(e,["icon"]);return t?m()(t)?l.a.createElement("div",{className:f.a.icon},l.a.createElement(d.a,Object.assign({name:t},a))):l.a.createElement("div",{className:f.a.icon},l.a.createElement(u.a,t)):null}function b(e){var t=e.title;return t?"string"==typeof t?l.a.createElement("h4",{className:f.a.title},t):l.a.createElement("h4",{className:f.a.title},l.a.createElement(i.a,{href:t.url},t.text)):null}function C(e){var t=e.items,a=e.containerClassName,n=e.copyClassName,r=e.itemClassName,s=e.itemContainerClassName;if(!t||0===t.length)return null;return l.a.createElement("ul",{className:o()(f.a.itemsWrapper,a)},t.map((function(e,a){var m=e.containerTag,u=void 0===m?"div":m,y=e.containerProps,C=void 0===y?{}:y,E=e.icon,g=e.iconProps,v=void 0===g?{}:g,N=e.tagline,h=e.title,x=e.list,O=e.summary,P=e.ctaTitle,w=e.url,k=e.ctaProps,I=e.ctaIcon;return l.a.createElement("li",{key:a,className:o()(f.a.itemWrapper,r),style:{flex:"0 1 calc((100% / "+t.length+") - 20px)"}},l.a.createElement(u,Object.assign({className:o()(f.a.itemContainer,s)},C),l.a.createElement(p,Object.assign({icon:E},v)),l.a.createElement("div",{className:f.a.itemContent},N?l.a.createElement("h5",{className:f.a.tagline},N):null,l.a.createElement(b,{title:h}),x&&x.length?l.a.createElement("ul",{className:f.a.bulletPointList},x.map((function(e,t){var a=e;return a.url&&(a=l.a.createElement(i.a,{href:a.url},a.text)),l.a.createElement("li",{key:t,className:f.a.bulletPointListItem},a)}))):null,O?l.a.createElement("p",{className:o()(f.a.summary,n)},l.a.createElement(c.a,null,O)):null,P?l.a.createElement("div",{className:f.a.ctaContainer},l.a.createElement(i.a,Object.assign({},k,{href:w}),P)):null),I?l.a.createElement("div",{className:f.a.ctaIcon},l.a.createElement(d.a,{name:I})):null))})))}p.defaultProps={},b.defaultProps={},C.defaultProps={}},"1uWx":function(e,t,a){e.exports={card:"style-module--card--34klN",clickable:"style-module--clickable--2Yaw8",label:"style-module--label--1lqnK",denim:"style-module--denim--urWOq",academy:"style-module--academy--88tr5",island:"style-module--island--3Prwv",robinSEggBlue:"style-module--robinSEggBlue--1da6r",sahara:"style-module--sahara--iUZFc",canary:"style-module--canary--28W1H",wrapper:"style-module--wrapper--1at_H",image_left:"style-module--image_left--19IAJ",image_right:"style-module--image_right--3cHGD",imageWrapper:"style-module--imageWrapper--1FRHo",copy:"style-module--copy--3YFnP",image_top:"style-module--image_top--39SWu",meta:"style-module--meta--2DoOH",contentContainer:"style-module--contentContainer--WACfF",noCta:"style-module--noCta--_nvte",buttonContainer:"style-module--buttonContainer--GiF5v"}},"4qC0":function(e,t,a){var n=a("NykK"),l=a("Z0cm"),r=a("ExA7");e.exports=function(e){return"string"==typeof e||!l(e)&&r(e)&&"[object String]"==n(e)}},"73gW":function(e,t,a){"use strict";a.d(t,"a",(function(){return o}));a("91GP");var n=a("q1tI"),l=a.n(n),r=Object(n.createContext)({defaultActive:{},disableMultipleOpen:!1});function o(e){var t=e.children,a=e.defaultActive,o=e.disableMultipleOpen,c=Object(n.useState)(a),i=c[0],s=c[1];return l.a.createElement(r.Provider,{value:{activeItem:i,onClick:function(e){var t,a,n=!!i[e];o?s(((t={})[e]=!0,t)):s(Object.assign(Object.assign({},i),{},((a={})[e]=!n,a)))}}},t)}r.Consumer;t.b=r,o.defaultProps={defaultActive:{},disableMultipleOpen:!1}},"BA+R":function(e,t,a){"use strict";a.d(t,"a",(function(){return C}));a("rGqo"),a("yt8O"),a("Btvt"),a("RW0V"),a("91GP");var n,l=a("q1tI"),r=a.n(l),o=(a("Hsqg"),a("TSYQ")),c=a.n(o),i=(a("510Z"),a("ww3E")),s=a("/B5T"),m=a("MGXT"),u=a("IFCj"),d=a("QPh0"),y=a("UYmo"),f=a.n(y);function p(e,t){if(null==e)return{};var a,n,l={},r=Object.keys(e);for(n=0;n=0||(l[a]=e[a]);return l}var b=((n={})[u.m]={primary:s.f},n[u.k]={primary:s.f,secondary:s.g},n);function C(e){var t=e.afterContent,a=t.className,n=t.content,l=t.position,o=void 0===l?m.g:l,u=e.children,y=e.className,C=e.contentClassName,E=e.image,g=E.component,v=E.position,N=void 0===v?m.b:v,h=e.imageContainerClassName,x=e.primaryCta,O=x.text,P=x.url,w=p(x,["text","url"]),k=e.secondaryCta,I=k.text,j=k.url,q=p(k,["text","url"]),W=e.theme,B=e.title,T=e.tagline,Y=e.url,S=g?r.a.cloneElement(g,{alt:g.props.alt||"Hero image",className:c()(g.props.className,f.a[N])}):null;return r.a.createElement("div",{className:c()(f.a.hero,y,W?f.a[W]:null)},r.a.createElement("div",{className:c()("container",f.a.container,n&&o===m.g||S&&N===m.d?f.a.textLeft:null,n&&o===m.f?f.a.afterContentBottom:null,S&&N===m.b?f.a.containerImageBottom:null)},r.a.createElement("div",{className:c()(f.a.content,C)},T?r.a.createElement("div",{className:c()(f.a.tagline)},T):null,B?r.a.createElement("h1",{className:f.a.title},Y?r.a.createElement("a",{href:Y},r.a.createElement(d.a,null,B)):r.a.createElement(d.a,null,B)):null,u,O||I?r.a.createElement("div",{className:f.a.ctaContainer},O?r.a.createElement(i.a,Object.assign({asAnchor:!0,buttonStyle:b[W]&&b[W].primary?b[W].primary:s.a,className:f.a.button,href:P,theme:s.h},w),r.a.createElement("span",null,O)):null,I?r.a.createElement(i.a,Object.assign({asAnchor:!0,buttonStyle:b[W]&&b[W].secondary?b[W].secondary:s.b,className:f.a.button,href:j,theme:s.h},q),I):null):null,S&&N===m.b?S:null),n?r.a.createElement("div",{className:c()(f.a.afterContent,a)},n):null,S&&N===m.d?r.a.createElement("div",{className:c()(f.a.imageContainer,h)},S):null))}C.defaultProps={afterContent:{},image:{},primaryCta:{},secondaryCta:{}}},GlYU:function(e,t,a){"use strict";a.d(t,"c",(function(){return n})),a.d(t,"a",(function(){return l})),a.d(t,"b",(function(){return r})),a.d(t,"d",(function(){return o})),a.d(t,"e",(function(){return c}));var n="up",l="down",r="right",o="md",c="sm"},KpYb:function(e,t,a){e.exports={itemsWrapper:"style-module--itemsWrapper--14yen",itemWrapper:"style-module--itemWrapper--RRnC6",itemContainer:"style-module--itemContainer--2depM",icon:"style-module--icon--1rFOr",itemContent:"style-module--itemContent--8xqYY",title:"style-module--title--28I2K",summary:"style-module--summary--RCDk6",tagline:"style-module--tagline--2UXR8",bulletPointList:"style-module--bulletPointList--ppPyb",ctaContainer:"style-module--ctaContainer--QdgIZ",ctaIcon:"style-module--ctaIcon--3oViO"}},NoCk:function(e,t,a){e.exports={titleEyebrow:"style-module--titleEyebrow--q6e4Y",purple:"style-module--purple--_tOwO"}},UYmo:function(e,t,a){e.exports={hero:"style-module--hero--1-5tM",container:"style-module--container--1DQNS",afterContentBottom:"style-module--afterContentBottom--17AtZ",afterContent:"style-module--afterContent--3246P",content:"style-module--content--1UI13",imageContainer:"style-module--imageContainer--2VvtK",tagline:"style-module--tagline--3L-7D",ctaContainer:"style-module--ctaContainer--BdGxT",button:"style-module--button--3P4EH",textLeft:"style-module--textLeft--2Tool",containerImageBottom:"style-module--containerImageBottom--3VGcL",image_bottom:"style-module--image_bottom--1aU5x",denim:"style-module--denim--2yE5G",academy:"style-module--academy--mSz_s",island:"style-module--island--1aBEn",ice:"style-module--ice--1PQVs",darkPurple:"style-module--darkPurple--3fEgX"}},"Wt/H":function(e,t,a){"use strict";a.d(t,"a",(function(){return m}));var n=a("q1tI"),l=a.n(n),r=a("TSYQ"),o=a.n(r),c=a("QPh0"),i=a("NoCk"),s=a.n(i);a("wqoN");function m(e){var t=e.className,a=e.theme,n=e.title;if(n)return l.a.createElement("h2",{className:o()(s.a.titleEyebrow,s.a[a],t)},l.a.createElement(c.a,null,n))}m.defaultProps={}},ZDEF:function(e,t,a){"use strict";a.d(t,"a",(function(){return d}));var n=a("q1tI"),l=a.n(n),r=a("TSYQ"),o=a.n(r),c=a("73gW"),i=a("i6OX"),s=a("fxVE"),m=a.n(s),u=a("GlYU");a("wqoN");function d(e){var t=e.activeClassName,a=e.children,r=e.childrenClassName,s=e.className,d=e.collapsible,y=e.theme,f=e.title,p=e.titleClassName,b=Object(n.useContext)(c.b),C=b.onClick,E=b.activeItem,g=Object(n.useRef)(null);return l.a.createElement("div",{className:o()(m.a.accordionItemWrapper,E[f]?m.a.open:null,d?m.a.collapsible:null,m.a[y],s,E[f]?t:null),style:g&&E[f]?{maxHeight:g.current.getBoundingClientRect().height}:{}},l.a.createElement("div",{className:m.a.accordionItem,ref:g},l.a.createElement("div",{onClick:function(){return d&&C(f)},className:o()(m.a.accordionTitle,p)},f,l.a.createElement(i.a,{className:m.a.indicator,direction:E[f]?u.c:u.a})),l.a.createElement("div",{className:o()(m.a.accordionPanel,r)},a)))}d.defaultProps={}},ZO1O:function(e,t,a){"use strict";a.d(t,"a",(function(){return p}));a("rGqo"),a("yt8O"),a("Btvt"),a("RW0V"),a("91GP");var n=a("q1tI"),l=a.n(n),r=a("TSYQ"),o=a.n(r),c=a("ww3E"),i=a("QPh0"),s=a("dntC"),m=a("Mnaz"),u=a("/B5T"),d=a("MGXT"),y=(a("wqoN"),a("1uWx")),f=a.n(y);function p(e){var t=e.children,a=e.className,n=e.contentClassName,r=e.cta,d=r.text,y=r.url,p=function(e,t){if(null==e)return{};var a,n,l={},r=Object.keys(e);for(n=0;n=0||(l[a]=e[a]);return l}(r,["text","url"]),b=e.ctaContainerClassName,C=e.image,E=e.imageContainerClassName,g=e.imagePosition,v=e.label,N=v.className,h=v.text,x=v.theme,O=e.metaData,P=e.metaTag,w=e.onClick,k=e.title,I=e.url,j=function(){return l.a.createElement(i.a,null,k)};return l.a.createElement("div",{className:o()(f.a.card,I||w?f.a.clickable:null,a),onClick:function(){w?w():I&&Object(m.a)(I,!0)}},h?l.a.createElement("div",{className:o()(f.a.label,f.a[x],N)},l.a.createElement("h4",null,h)):null,l.a.createElement("div",{className:o()(f.a.wrapper,f.a[g])},C?l.a.createElement("div",{className:o()(f.a.imageWrapper,E)},C):null,l.a.createElement("div",{className:f.a.copy},O?l.a.createElement(P,{className:f.a.meta},O):null,k?l.a.createElement("h3",null,I?l.a.createElement(s.a,{href:I},j()):j()):null,l.a.createElement("div",{className:o()(f.a.contentContainer,d?null:f.a.noCta,n)},t),d?l.a.createElement("div",{className:o()(f.a.buttonContainer,b)},l.a.createElement(c.a,Object.assign({asAnchor:!0,href:y,buttonStyle:u.a,theme:u.h},p),d)):null)))}p.defaultProps={cta:{},imagePosition:d.e,label:{},metaTag:"div"}},eZua:function(e,t,a){"use strict";a.d(t,"a",(function(){return p}));a("rGqo"),a("yt8O"),a("Btvt"),a("RW0V"),a("91GP");var n=a("q1tI"),l=a.n(n),r=a("TSYQ"),o=a.n(r),c=a("ry8I"),i=a("ww3E"),s=a("Wt/H"),m=a("foRq"),u=a.n(m);function d(e){var t=e.children,a=e.disableEyebrow,r=Object(n.useContext)(c.b).sectionContentEyebrowColor;return t?a?l.a.createElement("div",{className:u.a.title},l.a.createElement("h3",null,t)):l.a.createElement(s.a,{theme:r,title:t}):null}d.defaultProps={disableEyebrow:!1};var y=a("/B5T");a("wqoN");function f(e,t){if(null==e)return{};var a,n,l={},r=Object.keys(e);for(n=0;n=0||(l[a]=e[a]);return l}function p(e){var t,a=e.background,r=e.children,s=e.className,m=e.contentClassName,p=e.cta,b=p.text,C=p.url,E=f(p,["text","url"]),g=e.disableBackground,v=e.disableEyebrow,N=e.id,h=e.secondaryCta,x=h.text,O=h.url,P=f(h,["text","url"]),w=e.title,k=Object(n.useContext)(c.b).sectionContentBgColor;return l.a.createElement("section",{id:N,className:o()((t={},t[u.a.sectionContent]=!0,t[s]=!!s,t)),style:{background:g?"none":a||k}},l.a.createElement(d,{disableEyebrow:v},w),"string"==typeof r?l.a.createElement("p",{className:u.a.paragraph},r):l.a.createElement("div",{className:o()(u.a.contentContainer,g?u.a.noBackground:null,m)},r),b||x?l.a.createElement("div",{className:u.a.ctaContainer},b?l.a.createElement(i.a,Object.assign({theme:y.h,buttonStyle:y.a,href:C},E),b):null,x?l.a.createElement(i.a,Object.assign({theme:y.h,buttonStyle:y.b,href:O},P),x):null):null)}p.defaultProps={cta:{},disableBackground:!1,disableEyebrow:!1,secondaryCta:{}}},foRq:function(e,t,a){e.exports={sectionContent:"style-module--sectionContent--3CzBg",contentContainer:"style-module--contentContainer--NXLbe",noBackground:"style-module--noBackground--2v_Ea",paragraph:"style-module--paragraph--3Uuc4",title:"style-module--title--1sbHU",ctaContainer:"style-module--ctaContainer--MtFCh"}},fxVE:function(e,t,a){e.exports={accordionItemWrapper:"style-module--accordionItemWrapper--2qcVC",collapsible:"style-module--collapsible--rOU3f",accordionPanel:"style-module--accordionPanel--19rjo",accordionTitle:"style-module--accordionTitle--1k8jN",indicator:"style-module--indicator--2cYbX",open:"style-module--open--2SWVx",accordionItem:"style-module--accordionItem--204fj",purple:"style-module--purple--3ncYI"}},i6OX:function(e,t,a){"use strict";a.d(t,"a",(function(){return n}));var n=a("sL7f").a},sL7f:function(e,t,a){"use strict";a.d(t,"a",(function(){return u}));var n=a("q1tI"),l=a.n(n),r=a("TSYQ"),o=a.n(r),c=a("GlYU"),i=a("wkP6"),s=a.n(i),m=a("IFCj");function u(e){var t=e.className,a=e.color,n=e.direction,r=e.size;return l.a.createElement("div",{className:o()(s.a.arrow,s.a[n],s.a[r],s.a[a],t)})}u.defaultProps={color:m.m,direction:c.a,size:c.d}},wkP6:function(e,t,a){e.exports={arrow:"style-module--arrow--2Iy7-",white:"style-module--white--2gGkR",left:"style-module--left--3qHFI",right:"style-module--right--3Sion",sm:"style-module--sm--2opwP",down:"style-module--down--36R6k",up:"style-module--up--3bJdI"}}}]); \ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/0ea22c24a07b861149dc3a27685edade2469d061-32238be8ffe5becfbbbe.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/0ea22c24a07b861149dc3a27685edade2469d061-32238be8ffe5becfbbbe.js new file mode 100644 index 0000000..2742862 --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/0ea22c24a07b861149dc3a27685edade2469d061-32238be8ffe5becfbbbe.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{"BA+R":function(e,a,t){"use strict";t.d(a,"a",(function(){return w}));t("rGqo"),t("yt8O"),t("Btvt"),t("RW0V"),t("91GP");var n,i=t("q1tI"),o=t.n(i),s=(t("Hsqg"),t("TSYQ")),l=t.n(s),r=(t("510Z"),t("ww3E")),u=t("/B5T"),c=t("MGXT"),g=t("IFCj"),m=t("QPh0"),p=t("UYmo"),d=t.n(p);function h(e,a){if(null==e)return{};var t,n,i={},o=Object.keys(e);for(n=0;n=0||(i[t]=e[t]);return i}var f=((n={})[g.m]={primary:u.f},n[g.k]={primary:u.f,secondary:u.g},n);function w(e){var a=e.afterContent,t=a.className,n=a.content,i=a.position,s=void 0===i?c.g:i,g=e.children,p=e.className,w=e.contentClassName,k=e.image,b=k.component,y=k.position,v=void 0===y?c.b:y,S=e.imageContainerClassName,C=e.primaryCta,K=C.text,P=C.url,A=h(C,["text","url"]),x=e.secondaryCta,_=x.text,T=x.url,D=h(x,["text","url"]),U=e.theme,M=e.title,j=e.tagline,B=e.url,I=b?o.a.cloneElement(b,{alt:b.props.alt||"Hero image",className:l()(b.props.className,d.a[v])}):null;return o.a.createElement("div",{className:l()(d.a.hero,p,U?d.a[U]:null)},o.a.createElement("div",{className:l()("container",d.a.container,n&&s===c.g||I&&v===c.d?d.a.textLeft:null,n&&s===c.f?d.a.afterContentBottom:null,I&&v===c.b?d.a.containerImageBottom:null)},o.a.createElement("div",{className:l()(d.a.content,w)},j?o.a.createElement("div",{className:l()(d.a.tagline)},j):null,M?o.a.createElement("h1",{className:d.a.title},B?o.a.createElement("a",{href:B},o.a.createElement(m.a,null,M)):o.a.createElement(m.a,null,M)):null,g,K||_?o.a.createElement("div",{className:d.a.ctaContainer},K?o.a.createElement(r.a,Object.assign({asAnchor:!0,buttonStyle:f[U]&&f[U].primary?f[U].primary:u.a,className:d.a.button,href:P,theme:u.h},A),o.a.createElement("span",null,K)):null,_?o.a.createElement(r.a,Object.assign({asAnchor:!0,buttonStyle:f[U]&&f[U].secondary?f[U].secondary:u.b,className:d.a.button,href:T,theme:u.h},D),_):null):null,I&&v===c.b?I:null),n?o.a.createElement("div",{className:l()(d.a.afterContent,t)},n):null,I&&v===c.d?o.a.createElement("div",{className:l()(d.a.imageContainer,S)},I):null))}w.defaultProps={afterContent:{},image:{},primaryCta:{},secondaryCta:{}}},Jzwx:function(e,a){e.exports={LIST_PATH:"/blog",AUTHOR_PATH:"/blog/author",TAG_PATH:"/blog/tag",CATEGORY_PATH:"/blog/category",MODAL_BLOG_SUBSCRIBE_VIEW:{type:"form",id:"subscribe"}}},NoCk:function(e,a,t){e.exports={titleEyebrow:"style-module--titleEyebrow--q6e4Y",purple:"style-module--purple--_tOwO"}},P8TP:function(e,a,t){e.exports={blogList:"style-module--blogList--2d8qC",bannerSection:"style-module--bannerSection--1hj1f",mainSection:"style-module--mainSection--3uX12",blogPost:"style-module--blogPost--1pOcN",heroSection:"style-module--heroSection--eUZVN",metadata:"style-module--metadata--3fkLj",right:"style-module--right--202Fi",content:"style-module--content--3iWje",bookmarkable:"style-module--bookmarkable--Vemwc",bookmark:"style-module--bookmark--1S0Xm",tableWrapper:"style-module--tableWrapper--3giJw"}},UYmo:function(e,a,t){e.exports={hero:"style-module--hero--1-5tM",container:"style-module--container--1DQNS",afterContentBottom:"style-module--afterContentBottom--17AtZ",afterContent:"style-module--afterContent--3246P",content:"style-module--content--1UI13",imageContainer:"style-module--imageContainer--2VvtK",tagline:"style-module--tagline--3L-7D",ctaContainer:"style-module--ctaContainer--BdGxT",button:"style-module--button--3P4EH",textLeft:"style-module--textLeft--2Tool",containerImageBottom:"style-module--containerImageBottom--3VGcL",image_bottom:"style-module--image_bottom--1aU5x",denim:"style-module--denim--2yE5G",academy:"style-module--academy--mSz_s",island:"style-module--island--1aBEn",ice:"style-module--ice--1PQVs",darkPurple:"style-module--darkPurple--3fEgX"}},"Wt/H":function(e,a,t){"use strict";t.d(a,"a",(function(){return c}));var n=t("q1tI"),i=t.n(n),o=t("TSYQ"),s=t.n(o),l=t("QPh0"),r=t("NoCk"),u=t.n(r);t("wqoN");function c(e){var a=e.className,t=e.theme,n=e.title;if(n)return i.a.createElement("h2",{className:s()(u.a.titleEyebrow,u.a[t],a)},i.a.createElement(l.a,null,n))}c.defaultProps={}},Ym1c:function(e,a,t){"use strict";t.d(a,"a",(function(){return r}));var n=t("q1tI"),i=t.n(n),o=t("eZua"),s=(t("wqoN"),t("y3fh")),l=t.n(s);function r(e){var a=e.background,t=e.children,n=e.cta;return i.a.createElement(o.a,{background:a,className:l.a.bottomBannerSection,contentClassName:l.a.content,cta:n},i.a.createElement("p",null,t))}r.defaultProps={}},eZua:function(e,a,t){"use strict";t.d(a,"a",(function(){return h}));t("rGqo"),t("yt8O"),t("Btvt"),t("RW0V"),t("91GP");var n=t("q1tI"),i=t.n(n),o=t("TSYQ"),s=t.n(o),l=t("ry8I"),r=t("ww3E"),u=t("Wt/H"),c=t("foRq"),g=t.n(c);function m(e){var a=e.children,t=e.disableEyebrow,o=Object(n.useContext)(l.b).sectionContentEyebrowColor;return a?t?i.a.createElement("div",{className:g.a.title},i.a.createElement("h3",null,a)):i.a.createElement(u.a,{theme:o,title:a}):null}m.defaultProps={disableEyebrow:!1};var p=t("/B5T");t("wqoN");function d(e,a){if(null==e)return{};var t,n,i={},o=Object.keys(e);for(n=0;n=0||(i[t]=e[t]);return i}function h(e){var a,t=e.background,o=e.children,u=e.className,c=e.contentClassName,h=e.cta,f=h.text,w=h.url,k=d(h,["text","url"]),b=e.disableBackground,y=e.disableEyebrow,v=e.id,S=e.secondaryCta,C=S.text,K=S.url,P=d(S,["text","url"]),A=e.title,x=Object(n.useContext)(l.b).sectionContentBgColor;return i.a.createElement("section",{id:v,className:s()((a={},a[g.a.sectionContent]=!0,a[u]=!!u,a)),style:{background:b?"none":t||x}},i.a.createElement(m,{disableEyebrow:y},A),"string"==typeof o?i.a.createElement("p",{className:g.a.paragraph},o):i.a.createElement("div",{className:s()(g.a.contentContainer,b?g.a.noBackground:null,c)},o),f||C?i.a.createElement("div",{className:g.a.ctaContainer},f?i.a.createElement(r.a,Object.assign({theme:p.h,buttonStyle:p.a,href:w},k),f):null,C?i.a.createElement(r.a,Object.assign({theme:p.h,buttonStyle:p.b,href:K},P),C):null):null)}h.defaultProps={cta:{},disableBackground:!1,disableEyebrow:!1,secondaryCta:{}}},foRq:function(e,a,t){e.exports={sectionContent:"style-module--sectionContent--3CzBg",contentContainer:"style-module--contentContainer--NXLbe",noBackground:"style-module--noBackground--2v_Ea",paragraph:"style-module--paragraph--3Uuc4",title:"style-module--title--1sbHU",ctaContainer:"style-module--ctaContainer--MtFCh"}},gbvu:function(e,a,t){"use strict";t.d(a,"a",(function(){return o}));t("rGqo"),t("yt8O"),t("Btvt"),t("RW0V"),t("91GP");var n=t("mrUl"),i=t("rG5x");function o(){return n.data.posts.nodes.map((function(e){var a=e.url,t=e.tags,n=e.categories,o=function(e,a){if(null==e)return{};var t,n,i={},o=Object.keys(e);for(n=0;n=0||(i[t]=e[t]);return i}(e,["url","tags","categories"]);return Object.assign(Object.assign({},o),{},{url:Object(i.removeServingUrl)(a),categories:n||[],tags:t||[]})}))}},mrUl:function(e){e.exports=JSON.parse('{"data":{"posts":{"nodes":[{"id":26347,"title":"Kafka Streams Interactive Queries Go Prime Time","url":"https://www.confluent.io/blog/kafka-streams-ksqldb-interactive-queries-go-prime-time","imageUrl":"https://cdn.confluent.io/wp-content/uploads/stream-processing-4.png","datePublished":"May 18, 2020","authors":[{"id":1324,"name":"Navinder Pal Singh Brar","image":"https://cdn.confluent.io/wp-content/uploads/navinder-pal-singh-brar-128x128.png","slug":"navinder-pal-singh-brar"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1176,"name":"Database","slug":"database"},{"id":126,"name":"Feature","slug":"feature"},{"id":1715,"name":"High Availability","slug":"high-availability"},{"id":1182,"name":"Interactive Queries","slug":"interactive-queries"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":88,"name":"KIP","slug":"kip"},{"id":110,"name":"Release","slug":"release"},{"id":1705,"name":"Walmart","slug":"walmart"}],"summary":"

What is stopping you from using Kafka Streams as your data layer for building applications? After all, it comes with fast, embedded RocksDB storage, takes care of redundancy for you, […]

\\n"},{"id":26336,"title":"Apache Kafka Needs No Keeper: Removing the Apache ZooKeeper Dependency","url":"https://www.confluent.io/blog/removing-zookeeper-dependency-in-kafka","imageUrl":"https://cdn.confluent.io/wp-content/uploads/apache-kafka-2.png","datePublished":"May 15, 2020","authors":[{"id":1056,"name":"Colin McCabe","image":"https://cdn.confluent.io/wp-content/uploads/colin-mccabe-e1589496557291-128x128.jpeg","slug":"colin-mccabe"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":61,"name":"Elasticity","slug":"elasticity"},{"id":88,"name":"KIP","slug":"kip"},{"id":1709,"name":"Project Metamorphosis","slug":"project-metamorphosis"},{"id":82,"name":"ZooKeeper","slug":"zookeeper"}],"summary":"

Currently, Apache Kafka® uses Apache ZooKeeper™ to store its metadata. Data such as the location of partitions and the configuration of topics are stored outside of Kafka itself, in a […]

\\n"},{"id":26328,"title":"Announcing ksqlDB 0.9.0","url":"https://www.confluent.io/blog/ksqldb-0-9-0-feature-updates","imageUrl":"https://cdn.confluent.io/wp-content/uploads/stream-processing-4.png","datePublished":"May 13, 2020","authors":[{"id":1323,"name":"Sergio Peña","image":"https://cdn.confluent.io/wp-content/uploads/sergio-pena-e1589324936721-128x128.png","slug":"sergio-pena"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":126,"name":"Feature","slug":"feature"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":110,"name":"Release","slug":"release"}],"summary":"

We’re pleased to announce the release of ksqlDB 0.9.0! This version includes support for multi-join statements, enhanced LIKE expressions, and a host of usability improvements. We’ll go through a few […]

\\n"},{"id":26295,"title":"Building a Telegram Bot Powered by Apache Kafka and ksqlDB","url":"https://www.confluent.io/blog/building-a-telegram-bot-powered-by-kafka-and-ksqldb","imageUrl":"https://cdn.confluent.io/wp-content/uploads/technology-use-case.png","datePublished":"May 12, 2020","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1321,"name":"API","slug":"api"},{"id":847,"name":"FIltering","slug":"filtering"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":843,"name":"Lookups","slug":"lookups"},{"id":866,"name":"MongoDB","slug":"mongodb"},{"id":1716,"name":"Query","slug":"query"}],"summary":"

Imagine you’ve got a stream of data; it’s not “big data,” but it’s certainly a lot. Within the data, you’ve got some bits you’re interested in, and of those bits, […]

\\n"},{"id":26246,"title":"From Eager to Smarter in Apache Kafka Consumer Rebalances","url":"https://www.confluent.io/blog/cooperative-rebalancing-in-kafka-streams-consumer-ksqldb","imageUrl":"https://cdn.confluent.io/wp-content/uploads/stream-processing-4.png","datePublished":"May 11, 2020","authors":[{"id":1322,"name":"Sophie Blee-Goldman","image":"https://cdn.confluent.io/wp-content/uploads/sophie-blee-goldman-128x128.png","slug":"sophie-blee-goldman"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1344,"name":"Consumer","slug":"consumer"},{"id":1714,"name":"Cooperative Rebalancing","slug":"cooperative-rebalancing"},{"id":1713,"name":"Eager Rebalancing","slug":"eager-rebalancing"},{"id":1715,"name":"High Availability","slug":"high-availability"},{"id":1434,"name":"Incremental Cooperative Rebalancing","slug":"incremental-cooperative-rebalancing"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":88,"name":"KIP","slug":"kip"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

Everyone wants their infrastructure to be highly available, and ksqlDB is no different. But crucial properties like high availability don’t come without a thoughtful, rigorous design. We thought hard about […]

\\n"},{"id":26217,"title":"Monitoring Confluent Platform with Datadog","url":"https://www.confluent.io/blog/confluent-datadog-integration-kafka-monitoring-metrics","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-platform-2.png","datePublished":"May 7, 2020","authors":[{"id":1088,"name":"Dustin Cote","image":"https://cdn.confluent.io/wp-content/uploads/dustin-e1588780783383-128x128.jpg","slug":"dustin-cote"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":147,"name":"Confluent Partner Program","slug":"confluent-partner-program"},{"id":72,"name":"Integration","slug":"integration"},{"id":64,"name":"Monitoring","slug":"monitoring"},{"id":1710,"name":"Observability","slug":"observability"}],"summary":"

Earning customer love is a core value at Confluent, and like all relationships, listening makes the love flourish. When it comes to monitoring, we’ve heard you, and we are pleased […]

\\n"},{"id":26206,"title":"Project Metamorphosis: Elastic Apache Kafka Clusters in Confluent Cloud","url":"https://www.confluent.io/blog/project-metamorphosis-elastic-kafka-clusters-in-confluent-cloud","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-cloud-1.png","datePublished":"May 6, 2020","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":1152,"name":"Cloud First","slug":"cloud-first"},{"id":61,"name":"Elasticity","slug":"elasticity"},{"id":1709,"name":"Project Metamorphosis","slug":"project-metamorphosis"}],"summary":"

A few weeks ago when we talked about our new fundraising, we also announced we’d be kicking off Project Metamorphosis. What is Project Metamorphosis? Let me try to explain. I […]

\\n"},{"id":26182,"title":"Highly Available, Fault-Tolerant Pull Queries in ksqlDB","url":"https://www.confluent.io/blog/ksqldb-pull-queries-high-availability","imageUrl":"https://cdn.confluent.io/wp-content/uploads/stream-processing-4.png","datePublished":"May 5, 2020","authors":[{"id":1292,"name":"Vicky Papavasileiou","image":"https://cdn.confluent.io/wp-content/uploads/vicky-papavasileiou-128x128.png","slug":"vicky-papavasileiou"},{"id":1320,"name":"Vinoth Chandar","image":"https://cdn.confluent.io/wp-content/uploads/vinoth-chandar-128x128.png","slug":"vinoth-chandar"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1420,"name":"Fault Tolerance","slug":"fault-tolerance"},{"id":126,"name":"Feature","slug":"feature"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1483,"name":"Pull Queries","slug":"pull-queries"},{"id":73,"name":"Replication","slug":"replication"}],"summary":"

One of the most critical aspects of any scale-out database is its availability to serve queries during partial failures. Business-critical applications require some measure of resilience to be able to […]

\\n"},{"id":25873,"title":"Walmart’s Real-Time Inventory System Powered by Apache Kafka","url":"https://www.confluent.io/blog/walmart-real-time-inventory-management-using-kafka","imageUrl":"https://cdn.confluent.io/wp-content/uploads/retail-use-case.png","datePublished":"May 4, 2020","authors":[{"id":1318,"name":"Suman Pattnaik","image":"https://cdn.confluent.io/wp-content/uploads/suman-pattnaik-128x128.png","slug":"suman-pattnaik"}],"categories":[{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"},{"id":1015,"name":"Partitions","slug":"partitions"},{"id":1183,"name":"Retail","slug":"retail"},{"id":90,"name":"Talks","slug":"talks"},{"id":1705,"name":"Walmart","slug":"walmart"}],"summary":"

Consumer shopping patterns have changed drastically in the last few years. Shopping in a physical store is no longer the only way. Retail shopping experiences have evolved to include multiple […]

\\n"},{"id":25868,"title":"ksqlDB Execution Plans: Move Fast But Don’t Break Things","url":"https://www.confluent.io/blog/building-ksqldb-event-streaming-database","imageUrl":"https://cdn.confluent.io/wp-content/uploads/stream-processing-4.png","datePublished":"May 1, 2020","authors":[{"id":1072,"name":"Rohan Desai","image":"https://cdn.confluent.io/wp-content/uploads/rohan-desai-128x128.png","slug":"rohan-desai"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":126,"name":"Feature","slug":"feature"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1706,"name":"Persistent Queries","slug":"persistent-queries"},{"id":1186,"name":"Testing","slug":"testing"}],"summary":"

The ksqlDB Engineering Team has been hard at work preparing ksqlDB for production availability in Confluent Cloud. This is the first in a series of posts that deep dives into […]

\\n"},{"id":25717,"title":"Measuring Code Coverage of Golang Binaries with Bincover","url":"https://www.confluent.io/blog/measure-go-code-coverage-with-bincover","imageUrl":"https://cdn.confluent.io/wp-content/uploads/clients.png","datePublished":"April 30, 2020","authors":[{"id":1313,"name":"Miki Pokryvailo","image":"https://cdn.confluent.io/wp-content/uploads/miki-pokryvailo-128x128.png","slug":"miki-pokryvailo"}],"categories":[{"id":145,"name":"Clients","slug":"clients"}],"tags":[{"id":1428,"name":"CLI","slug":"cli"},{"id":1196,"name":"Command Line Tools","slug":"command-line-tools"},{"id":139,"name":"Go","slug":"go"},{"id":1186,"name":"Testing","slug":"testing"},{"id":1195,"name":"Tools","slug":"tools"}],"summary":"

Measuring coverage of Go code is an easy task with the built-in go test tool, but for tests that run a binary, like end-to-end tests, there’s no obvious way to […]

\\n"},{"id":25852,"title":"Kafka Summit Austin 2020 is Going Virtual","url":"https://www.confluent.io/blog/kafka-summit-2020-virtual-event","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kafka-summit-5.png","datePublished":"April 29, 2020","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":null,"summary":"

As you know, we were looking forward to welcoming the Apache Kafka® community to Austin, TX, for Kafka Summit in August. Meeting together in person is always the best way […]

\\n"},{"id":25842,"title":"Broadcom Modernizes Machine Learning and Anomaly Detection with ksqlDB","url":"https://www.confluent.io/blog/broadcom-uses-ksqldb-to-modernize-machine-learning-anomaly-detection","imageUrl":"https://cdn.confluent.io/wp-content/uploads/technology-use-case.png","datePublished":"April 28, 2020","authors":[{"id":1316,"name":"Jim Hunter","image":"https://cdn.confluent.io/wp-content/uploads/jim_hunter-128x128.png","slug":"jim-hunter"},{"id":1317,"name":"Suresh Raghavan","image":"https://cdn.confluent.io/wp-content/uploads/suresh-raghavan-128x128.png","slug":"suresh-raghavan"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":782,"name":"Anomaly Detection","slug":"anomaly-detection"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":271,"name":"Machine Learning","slug":"machine-learning"},{"id":1192,"name":"Mainframe Offload","slug":"mainframe-offload"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

Mainframes are still ubiquitous, used for almost every financial transaction around the world—credit card transactions, billing, payroll, etc. You might think that working on mainframe software would be dull, requiring […]

\\n"},{"id":25836,"title":"Confluent Platform Now Supports Protobuf, JSON Schema, and Custom Formats","url":"https://www.confluent.io/blog/confluent-platform-now-supports-protobuf-json-schema-custom-formats","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-platform-2.png","datePublished":"April 27, 2020","authors":[{"id":1315,"name":"Robert Yokota","image":"https://cdn.confluent.io/wp-content/uploads/robert-yokota-128x128.png","slug":"robert-yokota"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":821,"name":"Data Serialization","slug":"data-serialization"},{"id":824,"name":"JSON","slug":"json"},{"id":1248,"name":"Protobuf","slug":"protobuf"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

When Confluent Schema Registry was first introduced, Apache Avro™ was initially chosen as the default format. While Avro has worked well for many users, over the years, we’ve received many […]

\\n"},{"id":25816,"title":"Introducing Confluent Platform 5.5","url":"https://www.confluent.io/blog/introducing-confluent-platform-5-5","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-platform-2.png","datePublished":"April 24, 2020","authors":[{"id":1314,"name":"Nick Bryan","image":"https://cdn.confluent.io/wp-content/uploads/nick_bryan-128x128.png","slug":"nick-bryan"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":224,"name":"Exactly Once","slug":"exactly-once"},{"id":824,"name":"JSON","slug":"json"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1248,"name":"Protobuf","slug":"protobuf"},{"id":110,"name":"Release","slug":"release"},{"id":49,"name":"REST Proxy","slug":"rest-proxy"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

We are pleased to announce the release of Confluent Platform 5.5. With this release, Confluent makes event streaming more broadly accessible to developers of all backgrounds, enhancing three categories of […]

\\n"},{"id":25746,"title":"Confluent Raises $250M and Kicks Off Project Metamorphosis","url":"https://www.confluent.io/blog/series-e-round-metamorphosis","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent.png","datePublished":"April 21, 2020","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":58,"name":"Confluent News","slug":"confluent-news"}],"summary":"

It’s an exciting day for Confluent, in the middle of a very unusual and difficult time in the larger world. Nonetheless, I thought it was important we share this news […]

\\n"},{"id":25671,"title":"Webify Event Streams Using the Kafka Connect HTTP Sink Connector","url":"https://www.confluent.io/blog/webify-event-streams-using-kafka-connect-http-sink","imageUrl":"https://cdn.confluent.io/wp-content/uploads/connecting-to-apache-kafka.png","datePublished":"April 20, 2020","authors":[{"id":1312,"name":"Chris Larsen","image":"https://cdn.confluent.io/wp-content/uploads/chris_larsen-128x128.png","slug":"chris-larsen"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":853,"name":"Alerting","slug":"alerting"},{"id":47,"name":"Connector","slug":"connector"},{"id":1636,"name":"Frontend","slug":"frontend"},{"id":113,"name":"Java","slug":"java"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1703,"name":"Node.js","slug":"node-js"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

The goal of this post is to illustrate PUSH to web from Apache Kafka® with a hands-on example. Our business users are always wanting their data faster so they can […]

\\n"},{"id":25658,"title":"What’s New in Apache Kafka 2.5","url":"https://www.confluent.io/blog/apache-kafka-2-5-latest-version-updates","imageUrl":"https://cdn.confluent.io/wp-content/uploads/apache-kafka-2.png","datePublished":"April 16, 2020","authors":[{"id":1261,"name":"David Arthur","image":"https://cdn.confluent.io/wp-content/uploads/David_Arthur-128x128.png","slug":"david-arthur"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":1598,"name":"Broker","slug":"broker"},{"id":1344,"name":"Consumer","slug":"consumer"},{"id":224,"name":"Exactly Once","slug":"exactly-once"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":88,"name":"KIP","slug":"kip"},{"id":1421,"name":"Producer","slug":"producer"},{"id":110,"name":"Release","slug":"release"},{"id":137,"name":"Scala","slug":"scala"}],"summary":"

On behalf of the Apache Kafka® community, it is my pleasure to announce the release of Apache Kafka 2.5.0. The community has created another exciting release. We are making progress […]

\\n"},{"id":25637,"title":"Real-Time Small Business Intelligence with ksqlDB","url":"https://www.confluent.io/blog/real-time-business-intelligence-using-ksqldb","imageUrl":"https://cdn.confluent.io/wp-content/uploads/healthcare-use-case.png","datePublished":"April 14, 2020","authors":[{"id":1311,"name":"Terry Franklin","image":"https://cdn.confluent.io/wp-content/uploads/terry-franklin-128x128.png","slug":"terry-franklin"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1693,"name":"Business Intelligence","slug":"business-intelligence"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":1692,"name":"Healthcare","slug":"healthcare"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1227,"name":"Tables","slug":"tables"}],"summary":"

If you’re like me, you may be accustomed to reading articles about event streaming that are framed by large organizations and mountains of data. We’ve read about how the event […]

\\n"},{"id":25571,"title":"Preventing Fraud and Fighting Account Takeovers with Kafka Streams","url":"https://www.confluent.io/blog/fraud-prevention-and-threat-detection-with-kafka-streams","imageUrl":"https://cdn.confluent.io/wp-content/uploads/security-use-case.png","datePublished":"April 9, 2020","authors":[{"id":1308,"name":"Daniel Jagielski","image":"https://cdn.confluent.io/wp-content/uploads/daniel_jagielski-128x128.png","slug":"daniel-jagielski"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1013,"name":"Fraud Detection","slug":"fraud-detection"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1183,"name":"Retail","slug":"retail"},{"id":50,"name":"Security","slug":"security"},{"id":1227,"name":"Tables","slug":"tables"}],"summary":"

Many companies have recently started to take cybersecurity and data protection even more seriously, particularly driven by the recent General Data Protection Regulation (GDPR) legislation. They are increasing their investment […]

\\n"},{"id":25627,"title":"How the New Confluent Hub Makes Finding Connectors Easier Than Ever","url":"https://www.confluent.io/blog/confluent-hub-makes-finding-connectors-easier-than-ever","imageUrl":"https://cdn.confluent.io/wp-content/uploads/connecting-to-apache-kafka.png","datePublished":"April 8, 2020","authors":[{"id":1310,"name":"Ethan Ruhe","image":"https://cdn.confluent.io/wp-content/uploads/ethan_ruhe-128x128.png","slug":"ethan-ruhe"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":1440,"name":"Confluent Hub","slug":"confluent-hub"},{"id":47,"name":"Connector","slug":"connector"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":237,"name":"Single Message Transforms","slug":"single-message-transforms"}],"summary":"

Confluent Hub launched in 2018 as a place to discover and share Apache Kafka® and Confluent Platform plugins. Users have found the site a much better place to discover useful […]

\\n"},{"id":25594,"title":"Confluent Cloud KSQL is Now Available","url":"https://www.confluent.io/blog/confluent-cloud-ksql-as-a-service","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-cloud-1.png","datePublished":"April 6, 2020","authors":[{"id":1309,"name":"Derek Nelson","image":"https://cdn.confluent.io/wp-content/uploads/derek-nelson-128x128.png","slug":"derek-nelson"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

Today, we are excited to announce that after a highly productive period of being in private preview, Confluent Cloud KSQL is now production ready and available to all Confluent Cloud […]

\\n"},{"id":25521,"title":"Stable, Secure Apache Kafka as a Service – A Cloud Provider’s Tale","url":"https://www.confluent.io/blog/cloud-kafka-as-a-service","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-cloud-1.png","datePublished":"April 1, 2020","authors":[{"id":1157,"name":"Stanislav Kozlovski","image":"https://www.confluent.io/wp-content/uploads/Stanislav_Kozlovski-4-128x128.png","slug":"stanislav-kozlovski"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":88,"name":"KIP","slug":"kip"},{"id":1186,"name":"Testing","slug":"testing"}],"summary":"

Running fully managed Apache Kafka® as a service brings many responsibilities that leading cloud providers hide well. There is a reason why cloud services  are so popular right now— companies realize […]

\\n"},{"id":25501,"title":"Real-Time Data Replication with ksqlDB","url":"https://www.confluent.io/blog/real-time-data-replication-with-ksqldb","imageUrl":"https://cdn.confluent.io/wp-content/uploads/stream-processing-4.png","datePublished":"March 31, 2020","authors":[{"id":1307,"name":"Ruslan Gibaiev","image":"https://cdn.confluent.io/wp-content/uploads/ruslan-gibaiev-128x128.png","slug":"ruslan-gibaiev"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1684,"name":"Data Warehouse","slug":"data-warehouse"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":73,"name":"Replication","slug":"replication"}],"summary":"

Data can originate in a number of different sources—transactional databases, mobile applications, external integrations, one-time scripts, etc.—but eventually it has to be synchronized to a central data warehouse for analysis […]

\\n"},{"id":25449,"title":"How to Make Your Open Source Apache Kafka Connector Available on Confluent Hub","url":"https://www.confluent.io/blog/how-to-share-kafka-connectors-on-confluent-hub","imageUrl":"https://cdn.confluent.io/wp-content/uploads/connecting-to-apache-kafka.png","datePublished":"March 27, 2020","authors":[{"id":284,"name":"Neil Buesing","image":"https://cdn.confluent.io/wp-content/uploads/neil-buesing-128x128.png","slug":"neil-buesing"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":1440,"name":"Confluent Hub","slug":"confluent-hub"},{"id":47,"name":"Connector","slug":"connector"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1623,"name":"Kibana","slug":"kibana"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":238,"name":"SMT","slug":"smt"},{"id":1475,"name":"Travel","slug":"travel"}],"summary":"

Do you have data you need to get into or out of Apache Kafka®? Kafka connectors are perfect for this. There are many connectors out there, usually for well-known and […]

\\n"},{"id":25445,"title":"ksqlDB: The Missing Link Between Real-Time Data and Big Data Streaming","url":"https://www.confluent.io/blog/ksqldb-real-time-data-and-big-data-streaming","imageUrl":"https://cdn.confluent.io/wp-content/uploads/stream-processing-4.png","datePublished":"March 26, 2020","authors":[{"id":1305,"name":"Guillermo Gavilán","image":"https://cdn.confluent.io/wp-content/uploads/guillermo-gavilan-128x128.png","slug":"guillermo-gavilan"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":68,"name":"Big Data","slug":"big-data"},{"id":1468,"name":"Confluent Customer","slug":"confluent-customer"},{"id":1176,"name":"Database","slug":"database"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

Is event streaming or batch processing more efficient in data processing? Is an IoT system the same as a data analytics system, and a fast data system the same as […]

\\n"},{"id":25417,"title":"Building Confluent Cloud – Here’s What We’ve Learned","url":"https://www.confluent.io/blog/what-we-learned-building-confluent-cloud","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-cloud-1.png","datePublished":"March 24, 2020","authors":[{"id":1304,"name":"Frank Greco Jr.","image":"https://cdn.confluent.io/wp-content/uploads/frank-greco-jr-128x128.png","slug":"frank-greco-jr"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":1598,"name":"Broker","slug":"broker"},{"id":1152,"name":"Cloud First","slug":"cloud-first"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":430,"name":"Kubernetes","slug":"kubernetes"}],"summary":"

In July 2017, Confluent launched a private preview of what would later be known as Confluent Cloud. This platform as a service product has grown rapidly; less than three years […]

\\n"},{"id":25412,"title":"Announcing ksqlDB 0.8.0","url":"https://www.confluent.io/blog/ksqldb-0-8-0-feature-updates","imageUrl":"https://cdn.confluent.io/wp-content/uploads/stream-processing-4.png","datePublished":"March 20, 2020","authors":[{"id":1303,"name":"Victoria Xia","image":"https://cdn.confluent.io/wp-content/uploads/victoria-xia-128x128.png","slug":"victoria-xia"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":110,"name":"Release","slug":"release"}],"summary":"

The latest ksqlDB release introduces long-awaited features such as tunable retention and grace period for windowed aggregates, new built-in functions including LATEST_BY_OFFSET, a peek at the new server API under […]

\\n"},{"id":25379,"title":"Building a Cloud ETL Pipeline on Confluent Cloud","url":"https://www.confluent.io/blog/build-a-cloud-etl-pipeline-with-confluent-cloud","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-cloud-1.png","datePublished":"March 18, 2020","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"},{"id":1469,"name":"Pipelines","slug":"pipelines"}],"tags":[{"id":1428,"name":"CLI","slug":"cli"},{"id":47,"name":"Connector","slug":"connector"},{"id":221,"name":"ETL","slug":"etl"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1154,"name":"Multi-Cloud","slug":"multi-cloud"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

As enterprises move more and more of their applications to the cloud, they are also moving their on-prem ETL (extract, transform, load) pipelines to the cloud, as well as building […]

\\n"},{"id":25341,"title":"15 Things Every Apache Kafka Engineer Should Know About Confluent Replicator","url":"https://www.confluent.io/blog/15-facts-about-confluent-replicator-and-multi-cluster-kafka-deployment","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-platform-2.png","datePublished":"March 17, 2020","authors":[{"id":1300,"name":"Tom Scott","image":"https://cdn.confluent.io/wp-content/uploads/tom-scott-128x128.png","slug":"tom-scott"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":269,"name":"Disaster Recovery","slug":"disaster-recovery"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":131,"name":"Multi-Datacenter Replication","slug":"multi-datacenter-replication"},{"id":905,"name":"Replicator","slug":"replicator"}],"summary":"

Single-cluster deployments of Apache Kafka® are rare. Most medium to large deployments employ more than one Kafka cluster, and even the smallest use cases include development, testing, and production clusters. […]

\\n"},{"id":25357,"title":"Confluent’s Commitment to Our Customers, Employees, and Community Amid COVID-19 (Coronavirus)","url":"https://www.confluent.io/blog/confluent-commitment-to-customers-employees-community-amid-covid-19","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent.png","datePublished":"March 13, 2020","authors":[{"id":1302,"name":"Roger Scott","image":"https://cdn.confluent.io/wp-content/uploads/roger_scott-128x128.png","slug":"roger-scott"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":58,"name":"Confluent News","slug":"confluent-news"}],"summary":"

As the impact of COVID-19 (coronavirus) continues to spread, our top priority is the health and well-being of our customers, employees, and community. We are acutely aware that these are […]

\\n"},{"id":25267,"title":"Sharpening your Stream Processing Skills with Kafka Tutorials","url":"https://www.confluent.io/blog/learn-stream-processing-with-kafka-tutorials","imageUrl":"https://cdn.confluent.io/wp-content/uploads/stream-processing-4.png","datePublished":"March 11, 2020","authors":[{"id":1275,"name":"Rick Spurgeon","image":"https://cdn.confluent.io/wp-content/uploads/rick-spurgeon-128x128.png","slug":"rick-spurgeon"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":823,"name":"Avro","slug":"avro"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1360,"name":"Streams DSL","slug":"streams-dsl"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

In the Apache Kafka® ecosystem, ksqlDB and Kafka Streams are two popular tools for building event streaming applications that are tightly integrated with Apache Kafka. While ksqlDB and Kafka Streams […]

\\n"},{"id":25316,"title":"Kafka Summit London 2020 Update","url":"https://www.confluent.io/blog/kafka-summit-london-2020-update","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kafka-summit-3.png","datePublished":"March 10, 2020","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1166,"name":"Kafka Summit London","slug":"kafka-summit-london"}],"summary":"

Given the growing concern and global impact of COVID-19 (better known as the coronavirus), we’ve made the decision to cancel the upcoming Kafka Summit London. While this decision was incredibly […]

\\n"},{"id":25281,"title":"Women in Tech: Growing Business and Shaping Culture at Confluent","url":"https://www.confluent.io/blog/women-in-tech-at-confluent","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent.png","datePublished":"March 9, 2020","authors":[{"id":1279,"name":"Mike Podobnik","image":"https://cdn.confluent.io/wp-content/uploads/mike-podobnik-128x128.png","slug":"mike-podobnik"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":null,"summary":"

Every year on March 8th, Confluent is proud to celebrate International Women’s Day, a global holiday dedicated to honoring the accomplishments of women and advocating for gender equality around the […]

\\n"},{"id":25228,"title":"Kafka Connect Elasticsearch Connector in Action","url":"https://www.confluent.io/blog/kafka-elasticsearch-connector-tutorial","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kafka-connect-3.png","datePublished":"March 4, 2020","authors":[{"id":1299,"name":"Danny Kay","image":"https://cdn.confluent.io/wp-content/uploads/danny-kay-128x128.png","slug":"danny-kay"},{"id":783,"name":"Liz Bennett","image":"https://www.confluent.io/wp-content/uploads/Liz-Bennett--128x128.png","slug":"liz-bennett"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":823,"name":"Avro","slug":"avro"},{"id":236,"name":"Elasticsearch","slug":"elasticsearch"},{"id":824,"name":"JSON","slug":"json"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

The Elasticsearch sink connector helps you integrate Apache Kafka® and Elasticsearch with minimum effort. You can take data you’ve stored in Kafka and stream it into Elasticsearch to then be […]

\\n"},{"id":25197,"title":"Mock APIs vs. Real Backends – Getting the Best of Both Worlds","url":"https://www.confluent.io/blog/choosing-between-mock-api-and-real-backend","imageUrl":"https://cdn.confluent.io/wp-content/uploads/frameworks.png","datePublished":"March 3, 2020","authors":[{"id":1298,"name":"Alex Liu","image":"https://cdn.confluent.io/wp-content/uploads/alex-liu-128x128.png","slug":"alex-liu"}],"categories":[{"id":1171,"name":"Frameworks","slug":"frameworks"}],"tags":[{"id":1321,"name":"API","slug":"api"},{"id":1636,"name":"Frontend","slug":"frontend"},{"id":1634,"name":"Mox","slug":"mox"}],"summary":"

When building API-driven web applications, there is one key metric that engineering teams should minimize: the blocked factor. The blocked factor measures how much time developers spend in the following […]

\\n"},{"id":25203,"title":"Introducing Confluent Developer","url":"https://www.confluent.io/blog/confluent-developer-offers-kafka-tutorials-resources-guides","imageUrl":"https://cdn.confluent.io/wp-content/uploads/apache-kafka-1.png","datePublished":"February 27, 2020","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":null,"summary":"

Today, I am pleased to announce the launch of Confluent Developer, the one and only portal for everything you need to get started with Apache Kafka®, Confluent Platform, and Confluent […]

\\n"},{"id":25170,"title":"99th Percentile Latency at Scale with Apache Kafka","url":"https://www.confluent.io/blog/configure-kafka-to-minimize-latency","imageUrl":"https://cdn.confluent.io/wp-content/uploads/apache-kafka-1.png","datePublished":"February 25, 2020","authors":[{"id":1296,"name":"Anna Povzner","image":"https://cdn.confluent.io/wp-content/uploads/anna-povzner-128x128.png","slug":"anna-povzner"},{"id":1158,"name":"Scott Hendricks","image":"https://cdn.confluent.io/wp-content/uploads/scott-hendricks-128x128.png","slug":"scott-hendricks"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"},{"id":145,"name":"Clients","slug":"clients"}],"tags":[{"id":1344,"name":"Consumer","slug":"consumer"},{"id":1167,"name":"Deep Dive","slug":"deep-dive"},{"id":93,"name":"Latency","slug":"latency"},{"id":1015,"name":"Partitions","slug":"partitions"},{"id":1421,"name":"Producer","slug":"producer"},{"id":54,"name":"Scalability","slug":"scalability"},{"id":1186,"name":"Testing","slug":"testing"}],"summary":"

Fraud detection, payment systems, and stock trading platforms are only a few of many Apache Kafka® use cases that require both fast and predictable delivery of data. For example, detecting […]

\\n"},{"id":25138,"title":"Turning Data at REST into Data in Motion with Kafka Streams","url":"https://www.confluent.io/blog/data-stream-processing-with-kafka-streams-bitrock-and-confluent","imageUrl":"https://cdn.confluent.io/wp-content/uploads/travel_use_case.png","datePublished":"February 21, 2020","authors":[{"id":1293,"name":"Francesco Pellegrini","image":"https://cdn.confluent.io/wp-content/uploads/francesco-pellegrini-128x128.png","slug":"francesco-pellegrini"},{"id":1294,"name":"Massimo Siani","image":"https://cdn.confluent.io/wp-content/uploads/massimo-siani-128x128.png","slug":"massimo-siani"},{"id":1295,"name":"Luca Lanza","image":"https://cdn.confluent.io/wp-content/uploads/luca-lanza-128x128.png","slug":"luca-lanza"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":147,"name":"Confluent Partner Program","slug":"confluent-partner-program"},{"id":1630,"name":"Data Visualization","slug":"data-visualization"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1475,"name":"Travel","slug":"travel"}],"summary":"

The world is changing fast, and keeping up can be hard. Companies must evolve their IT to stay modern, providing services that are more and more sophisticated to their customers. […]

\\n"},{"id":25123,"title":"Celebrating Over 100 Supported Apache Kafka Connectors","url":"https://www.confluent.io/blog/confluent-celebrates-over-100-kafka-connectors","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kafka-connect-3.png","datePublished":"February 19, 2020","authors":[{"id":1152,"name":"Mau Barra","image":"https://cdn.confluent.io/wp-content/uploads/mau-barra-128x128.png","slug":"mau-barra"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":1440,"name":"Confluent Hub","slug":"confluent-hub"},{"id":47,"name":"Connector","slug":"connector"}],"summary":"

We just released Confluent Platform 5.4, which is one of our most important releases to date in terms of the features we’ve delivered to help enterprises take Apache Kafka® and […]

\\n"},{"id":25107,"title":"Apache Kafka as a Service with Confluent Cloud Now Available on Azure Marketplace","url":"https://www.confluent.io/blog/confluent-cloud-managed-kafka-service-azure-marketplace","imageUrl":"https://cdn.confluent.io/wp-content/uploads/cloud-1.png","datePublished":"February 18, 2020","authors":[{"id":1009,"name":"Ricardo Ferreira","image":"https://cdn.confluent.io/wp-content/uploads/Ricardo_Ferreira-128x128.png","slug":"ricardo-ferreira"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":147,"name":"Confluent Partner Program","slug":"confluent-partner-program"},{"id":135,"name":"Microsoft Azure","slug":"microsoft-azure"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

Less than six months ago, we announced support for Microsoft Azure in Confluent Cloud, which allows developers using Azure as a public cloud to build event streaming applications with Apache […]

\\n"},{"id":25094,"title":"Announcing ksqlDB 0.7.0","url":"https://www.confluent.io/blog/ksqldb-0-7-0-feature-updates","imageUrl":"https://cdn.confluent.io/wp-content/uploads/stream_processing.png","datePublished":"February 14, 2020","authors":[{"id":1292,"name":"Vicky Papavasileiou","image":"https://cdn.confluent.io/wp-content/uploads/vicky-papavasileiou-128x128.png","slug":"vicky-papavasileiou"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":110,"name":"Release","slug":"release"}],"summary":"

We are pleased to announce the release of ksqlDB 0.7.0. This release features highly available state, security enhancements for queries, a broadened range of language/data expressions, performance improvements, bug fixes, […]

\\n"},{"id":25074,"title":"Seamless SIEM – Part 2: Anomaly Detection with Machine Learning and ksqlDB","url":"https://www.confluent.io/blog/siem-with-anomaly-detection-using-machine-learning-and-ksqldb","imageUrl":"https://cdn.confluent.io/wp-content/uploads/tech-use-case.png","datePublished":"February 13, 2020","authors":[{"id":1290,"name":"Hubert Dulay","image":"https://cdn.confluent.io/wp-content/uploads/hubert-dulay-128x128.png","slug":"hubert-dulay-2"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":782,"name":"Anomaly Detection","slug":"anomaly-detection"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":271,"name":"Machine Learning","slug":"machine-learning"},{"id":1618,"name":"SIEM","slug":"siem"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

We talked about how easy it is to send osquery logs to the Confluent Platform in part 1. Now, we’ll consume streams of osquery logs, detect anomalous behavior using machine […]

\\n"},{"id":25047,"title":"Integrating Elasticsearch and ksqlDB for Powerful Data Enrichment and Analytics","url":"https://www.confluent.io/blog/elasticsearch-ksqldb-integration-for-data-enrichment-and-analytics","imageUrl":"https://cdn.confluent.io/wp-content/uploads/stream-processing-3.png","datePublished":"February 12, 2020","authors":[{"id":1291,"name":"Sarwar Bhuiyan","image":"https://cdn.confluent.io/wp-content/uploads/sarwar-bhuiyan-headshot-128x128.png","slug":"sarwar-bhuiyan"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"},{"id":1469,"name":"Pipelines","slug":"pipelines"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":236,"name":"Elasticsearch","slug":"elasticsearch"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1623,"name":"Kibana","slug":"kibana"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

Apache Kafka® is often deployed alongside Elasticsearch to perform log exploration, metrics monitoring and alerting, data visualisation, and analytics. It is complementary to Elasticsearch but also overlaps in some ways, […]

\\n"},{"id":25024,"title":"Seamless SIEM – Part 1: Osquery Event Log Aggregation and Confluent Platform","url":"https://www.confluent.io/blog/siem-with-osquery-log-aggregation-and-confluent","imageUrl":"https://cdn.confluent.io/wp-content/uploads/tech-use-case.png","datePublished":"February 11, 2020","authors":[{"id":1290,"name":"Hubert Dulay","image":"https://cdn.confluent.io/wp-content/uploads/hubert-dulay-128x128.png","slug":"hubert-dulay-2"}],"categories":[{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1617,"name":"Osquery","slug":"osquery"},{"id":1618,"name":"SIEM","slug":"siem"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

Osquery (developed by Facebook) is an open source tool used to gather audit log events from an operating system (OS). What’s unique about osquery is that it uses basic SQL […]

\\n"},{"id":24998,"title":"Building a Materialized Cache with ksqlDB","url":"https://www.confluent.io/blog/build-materialized-cache-with-ksqldb","imageUrl":"https://cdn.confluent.io/wp-content/uploads/stream-processing-3.png","datePublished":"February 6, 2020","authors":[{"id":1245,"name":"Michael Drogalis","image":"https://cdn.confluent.io/wp-content/uploads/Michael_Drogalis-128x128.png","slug":"michael-drogalis"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1176,"name":"Database","slug":"database"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1616,"name":"Materialized Cache","slug":"materialized-cache"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

When a company becomes overreliant on a centralized database, a world of bad things start to happen. Queries become slow, taxing an overburdened execution engine. Engineering decisions come to a […]

\\n"},{"id":24979,"title":"Kafka Summit London 2020 Agenda, Keynotes, and Other News","url":"https://www.confluent.io/blog/kafka-summit-london-2020-agenda-keynotes-and-other-news","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kafka-summit-4.png","datePublished":"February 4, 2020","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1214,"name":"Agenda","slug":"agenda"},{"id":1166,"name":"Kafka Summit London","slug":"kafka-summit-london"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

Do you make New Year’s resolutions? The most I personally hear about them is people making a big show about how they don’t do them. And sure enough, I don’t […]

\\n"},{"id":24947,"title":"Streaming Machine Learning with Tiered Storage and Without a Data Lake","url":"https://www.confluent.io/blog/streaming-machine-learning-with-tiered-storage","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-platform-1.png","datePublished":"January 28, 2020","authors":[{"id":1066,"name":"Kai Waehner","image":"https://www.confluent.io/wp-content/uploads/Kai_Waehner_2017-e1505825154505-128x128.jpg","slug":"kai-waehner"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1615,"name":"Data Lake","slug":"data-lake"},{"id":1313,"name":"IoT","slug":"iot"},{"id":271,"name":"Machine Learning","slug":"machine-learning"},{"id":1609,"name":"Tiered Storage","slug":"tiered-storage"}],"summary":"

The combination of streaming machine learning (ML) and Confluent Tiered Storage enables you to build one scalable, reliable, but also simple infrastructure for all machine learning tasks using the Apache […]

\\n"},{"id":24921,"title":"Infinite Storage in Confluent Platform","url":"https://www.confluent.io/blog/infinite-kafka-storage-in-confluent-platform","imageUrl":"https://cdn.confluent.io/wp-content/uploads/tiered_storage.png","datePublished":"January 23, 2020","authors":[{"id":1287,"name":"Lucas Bradstreet","image":"https://cdn.confluent.io/wp-content/uploads/lucas-bradstreet-128x128.png","slug":"lucas-bradstreet"},{"id":1288,"name":"Dhruvil Shah","image":"https://cdn.confluent.io/wp-content/uploads/dhruvil_shah-1-128x128.png","slug":"dhruvil-shah"},{"id":1289,"name":"Manveer Chawla","image":"https://cdn.confluent.io/wp-content/uploads/manveer-chawla-128x128.png","slug":"manveer-chawla"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":97,"name":"Storage","slug":"storage"},{"id":1609,"name":"Tiered Storage","slug":"tiered-storage"}],"summary":"

A preview of Confluent Tiered Storage is now available in Confluent Platform 5.4, enabling operators to add an additional storage tier for data in Confluent Platform. If you’re curious about […]

\\n"},{"id":24883,"title":"Introducing Confluent Platform 5.4","url":"https://www.confluent.io/blog/introducing-confluent-platform-5-4","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-platform-5-4.png","datePublished":"January 22, 2020","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1429,"name":"RBAC","slug":"rbac"},{"id":110,"name":"Release","slug":"release"},{"id":73,"name":"Replication","slug":"replication"},{"id":48,"name":"Schema Registry","slug":"schema-registry"},{"id":50,"name":"Security","slug":"security"},{"id":1610,"name":"Structured Audit Logs","slug":"structured-audit-logs"},{"id":1609,"name":"Tiered Storage","slug":"tiered-storage"}],"summary":"

I am pleased to announce the release of Confluent Platform 5.4. Like any new release of Confluent Platform, it’s packed with features. To make them easier to digest, I want […]

\\n"},{"id":24830,"title":"Featuring Apache Kafka in the Netflix Studio and Finance World","url":"https://www.confluent.io/blog/how-kafka-is-used-by-netflix","imageUrl":"https://cdn.confluent.io/wp-content/uploads/netflix-kafka.png","datePublished":"January 21, 2020","authors":[{"id":1286,"name":"Nitin Sharma","image":"https://cdn.confluent.io/wp-content/uploads/nitin-sharma-128x128.png","slug":"nitin-sharma"}],"categories":[{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":1468,"name":"Confluent Customer","slug":"confluent-customer"},{"id":80,"name":"Distributed System","slug":"distributed-system"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":1608,"name":"Netflix","slug":"netflix"}],"summary":"

Netflix spent an estimated $15 billion to produce world-class original content in 2019. When stakes are so high, it is paramount to enable our business with critical insights that help […]

\\n"},{"id":24805,"title":"Streams and Tables in Apache Kafka: Elasticity, Fault Tolerance, and Other Advanced Concepts","url":"https://www.confluent.io/blog/kafka-streams-tables-part-4-elasticity-fault-tolerance-advanced-concepts","imageUrl":"https://cdn.confluent.io/wp-content/uploads/advanced.png","datePublished":"January 16, 2020","authors":[{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":61,"name":"Elasticity","slug":"elasticity"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":1420,"name":"Fault Tolerance","slug":"fault-tolerance"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1606,"name":"Processing","slug":"processing"},{"id":1227,"name":"Tables","slug":"tables"}],"summary":"

Now that we’ve learned about the processing layer of Apache Kafka® by looking at streams and tables, as well as the architecture of distributed processing with the Kafka Streams API […]

\\n"},{"id":24793,"title":"Streams and Tables in Apache Kafka: Processing Fundamentals with Kafka Streams and ksqlDB","url":"https://www.confluent.io/blog/kafka-streams-tables-part-3-event-processing-fundamentals","imageUrl":"https://cdn.confluent.io/wp-content/uploads/storage.png","datePublished":"January 15, 2020","authors":[{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1606,"name":"Processing","slug":"processing"},{"id":1227,"name":"Tables","slug":"tables"}],"summary":"

Part 2 of this series discussed in detail the storage layer of Apache Kafka: topics, partitions, and brokers, along with storage formats and event partitioning. Now that we have this […]

\\n"},{"id":24786,"title":"Streams and Tables in Apache Kafka: Topics, Partitions, and Storage Fundamentals","url":"https://www.confluent.io/blog/kafka-streams-tables-part-2-topics-partitions-and-storage-fundamentals","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kafka-storage.png","datePublished":"January 14, 2020","authors":[{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":821,"name":"Data Serialization","slug":"data-serialization"},{"id":297,"name":"Kafka Topic","slug":"kafka-topic"},{"id":1015,"name":"Partitions","slug":"partitions"},{"id":97,"name":"Storage","slug":"storage"},{"id":1227,"name":"Tables","slug":"tables"}],"summary":"

Part 1 of this series discussed the basic elements of an event streaming platform: events, streams, and tables. We also introduced the stream-table duality and learned why it is a […]

\\n"},{"id":24770,"title":"Streams and Tables in Apache Kafka: A Primer","url":"https://www.confluent.io/blog/kafka-streams-tables-part-1-event-streaming","imageUrl":"https://cdn.confluent.io/wp-content/uploads/streams-vs-tables-1.png","datePublished":"January 13, 2020","authors":[{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1367,"name":"Event Streams","slug":"event-streams"},{"id":205,"name":"Events","slug":"events"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1227,"name":"Tables","slug":"tables"}],"summary":"

This four-part series explores the core fundamentals of Kafka’s storage and processing layers and how they interrelate. In this first part, we begin with an overview of events, streams, tables, […]

\\n"},{"id":24743,"title":"Pipeline to the Cloud – Streaming On-Premises Data for Cloud Analytics","url":"https://www.confluent.io/blog/cloud-analytics-for-on-premises-data-streams-with-kafka","imageUrl":"https://cdn.confluent.io/wp-content/uploads/pipeline-to-cloud.png","datePublished":"January 8, 2020","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":1449,"name":"Analytics","slug":"analytics"},{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"},{"id":1469,"name":"Pipelines","slug":"pipelines"}],"tags":[{"id":221,"name":"ETL","slug":"etl"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":314,"name":"S3","slug":"s3"},{"id":1605,"name":"Snowflake","slug":"snowflake"}],"summary":"

This article shows how you can offload data from on-premises transactional (OLTP) databases to cloud-based datastores, including Snowflake and Amazon S3 with Athena. I’m also going to take the opportunity […]

\\n"},{"id":24690,"title":"Apache Kafka as a Service with Confluent Cloud Now Available on GCP Marketplace","url":"https://www.confluent.io/blog/confluent-cloud-managed-kafka-service-gcp-marketplace","imageUrl":"https://cdn.confluent.io/wp-content/uploads/gcp_cc.png","datePublished":"January 7, 2020","authors":[{"id":1009,"name":"Ricardo Ferreira","image":"https://cdn.confluent.io/wp-content/uploads/Ricardo_Ferreira-128x128.png","slug":"ricardo-ferreira"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":147,"name":"Confluent Partner Program","slug":"confluent-partner-program"},{"id":1175,"name":"GCP","slug":"gcp"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

Following Google’s announcement to provide leading open source services with a cloud-native experience by partnering with companies like Confluent, we are delighted to share that Confluent Cloud is now available […]

\\n"},{"id":24569,"title":"Celebrating 1,000 Employees and Looking Towards the Path Ahead","url":"https://www.confluent.io/blog/confluent-celebrates-explosive-startup-growth","imageUrl":"https://cdn.confluent.io/wp-content/uploads/1000-employees.png","datePublished":"December 30, 2019","authors":[{"id":1279,"name":"Mike Podobnik","image":"https://cdn.confluent.io/wp-content/uploads/mike-podobnik-128x128.png","slug":"mike-podobnik"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":58,"name":"Confluent News","slug":"confluent-news"}],"summary":"

During the holiday season, it’s a particularly relevant time to pause, reflect, and celebrate, both the days past and those ahead. Here at Confluent, it’s a noticeably nostalgic moment, given […]

\\n"},{"id":24660,"title":"Exploring ksqlDB with Twitter Data","url":"https://www.confluent.io/blog/stream-processing-twitter-data-with-ksqldb","imageUrl":"https://cdn.confluent.io/wp-content/uploads/ksqldb-twitter-data.png","datePublished":"December 23, 2019","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":1449,"name":"Analytics","slug":"analytics"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":815,"name":"Aggregation","slug":"aggregation"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1308,"name":"Neo4j","slug":"neo4j"},{"id":95,"name":"PostgreSQL","slug":"postgresql"},{"id":274,"name":"RDBMS","slug":"rdbms"}],"summary":"

When KSQL was released, my first blog post about it showed how to use KSQL with Twitter data. Two years later, its successor ksqlDB was born, which we announced this […]

\\n"},{"id":24612,"title":"The Easiest Way to Install Apache Kafka and Confluent Platform – Using Ansible","url":"https://www.confluent.io/blog/confluent-platform-installation-with-cp-ansible","imageUrl":"https://cdn.confluent.io/wp-content/uploads/cp-ansible.png","datePublished":"December 19, 2019","authors":[{"id":1280,"name":"Justin Manchester","image":"https://cdn.confluent.io/wp-content/uploads/justin-manchester-128x128.png","slug":"justin-manchester"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":1426,"name":"Ansible","slug":"ansible"},{"id":1601,"name":"DevOps","slug":"devops"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

With Confluent Platform 5.3, we are actively embracing the rising DevOps movement by introducing CP-Ansible, our very own open source Ansible playbooks for deployment of Apache Kafka® and the Confluent […]

\\n"},{"id":24629,"title":"Apache Kafka Producer Improvements with the Sticky Partitioner","url":"https://www.confluent.io/blog/apache-kafka-producer-improvements-sticky-partitioner","imageUrl":"https://cdn.confluent.io/wp-content/uploads/sticky-partitioner.png","datePublished":"December 18, 2019","authors":[{"id":1283,"name":"Justine Olshan","image":"https://cdn.confluent.io/wp-content/uploads/justine-olshan-headshot-128x128.png","slug":"justine-olshan"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":93,"name":"Latency","slug":"latency"},{"id":1421,"name":"Producer","slug":"producer"},{"id":110,"name":"Release","slug":"release"},{"id":1186,"name":"Testing","slug":"testing"}],"summary":"

The amount of time it takes for a message to move through a system plays a big role in the performance of distributed systems like Apache Kafka®. In Kafka, the […]

\\n"},{"id":24551,"title":"Testing Kafka Streams Using TestInputTopic and TestOutputTopic","url":"https://www.confluent.io/blog/test-kafka-streams-with-topologytestdriver","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kip-470.png","datePublished":"December 17, 2019","authors":[{"id":1282,"name":"Jukka Karvanen","image":"https://cdn.confluent.io/wp-content/uploads/jukka_karvanen-128x128.png","slug":"jukka-karvanen"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1186,"name":"Testing","slug":"testing"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

As a test class that allows you to test Kafka Streams logic, TopologyTestDriver is a lot faster than utilizing EmbeddedSingleNodeKafkaCluster and makes it possible to simulate different timing scenarios. Not […]

\\n"},{"id":24543,"title":"What’s New in Apache Kafka 2.4","url":"https://www.confluent.io/blog/apache-kafka-2-4-latest-version-updates","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kafka-2.4.png","datePublished":"December 16, 2019","authors":[{"id":1278,"name":"Manikumar Reddy","image":"https://cdn.confluent.io/wp-content/uploads/manikumar-reddy-128x128.png","slug":"manikumar-reddy"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":1598,"name":"Broker","slug":"broker"},{"id":1344,"name":"Consumer","slug":"consumer"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":88,"name":"KIP","slug":"kip"},{"id":1421,"name":"Producer","slug":"producer"},{"id":110,"name":"Release","slug":"release"},{"id":137,"name":"Scala","slug":"scala"},{"id":82,"name":"ZooKeeper","slug":"zookeeper"}],"summary":"

On behalf of the Apache Kafka® community, it is my pleasure to announce the release of Apache Kafka 2.4.0. This release includes a number of key new features and improvements […]

\\n"},{"id":24500,"title":"Transferring Avro Schemas Across Schema Registries with Kafka Connect","url":"https://www.confluent.io/blog/kafka-connect-tutorial-transfer-avro-schemas-across-schema-registry-clusters","imageUrl":"https://cdn.confluent.io/wp-content/uploads/schema-transfer.png","datePublished":"December 9, 2019","authors":[{"id":1277,"name":"Jordan Moore","image":"https://cdn.confluent.io/wp-content/uploads/jordan-moore-headshot-128x128.png","slug":"jordan-moore"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":823,"name":"Avro","slug":"avro"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":905,"name":"Replicator","slug":"replicator"},{"id":48,"name":"Schema Registry","slug":"schema-registry"},{"id":237,"name":"Single Message Transforms","slug":"single-message-transforms"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

Although starting out with one Confluent Schema Registry deployment per development environment is straightforward, over time, a company may scale and begin migrating data to a cloud environment (such as […]

\\n"},{"id":24536,"title":"Integrating Apache Kafka With Python Asyncio Web Applications","url":"https://www.confluent.io/blog/kafka-python-asyncio-integration","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kafka-python-integration.png","datePublished":"December 5, 2019","authors":[{"id":70,"name":"Matt Howlett","image":"https://www.confluent.io/wp-content/uploads/Matt_ATO5C0154-128x128.jpg","slug":"matthowlett"}],"categories":[{"id":145,"name":"Clients","slug":"clients"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":1344,"name":"Consumer","slug":"consumer"},{"id":1421,"name":"Producer","slug":"producer"},{"id":138,"name":"Python","slug":"python"},{"id":1596,"name":"Web","slug":"web"}],"summary":"

Modern Python has very good support for cooperative multitasking. Coroutines were first added to the language in version 2.5 with PEP 342 and their use is becoming mainstream following the […]

\\n"},{"id":24023,"title":"Providing Timely, Reliable, and Consistent Travel Information to Millions of Deutsche Bahn Passengers with Apache Kafka and Confluent Platform","url":"https://www.confluent.io/blog/deutsche-bahn-kafka-and-confluent-use-case","imageUrl":"https://cdn.confluent.io/wp-content/uploads/deutsche-bahn.png","datePublished":"December 3, 2019","authors":[{"id":1269,"name":"Axel Löhn","image":"https://cdn.confluent.io/wp-content/uploads/axel-lohn-128x128.png","slug":"axel-lohn"},{"id":1270,"name":"Uwe Eisele","image":"https://cdn.confluent.io/wp-content/uploads/uwe-eisele-128x128.png","slug":"uwe-eisele"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1468,"name":"Confluent Customer","slug":"confluent-customer"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":57,"name":"Real-Time Data","slug":"real-time-data"},{"id":1475,"name":"Travel","slug":"travel"}],"summary":"

Every day, about 5.7 million rail passengers rely on Deutsche Bahn (DB) to get to their destination. Virtually every one of these passengers needs access to vital trip information, including […]

\\n"},{"id":24417,"title":"Conquering Hybrid Cloud with Replicated Event-Driven Architectures","url":"https://www.confluent.io/blog/replicated-event-driven-architectures-for-hybrid-cloud-kafka","imageUrl":"https://cdn.confluent.io/wp-content/uploads/k8s-replicator-cloud.png","datePublished":"November 26, 2019","authors":[{"id":1275,"name":"Rick Spurgeon","image":"https://cdn.confluent.io/wp-content/uploads/rick-spurgeon-128x128.png","slug":"rick-spurgeon"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":1153,"name":"Hybrid Cloud","slug":"hybrid-cloud"},{"id":430,"name":"Kubernetes","slug":"kubernetes"},{"id":905,"name":"Replicator","slug":"replicator"}],"summary":"

Potential advantages of hybrid cloud architectures include avoiding vendor lock-in, increasing system resilience, optimizing costs, and inducing price competition among cloud providers. Hybrid cloud architectures require the ability to securely […]

\\n"},{"id":24338,"title":"Kafka Streams and ksqlDB Compared – How to Choose","url":"https://www.confluent.io/blog/kafka-streams-vs-ksqldb-compared","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kstreams-or-ksqdlb.png","datePublished":"November 21, 2019","authors":[{"id":1274,"name":"Dani Traphagen","image":"https://cdn.confluent.io/wp-content/uploads/dani-traphagen-128x128.png","slug":"dani-traphagen"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

ksqlDB is a new kind of database purpose-built for stream processing apps, allowing users to build stream processing applications against data in Apache Kafka® and enhancing developer productivity. ksqlDB simplifies […]

\\n"},{"id":24299,"title":"Introducing ksqlDB","url":"https://www.confluent.io/blog/intro-to-ksqldb-sql-database-streaming","imageUrl":"https://cdn.confluent.io/wp-content/uploads/announcing-ksqldb.png","datePublished":"November 20, 2019","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1483,"name":"Pull Queries","slug":"pull-queries"},{"id":110,"name":"Release","slug":"release"}],"summary":"

Today marks a new release of KSQL, one so significant that we’re giving it a new name: ksqlDB. Like KSQL, ksqlDB remains freely available and community licensed, and you can […]

\\n"},{"id":24274,"title":"Using Confluent Platform to Complete a Massive Cloud Provider Migration and Handle Half a Million Events Per Second","url":"https://www.confluent.io/blog/how-unity-uses-confluent-for-real-time-event-streaming-at-scale","imageUrl":"https://cdn.confluent.io/wp-content/uploads/unity-technologies.png","datePublished":"November 19, 2019","authors":[{"id":1273,"name":"Oguz Kayral","image":"https://cdn.confluent.io/wp-content/uploads/avatar-128x128.png","slug":"oguz-kayral"}],"categories":[{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":79,"name":"AWS","slug":"aws"},{"id":1194,"name":"Cloud Migration","slug":"cloud-migration"},{"id":1468,"name":"Confluent Customer","slug":"confluent-customer"},{"id":1175,"name":"GCP","slug":"gcp"}],"summary":"

In the past 12 months, games and other forms of content made with the Unity platform were installed 33 billion times reaching 3 billion devices worldwide. Apart from our real-time […]

\\n"},{"id":24179,"title":"How to Use Single Message Transforms in Kafka Connect","url":"https://www.confluent.io/blog/kafka-connect-single-message-transformation-tutorial-with-examples","imageUrl":"https://cdn.confluent.io/wp-content/uploads/single-message-transform.png","datePublished":"November 7, 2019","authors":[{"id":1272,"name":"Chris Matta","image":"https://cdn.confluent.io/wp-content/uploads/chris-matta-128x128.png","slug":"chris-matta"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":221,"name":"ETL","slug":"etl"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":238,"name":"SMT","slug":"smt"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

Kafka Connect is the part of Apache Kafka® that provides reliable, scalable, distributed streaming integration between Apache Kafka and other systems. Kafka Connect has connectors for many, many systems, and […]

\\n"},{"id":24166,"title":"Introducing Confluent Cloud on Microsoft Azure","url":"https://www.confluent.io/blog/confluent-cloud-fully-managed-kafka-on-microsoft-azure","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-cloudmicrosoft-azure.png","datePublished":"November 6, 2019","authors":[{"id":1070,"name":"Priya Shivakumar","image":"https://www.confluent.io/wp-content/uploads/Priya_Shivakumar-128x128.png","slug":"priya-shivakumar"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":1468,"name":"Confluent Customer","slug":"confluent-customer"},{"id":135,"name":"Microsoft Azure","slug":"microsoft-azure"}],"summary":"

Today, we are proud to make Confluent Cloud available to companies leveraging the Microsoft Azure ecosystem of services, in addition to the previous rollouts on Google Cloud Platform (GCP) and […]

\\n"},{"id":24066,"title":"Machine Learning and Real-Time Analytics in Apache Kafka Applications","url":"https://www.confluent.io/blog/machine-learning-real-time-analytics-models-in-kafka-applications","imageUrl":"https://cdn.confluent.io/wp-content/uploads/tensorflow-kafka-streams.png","datePublished":"October 31, 2019","authors":[{"id":1066,"name":"Kai Waehner","image":"https://www.confluent.io/wp-content/uploads/Kai_Waehner_2017-e1505825154505-128x128.jpg","slug":"kai-waehner"}],"categories":[{"id":1449,"name":"Analytics","slug":"analytics"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":271,"name":"Machine Learning","slug":"machine-learning"},{"id":1018,"name":"Model Deployment","slug":"model-deployment"},{"id":1478,"name":"Model Server","slug":"model-server"},{"id":1476,"name":"RPC","slug":"rpc"},{"id":1223,"name":"TensorFlow","slug":"tensorflow"}],"summary":"

The relationship between Apache Kafka® and machine learning (ML) is an interesting one that I’ve written about quite a bit in How to Build and Deploy Scalable Machine Learning in […]

\\n"},{"id":23947,"title":"Getting Started with Rust and Apache Kafka","url":"https://www.confluent.io/blog/getting-started-with-rust-and-kafka","imageUrl":"https://cdn.confluent.io/wp-content/uploads/rust-kafka.png","datePublished":"October 24, 2019","authors":[{"id":1268,"name":"Gerard Klijs","image":"https://cdn.confluent.io/wp-content/uploads/gerard-klijs-128x128.png","slug":"gerard-klijs"}],"categories":[{"id":145,"name":"Clients","slug":"clients"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1472,"name":"Rust","slug":"rust"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

I’ve written an event sourcing bank simulation in Clojure (a lisp build for Java virtual machines or JVMs) called open-bank-mark, which you are welcome to read about in my previous […]

\\n"},{"id":23929,"title":"4 Steps to Creating Apache Kafka Connectors with the Kafka Connect API","url":"https://www.confluent.io/blog/create-dynamic-kafka-connect-source-connectors","imageUrl":"https://cdn.confluent.io/wp-content/uploads/source-connect-kafka.png","datePublished":"October 23, 2019","authors":[{"id":1267,"name":"Tiffany Chang","image":"https://cdn.confluent.io/wp-content/uploads/tiffany-chang-headshot-128x128.png","slug":"tiffany-chang"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":1440,"name":"Confluent Hub","slug":"confluent-hub"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

If you’ve worked with the Apache Kafka® and Confluent ecosystem before, chances are you’ve used a Kafka Connect connector to stream data into Kafka or stream data out of it. […]

\\n"},{"id":23805,"title":"🚂 On Track with Apache Kafka – Building a Streaming ETL Solution with Rail Data","url":"https://www.confluent.io/blog/build-streaming-etl-solutions-with-kafka-and-rail-data","imageUrl":"https://cdn.confluent.io/wp-content/uploads/event-streaming-platform-slq-json.png","datePublished":"October 16, 2019","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":1449,"name":"Analytics","slug":"analytics"},{"id":1469,"name":"Pipelines","slug":"pipelines"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":751,"name":"Data Wrangling","slug":"data-wrangling"},{"id":236,"name":"Elasticsearch","slug":"elasticsearch"},{"id":221,"name":"ETL","slug":"etl"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1475,"name":"Travel","slug":"travel"}],"summary":"

Trains are an excellent source of streaming data—their movements around the network are an unbounded series of events. Using this data, Apache Kafka® and Confluent Platform can provide the foundations […]

\\n"},{"id":23707,"title":"Internet of Things (IoT) and Event Streaming at Scale with Apache Kafka and MQTT","url":"https://www.confluent.io/blog/iot-with-kafka-connect-mqtt-and-rest-proxy","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kafkaconnectmqttiot.png","datePublished":"October 10, 2019","authors":[{"id":1066,"name":"Kai Waehner","image":"https://www.confluent.io/wp-content/uploads/Kai_Waehner_2017-e1505825154505-128x128.jpg","slug":"kai-waehner"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":1313,"name":"IoT","slug":"iot"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":906,"name":"MQTT","slug":"mqtt"},{"id":49,"name":"REST Proxy","slug":"rest-proxy"}],"summary":"

The Internet of Things (IoT) is getting more and more traction as valuable use cases come to light. A key challenge, however, is integrating devices and machines to process the […]

\\n"},{"id":23696,"title":"Kafka Summit San Francisco 2019 Session Videos","url":"https://www.confluent.io/blog/kafka-summit-san-francisco-2019-session-videos","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kafka-summit-sf-2019-session-videos.png","datePublished":"October 9, 2019","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

Last week, the Kafka Summit hosted nearly 2,000 people from 40 different countries and 595 companies—the largest Summit yet. By the numbers, we got to enjoy four keynote speakers, 56 […]

\\n"},{"id":23625,"title":"Building a Real-Time, Event-Driven Stock Platform at Euronext","url":"https://www.confluent.io/blog/euronext-apache-kafka-use-case-with-confluent-platform","imageUrl":"https://cdn.confluent.io/wp-content/uploads/euronext-kafka-use-case.png","datePublished":"October 8, 2019","authors":[{"id":1259,"name":"Angela Burk","image":"https://cdn.confluent.io/wp-content/uploads/angela-burk-128x128.png","slug":"angela-burk"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1468,"name":"Confluent Customer","slug":"confluent-customer"},{"id":1467,"name":"Euronext","slug":"euronext"},{"id":57,"name":"Real-Time Data","slug":"real-time-data"}],"summary":"

As the head of global customer marketing at Confluent, I tell people I have the best job. As we provide a complete event streaming platform that is radically changing how […]

\\n"},{"id":23587,"title":"How to Run Apache Kafka with Spring Boot on Pivotal Application Service (PAS)","url":"https://www.confluent.io/blog/apache-kafka-spring-boot-tutorial-for-pivotal-application-service","imageUrl":"https://cdn.confluent.io/wp-content/uploads/apache-kafka-spring-boot-pas.png","datePublished":"October 7, 2019","authors":[{"id":1265,"name":"Todd McGrath","image":"https://cdn.confluent.io/wp-content/uploads/todd-mcgrath-128x128.png","slug":"todd-mcgrath"}],"categories":[{"id":1171,"name":"Frameworks","slug":"frameworks"}],"tags":[{"id":1465,"name":"Pivotal","slug":"pivotal"},{"id":48,"name":"Schema Registry","slug":"schema-registry"},{"id":1006,"name":"Spring","slug":"spring"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

This tutorial describes how to set up a sample Spring Boot application in Pivotal Application Service (PAS), which consumes and produces events to an Apache Kafka® cluster running in Pivotal […]

\\n"},{"id":23487,"title":"How to Deploy Confluent Platform on Pivotal Container Service (PKS) with Confluent Operator","url":"https://www.confluent.io/blog/deploy-kafka-on-pivotal-container-service-with-confluent-operator","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-operator-k8s-enterprise-pks.png","datePublished":"October 4, 2019","authors":[{"id":1265,"name":"Todd McGrath","image":"https://cdn.confluent.io/wp-content/uploads/todd-mcgrath-128x128.png","slug":"todd-mcgrath"}],"categories":[{"id":999,"name":"Confluent Operator","slug":"confluent-operator"},{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":1464,"name":"Enterprise PKS","slug":"enterprise-pks"},{"id":430,"name":"Kubernetes","slug":"kubernetes"},{"id":1465,"name":"Pivotal","slug":"pivotal"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

This tutorial describes how to set up an Apache Kafka® cluster on Enterprise Pivotal Container Service (Enterprise PKS) using Confluent Operator, which allows you to deploy and run Confluent Platform […]

\\n"},{"id":23502,"title":"Why Scrapinghub’s AutoExtract Chose Confluent Cloud for Their Apache Kafka Needs","url":"https://www.confluent.io/blog/why-scrapinghub-chose-confluent-cloud-kafka-service","imageUrl":"https://cdn.confluent.io/wp-content/uploads/google-cloudconfluent-cloudscrapinghub.png","datePublished":"October 3, 2019","authors":[{"id":1062,"name":"Ian Duffy","image":"https://www.confluent.io/wp-content/uploads/ian-128x128.jpg","slug":"ian-duffy"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1463,"name":"Artificial Intelligence","slug":"artificial-intelligence"},{"id":1468,"name":"Confluent Customer","slug":"confluent-customer"},{"id":1462,"name":"Data Extraction","slug":"data-extraction"},{"id":1175,"name":"GCP","slug":"gcp"},{"id":271,"name":"Machine Learning","slug":"machine-learning"},{"id":1596,"name":"Web","slug":"web"}],"summary":"

We recently launched a new artificial intelligence (AI) data extraction API called Scrapinghub AutoExtract, which turns article and product pages into structured data. At Scrapinghub, we specialize in web data […]

\\n"},{"id":23493,"title":"Kafka Summit San Francisco 2019: Day 2 Recap","url":"https://www.confluent.io/blog/kafka-summit-sf-2019-day-2-recap","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kssf%E2%80%90day%E2%80%901%E2%80%90recap.png","datePublished":"October 2, 2019","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

If you looked at the Kafka Summits I’ve been a part of as a sequence of immutable events (and they are, unless you know something about time I don’t), it […]

\\n"},{"id":23471,"title":"Kafka Summit San Francisco 2019: Day 1 Recap","url":"https://www.confluent.io/blog/kafka-summit-sf-2019-day-1-recap","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kssf19%E2%80%90day%E2%80%901%E2%80%90recap.png","datePublished":"October 1, 2019","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

Day 1 of the event, summarized for your convenience. They say you never forget your first Kafka Summit. Mine was in New York City in 2017, and it had, what, […]

\\n"},{"id":23452,"title":"Free Apache Kafka as a Service with Confluent Cloud","url":"https://www.confluent.io/blog/kafka-made-serverless-with-confluent-cloud","imageUrl":"https://cdn.confluent.io/wp-content/uploads/confluent-cloud.png","datePublished":"September 30, 2019","authors":[{"id":1070,"name":"Priya Shivakumar","image":"https://www.confluent.io/wp-content/uploads/Priya_Shivakumar-128x128.png","slug":"priya-shivakumar"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":1455,"name":"Apache Kafka as a Service","slug":"apache-kafka-as-a-service"},{"id":1310,"name":"Serverless","slug":"serverless"}],"summary":"

Go from zero to production on Apache Kafka® without talking to sales reps or building infrastructure Apache Kafka is the standard for event-driven applications. But it’s not without its challenges, […]

\\n"},{"id":23427,"title":"Schema Validation with Confluent Platform 5.4","url":"https://www.confluent.io/blog/data-governance-with-schema-validation","imageUrl":"https://cdn.confluent.io/wp-content/uploads/schema-validation-cp-5-4-preview.png","datePublished":"September 27, 2019","authors":[{"id":10,"name":"Guozhang Wang","image":"https://www.confluent.io/wp-content/uploads/2016/08/Guozhang_ATO5C0221-025338-edited-150x150.jpg","slug":"guozhang-wang"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":110,"name":"Release","slug":"release"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

Robust data governance support through Schema Validation on write is now supported in Confluent Platform 5.4. This gives operators a centralized location to enforce data format correctness within Confluent Platform. […]

\\n"},{"id":23346,"title":"Real-Time Analytics and Monitoring Dashboards with Apache Kafka and Rockset","url":"https://www.confluent.io/blog/analytics-with-apache-kafka-and-rockset","imageUrl":"https://cdn.confluent.io/wp-content/uploads/KafkaRockset.png","datePublished":"September 26, 2019","authors":[{"id":1263,"name":"Shruti Bhat","image":"https://cdn.confluent.io/wp-content/uploads/Shruti-Bhat-128x128.png","slug":"shruti-bhat"},{"id":1066,"name":"Kai Waehner","image":"https://www.confluent.io/wp-content/uploads/Kai_Waehner_2017-e1505825154505-128x128.jpg","slug":"kai-waehner"}],"categories":[{"id":1449,"name":"Analytics","slug":"analytics"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":1440,"name":"Confluent Hub","slug":"confluent-hub"},{"id":147,"name":"Confluent Partner Program","slug":"confluent-partner-program"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":72,"name":"Integration","slug":"integration"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":64,"name":"Monitoring","slug":"monitoring"}],"summary":"

In the early days, many companies simply used Apache Kafka® for data ingestion into Hadoop or another data lake. However, Apache Kafka is more than just messaging. The significant difference […]

\\n"},{"id":23367,"title":"Every Company is Becoming a Software Company","url":"https://www.confluent.io/blog/every-company-is-becoming-software","imageUrl":"https://cdn.confluent.io/wp-content/uploads/software-cityscape.jpg","datePublished":"September 25, 2019","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":1176,"name":"Database","slug":"database"},{"id":89,"name":"Event Streaming","slug":"event-streaming"}],"summary":"

In 2011, Marc Andressen wrote an article called Why Software is Eating the World. The central idea is that any process that can be moved into software, will be. This […]

\\n"},{"id":23310,"title":"Incremental Cooperative Rebalancing in Apache Kafka: Why Stop the World When You Can Change It?","url":"https://www.confluent.io/blog/incremental-cooperative-rebalancing-in-kafka","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Kafka_Clients.png","datePublished":"September 24, 2019","authors":[{"id":1160,"name":"Konstantine Karantasis","image":"https://cdn.confluent.io/wp-content/uploads/konstantine_karantasis-1-128x128.png","slug":"konstantine-karantasis"}],"categories":[{"id":145,"name":"Clients","slug":"clients"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":1167,"name":"Deep Dive","slug":"deep-dive"},{"id":1434,"name":"Incremental Cooperative Rebalancing","slug":"incremental-cooperative-rebalancing"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"},{"id":88,"name":"KIP","slug":"kip"},{"id":54,"name":"Scalability","slug":"scalability"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

There is a coming and a going / A parting and often no—meeting again. —Franz Kafka, 1897 Load balancing and scheduling are at the heart of every distributed system, and […]

\\n"},{"id":23282,"title":"How to Make the Most of Kafka Summit San Francisco 2019","url":"https://www.confluent.io/blog/kafka-summit-san-francisco-2019-schedule-and-pro-tips","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Make_the_Most_Out_of_KSSF19.png","datePublished":"September 23, 2019","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

Kafka Summit San Francisco is just one week away. Conferences can be busy affairs, so here are some tips on getting the most out of your time there. Plan Go […]

\\n"},{"id":23215,"title":"The Rise of Managed Services for Apache Kafka","url":"https://www.confluent.io/blog/fully-managed-apache-kafka-service","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Rise_of_Managed_Kafka_as_a_Service.png","datePublished":"September 20, 2019","authors":[{"id":1009,"name":"Ricardo Ferreira","image":"https://cdn.confluent.io/wp-content/uploads/Ricardo_Ferreira-128x128.png","slug":"ricardo-ferreira"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":1455,"name":"Apache Kafka as a Service","slug":"apache-kafka-as-a-service"},{"id":89,"name":"Event Streaming","slug":"event-streaming"}],"summary":"

As a distributed system for collecting, storing, and processing data at scale, Apache Kafka® comes with its own deployment complexities. Luckily for on-premises scenarios, a myriad of deployment options are […]

\\n"},{"id":23195,"title":"Reflections on Event Streaming as Confluent Turns Five – Part 2","url":"https://www.confluent.io/blog/event-streaming-reflections-as-confluent-turns-five-part-2","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Confluent_Birthday_Part2.png","datePublished":"September 19, 2019","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":89,"name":"Event Streaming","slug":"event-streaming"}],"summary":"

When people ask me the very top-level question “why do people use Kafka,” I usually lead with the story in my last post, where I talked about how Apache Kafka® […]

\\n"},{"id":23051,"title":"Multi-Region Clusters with Confluent Platform 5.4","url":"https://www.confluent.io/blog/multi-region-data-replication","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Data_Replication.png","datePublished":"September 16, 2019","authors":[{"id":1261,"name":"David Arthur","image":"https://cdn.confluent.io/wp-content/uploads/David_Arthur-128x128.png","slug":"david-arthur"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":110,"name":"Release","slug":"release"},{"id":73,"name":"Replication","slug":"replication"}],"summary":"

Running a single Apache Kafka® cluster across multiple datacenters (DCs) is a common, yet somewhat taboo architecture. This architecture, referred to as a stretch cluster, provides several operational benefits and […]

\\n"},{"id":22978,"title":"Apache Kafka Rebalance Protocol for the Cloud: Static Membership","url":"https://www.confluent.io/blog/kafka-rebalance-protocol-static-membership","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Static_Membership.png","datePublished":"September 13, 2019","authors":[{"id":1054,"name":"Boyang Chen","image":"https://cdn.confluent.io/wp-content/uploads/Boyang-Chen-128x128.png","slug":"boyang-chen"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

Static Membership is an enhancement to the current rebalance protocol that aims to reduce the downtime caused by excessive and unnecessary rebalances for general Apache Kafka® client implementations. This applies […]

\\n"},{"id":23034,"title":"Reflections on Event Streaming as Confluent Turns Five – Part 1","url":"https://www.confluent.io/blog/event-streaming-reflections-as-confluent-turns-five-part-1","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Confluent_Birthday_Part1.png","datePublished":"September 12, 2019","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"}],"summary":"

For me, and I think for you, technology is cool by itself. When you first learn how consistent hashing works, it’s fun. When you finally understand log-structured merge trees, it’s […]

\\n"},{"id":22948,"title":"Introducing Derivative Event Sourcing","url":"https://www.confluent.io/blog/event-sourcing-vs-derivative-event-sourcing-explained","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Derivative_Event_Sourcing.png","datePublished":"September 6, 2019","authors":[{"id":1258,"name":"Anna McDonald","image":"https://cdn.confluent.io/wp-content/uploads/Anna_McDonald-128x128.png","slug":"anna-mcdonald"}],"categories":[{"id":1220,"name":"Big Ideas","slug":"big-ideas"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":273,"name":"CDC","slug":"cdc"},{"id":104,"name":"Event Sourcing","slug":"event-sourcing"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

First, what is event sourcing? Here’s an example. Consider your bank account: viewing it online, the first thing you notice is often the current balance. How many of us drill […]

\\n"},{"id":22908,"title":"How to Use Schema Registry and Avro in Spring Boot Applications","url":"https://www.confluent.io/blog/schema-registry-avro-in-spring-boot-application-tutorial","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Schema_Registry_Spring_Boot.png","datePublished":"September 5, 2019","authors":[{"id":1141,"name":"Viktor Gamov","image":"https://www.confluent.io/wp-content/uploads/Viktor-Gamov-128x128.jpg","slug":"viktor-gamov"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"},{"id":1171,"name":"Frameworks","slug":"frameworks"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":823,"name":"Avro","slug":"avro"},{"id":113,"name":"Java","slug":"java"},{"id":48,"name":"Schema Registry","slug":"schema-registry"},{"id":1006,"name":"Spring","slug":"spring"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

TL;DR Following on from How to Work with Apache Kafka in Your Spring Boot Application, which shows how to get started with Spring Boot and Apache Kafka®, here I will […]

\\n"},{"id":22840,"title":"Using Graph Processing for Kafka Streams Visualizations","url":"https://www.confluent.io/blog/kafka-graph-visualizations","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Friend_Graph-1.png","datePublished":"August 29, 2019","authors":[{"id":1257,"name":"David Allen","image":"https://cdn.confluent.io/wp-content/uploads/David_Allen-128x128.png","slug":"david-allen"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":1448,"name":"Graphs","slug":"graphs"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"},{"id":1308,"name":"Neo4j","slug":"neo4j"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

We know that Apache Kafka® is great when you’re dealing with streams, allowing you to conveniently look at streams as tables. Stream processing engines like KSQL furthermore give you the […]

\\n"},{"id":22815,"title":"Confluent Cloud Schema Registry is Now Generally Available","url":"https://www.confluent.io/blog/confluent-cloud-schema-registry-generally-available","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Confluent_Cloud_Schema_Registry.jpg","datePublished":"August 27, 2019","authors":[{"id":1256,"name":"Nathan Nam","image":"https://cdn.confluent.io/wp-content/uploads/Nathan_Nam_headshot-128x128.png","slug":"nathan-nam"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":1446,"name":"General Availability","slug":"general-availability"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

We are excited to announce the release of Confluent Cloud Schema Registry in general availability (GA), available in Confluent Cloud, our fully managed event streaming service based on Apache Kafka®. […]

\\n"},{"id":22667,"title":"Building Transactional Systems Using Apache Kafka","url":"https://www.confluent.io/blog/transactional-systems-with-apache-kafka","imageUrl":"https://cdn.confluent.io/wp-content/uploads/apache-kafka-transactional-systems.png","datePublished":"August 20, 2019","authors":[{"id":1255,"name":"Michael Seifert","image":"https://cdn.confluent.io/wp-content/uploads/Michael_Seifert-128x128.png","slug":"michael-seifert"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":1442,"name":"ACID","slug":"acid"},{"id":1321,"name":"API","slug":"api"},{"id":70,"name":"Architecture","slug":"architecture"},{"id":1344,"name":"Consumer","slug":"consumer"},{"id":104,"name":"Event Sourcing","slug":"event-sourcing"},{"id":53,"name":"Multi-Tenancy","slug":"multi-tenancy"},{"id":1421,"name":"Producer","slug":"producer"}],"summary":"

Traditional relational database systems are ubiquitous in software systems. They are surrounded by a strong ecosystem of tools, such as object-relational mappers and schema migration helpers. Relational databases also provide […]

\\n"},{"id":22633,"title":"A Guide to the Confluent Verified Integrations Program","url":"https://www.confluent.io/blog/guide-to-confluent-verified-integrations-program","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Verified_Integrations_Program.jpg","datePublished":"August 19, 2019","authors":[{"id":1252,"name":"Jeff Bean","image":"https://cdn.confluent.io/wp-content/uploads/Jeff_Bean_Confluent-128x128.png","slug":"jeff-bean"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":1440,"name":"Confluent Hub","slug":"confluent-hub"},{"id":147,"name":"Confluent Partner Program","slug":"confluent-partner-program"},{"id":72,"name":"Integration","slug":"integration"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"}],"summary":"

When it comes to writing a connector, there are two things you need to know how to do: how to write the code itself, and helping the world know about […]

\\n"},{"id":22541,"title":"Kafka Connect Improvements in Apache Kafka 2.3","url":"https://www.confluent.io/blog/kafka-connect-improvements-in-apache-kafka-2-3","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Kafka_Connect1.png","datePublished":"August 15, 2019","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":1434,"name":"Incremental Cooperative Rebalancing","slug":"incremental-cooperative-rebalancing"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":88,"name":"KIP","slug":"kip"},{"id":1435,"name":"Logging","slug":"logging"},{"id":110,"name":"Release","slug":"release"}],"summary":"

With the release of Apache Kafka® 2.3 and Confluent Platform 5.3 came several substantial improvements to the already awesome Kafka Connect. Not sure what Kafka Connect is or need convincing […]

\\n"},{"id":22515,"title":"Shoulder Surfers Beware: Confluent Now Provides Cross-Platform Secret Protection","url":"https://www.confluent.io/blog/kafka-security-secret-encryption-with-confluent","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Secret_Protection_Feature.jpg","datePublished":"August 14, 2019","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":1428,"name":"CLI","slug":"cli"},{"id":1433,"name":"Encryption","slug":"encryption"},{"id":1430,"name":"Secret Protection","slug":"secret-protection"},{"id":50,"name":"Security","slug":"security"}],"summary":"

Compliance requirements often dictate that services should not store secrets as cleartext in files. These secrets may include passwords, such as the values for ssl.key.password, ssl.keystore.password, and ssl.truststore.password configuration parameters […]

\\n"},{"id":22554,"title":"Top 10 Reasons to Attend Kafka Summit","url":"https://www.confluent.io/blog/top-10-reasons-to-attend-kafka-summit","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Kafka_Summit_SF_10_Reasons.jpg","datePublished":"August 13, 2019","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

Yes, the other definition of event sourcing. 1. Keynotes from leading technologists At Kafka Summit SF, you’ll get to hear incredible keynotes from leading technologists, including Jay Kreps and Neha […]

\\n"},{"id":22462,"title":"Announcing Tutorials for Apache Kafka","url":"https://www.confluent.io/blog/announcing-apache-kafka-tutorials","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Kafka-Tutorials.jpg","datePublished":"August 8, 2019","authors":[{"id":1245,"name":"Michael Drogalis","image":"https://cdn.confluent.io/wp-content/uploads/Michael_Drogalis-128x128.png","slug":"michael-drogalis"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

We’re excited to announce Tutorials for Apache Kafka®, a new area of our website for learning event streaming. Kafka Tutorials is a collection of common event streaming use cases, with […]

\\n"},{"id":22391,"title":"KSQL UDFs and UDAFs Made Easy","url":"https://www.confluent.io/blog/kafka-ksql-udf-udaf-with-maven-made-easy","imageUrl":"https://www.confluent.io/wp-content/uploads/KSQL-1.png","datePublished":"August 6, 2019","authors":[{"id":1242,"name":"Mitch Seymour","image":"https://www.confluent.io/wp-content/uploads/Mitch_Seymour_headshot-128x128.png","slug":"mitch-seymour"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1369,"name":"Gradle","slug":"gradle"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1386,"name":"Maven","slug":"maven"},{"id":136,"name":"Tutorial","slug":"tutorial"},{"id":926,"name":"UDAF","slug":"udaf"},{"id":925,"name":"UDF","slug":"udf"}],"summary":"

One of KSQL’s most powerful features is allowing users to build their own KSQL functions for processing real-time streams of data. These functions can be invoked on individual messages (user-defined […]

\\n"},{"id":22258,"title":"Building Shared State Microservices for Distributed Systems Using Kafka Streams","url":"https://www.confluent.io/blog/building-shared-state-microservices-for-distributed-systems-using-kafka-streams","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka_Streams_Imperva.png","datePublished":"August 1, 2019","authors":[{"id":1238,"name":"Nitzan Gilkis","image":"https://www.confluent.io/wp-content/uploads/Nitzan_Gilkis-128x128.png","slug":"nitzan-gilkis"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"},{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":80,"name":"Distributed System","slug":"distributed-system"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1424,"name":"Shared State","slug":"shared-state"}],"summary":"

The Kafka Streams API boasts a number of capabilities that make it well suited for maintaining the global state of a distributed system. At Imperva, we took advantage of Kafka […]

\\n"},{"id":22303,"title":"Introducing Confluent Platform 5.3","url":"https://www.confluent.io/blog/introducing-confluent-platform-5-3","imageUrl":"https://www.confluent.io/wp-content/uploads/Confluent_Platform_5-3.png","datePublished":"July 31, 2019","authors":[{"id":1183,"name":"Gaetan Castelein","image":"https://www.confluent.io/wp-content/uploads/Gaetan-Castelein-128x128.png","slug":"gaetan-castelein"}],"categories":[{"id":999,"name":"Confluent Operator","slug":"confluent-operator"},{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":1426,"name":"Ansible","slug":"ansible"},{"id":1428,"name":"CLI","slug":"cli"},{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":1429,"name":"RBAC","slug":"rbac"},{"id":110,"name":"Release","slug":"release"},{"id":1430,"name":"Secret Protection","slug":"secret-protection"},{"id":50,"name":"Security","slug":"security"}],"summary":"

Delivers the new Confluent Operator for cloud-native automation on Kubernetes, a redesigned Confluent Control Center user interface to simplify how you manage event streams, and a preview of Role-Based Access […]

\\n"},{"id":22082,"title":"Fault Tolerance in Distributed Systems: Tracing with Apache Kafka and Jaeger","url":"https://www.confluent.io/blog/fault-tolerance-distributed-systems-tracing-with-apache-kafka-jaeger","imageUrl":"https://www.confluent.io/wp-content/uploads/KafkaJaeger.png","datePublished":"July 24, 2019","authors":[{"id":1231,"name":"Aaron Burk","image":"https://www.confluent.io/wp-content/uploads/Aaron_Burk-128x128.png","slug":"aaron-burk"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":1344,"name":"Consumer","slug":"consumer"},{"id":80,"name":"Distributed System","slug":"distributed-system"},{"id":1420,"name":"Fault Tolerance","slug":"fault-tolerance"},{"id":1419,"name":"Jaeger","slug":"jaeger"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1421,"name":"Producer","slug":"producer"},{"id":1006,"name":"Spring","slug":"spring"},{"id":1331,"name":"Tracing","slug":"tracing"}],"summary":"

Using Jaeger tracing, I’ve been able to answer an important question that nearly every Apache Kafka® project that I’ve worked on posed: how is data flowing through my distributed system? […]

\\n"},{"id":22069,"title":"Why I Can’t Wait for Kafka Summit San Francisco","url":"https://www.confluent.io/blog/kafka-summit-san-francisco-2019","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka_Summit_SF_2019-e1563774874373.jpg","datePublished":"July 23, 2019","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1214,"name":"Agenda","slug":"agenda"},{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

The Kafka Summit Program Committee recently published the schedule for the San Francisco event, and there’s quite a bit to look forward to. For starters, it is a two-day event, […]

\\n"},{"id":21834,"title":"Getting Started with the MongoDB Connector for Apache Kafka and MongoDB","url":"https://www.confluent.io/blog/getting-started-mongodb-connector-for-apache-kafka-and-mongodb","imageUrl":"https://www.confluent.io/wp-content/uploads/KafkaMongoDB.png","datePublished":"July 17, 2019","authors":[{"id":1229,"name":"Robert Walters","image":"https://www.confluent.io/wp-content/uploads/Robert_Walters-128x128.png","slug":"robert-walters"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":47,"name":"Connector","slug":"connector"},{"id":866,"name":"MongoDB","slug":"mongodb"}],"summary":"

Together, MongoDB and Apache Kafka® make up the heart of many modern data architectures today. Integrating Kafka with external systems like MongoDB is best done though the use of Kafka […]

\\n"},{"id":21863,"title":"Bust the Burglars – Machine Learning with TensorFlow and Apache Kafka","url":"https://www.confluent.io/blog/bust-the-burglars-machine-learning-with-tensorflow-and-apache-kafka","imageUrl":"https://www.confluent.io/wp-content/uploads/burglar-alarm-1000x666px.png","datePublished":"July 16, 2019","authors":[{"id":1224,"name":"Erik-Berndt Scheper","image":"https://www.confluent.io/wp-content/uploads/Erik-Berndt_Scheper-128x128.png","slug":"erik-berndt-scheper"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":853,"name":"Alerting","slug":"alerting"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":271,"name":"Machine Learning","slug":"machine-learning"},{"id":1223,"name":"TensorFlow","slug":"tensorflow"}],"summary":"

Have you ever realized that, according to the latest FBI report, more than 80% of all crimes are property crimes, such as burglaries? And that the FBI clearance figures indicate […]

\\n"},{"id":21228,"title":"KSQL Training for Hands-On Learning","url":"https://www.confluent.io/blog/ksql-training-for-hands-on-learning","imageUrl":"https://www.confluent.io/wp-content/uploads/KSQL_Training_Course.png","datePublished":"July 11, 2019","authors":[{"id":1075,"name":"Simon Aubury","image":"https://www.confluent.io/wp-content/uploads/image5-128x128.jpg","slug":"simon-aubury"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":52,"name":"Kafka Training","slug":"kafka-training"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

I’ve been using KSQL from Confluent since its first developer preview in 2017. Reading, writing, and transforming data in Apache Kafka® using KSQL is an effective way to rapidly deliver […]

\\n"},{"id":21824,"title":"Deploying Kafka Streams and KSQL with Gradle – Part 3: KSQL User-Defined Functions and Kafka Streams","url":"https://www.confluent.io/blog/deploying-kafka-streams-and-ksql-with-gradle-part-3-ksql-user-defined-functions-and-kafka-streams","imageUrl":"https://www.confluent.io/wp-content/uploads/Packaging_Payloads_OWMS_Cloud.png","datePublished":"July 10, 2019","authors":[{"id":1182,"name":"Stewart Bryson","image":"https://www.confluent.io/wp-content/uploads/Stewart_Bryson-128x128.png","slug":"stewart-bryson"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":1369,"name":"Gradle","slug":"gradle"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":925,"name":"UDF","slug":"udf"}],"summary":"

Building off part 1 where we discussed an event streaming architecture that we implemented for a customer using Apache Kafka, KSQL, and Kafka Streams, and part 2 where we discussed […]

\\n"},{"id":21708,"title":"KSQL in Football: FIFA Women’s World Cup Data Analysis","url":"https://www.confluent.io/blog/ksql-in-football-fifa-womens-world-cup-data-analysis","imageUrl":"https://www.confluent.io/wp-content/uploads/KSQLFootball.png","datePublished":"July 3, 2019","authors":[{"id":1221,"name":"Francesco Tisiot","image":"https://www.confluent.io/wp-content/uploads/Francesco_Tisiot-128x128.png","slug":"francesco-tisiot"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1321,"name":"API","slug":"api"},{"id":929,"name":"Google BigQuery","slug":"google-bigquery"},{"id":1412,"name":"Google Data Studio","slug":"google-data-studio"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":925,"name":"UDF","slug":"udf"}],"summary":"

One of the football (as per European terminology) highlights of the summer is the FIFA Women’s World Cup. France, Brazil, and the USA are the favourites, and this year Italy […]

\\n"},{"id":21653,"title":"Kafka Listeners – Explained","url":"https://www.confluent.io/blog/kafka-listeners-explained","imageUrl":"https://www.confluent.io/wp-content/uploads/Apache_Kafka_Host_Machine_Docker.png","datePublished":"July 1, 2019","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":145,"name":"Clients","slug":"clients"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":79,"name":"AWS","slug":"aws"},{"id":218,"name":"Docker","slug":"docker"},{"id":1410,"name":"Listener","slug":"listener"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

This question comes up on Stack Overflow and such places a lot, so here’s something to try and help. tl;dr: You need to set advertised.listeners (or KAFKA_ADVERTISED_LISTENERS if you’re using […]

\\n"},{"id":21625,"title":"Designing the .NET API for Apache Kafka","url":"https://www.confluent.io/blog/designing-the-net-api-for-apache-kafka","imageUrl":"https://www.confluent.io/wp-content/uploads/dotnet_client_for_Apache_Kafka.png","datePublished":"June 27, 2019","authors":[{"id":70,"name":"Matt Howlett","image":"https://www.confluent.io/wp-content/uploads/Matt_ATO5C0154-128x128.jpg","slug":"matthowlett"}],"categories":[{"id":145,"name":"Clients","slug":"clients"}],"tags":[{"id":1409,"name":".NET","slug":"net"},{"id":1167,"name":"Deep Dive","slug":"deep-dive"},{"id":110,"name":"Release","slug":"release"}],"summary":"

Confluent’s clients for Apache Kafka® recently passed a major milestone—the release of version 1.0. This has been a long time in the making. Magnus Edenhill first started developing librdkafka about […]

\\n"},{"id":21562,"title":"Microservices, Apache Kafka, and Domain-Driven Design","url":"https://www.confluent.io/blog/microservices-apache-kafka-domain-driven-design","imageUrl":"https://www.confluent.io/wp-content/uploads/Event_Streaming_Platform_Diagram.png","datePublished":"June 26, 2019","authors":[{"id":1066,"name":"Kai Waehner","image":"https://www.confluent.io/wp-content/uploads/Kai_Waehner_2017-e1505825154505-128x128.jpg","slug":"kai-waehner"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"}],"tags":[{"id":1406,"name":"DDD","slug":"ddd"},{"id":89,"name":"Event Streaming","slug":"event-streaming"}],"summary":"

Microservices have a symbiotic relationship with domain-driven design (DDD)—a design approach where the business domain is carefully modeled in software and evolved over time, independently of the plumbing that makes […]

\\n"},{"id":21594,"title":"What’s New in Apache Kafka 2.3","url":"https://www.confluent.io/blog/whats-new-in-apache-kafka-2-3","imageUrl":"https://www.confluent.io/wp-content/uploads/Apache_Kafka_2.3.png","datePublished":"June 25, 2019","authors":[{"id":1056,"name":"Colin McCabe","image":"https://cdn.confluent.io/wp-content/uploads/colin-mccabe-e1589496557291-128x128.jpeg","slug":"colin-mccabe"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":88,"name":"KIP","slug":"kip"},{"id":110,"name":"Release","slug":"release"}],"summary":"

It’s official: Apache Kafka® 2.3 has been released! Here is a selection of some of the most interesting and important features we added in the new release. Core Kafka KIP-351 […]

\\n"},{"id":21477,"title":"Building a Scalable Search Architecture","url":"https://www.confluent.io/blog/building-a-scalable-search-architecture","imageUrl":"https://www.confluent.io/wp-content/uploads/Building_Scalable_Search_Fig2_Feature.png","datePublished":"June 18, 2019","authors":[{"id":1205,"name":"Pere Urbón-Bayes","image":"https://www.confluent.io/wp-content/uploads/Pere_Urbon-Bayes-128x128.jpg","slug":"pere-urbon-bayes"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":236,"name":"Elasticsearch","slug":"elasticsearch"},{"id":232,"name":"JDBC","slug":"jdbc"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"}],"summary":"

Software projects of all sizes and complexities have a common challenge: building a scalable solution for search. Who has never seen an application use RDBMS SQL statements to run searches? […]

\\n"},{"id":21445,"title":"Streaming Data from the Universe with Apache Kafka","url":"https://www.confluent.io/blog/streaming-data-from-the-universe-with-apache-kafka","imageUrl":"https://www.confluent.io/wp-content/uploads/Apache_Kafka_Astronomy.png","datePublished":"June 13, 2019","authors":[{"id":1204,"name":"Maria Patterson","image":"https://www.confluent.io/wp-content/uploads/Maria_Patterson-128x128.jpg","slug":"maria-patterson"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":62,"name":"Data Pipeline","slug":"data-pipeline"}],"summary":"

You might think that data collection in astronomy consists of a lone astronomer pointing a telescope at a single object in a static sky. While that may be true in […]

\\n"},{"id":21327,"title":"How to Connect KSQL to Confluent Cloud Using Kubernetes with Helm","url":"https://www.confluent.io/blog/how-to-connect-ksql-to-confluent-cloud-using-kubernetes-with-helm","imageUrl":"https://www.confluent.io/wp-content/uploads/KSQL_Tutorial_Components.png","datePublished":"June 12, 2019","authors":[{"id":1198,"name":"Mark Plascencia","image":"https://www.confluent.io/wp-content/uploads/Mark_Plascencia-128x128.jpeg","slug":"mark-plascencia"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":1401,"name":"Datagen","slug":"datagen"},{"id":1601,"name":"DevOps","slug":"devops"},{"id":1000,"name":"Helm Charts","slug":"helm-charts"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":430,"name":"Kubernetes","slug":"kubernetes"},{"id":48,"name":"Schema Registry","slug":"schema-registry"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

Confluent Cloud, a fully managed event cloud-native streaming service that extends the value of Apache Kafka®, is simple, resilient, secure, and performant, allowing you to focus on what is important—building […]

\\n"},{"id":21357,"title":"Spring for Apache Kafka Deep Dive – Part 4: Continuous Delivery of Event Streaming Pipelines","url":"https://www.confluent.io/blog/spring-for-apache-kafka-deep-dive-part-4-continuous-delivery-of-event-streaming-pipelines","imageUrl":"https://www.confluent.io/wp-content/uploads/Spring_Kafka_Part_4.png","datePublished":"June 11, 2019","authors":[{"id":1192,"name":"Ilayaperumal Gopinathan","image":"https://www.confluent.io/wp-content/uploads/Ilayaperumal_Gopinathan-128x128.png","slug":"ilayaperumal-gopinathan"}],"categories":[{"id":1171,"name":"Frameworks","slug":"frameworks"}],"tags":[{"id":1167,"name":"Deep Dive","slug":"deep-dive"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":297,"name":"Kafka Topic","slug":"kafka-topic"},{"id":1465,"name":"Pivotal","slug":"pivotal"},{"id":1006,"name":"Spring","slug":"spring"}],"summary":"

For event streaming application developers, it is important to continuously update the streaming pipeline based on the need for changes in the individual applications in the pipeline. It is also […]

\\n"},{"id":21277,"title":"Reliable, Fast Access to On-Chain Data Insights","url":"https://www.confluent.io/blog/reliable-fast-access-to-on-chain-data-insights","imageUrl":"https://www.confluent.io/wp-content/uploads/Figure_1_Dataflow_in_Architecture.png","datePublished":"June 7, 2019","authors":[{"id":1195,"name":"Jendrik Poloczek","image":"https://www.confluent.io/wp-content/uploads/Jendrik_Poloczek-128x128.jpg","slug":"jendrik-poloczek"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1396,"name":"Bitcoin","slug":"bitcoin"},{"id":1397,"name":"Blockchain","slug":"blockchain"},{"id":1395,"name":"Ethereum","slug":"ethereum"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

At TokenAnalyst, we are building the core infrastructure to integrate, clean, and analyze blockchain data. Data on a blockchain is also known as on-chain data. We offer both historical and […]

\\n"},{"id":21247,"title":"Spring for Apache Kafka Deep Dive – Part 3: Apache Kafka and Spring Cloud Data Flow","url":"https://www.confluent.io/blog/spring-for-apache-kafka-deep-dive-part-3-apache-kafka-and-spring-cloud-data-flow","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kafkaspring-cloud-data-flow.png","datePublished":"May 30, 2019","authors":[{"id":1192,"name":"Ilayaperumal Gopinathan","image":"https://www.confluent.io/wp-content/uploads/Ilayaperumal_Gopinathan-128x128.png","slug":"ilayaperumal-gopinathan"}],"categories":[{"id":1171,"name":"Frameworks","slug":"frameworks"}],"tags":[{"id":1167,"name":"Deep Dive","slug":"deep-dive"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1465,"name":"Pivotal","slug":"pivotal"},{"id":1006,"name":"Spring","slug":"spring"}],"summary":"

Following part 1 and part 2 of the Spring for Apache Kafka Deep Dive blog series, here in part 3 we will discuss another project from the Spring team: Spring […]

\\n"},{"id":21166,"title":"Deploying Kafka Streams and KSQL with Gradle – Part 2: Managing KSQL Implementations","url":"https://www.confluent.io/blog/deploying-kafka-streams-and-ksql-with-gradle-part-2-managing-ksql-implementations","imageUrl":"https://www.confluent.io/wp-content/uploads/Figure1_v4_KSQL_Pipeline_Flow1000x666.png.png","datePublished":"May 29, 2019","authors":[{"id":1182,"name":"Stewart Bryson","image":"https://www.confluent.io/wp-content/uploads/Stewart_Bryson-128x128.png","slug":"stewart-bryson"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":1369,"name":"Gradle","slug":"gradle"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1186,"name":"Testing","slug":"testing"}],"summary":"

In part 1, we discussed an event streaming architecture that we implemented for a customer using Apache Kafka®, KSQL from Confluent, and Kafka Streams. Now in part 2, we’ll discuss […]

\\n"},{"id":21075,"title":"17 Ways to Mess Up Self-Managed Schema Registry","url":"https://www.confluent.io/blog/17-ways-to-mess-up-self-managed-schema-registry","imageUrl":"https://www.confluent.io/wp-content/uploads/Confluent_Schema_Registry-1.png","datePublished":"May 28, 2019","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

Part 1 of this blog series by Gwen Shapira explained the benefits of schemas, contracts between services, and compatibility checking for schema evolution. In particular, using Confluent Schema Registry makes […]

\\n"},{"id":21198,"title":"Kafka Summit London 2019 Session Videos","url":"https://www.confluent.io/blog/kafka-summit-london-2019-session-videos","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka_Summit_London_2019.png","datePublished":"May 23, 2019","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1166,"name":"Kafka Summit London","slug":"kafka-summit-london"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

Let us cut to the chase: Kafka Summit London session videos are available! If you were there, you know what a great time it was, and you know that you […]

\\n"},{"id":19637,"title":"Scylla and Confluent Integration for IoT Deployments","url":"https://www.confluent.io/blog/scylla-confluent-integration-for-iot-deployments","imageUrl":"https://www.confluent.io/wp-content/uploads/ConfluentScylla_1000x666.png","datePublished":"May 22, 2019","authors":[{"id":1189,"name":"Maheedhar Gunturu","image":"https://www.confluent.io/wp-content/uploads/Maheedhar_Gunturu-1-128x128.png","slug":"maheedhar-gunturu"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":81,"name":"Cassandra","slug":"cassandra"},{"id":72,"name":"Integration","slug":"integration"},{"id":1313,"name":"IoT","slug":"iot"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":906,"name":"MQTT","slug":"mqtt"},{"id":1312,"name":"Scylla","slug":"scylla"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

The internet is not just connecting people around the world. Through the Internet of Things (IoT), it is also connecting humans to the machines all around us and directly connecting […]

\\n"},{"id":21000,"title":"Schemas, Contracts, and Compatibility","url":"https://www.confluent.io/blog/schemas-contracts-compatibility","imageUrl":"https://www.confluent.io/wp-content/uploads/APIs_Schemas_Diagram_1000x666.png","datePublished":"May 21, 2019","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"}],"tags":[{"id":1321,"name":"API","slug":"api"},{"id":823,"name":"Avro","slug":"avro"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

When you build microservices architectures, one of the concerns you need to address is that of communication between the microservices. At first, you may think to use REST APIs—most programming […]

\\n"},{"id":20951,"title":"Deploying Kafka Streams and KSQL with Gradle – Part 1: Overview and Motivation","url":"https://www.confluent.io/blog/deploying-kafka-streams-and-ksql-with-gradle-part-1-overview-and-motivation","imageUrl":"https://www.confluent.io/wp-content/uploads/Figure4-1.png","datePublished":"May 15, 2019","authors":[{"id":1182,"name":"Stewart Bryson","image":"https://www.confluent.io/wp-content/uploads/Stewart_Bryson-128x128.png","slug":"stewart-bryson"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":221,"name":"ETL","slug":"etl"},{"id":1369,"name":"Gradle","slug":"gradle"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":115,"name":"Oracle","slug":"oracle"}],"summary":"

Red Pill Analytics was recently engaged by a Fortune 500 e-commerce and wholesale company that is transforming the way they manage inventory. Traditionally, this company has used only a few […]

\\n"},{"id":21026,"title":"Announcing the Confluent Community Catalyst Program","url":"https://www.confluent.io/blog/announcing-confluent-community-catalyst-program","imageUrl":"https://www.confluent.io/wp-content/uploads/Confluent_Community_Catalysts_Program.png","datePublished":"May 14, 2019","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"},{"id":1186,"name":"Ale Murray","image":"https://www.confluent.io/wp-content/uploads/Ale_Murray-1-128x128.png","slug":"ale-murray"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":null,"summary":"

A technology community is made up of people. Without people writing code, writing tutorials, welcoming newcomers, giving presentations, and answering questions, what we have is not a community, but just […]

\\n"},{"id":20962,"title":"Introducing a Cloud-Native Experience for Apache Kafka in Confluent Cloud","url":"https://www.confluent.io/blog/introducing-cloud-native-experience-for-apache-kafka-in-confluent-cloud","imageUrl":"https://www.confluent.io/wp-content/uploads/Confluent_Cloud_Billing.png","datePublished":"May 13, 2019","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":47,"name":"Connector","slug":"connector"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":314,"name":"S3","slug":"s3"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

In the last year, we’ve experienced enormous growth on Confluent Cloud, our fully managed Apache Kafka® service. Confluent Cloud now handles several GB/s of traffic—a 200-fold increase in just six […]

\\n"},{"id":20886,"title":"Journey to Event Driven – Part 4: Four Pillars of Event Streaming Microservices","url":"https://www.confluent.io/blog/journey-to-event-driven-part-4-four-pillars-of-event-streaming-microservices","imageUrl":"https://www.confluent.io/wp-content/uploads/Event_Streaming_Architecture_Pillars.png","datePublished":"May 9, 2019","authors":[{"id":1067,"name":"Neil Avery","image":"https://www.confluent.io/wp-content/uploads/neil_headshot2_small-128x128.png","slug":"neil-avery"}],"categories":[{"id":1220,"name":"Big Ideas","slug":"big-ideas"},{"id":286,"name":"Microservices","slug":"microservices"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":217,"name":"Deployment","slug":"deployment"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":1367,"name":"Event Streams","slug":"event-streams"},{"id":205,"name":"Events","slug":"events"},{"id":204,"name":"Systems","slug":"systems"}],"summary":"

So far in this series, we have recognized that by going back to first principles, we have a new foundation to work with. Event-first thinking enables us to build a […]

\\n"},{"id":20846,"title":"Dawn of Kafka DevOps: Managing Multi-Cluster Kafka Connect and KSQL with Confluent Control Center","url":"https://www.confluent.io/blog/dawn-of-kafka-devops-managing-multi-cluster-kafka-connect-and-ksql-with-confluent-control-center","imageUrl":"https://www.confluent.io/wp-content/uploads/Managing_Multi_Cluster_Kafka_Connect_KSQL_Control_Center.png","datePublished":"May 8, 2019","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

In anything but the smallest deployment of Apache Kafka®, there are often going to be multiple clusters of Kafka Connect and KSQL. Kafka Connect is used for building event streaming […]

\\n"},{"id":20303,"title":"Apache Kafka Data Access Semantics: Consumers and Membership","url":"https://www.confluent.io/blog/apache-kafka-data-access-semantics-consumers-and-membership","imageUrl":"https://www.confluent.io/wp-content/uploads/Architecture_Kafka_Consumer.png","datePublished":"May 7, 2019","authors":[{"id":1157,"name":"Stanislav Kozlovski","image":"https://www.confluent.io/wp-content/uploads/Stanislav_Kozlovski-4-128x128.png","slug":"stanislav-kozlovski"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":1321,"name":"API","slug":"api"},{"id":1344,"name":"Consumer","slug":"consumer"},{"id":88,"name":"KIP","slug":"kip"},{"id":93,"name":"Latency","slug":"latency"},{"id":54,"name":"Scalability","slug":"scalability"},{"id":209,"name":"Watermarks","slug":"watermarks"}],"summary":"

Every developer who uses Apache Kafka® has used a Kafka consumer at least once. Although it is the simplest way to subscribe to and access events from Kafka, behind the […]

\\n"},{"id":20801,"title":"Dawn of Kafka DevOps: Managing Kafka Clusters at Scale with Confluent Control Center","url":"https://www.confluent.io/blog/dawn-of-kafka-devops-managing-kafka-clusters-at-scale-with-confluent-control-center","imageUrl":"https://www.confluent.io/wp-content/uploads/Cluster_Partitions.png","datePublished":"May 2, 2019","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"},{"id":1141,"name":"Viktor Gamov","image":"https://www.confluent.io/wp-content/uploads/Viktor-Gamov-128x128.jpg","slug":"viktor-gamov"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":54,"name":"Scalability","slug":"scalability"}],"summary":"

When managing Apache Kafka® clusters at scale, tasks that are simple on small clusters turn into significant burdens. To be fair, a lot of things turn into significant burdens at […]

\\n"},{"id":20772,"title":"The PipelineDB Team Joins Confluent","url":"https://www.confluent.io/blog/pipelinedb-team-joins-confluent","imageUrl":"https://www.confluent.io/wp-content/uploads/Confluent_PipelineDB_Logos.png","datePublished":"May 1, 2019","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":58,"name":"Confluent News","slug":"confluent-news"}],"summary":"

Some years ago, when I was at LinkedIn, I didn’t really know what Apache Kafka® would become but had an inkling that the next generation of applications would not be […]

\\n"},{"id":20731,"title":"Optimizing Kafka Streams Applications","url":"https://www.confluent.io/blog/optimizing-kafka-streams-applications","imageUrl":"https://www.confluent.io/wp-content/uploads/Optimizing_Kafka_Streams_Apps.png","datePublished":"April 30, 2019","authors":[{"id":1053,"name":"Bill Bejeck","image":"https://www.confluent.io/wp-content/uploads/199238-128x128.jpeg","slug":"bill-bejeck"},{"id":10,"name":"Guozhang Wang","image":"https://www.confluent.io/wp-content/uploads/2016/08/Guozhang_ATO5C0221-025338-edited-150x150.jpg","slug":"guozhang-wang"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1321,"name":"API","slug":"api"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":216,"name":"Optimization","slug":"optimization"},{"id":1361,"name":"Processor Topology","slug":"processor-topology"},{"id":1360,"name":"Streams DSL","slug":"streams-dsl"}],"summary":"

With the release of Apache Kafka® 2.1.0, Kafka Streams introduced the processor topology optimization framework at the Kafka Streams DSL layer. This framework opens the door for various optimization techniques […]

\\n"},{"id":20644,"title":"Creating an IoT-Based, Data-Driven Food Value Chain with Confluent Cloud","url":"https://www.confluent.io/blog/creating-iot-based-data-driven-food-value-chain-with-confluent-cloud","imageUrl":"https://www.confluent.io/wp-content/uploads/BAADER_Confluent_Cloud.png","datePublished":"April 25, 2019","authors":[{"id":1070,"name":"Priya Shivakumar","image":"https://www.confluent.io/wp-content/uploads/Priya_Shivakumar-128x128.png","slug":"priya-shivakumar"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1347,"name":"BAADER","slug":"baader"},{"id":1348,"name":"Food Machinery","slug":"food-machinery"}],"summary":"

Industries are oftentimes more complex than we think. For example, the dinner you order at a restaurant or the ingredients you buy (or have delivered) to cook dinner at home […]

\\n"},{"id":20660,"title":"Testing Event-Driven Systems","url":"https://www.confluent.io/blog/testing-event-driven-systems","imageUrl":"https://www.confluent.io/wp-content/uploads/Test_Machine_Funding_Circle_500x333.png","datePublished":"April 24, 2019","authors":[{"id":1169,"name":"Andy Chambers","image":"https://www.confluent.io/wp-content/uploads/Andy_Chambers-128x128.png","slug":"andy-chambers"}],"categories":[{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":205,"name":"Events","slug":"events"},{"id":1351,"name":"Funding Circle","slug":"funding-circle"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":204,"name":"Systems","slug":"systems"},{"id":1186,"name":"Testing","slug":"testing"}],"summary":"

So you’ve convinced your friends and stakeholders about the benefits of event-driven systems. You have successfully piloted a few services backed by Apache Kafka®, and it is now supporting business-critical […]

\\n"},{"id":20598,"title":"12 Programming Languages Walk into a Kafka Cluster…","url":"https://www.confluent.io/blog/12-programming-languages-walk-into-a-kafka-cluster","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Programming_Languages.png","datePublished":"April 23, 2019","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":145,"name":"Clients","slug":"clients"},{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":114,"name":"Languages","slug":"languages"},{"id":1349,"name":"librdkafka","slug":"librdkafka"},{"id":1228,"name":"Programming","slug":"programming"},{"id":1168,"name":"Tech Tips","slug":"tech-tips"}],"summary":"

When it was first created, Apache Kafka® had a client API for just Scala and Java. Since then, the Kafka client API has been developed for many other programming languages […]

\\n"},{"id":20556,"title":"Reshaping Entire Industries with IoT and Confluent Cloud","url":"https://www.confluent.io/blog/reshaping-entire-industries-with-iot-and-confluent-cloud","imageUrl":"https://www.confluent.io/wp-content/uploads/BAADER_Confluent_Cloud_IoT.png","datePublished":"April 18, 2019","authors":[{"id":1070,"name":"Priya Shivakumar","image":"https://www.confluent.io/wp-content/uploads/Priya_Shivakumar-128x128.png","slug":"priya-shivakumar"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1347,"name":"BAADER","slug":"baader"},{"id":1348,"name":"Food Machinery","slug":"food-machinery"},{"id":1313,"name":"IoT","slug":"iot"}],"summary":"

While the current hype around the Internet of Things (IoT) focuses on smart “things”—smart homes, smart cars, smart watches—the first known IoT device was a simple Coca-Cola vending machine at […]

\\n"},{"id":20444,"title":"Dawn of Kafka DevOps: Managing and Evolving Schemas with Confluent Control Center","url":"https://www.confluent.io/blog/dawn-of-kafka-devops-managing-and-evolving-schemas-with-confluent-control-center","imageUrl":"https://www.confluent.io/wp-content/uploads/Control_Center_Schema_Registry.png","datePublished":"April 17, 2019","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":126,"name":"Feature","slug":"feature"},{"id":110,"name":"Release","slug":"release"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

As we announced in Introducing Confluent Platform 5.2, the latest release introduces many new features that enable you to build contextual event-driven applications. In particular, the management and monitoring capabilities […]

\\n"},{"id":20490,"title":"Kafka Summit New York 2019 Session Videos","url":"https://www.confluent.io/blog/kafka-summit-new-york-2019-session-videos","imageUrl":"https://www.confluent.io/wp-content/uploads/kafka-summit-nyc-2019-wrap.png","datePublished":"April 16, 2019","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1165,"name":"Kafka Summit NYC","slug":"kafka-summit-nyc"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

It seems like there’s a Kafka Summit every other month. Of course there’s not—it’s every fourth month—but hey, close enough. We now have the Kafka Summit New York in the […]

\\n"},{"id":20393,"title":"From Apache Kafka to Amazon S3: Exactly Once","url":"https://www.confluent.io/blog/apache-kafka-to-amazon-s3-exactly-once","imageUrl":"https://www.confluent.io/wp-content/uploads/S3_Exactly_Once_Success.png","datePublished":"April 11, 2019","authors":[{"id":1160,"name":"Konstantine Karantasis","image":"https://cdn.confluent.io/wp-content/uploads/konstantine_karantasis-1-128x128.png","slug":"konstantine-karantasis"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":79,"name":"AWS","slug":"aws"},{"id":47,"name":"Connector","slug":"connector"},{"id":1167,"name":"Deep Dive","slug":"deep-dive"},{"id":224,"name":"Exactly Once","slug":"exactly-once"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":314,"name":"S3","slug":"s3"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

At Confluent, we see many of our customers are on AWS, and we’ve noticed that Amazon S3 plays a particularly significant role in AWS-based architectures. Unless a use case actively […]

\\n"},{"id":20232,"title":"Monitoring Data Replication in Multi-Datacenter Apache Kafka Deployments","url":"https://www.confluent.io/blog/monitoring-data-replication-in-multi-datacenter-apache-kafka-deployments","imageUrl":"https://www.confluent.io/wp-content/uploads/Monitoring_Data_Replication_DC-1_DC-2.png","datePublished":"April 10, 2019","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":64,"name":"Monitoring","slug":"monitoring"},{"id":131,"name":"Multi-Datacenter Replication","slug":"multi-datacenter-replication"},{"id":73,"name":"Replication","slug":"replication"},{"id":905,"name":"Replicator","slug":"replicator"}],"summary":"

Enterprises run modern data systems and services across multiple cloud providers, private clouds and on-prem multi-datacenter deployments. Instead of having many point-to-point connections between sites, the Confluent Platform provides an […]

\\n"},{"id":20264,"title":"Announcing Confluent Cloud for Apache Kafka as a Native Service on Google Cloud Platform","url":"https://www.confluent.io/blog/announcing-confluent-cloud-for-apache-kafka-native-service-on-google-cloud-platform","imageUrl":"https://www.confluent.io/wp-content/uploads/Confluent_Cloud_GCP.png","datePublished":"April 9, 2019","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":1175,"name":"GCP","slug":"gcp"}],"summary":"

I’m excited to announce that we’re partnering with Google Cloud to make Confluent Cloud, our fully managed offering of Apache Kafka®, available as a native offering on Google Cloud Platform […]

\\n"},{"id":20175,"title":"Putting Events in Their Place with Dynamic Routing","url":"https://www.confluent.io/blog/putting-events-in-their-place-with-dynamic-routing","imageUrl":"https://www.confluent.io/wp-content/uploads/JDBC_Connector.png","datePublished":"April 4, 2019","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1341,"name":"Branching","slug":"branching"},{"id":1342,"name":"Dynamic Routing","slug":"dynamic-routing"},{"id":205,"name":"Events","slug":"events"},{"id":126,"name":"Feature","slug":"feature"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":88,"name":"KIP","slug":"kip"}],"summary":"

Event-driven architecture means just that: It’s all about the events. In a microservices architecture, events drive microservice actions. No event, no shoes, no service. In the most basic scenario, microservices […]

\\n"},{"id":20097,"title":"KSQL: What’s New in 5.2","url":"https://www.confluent.io/blog/ksql-whats-new-in-5-2","imageUrl":"https://www.confluent.io/wp-content/uploads/KSQL_Code.png","datePublished":"April 3, 2019","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1336,"name":"CASE","slug":"case"},{"id":751,"name":"Data Wrangling","slug":"data-wrangling"},{"id":126,"name":"Feature","slug":"feature"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":110,"name":"Release","slug":"release"}],"summary":"

KSQL enables you to write streaming applications expressed purely in SQL. There’s a ton of great new features in 5.2, many of which are a result of requests and support […]

\\n"},{"id":20120,"title":"Introducing Confluent Platform 5.2","url":"https://www.confluent.io/blog/introducing-confluent-platform-5-2","imageUrl":"https://www.confluent.io/wp-content/uploads/Confluent_Platform_5_2_Release.png","datePublished":"April 2, 2019","authors":[{"id":1152,"name":"Mau Barra","image":"https://cdn.confluent.io/wp-content/uploads/mau-barra-128x128.png","slug":"mau-barra"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":110,"name":"Release","slug":"release"}],"summary":"

Includes free forever Confluent Platform on a single Apache Kafka® broker, improved Control Center functionality at scale and hybrid cloud streaming We are very excited to announce the general availability […]

\\n"},{"id":20064,"title":"Consuming Messages Out of Apache Kafka in a Browser","url":"https://www.confluent.io/blog/consuming-messages-out-of-apache-kafka-in-a-browser","imageUrl":"https://www.confluent.io/wp-content/uploads/Consuming_Messages_Out_of_Kafka_in_a_Browser.png","datePublished":"March 28, 2019","authors":[{"id":1065,"name":"Joseph Rea","image":"https://www.confluent.io/wp-content/uploads/Joseph_Rea-2-128x128.png","slug":"joseph-rea"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":205,"name":"Events","slug":"events"},{"id":1636,"name":"Frontend","slug":"frontend"},{"id":1596,"name":"Web","slug":"web"}],"summary":"

Imagine a fire hose that spews out trillions of gallons of water every day, and part of your job is to withstand every drop coming out of it. This is […]

\\n"},{"id":19988,"title":"The Importance of Distributed Tracing for Apache Kafka Based Applications","url":"https://www.confluent.io/blog/importance-of-distributed-tracing-for-apache-kafka-based-applications","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka_Confluent_Zipkin.png","datePublished":"March 26, 2019","authors":[{"id":1147,"name":"Jorge Quilcate","image":"https://www.confluent.io/wp-content/uploads/Jorge_Quilcate-128x128.png","slug":"jorge-quilcate"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1321,"name":"API","slug":"api"},{"id":60,"name":"Application","slug":"application"},{"id":1332,"name":"Interceptor","slug":"interceptor"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1331,"name":"Tracing","slug":"tracing"},{"id":1329,"name":"Zipkin","slug":"zipkin"}],"summary":"

Apache Kafka® based applications stand out for their ability to decouple producers and consumers using an event log as an intermediate layer. One result of this is that producers and […]

\\n"},{"id":19913,"title":"Kafka Streams’ Take on Watermarks and Triggers","url":"https://www.confluent.io/blog/kafka-streams-take-on-watermarks-and-triggers","imageUrl":"https://www.confluent.io/wp-content/uploads/suppress-feature-500x333px.png","datePublished":"March 20, 2019","authors":[{"id":1143,"name":"John Roesler","image":"https://www.confluent.io/wp-content/uploads/John_Roesler-128x128.jpg","slug":"john-roesler"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":126,"name":"Feature","slug":"feature"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":88,"name":"KIP","slug":"kip"},{"id":209,"name":"Watermarks","slug":"watermarks"}],"summary":"

Back in May 2017, we laid out why we believe that Kafka Streams is better off without a concept of watermarks or triggers, and instead opts for a continuous refinement […]

\\n"},{"id":19884,"title":"SOA vs. EDA: Is Not Life Simply a Series of Events?","url":"https://www.confluent.io/blog/soa-vs-eda-is-not-life-simply-a-series-of-events","imageUrl":"https://www.confluent.io/wp-content/uploads/Messaging_Platforms_vs_Modern_Streaming_Platforms.png","datePublished":"March 19, 2019","authors":[{"id":1142,"name":"Jerry Mathew","image":"https://www.confluent.io/wp-content/uploads/Jerry_Mathew-128x128.png","slug":"jerry-mathew"}],"categories":[{"id":1220,"name":"Big Ideas","slug":"big-ideas"}],"tags":[{"id":1321,"name":"API","slug":"api"},{"id":70,"name":"Architecture","slug":"architecture"},{"id":205,"name":"Events","slug":"events"}],"summary":"

When should you use an API? When should you use an event? Most contemporary software architectures are some mix of these two approaches. I will attempt to articulate in layman’s […]

\\n"},{"id":19835,"title":"Kafka Connect Deep Dive – Error Handling and Dead Letter Queues","url":"https://www.confluent.io/blog/kafka-connect-deep-dive-error-handling-dead-letter-queues","imageUrl":"https://www.confluent.io/wp-content/uploads/DLQ_Source_Topic_Messages_Kafka_Connect_Sink_Messages-1.png","datePublished":"March 13, 2019","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":1317,"name":"Dead Letter Queue","slug":"dead-letter-queue"},{"id":1167,"name":"Deep Dive","slug":"deep-dive"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":74,"name":"Message Delivery","slug":"message-delivery"},{"id":935,"name":"Troubleshooting","slug":"troubleshooting"}],"summary":"

Kafka Connect is part of Apache Kafka® and is a powerful framework for building streaming pipelines between Kafka and other technologies. It can be used for streaming data into Kafka […]

\\n"},{"id":19749,"title":"Spring for Apache Kafka Deep Dive – Part 2: Apache Kafka and Spring Cloud Stream","url":"https://www.confluent.io/blog/spring-for-apache-kafka-deep-dive-part-2-apache-kafka-spring-cloud-stream","imageUrl":"https://www.confluent.io/wp-content/uploads/Spring_Cloud_Stream_Application-1.png","datePublished":"March 12, 2019","authors":[{"id":1131,"name":"Soby Chacko","image":"https://www.confluent.io/wp-content/uploads/Soby-Chacko-128x128.jpg","slug":"soby-chacko"}],"categories":[{"id":1171,"name":"Frameworks","slug":"frameworks"}],"tags":[{"id":1167,"name":"Deep Dive","slug":"deep-dive"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":72,"name":"Integration","slug":"integration"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1465,"name":"Pivotal","slug":"pivotal"},{"id":1006,"name":"Spring","slug":"spring"}],"summary":"

On the heels of part 1 in this blog series, Spring for Apache Kafka – Part 1: Error Handling, Message Conversion and Transaction Support, here in part 2 we’ll focus […]

\\n"},{"id":18980,"title":"CloudBank’s Journey from Mainframe to Streaming with Confluent Cloud","url":"https://www.confluent.io/blog/cloudbanks-journey-mainframe-streaming-confluent-cloud","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka-to-Cloud-1.png","datePublished":"March 4, 2019","authors":[{"id":1009,"name":"Ricardo Ferreira","image":"https://cdn.confluent.io/wp-content/uploads/Ricardo_Ferreira-128x128.png","slug":"ricardo-ferreira"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1194,"name":"Cloud Migration","slug":"cloud-migration"},{"id":1191,"name":"Confluent Cloud Enterprise","slug":"confluent-cloud-enterprise"},{"id":948,"name":"Financial Services","slug":"financial-services"},{"id":1192,"name":"Mainframe Offload","slug":"mainframe-offload"}],"summary":"

Cloud is one of the key drivers for innovation. Innovative companies experiment with data to come up with something useful. It usually starts with the opening of a firehose that […]

\\n"},{"id":19384,"title":"All About the Kafka Connect Neo4j Sink Plugin","url":"https://www.confluent.io/blog/kafka-connect-neo4j-sink-plugin","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka_Connect_Neo4j_Sink_Plugin-1.png","datePublished":"February 28, 2019","authors":[{"id":1045,"name":"Michael Hunger","image":"https://www.confluent.io/wp-content/uploads/Michael-Hunger-128x128.jpeg","slug":"michael-hunger"},{"id":1046,"name":"Andrea Santurbano","image":"https://www.confluent.io/wp-content/uploads/Andrea-Santurbano-1-128x128.png","slug":"andrea-santurbano"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":47,"name":"Connector","slug":"connector"},{"id":72,"name":"Integration","slug":"integration"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1308,"name":"Neo4j","slug":"neo4j"}],"summary":"

Only a little more than one month after the first release, we are happy to announce another milestone for our Kafka integration. Today, you can grab the Kafka Connect Neo4j […]

\\n"},{"id":19567,"title":"Journey to Event Driven – Part 3: The Affinity Between Events, Streams and Serverless","url":"https://www.confluent.io/blog/journey-to-event-driven-part-3-affinity-between-events-streams-serverless","imageUrl":"https://www.confluent.io/wp-content/uploads/Serverless.png","datePublished":"February 27, 2019","authors":[{"id":1067,"name":"Neil Avery","image":"https://www.confluent.io/wp-content/uploads/neil_headshot2_small-128x128.png","slug":"neil-avery"}],"categories":[{"id":1220,"name":"Big Ideas","slug":"big-ideas"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":205,"name":"Events","slug":"events"},{"id":1206,"name":"FaaS","slug":"faas"},{"id":1310,"name":"Serverless","slug":"serverless"},{"id":146,"name":"Streams","slug":"streams"}],"summary":"

With serverless being all the rage, it brings with it a tidal change of innovation. Given that it is at a relatively early stage, developers are still trying to grok […]

\\n"},{"id":19406,"title":"Spring for Apache Kafka Deep Dive – Part 1: Error Handling, Message Conversion and Transaction Support","url":"https://www.confluent.io/blog/spring-for-apache-kafka-deep-dive-part-1-error-handling-message-conversion-transaction-support","imageUrl":"https://www.confluent.io/wp-content/uploads/Spring-for-Apache-Kafka.png","datePublished":"February 26, 2019","authors":[{"id":1049,"name":"Gary P. Russell","image":"https://www.confluent.io/wp-content/uploads/Gary-Russell-128x128.jpeg","slug":"gary-p-russell"}],"categories":[{"id":1171,"name":"Frameworks","slug":"frameworks"}],"tags":[{"id":1167,"name":"Deep Dive","slug":"deep-dive"},{"id":126,"name":"Feature","slug":"feature"},{"id":1465,"name":"Pivotal","slug":"pivotal"},{"id":1006,"name":"Spring","slug":"spring"}],"summary":"

Following on from How to Work with Apache Kafka in Your Spring Boot Application, which shows how to get started with Spring Boot and Apache Kafka®, here we’ll dig a […]

\\n"},{"id":19366,"title":"Improving Stream Data Quality with Protobuf Schema Validation","url":"https://www.confluent.io/blog/improving-stream-data-quality-with-protobuf-schema-validation","imageUrl":"https://www.confluent.io/wp-content/uploads/Proto_Layout.png","datePublished":"February 22, 2019","authors":[{"id":1043,"name":"Tom Seddon","image":"https://www.confluent.io/wp-content/uploads/tom-seddon-128x128.jpg","slug":"tom-seddon"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":821,"name":"Data Serialization","slug":"data-serialization"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":1248,"name":"Protobuf","slug":"protobuf"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

The requirements for fast and reliable data pipelines are growing quickly at Deliveroo as the business continues to grow and innovate. We have delivered an event streaming platform which gives […]

\\n"},{"id":19442,"title":"Sysmon Security Event Processing in Real Time with KSQL and HELK","url":"https://www.confluent.io/blog/sysmon-security-event-processing-real-time-ksql-helk","imageUrl":"https://www.confluent.io/wp-content/uploads/KSQL_HELK.png","datePublished":"February 21, 2019","authors":[{"id":1079,"name":"Roberto Rodriguez","image":"https://www.confluent.io/wp-content/uploads/Roberto-Rodriguez-128x128.png","slug":"roberto-rodriguez"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1304,"name":"HELK","slug":"helk"},{"id":72,"name":"Integration","slug":"integration"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":50,"name":"Security","slug":"security"},{"id":1305,"name":"Sysmon","slug":"sysmon"},{"id":1306,"name":"Threat Hunting","slug":"threat-hunting"}],"summary":"

During a recent talk titled Hunters ATT&CKing with the Right Data, which I presented with my brother Jose Luis Rodriguez at ATT&CKcon, we talked about the importance of documenting and […]

\\n"},{"id":19469,"title":"Kafka Summit 2019: 3 Big Things!","url":"https://www.confluent.io/blog/kafka-summit-2019-3-big-things","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka_Summit_2019_3_Big_Things.png","datePublished":"February 20, 2019","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1214,"name":"Agenda","slug":"agenda"},{"id":280,"name":"Call for Papers","slug":"call-for-papers"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

How many Kafka Summits should there be in a year? Experts disagree. Some say there should be one giant event where everybody gathers at once. Some say there should be […]

\\n"},{"id":19291,"title":"Journey to Event Driven – Part 2: Programming Models for the Event-Driven Architecture","url":"https://www.confluent.io/blog/journey-to-event-driven-part-2-programming-models-event-driven-architecture","imageUrl":"https://www.confluent.io/wp-content/uploads/Paradigm_Shift_Event_Streaming_Architecture-1.png","datePublished":"February 13, 2019","authors":[{"id":1067,"name":"Neil Avery","image":"https://www.confluent.io/wp-content/uploads/neil_headshot2_small-128x128.png","slug":"neil-avery"}],"categories":[{"id":1220,"name":"Big Ideas","slug":"big-ideas"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":205,"name":"Events","slug":"events"},{"id":1228,"name":"Programming","slug":"programming"}],"summary":"

Part 1 of this series discussed why you need to embrace event-first thinking, while this article builds a rationale for different styles of event-driven architectures and compares and contrasts scaling, […]

\\n"},{"id":19246,"title":"Kafka Connect Deep Dive – JDBC Source Connector","url":"https://www.confluent.io/blog/kafka-connect-deep-dive-jdbc-source-connector","imageUrl":"https://www.confluent.io/wp-content/uploads/JDBC-connector-Kafka-Connect.png","datePublished":"February 12, 2019","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":47,"name":"Connector","slug":"connector"},{"id":1176,"name":"Database","slug":"database"},{"id":1167,"name":"Deep Dive","slug":"deep-dive"},{"id":232,"name":"JDBC","slug":"jdbc"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":274,"name":"RDBMS","slug":"rdbms"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

One of the most common integrations that people want to do with Apache Kafka® is getting data in from a database. That is because relational databases are a rich source […]

\\n"},{"id":19264,"title":"Machine Learning with Python, Jupyter, KSQL and TensorFlow","url":"https://www.confluent.io/blog/machine-learning-with-python-jupyter-ksql-tensorflow","imageUrl":"https://www.confluent.io/wp-content/uploads/Jupyter_Notebook.png","datePublished":"February 6, 2019","authors":[{"id":1066,"name":"Kai Waehner","image":"https://www.confluent.io/wp-content/uploads/Kai_Waehner_2017-e1505825154505-128x128.jpg","slug":"kai-waehner"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1226,"name":"Data Scientist","slug":"data-scientist"},{"id":1224,"name":"Jupyter","slug":"jupyter"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":271,"name":"Machine Learning","slug":"machine-learning"},{"id":138,"name":"Python","slug":"python"},{"id":1223,"name":"TensorFlow","slug":"tensorflow"}],"summary":"

Building a scalable, reliable and performant machine learning (ML) infrastructure is not easy. It takes much more effort than just building an analytic model with Python and your favorite machine […]

\\n"},{"id":19195,"title":"A Beginner’s Perspective on Kafka Streams: Building Real-Time Walkthrough Detection","url":"https://www.confluent.io/blog/beginners-perspective-kafka-streams-building-real-time-walkthrough-detection","imageUrl":"https://www.confluent.io/wp-content/uploads/WalkthroughsGenerator-1.png","datePublished":"February 4, 2019","authors":[{"id":1022,"name":"Rishi Dhanaraj","image":"https://www.confluent.io/wp-content/uploads/Rishi-Dhanaraj-128x128.jpeg","slug":"rishi-dhanaraj"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1211,"name":"Zenreach","slug":"zenreach"}],"summary":"

Here at Zenreach, we create products to enable brick-and-mortar merchants to better understand, engage and serve their customers. Many of these products rely on our capability to quickly and reliably […]

\\n"},{"id":19157,"title":"Journey to Event Driven – Part 1: Why Event-First Thinking Changes Everything","url":"https://www.confluent.io/blog/journey-to-event-driven-part-1-why-event-first-thinking-changes-everything","imageUrl":"https://www.confluent.io/wp-content/uploads/Why_Event_First_Thinking_Changes_Everything.png","datePublished":"January 31, 2019","authors":[{"id":1067,"name":"Neil Avery","image":"https://www.confluent.io/wp-content/uploads/neil_headshot2_small-128x128.png","slug":"neil-avery"}],"categories":[{"id":1220,"name":"Big Ideas","slug":"big-ideas"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":1207,"name":"CloudEvent","slug":"cloudevent"},{"id":205,"name":"Events","slug":"events"},{"id":1206,"name":"FaaS","slug":"faas"}],"summary":"

The world is changing. New problems need to be solved. Companies now run global businesses that span the globe and hop between clouds, breaking down silos to create seamless applications […]

\\n"},{"id":19220,"title":"The Program Committee Has Chosen: Kafka Summit NYC 2019 Agenda","url":"https://www.confluent.io/blog/program-committee-has-chosen-kafka-summit-nyc-2019-agenda","imageUrl":"https://www.confluent.io/wp-content/uploads/kafka-summit-nyc-2019-500x333px-3.png","datePublished":"January 29, 2019","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1214,"name":"Agenda","slug":"agenda"},{"id":1165,"name":"Kafka Summit NYC","slug":"kafka-summit-nyc"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

The East Coast called. They told us they wanted another New York Kafka Summit. So there was really only one thing we could do: We’re heading back to New York […]

\\n"},{"id":19004,"title":"Using Apache Kafka Command Line Tools with Confluent Cloud","url":"https://www.confluent.io/blog/using-apache-kafka-command-line-tools-confluent-cloud","imageUrl":"https://www.confluent.io/wp-content/uploads/Confluent-Cloud-Professional-UI.png","datePublished":"January 25, 2019","authors":[{"id":1009,"name":"Ricardo Ferreira","image":"https://cdn.confluent.io/wp-content/uploads/Ricardo_Ferreira-128x128.png","slug":"ricardo-ferreira"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":1196,"name":"Command Line Tools","slug":"command-line-tools"},{"id":1195,"name":"Tools","slug":"tools"},{"id":136,"name":"Tutorial","slug":"tutorial"},{"id":1197,"name":"VPC Peering","slug":"vpc-peering"}],"summary":"

If you have been using Apache Kafka® for a while, it is likely that you have developed a degree of confidence in the command line tools that come with it. […]

\\n"},{"id":19089,"title":"Confluent Raises a $125M Series D Funding Round","url":"https://www.confluent.io/blog/confluent-raises-a-125m-series-d-funding-round","imageUrl":"https://www.confluent.io/wp-content/uploads/confluent-social-post.png","datePublished":"January 23, 2019","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":149,"name":"Funding","slug":"funding"}],"summary":"

I’m excited to announce that Confluent has raised a $125M Series D funding round, led by Sequoia, with participation from our other major investors, Index Ventures and Benchmark. This builds […]

\\n"},{"id":18905,"title":"Getting Your Feet Wet with Stream Processing – Part 2: Testing Your Streaming Application","url":"https://www.confluent.io/blog/stream-processing-part-2-testing-your-streaming-application","imageUrl":"https://www.confluent.io/wp-content/uploads/streaming-applications.png","datePublished":"January 15, 2019","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":823,"name":"Avro","slug":"avro"},{"id":72,"name":"Integration","slug":"integration"},{"id":131,"name":"Multi-Datacenter Replication","slug":"multi-datacenter-replication"},{"id":48,"name":"Schema Registry","slug":"schema-registry"},{"id":1186,"name":"Testing","slug":"testing"}],"summary":"

Part 1 of this blog series introduced a self-paced tutorial for developers who are just getting started with stream processing. The hands-on tutorial introduced the basics of the Kafka Streams […]

\\n"},{"id":18833,"title":"Getting Your Feet Wet with Stream Processing – Part 1: Tutorial for Developing Streaming Applications","url":"https://www.confluent.io/blog/stream-processing-part-1-tutorial-developing-streaming-applications","imageUrl":"https://www.confluent.io/wp-content/uploads/Tutorial-for-developers.png","datePublished":"January 9, 2019","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":205,"name":"Events","slug":"events"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":297,"name":"Kafka Topic","slug":"kafka-topic"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

Stream processing is a data processing technology used to collect, store, and manage continuous streams of data as it’s produced or received. Stream processing (also known as event streaming or […]

\\n"},{"id":18769,"title":"Easy Ways to Generate Test Data in Kafka","url":"https://www.confluent.io/blog/easy-ways-generate-test-data-kafka","imageUrl":"https://www.confluent.io/wp-content/uploads/Test_Data.png","datePublished":"January 3, 2019","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":47,"name":"Connector","slug":"connector"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1186,"name":"Testing","slug":"testing"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

If you’ve already started designing your real-time streaming applications, you may be ready to test against a real Apache Kafka® cluster. To make it easy to get started with your […]

\\n"},{"id":18647,"title":"A Developer’s Guide to the Confluent Community License","url":"https://www.confluent.io/blog/developers-guide-confluent-community-license","imageUrl":"https://www.confluent.io/wp-content/uploads/Relicensing.png","datePublished":"December 20, 2018","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":1172,"name":"Confluent Community Components","slug":"confluent-community-components"}],"summary":"

Last week we announced that we changed the license of some of the components of Confluent Platform from Apache 2.0 to the Confluent Community License. We are really grateful to […]

\\n"},{"id":18524,"title":"12 Days of Tech Tips","url":"https://www.confluent.io/blog/12-days-of-tech-tips","imageUrl":"https://www.confluent.io/wp-content/uploads/sketches-01-e1544744157478.jpg","datePublished":"December 18, 2018","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":1168,"name":"Tech Tips","slug":"tech-tips"}],"summary":"

For the first 12 days of December, Confluent shared a daily tech tip related to managing Apache Kafka® in the cloud. These tips make it easier for you to get […]

\\n"},{"id":18551,"title":"License Changes for Confluent Platform","url":"https://www.confluent.io/blog/license-changes-confluent-platform","imageUrl":"https://www.confluent.io/wp-content/uploads/Relicensing.png","datePublished":"December 14, 2018","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":1172,"name":"Confluent Community Components","slug":"confluent-community-components"},{"id":58,"name":"Confluent News","slug":"confluent-news"}],"summary":"

We’re changing the license for some of the components of Confluent Platform from Apache 2.0 to the Confluent Community License. This new license allows you to freely download, modify, and […]

\\n"},{"id":18373,"title":"Deep Dive into KSQL Deployment Options","url":"https://www.confluent.io/blog/deep-dive-ksql-deployment-options","imageUrl":"https://www.confluent.io/wp-content/uploads/how-to-deploy-ksql-500x333px-2.png","datePublished":"December 11, 2018","authors":[{"id":1060,"name":"Hojjat Jafarpour","image":"https://www.confluent.io/wp-content/uploads/Hojjat_Jafarpour-e1513805759108-128x128.png","slug":"hojjat-jafarpour"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1167,"name":"Deep Dive","slug":"deep-dive"},{"id":217,"name":"Deployment","slug":"deployment"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

The phrase time value of data has been used to demonstrate that the value of captured data diminishes by time. This means that the sooner the data is captured, analyzed […]

\\n"},{"id":18364,"title":"Kafka Summit 2019 Call for Papers, Tracks and Office Hours","url":"https://www.confluent.io/blog/kafka-summit-2019-cfps-tracks-office-hours","imageUrl":"https://www.confluent.io/wp-content/uploads/kafka-summit-2019-nyclondon-cfp_500x333px.png","datePublished":"December 4, 2018","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":280,"name":"Call for Papers","slug":"call-for-papers"},{"id":1166,"name":"Kafka Summit London","slug":"kafka-summit-london"},{"id":1165,"name":"Kafka Summit NYC","slug":"kafka-summit-nyc"}],"summary":"

It might seem a little strange, being the holiday season and still technically 2018, for me to be talking 2019 Kafka Summit events. But as you may already know, the […]

\\n"},{"id":18222,"title":"Kafka Streams and KSQL with Minimum Privileges","url":"https://www.confluent.io/blog/kafka-streams-ksql-minimum-privileges","imageUrl":"https://www.confluent.io/wp-content/uploads/stream-processing-team-minimum-privileges-500x333px.png","datePublished":"December 3, 2018","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1158,"name":"Privileges","slug":"privileges"},{"id":50,"name":"Security","slug":"security"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

The principle of least privilege dictates that each user and application will have the minimal privileges required to do their job. When applied to Apache Kafka® and its Streams API, […]

\\n"},{"id":18164,"title":"3 Ways to Prepare for Disaster Recovery in Multi-Datacenter Apache Kafka Deployments","url":"https://www.confluent.io/blog/3-ways-prepare-disaster-recovery-multi-datacenter-apache-kafka-deployments","imageUrl":"https://www.confluent.io/wp-content/uploads/Design-multi-datacenter-solution.png","datePublished":"November 26, 2018","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":269,"name":"Disaster Recovery","slug":"disaster-recovery"},{"id":131,"name":"Multi-Datacenter Replication","slug":"multi-datacenter-replication"},{"id":905,"name":"Replicator","slug":"replicator"},{"id":1156,"name":"White Paper","slug":"white-paper"}],"summary":"

Imagine: Disaster strikes—catastrophic hardware failure, software failure, power outage, denial of service attack or some other event causes one datacenter with an Apache Kafka® cluster to completely fail. Yet Kafka […]

\\n"},{"id":18143,"title":"Streaming in the Clouds: Where to Start","url":"https://www.confluent.io/blog/streaming-in-the-clouds-where-to-start","imageUrl":"https://www.confluent.io/wp-content/uploads/Streaming-in-the-Clouds-Where-to-Start.png","datePublished":"November 20, 2018","authors":[{"id":1070,"name":"Priya Shivakumar","image":"https://www.confluent.io/wp-content/uploads/Priya_Shivakumar-128x128.png","slug":"priya-shivakumar"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":1152,"name":"Cloud First","slug":"cloud-first"},{"id":1153,"name":"Hybrid Cloud","slug":"hybrid-cloud"},{"id":1154,"name":"Multi-Cloud","slug":"multi-cloud"},{"id":905,"name":"Replicator","slug":"replicator"}],"summary":"

Only a few years ago, when someone said they had a “cloud-first strategy,” you knew exactly who their new preferred vendor was. These days, however, the story is a lot […]

\\n"},{"id":18064,"title":"Using Apache Kafka to Drive Cutting-Edge Machine Learning","url":"https://www.confluent.io/blog/using-apache-kafka-drive-cutting-edge-machine-learning","imageUrl":"https://www.confluent.io/wp-content/uploads/Using-Apache-Kafka-to-Drive-Cutting-Edge-Machine-Learning.png","datePublished":"November 19, 2018","authors":[{"id":1066,"name":"Kai Waehner","image":"https://www.confluent.io/wp-content/uploads/Kai_Waehner_2017-e1505825154505-128x128.jpg","slug":"kai-waehner"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":130,"name":"Ecosystem","slug":"ecosystem"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":271,"name":"Machine Learning","slug":"machine-learning"},{"id":1018,"name":"Model Deployment","slug":"model-deployment"}],"summary":"

Machine learning and the Apache Kafka® ecosystem are a great combination for training and deploying analytic models at scale. I had previously discussed potential use cases and architectures for machine […]

\\n"},{"id":18043,"title":"Kafka Connect Deep Dive – Converters and Serialization Explained","url":"https://www.confluent.io/blog/kafka-connect-deep-dive-converters-serialization-explained","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka-Connect-Deep-Dive-–-Converters-and-Serialization-Explained-1.png","datePublished":"November 14, 2018","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":47,"name":"Connector","slug":"connector"},{"id":821,"name":"Data Serialization","slug":"data-serialization"},{"id":824,"name":"JSON","slug":"json"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":935,"name":"Troubleshooting","slug":"troubleshooting"}],"summary":"

Kafka Connect is part of Apache Kafka®, providing streaming integration between data stores and Kafka. For data engineers, it just requires JSON configuration files to use. There are connectors for […]

\\n"},{"id":17855,"title":"Apache Kafka Supports 200K Partitions Per Cluster","url":"https://www.confluent.io/blog/apache-kafka-supports-200k-partitions-per-cluster","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka-broker-controller-controlled-shutdown.png","datePublished":"November 8, 2018","authors":[{"id":5,"name":"Jun Rao","image":"https://www.confluent.io/wp-content/uploads/2016/08/jun-150x150.jpg","slug":"jun-rao"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":1014,"name":"Controller","slug":"controller"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":1015,"name":"Partitions","slug":"partitions"},{"id":82,"name":"ZooKeeper","slug":"zookeeper"}],"summary":"

In Kafka, a topic can have multiple partitions to which records are distributed. Partitions are the unit of parallelism. In general, more partitions leads to higher throughput. However, there are […]

\\n"},{"id":17741,"title":"How to Work with Apache Kafka in Your Spring Boot Application","url":"https://www.confluent.io/blog/apache-kafka-spring-boot-application","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kafkaspring-boot.png","datePublished":"November 1, 2018","authors":[{"id":1179,"name":"Igor Kosandyak","image":"https://www.confluent.io/wp-content/uploads/Igor-Kosandyak-128x128.png","slug":"igor-kosandyak"}],"categories":[{"id":1171,"name":"Frameworks","slug":"frameworks"}],"tags":[{"id":74,"name":"Message Delivery","slug":"message-delivery"},{"id":1006,"name":"Spring","slug":"spring"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

Choosing the right messaging system during your architectural planning is always a challenge, yet one of the most important considerations to nail. As a developer, I write applications daily that […]

\\n"},{"id":17324,"title":"ATM Fraud Detection with Apache Kafka and KSQL","url":"https://www.confluent.io/blog/atm-fraud-detection-apache-kafka-ksql","imageUrl":"https://www.confluent.io/wp-content/uploads/ATM-Fraud-Detection-with-Apache-Kafka-and-KSQL-3.png","datePublished":"October 29, 2018","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":782,"name":"Anomaly Detection","slug":"anomaly-detection"},{"id":236,"name":"Elasticsearch","slug":"elasticsearch"},{"id":1013,"name":"Fraud Detection","slug":"fraud-detection"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

Fraud detection is a topic applicable to many industries, including banking and financial sectors, insurance, government agencies and law enforcement and more. Fraud attempts have seen a drastic increase in […]

\\n"},{"id":17664,"title":"That’s a Wrap! Kafka Summit San Francisco 2018 Roundup","url":"https://www.confluent.io/blog/kafka-summit-san-francisco-2018-roundup","imageUrl":"https://www.confluent.io/wp-content/uploads/kafka-summit-san-francisco-2018-roundup-500x333px.png","datePublished":"October 25, 2018","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

Were you there last week? For as big as that event felt, it’s hard to believe it’s only the third annual Kafka Summit San Francisco. But the view was beautiful […]

\\n"},{"id":17470,"title":"Apache Kafka on Kubernetes – Could You? Should You?","url":"https://www.confluent.io/blog/apache-kafka-kubernetes-could-you-should-you","imageUrl":"https://www.confluent.io/wp-content/uploads/running-kafka-on-kubernetes-500x333px.jpg","datePublished":"October 24, 2018","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":999,"name":"Confluent Operator","slug":"confluent-operator"}],"tags":[{"id":1621,"name":"DevOps Helm Charts","slug":"devops-helm-charts"},{"id":430,"name":"Kubernetes","slug":"kubernetes"}],"summary":"

When Confluent launched the Helm Charts and early access program for Confluent Operator, we published a blog post explaining how to easily run Apache Kafka® on Kubernetes. Since then, we’ve […]

\\n"},{"id":17345,"title":"Noise Mapping with KSQL, a Raspberry Pi and a Software-Defined Radio","url":"https://www.confluent.io/blog/noise-mapping-ksql-raspberry-pi-software-defined-radio","imageUrl":"https://www.confluent.io/wp-content/uploads/noise-mapping-with-ksql-500x333px-01.png","datePublished":"October 18, 2018","authors":[{"id":1075,"name":"Simon Aubury","image":"https://www.confluent.io/wp-content/uploads/image5-128x128.jpg","slug":"simon-aubury"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":297,"name":"Kafka Topic","slug":"kafka-topic"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":146,"name":"Streams","slug":"streams"}],"summary":"

Our new cat, Snowy, is waking early. She is startled by the noise of jets flying over our house. Can I determine which plane is upsetting her by utilizing Apache […]

\\n"},{"id":17265,"title":"Event Driven 2.0","url":"https://www.confluent.io/blog/event-driven-2-0","imageUrl":"https://www.confluent.io/wp-content/uploads/event-driven-2.0-500x333px-1.jpg","datePublished":"October 15, 2018","authors":[{"id":1027,"name":"Ben Stopford","image":"https://www.confluent.io/wp-content/uploads/ben-1-128x128.png","slug":"ben-stopford"}],"categories":[{"id":1220,"name":"Big Ideas","slug":"big-ideas"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":205,"name":"Events","slug":"events"}],"summary":"

In the future, data will be as automated and self-service as infrastructure is today. You’ll open a console that lists the data available in your company; define the pieces you […]

\\n"},{"id":17309,"title":"KSQL Recipes Available Now in the Stream Processing Cookbook","url":"https://www.confluent.io/blog/ksql-recipes-available-now-stream-processing-cookbook","imageUrl":"https://www.confluent.io/wp-content/uploads/Stream-Processing-Cookbook-Featuring-KSQL-Recipes.jpg","datePublished":"October 11, 2018","authors":[{"id":1063,"name":"Joanna Schloss","image":"https://www.confluent.io/wp-content/uploads/Joanna_Schloss-128x128.jpg","slug":"joanna-schloss"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

For those of you who are hungry for more stream processing, we are pleased to share the recent release of Confluent’s Stream Processing Cookbook, which features short and tasteful KSQL […]

\\n"},{"id":17161,"title":"Enhance Security with Apache Kafka 2.0 and Confluent Platform 5.0","url":"https://www.confluent.io/blog/enhance-security-apache-kafka-2-0-confluent-platform-5-0","imageUrl":"https://www.confluent.io/wp-content/uploads/enhance-security-with-apache-kafka-500x333px.jpg","datePublished":"October 10, 2018","authors":[{"id":684,"name":"Vahid Fereydouny","image":"https://www.confluent.io/wp-content/uploads/Vahid-Fereydouny-128x128.jpeg","slug":"vahid"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":50,"name":"Security","slug":"security"}],"summary":"

As customers across verticals like finance, healthcare, state and local government and education adopt Confluent Platform for mission-critical data, security becomes more and more important. In the latest release of […]

\\n"},{"id":17174,"title":"Troubleshooting KSQL – Part 2: What’s Happening Under the Covers?","url":"https://www.confluent.io/blog/troubleshooting-ksql-part-2","imageUrl":"https://www.confluent.io/wp-content/uploads/troubleshooting_ksql_part2_500x333px.jpg","datePublished":"October 4, 2018","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":977,"name":"JMX","slug":"jmx"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":935,"name":"Troubleshooting","slug":"troubleshooting"}],"summary":"

Previously in part 1, we saw how to troubleshoot one of the most common issues that people have with KSQL—queries that don’t return data even though data is expected. Here, […]

\\n"},{"id":17061,"title":"Is Event Streaming the New Big Thing for Finance?","url":"https://www.confluent.io/blog/event-streaming-new-big-thing-finance","imageUrl":"https://www.confluent.io/wp-content/uploads/event-streaming-the-new-big-thing-for-finance-500x333px.png","datePublished":"October 2, 2018","authors":[{"id":1027,"name":"Ben Stopford","image":"https://www.confluent.io/wp-content/uploads/ben-1-128x128.png","slug":"ben-stopford"}],"categories":[{"id":1220,"name":"Big Ideas","slug":"big-ideas"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":205,"name":"Events","slug":"events"},{"id":948,"name":"Financial Services","slug":"financial-services"}],"summary":"

While Silicon Valley is always awash with new technology buzzwords, one that has become increasingly dominant in recent years is stream processing: a type of software designed to transport, process […]

\\n"},{"id":16980,"title":"Troubleshooting KSQL – Part 1: Why Isn’t My KSQL Query Returning Data?","url":"https://www.confluent.io/blog/troubleshooting-ksql-part-1","imageUrl":"https://www.confluent.io/wp-content/uploads/troubleshooting_ksql_part1_600x400px.jpg","datePublished":"September 27, 2018","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":823,"name":"Avro","slug":"avro"},{"id":824,"name":"JSON","slug":"json"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":935,"name":"Troubleshooting","slug":"troubleshooting"}],"summary":"

KSQL is the powerful SQL streaming engine for Apache Kafka®. Using SQL statements, you can build powerful stream processing applications. In this article, we’ll see how to troubleshoot some of […]

\\n"},{"id":16885,"title":"Real-Time Presence Detection at Scale with Apache Kafka on AWS","url":"https://www.confluent.io/blog/real-time-presence-detection-apache-kafka-aws","imageUrl":"https://www.confluent.io/wp-content/uploads/real-time-presence-detection-500x333px.png","datePublished":"September 25, 2018","authors":[{"id":839,"name":"Eugen Feller","image":"https://www.confluent.io/wp-content/uploads/Eugen-Feller-128x128.png","slug":"eugen-feller"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":79,"name":"AWS","slug":"aws"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1211,"name":"Zenreach","slug":"zenreach"}],"summary":"

Zenreach provides a platform that leverages Wi-Fi and enables merchants to better understand and engage with their customers. Most of our product features depend on one basic building block: real-time […]

\\n"},{"id":16780,"title":"The State of Streams – A European Adventure","url":"https://www.confluent.io/blog/state-streams-european-adventure","imageUrl":"https://www.confluent.io/wp-content/uploads/Confluent-Streaming-Event.png","datePublished":"September 20, 2018","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":69,"name":"Conferences","slug":"conferences"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

I have good news to share! For the first time, this October Confluent will bring to Europe two events dedicated to streaming technology: Confluent Streaming Event in Munich and Confluent […]

\\n"},{"id":16248,"title":"The Changing Face of ETL","url":"https://www.confluent.io/blog/changing-face-etl","imageUrl":"https://www.confluent.io/wp-content/uploads/The-Changing-Face-of-ETL-1.png","datePublished":"September 17, 2018","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":1469,"name":"Pipelines","slug":"pipelines"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":221,"name":"ETL","slug":"etl"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

The way in which we handle data and build applications is changing. Technology and development practices have evolved to a point where building systems in isolated silos is somewhat impractical, […]

\\n"},{"id":16695,"title":"Hands on: Building a Streaming Application with KSQL","url":"https://www.confluent.io/blog/building-streaming-application-ksql","imageUrl":"https://www.confluent.io/wp-content/uploads/Hands-on-Building-a-Streaming-Application-with-KSQL-1.png","datePublished":"September 13, 2018","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

In this blog post, we show you how to build a demo streaming application with KSQL, the streaming SQL engine for Apache Kafka®. This application continuously computes, in real time, […]

\\n"},{"id":16660,"title":"Streams and Tables: Two Sides of the Same Coin","url":"https://www.confluent.io/blog/streams-tables-two-sides-same-coin","imageUrl":"https://www.confluent.io/wp-content/uploads/streams-and-tables-500x333px.png","datePublished":"September 11, 2018","authors":[{"id":25,"name":"Matthias J. Sax","image":"https://www.confluent.io/wp-content/uploads/slack-128x128.jpg","slug":"matthias-j-sax"},{"id":10,"name":"Guozhang Wang","image":"https://www.confluent.io/wp-content/uploads/2016/08/Guozhang_ATO5C0221-025338-edited-150x150.jpg","slug":"guozhang-wang"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":69,"name":"Conferences","slug":"conferences"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":146,"name":"Streams","slug":"streams"},{"id":1227,"name":"Tables","slug":"tables"},{"id":1156,"name":"White Paper","slug":"white-paper"}],"summary":"

We are happy to announce that our paper Streams and Tables: Two Sides of the Same Coin is published and available for free download. The paper was presented at the […]

\\n"},{"id":16329,"title":"Data Wrangling with Apache Kafka and KSQL","url":"https://www.confluent.io/blog/data-wrangling-apache-kafka-ksql","imageUrl":"https://www.confluent.io/wp-content/uploads/Unifying-multiple-streams-in-KSQL-similar-to-UNION-in-RDBMS.png","datePublished":"September 7, 2018","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":751,"name":"Data Wrangling","slug":"data-wrangling"},{"id":221,"name":"ETL","slug":"etl"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

KSQL, the SQL streaming engine for Apache Kafka®, puts the power of stream processing into the hands of anyone who knows SQL. It’s fun to use for exploring data in […]

\\n"},{"id":16229,"title":"Putting the Power of Apache Kafka into the Hands of Data Scientists","url":"https://www.confluent.io/blog/putting-power-apache-kafka-hands-data-scientists","imageUrl":"https://www.confluent.io/wp-content/uploads/The-Data-Highway-complete-architecture-diagram.png","datePublished":"September 6, 2018","authors":[{"id":783,"name":"Liz Bennett","image":"https://www.confluent.io/wp-content/uploads/Liz-Bennett--128x128.png","slug":"liz-bennett"}],"categories":[{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":205,"name":"Events","slug":"events"},{"id":72,"name":"Integration","slug":"integration"},{"id":927,"name":"Self-Service","slug":"self-service"}],"summary":"

At Stitch Fix, we blend the art of expert personal styling with the science of algorithms to deliver highly personalized services that cater to the tastes, lifestyles and budgets of […]

\\n"},{"id":16023,"title":"How to Build a UDF and/or UDAF in KSQL 5.0","url":"https://www.confluent.io/blog/build-udf-udaf-ksql-5-0","imageUrl":"https://www.confluent.io/wp-content/uploads/How-to-Build-a-UDF-andor-UDAF-in-KSQL-5.0.png","datePublished":"August 17, 2018","authors":[{"id":1066,"name":"Kai Waehner","image":"https://www.confluent.io/wp-content/uploads/Kai_Waehner_2017-e1505825154505-128x128.jpg","slug":"kai-waehner"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":136,"name":"Tutorial","slug":"tutorial"},{"id":926,"name":"UDAF","slug":"udaf"},{"id":925,"name":"UDF","slug":"udf"}],"summary":"

KSQL is the streaming SQL engine that enables real-time data processing against Apache Kafka®. KSQL makes it easy to read, write and process streaming data in real time, at scale, […]

\\n"},{"id":15932,"title":"Kafka Streams in Action","url":"https://www.confluent.io/blog/kafka-streams-action","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka-Streams-in-Action.png","datePublished":"August 10, 2018","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1174,"name":"Book","slug":"book"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

Confluent’s own Bill Bejeck has recently completed Kafka Streams in Action, a book about building real-time applications and microservices with the Kafka Streams API. The book is scheduled to be available […]

\\n"},{"id":15787,"title":"Getting Started with Apache Kafka and Kubernetes","url":"https://www.confluent.io/blog/getting-started-apache-kafka-kubernetes/","imageUrl":"https://www.confluent.io/wp-content/uploads/Screen-Shot-2018-08-06-at-4.19.12-PM.png","datePublished":"August 8, 2018","authors":[{"id":1031,"name":"Rohit Bakhshi","image":"https://www.confluent.io/wp-content/uploads/rohit-128x128.jpg","slug":"rohit-bakhshi"}],"categories":[{"id":999,"name":"Confluent Operator","slug":"confluent-operator"},{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":1601,"name":"DevOps","slug":"devops"},{"id":1000,"name":"Helm Charts","slug":"helm-charts"},{"id":430,"name":"Kubernetes","slug":"kubernetes"},{"id":1156,"name":"White Paper","slug":"white-paper"}],"summary":"

Enabling everyone to run Apache Kafka® on Kubernetes is an important part of our mission to put a streaming platform at the heart of every company. This is why we look […]

\\n"},{"id":15708,"title":"Decoupling Systems with Apache Kafka, Schema Registry and Avro","url":"https://www.confluent.io/blog/decoupling-systems-with-apache-kafka-schema-registry-and-avro/","imageUrl":"https://www.confluent.io/wp-content/uploads/Schema_Registry.jpg","datePublished":"August 3, 2018","authors":[{"id":70,"name":"Matt Howlett","image":"https://www.confluent.io/wp-content/uploads/Matt_ATO5C0154-128x128.jpg","slug":"matthowlett"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":823,"name":"Avro","slug":"avro"},{"id":142,"name":"Dotnet","slug":"dotnet"},{"id":48,"name":"Schema Registry","slug":"schema-registry"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

As your Apache Kafka® deployment starts to grow, the benefits of using a schema registry quickly become compelling. Confluent Schema Registry, which is included in the Confluent Platform, enables you […]

\\n"},{"id":15687,"title":"Welcoming the Distributed Masonry Team to Confluent","url":"https://www.confluent.io/blog/welcoming-the-distributed-masonry-team-to-confluent/","imageUrl":"https://www.confluent.io/wp-content/uploads/dmt-welcome.png","datePublished":"August 2, 2018","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":58,"name":"Confluent News","slug":"confluent-news"}],"summary":"

Streaming platforms force a fundamental rethink of the way companies treat the data that describes and drives their business, taking us away from the static notion of data which sits […]

\\n"},{"id":15568,"title":"Introducing Confluent Platform 5.0","url":"https://www.confluent.io/blog/introducing-confluent-platform-5-0/","imageUrl":"https://www.confluent.io/wp-content/uploads/cp-5-0.png","datePublished":"July 31, 2018","authors":[{"id":1029,"name":"Raj Jain","image":"https://www.confluent.io/wp-content/uploads/raj-jain-128x128.png","slug":"raj-jain"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":906,"name":"MQTT","slug":"mqtt"},{"id":110,"name":"Release","slug":"release"},{"id":905,"name":"Replicator","slug":"replicator"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

We are excited to announce the release of Confluent Platform 5.0, the enterprise streaming platform built on Apache Kafka®. At Confluent, our vision is to place a streaming platform at […]

\\n"},{"id":15496,"title":"Highlights of the Kafka Summit San Francisco 2018 Agenda","url":"https://www.confluent.io/blog/highlights-of-the-kafka-summit-san-francisco-2018-agenda/","imageUrl":"https://www.confluent.io/wp-content/uploads/KSSF18.png","datePublished":"July 26, 2018","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1214,"name":"Agenda","slug":"agenda"},{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

Honestly, it seems like I just filed my expense report for Kafka Summit London, and now we are announcing the program for Kafka Summit San Francisco. (CONFIDENTIAL TO CONFLUENT FINANCE: […]

\\n"},{"id":15409,"title":"Ansible Playbooks for Confluent Platform","url":"https://www.confluent.io/blog/ansible-playbooks-for-confluent-platform/","imageUrl":"https://www.confluent.io/wp-content/uploads/ansible-playbooks-500x333px.jpg","datePublished":"July 23, 2018","authors":[{"id":1088,"name":"Dustin Cote","image":"https://cdn.confluent.io/wp-content/uploads/dustin-e1588780783383-128x128.jpg","slug":"dustin-cote"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":1426,"name":"Ansible","slug":"ansible"}],"summary":"

Here at Confluent, we want to see each Confluent Platform installation be successful right from the start. That means going beyond beautiful APIs and spectacular stream processing features. We want […]

\\n"},{"id":15333,"title":"Apache Kafka vs. Enterprise Service Bus (ESB) – Friends, Enemies or Frenemies?","url":"https://www.confluent.io/blog/apache-kafka-vs-enterprise-service-bus-esb-friends-enemies-or-frenemies/","imageUrl":"https://www.confluent.io/wp-content/uploads/apache-kafka-vs-esb-500x333px.jpg","datePublished":"July 18, 2018","authors":[{"id":1066,"name":"Kai Waehner","image":"https://www.confluent.io/wp-content/uploads/Kai_Waehner_2017-e1505825154505-128x128.jpg","slug":"kai-waehner"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"},{"id":1220,"name":"Big Ideas","slug":"big-ideas"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":889,"name":"Enterprise Service Bus","slug":"enterprise-service-bus"},{"id":221,"name":"ETL","slug":"etl"},{"id":222,"name":"Event Streaming Platform","slug":"event-streaming-platform"},{"id":72,"name":"Integration","slug":"integration"}],"summary":"

Typically, an enterprise service bus (ESB) or other integration solutions like extract-transform-load (ETL) tools have been used to try to decouple systems. However, the sheer number of connectors, as well […]

\\n"},{"id":14947,"title":"June Preview Release: Packing Confluent Platform with the Features You Requested!","url":"https://www.confluent.io/blog/june-preview-release-confluent-plaform/","imageUrl":"https://www.confluent.io/wp-content/uploads/five_seconds_350x233.png","datePublished":"July 6, 2018","authors":[{"id":1060,"name":"Hojjat Jafarpour","image":"https://www.confluent.io/wp-content/uploads/Hojjat_Jafarpour-e1513805759108-128x128.png","slug":"hojjat-jafarpour"},{"id":1071,"name":"Ran Ma","image":"https://www.confluent.io/wp-content/uploads/ran-128x128.png","slug":"ran-ma"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":883,"name":"Preview Release","slug":"preview-release"}],"summary":"

We are very excited to announce Confluent Platform June 2018 Preview. This is our most feature-packed preview release for Confluent Platform since we started doing our monthly preview releases in […]

\\n"},{"id":14411,"title":"We ❤️ syslogs: Real-time syslog processing with Apache Kafka and KSQL – Part 3: Enriching events with external data","url":"https://www.confluent.io/blog/real-time-syslog-processing-apache-kafka-ksql-enriching-events-with-external-data/","imageUrl":"https://www.confluent.io/wp-content/uploads/ksql_syslog03_hi3-thumb.png","datePublished":"June 27, 2018","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":866,"name":"MongoDB","slug":"mongodb"},{"id":318,"name":"Syslog","slug":"syslog"}],"summary":"

Using KSQL, the SQL streaming engine for Apache Kafka®, it’s straightforward to build streaming data pipelines that filter, aggregate, and enrich inbound data. The data could be from numerous sources, […]

\\n"},{"id":14487,"title":"Stream Processing Made Easy With Confluent Cloud and KSQL","url":"https://www.confluent.io/blog/stream-processing-made-easy-with-confluent-cloud-and-ksql/","imageUrl":"https://www.confluent.io/wp-content/uploads/dwg_CCloud_ExternalDataSources-e1529536396638.png","datePublished":"June 26, 2018","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1156,"name":"White Paper","slug":"white-paper"}],"summary":"

Confluent Cloud™ is a fully-managed streaming data service based on open-source Apache Kafka. With Confluent Cloud, developers can accelerate building mission-critical streaming applications based on a single source of truth. […]

\\n"},{"id":14501,"title":"Introducing Confluent Hub","url":"https://www.confluent.io/blog/introducing-confluent-hub/","imageUrl":"https://www.confluent.io/wp-content/uploads/blog_IntroducingConfluentHub.png","datePublished":"June 22, 2018","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":47,"name":"Connector","slug":"connector"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"}],"summary":"

Today we’re delighted to announce the launch of Confluent Hub. Confluent Hub is a place for the Apache Kafka and Confluent Platform community to come together and share the components […]

\\n"},{"id":14080,"title":"May Preview Release: Advancing KSQL and Schema Registry","url":"https://www.confluent.io/blog/may-preview-release-advancing-ksql-and-schema-registry/","imageUrl":"https://www.confluent.io/wp-content/uploads/ksql_monitoring.png","datePublished":"June 5, 2018","authors":[{"id":1072,"name":"Rohan Desai","image":"https://cdn.confluent.io/wp-content/uploads/rohan-desai-128x128.png","slug":"rohan-desai"},{"id":1071,"name":"Ran Ma","image":"https://www.confluent.io/wp-content/uploads/ran-128x128.png","slug":"ran-ma"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":883,"name":"Preview Release","slug":"preview-release"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

We are very excited to announce the Confluent Platform May 2018 Preview release! The May Preview introduces powerful new capabilities for KSQL and the Schema Registry UI. Read on to […]

\\n"},{"id":13927,"title":"Analytics on Bare Metal: Xenon and Kafka Connect","url":"https://www.confluent.io/blog/analytics-bare-metal-xenon-kafka-connect","imageUrl":"https://www.confluent.io/wp-content/uploads/monitoring_kafka.png","datePublished":"May 31, 2018","authors":[{"id":1077,"name":"Tushar Sudhakar Jee","image":"https://www.confluent.io/wp-content/uploads/tushar-128x128.jpeg","slug":"tushar-sudhakar-jee"}],"categories":[{"id":1449,"name":"Analytics","slug":"analytics"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":47,"name":"Connector","slug":"connector"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"}],"summary":"

The following post is a guest blog from Tushar Sudhakar Jee, Software Engineer,  Levyx  responsible for Kafka infrastructure. You may find this post also on Levyx’s blog. Abstract As part […]

\\n"},{"id":13459,"title":"Introducing Self-Service Apache Kafka for Developers","url":"https://www.confluent.io/blog/confluent-cloud-gcp","imageUrl":"https://cdn.confluent.io/wp-content/uploads/Confluent_Cloud.png","datePublished":"May 22, 2018","authors":[{"id":1073,"name":"Santosh Raghuram","image":"https://www.confluent.io/wp-content/uploads/santosh-raghuram-400-1-128x128.png","slug":"santosh-raghuram"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":1175,"name":"GCP","slug":"gcp"}],"summary":"

New Confluent Cloud and Ecosystem Expansion to Google Cloud Platform The vision for Confluent Cloud is simple. We want to provide an event streaming service to support all customers on […]

\\n"},{"id":13529,"title":"Visualizations on Apache Kafka Made Easy with KSQL","url":"https://www.confluent.io/blog/visualizations-on-apache-kafka-made-easy-with-ksql/","imageUrl":"https://www.confluent.io/wp-content/uploads/aracadia-3-350x260.png","datePublished":"May 16, 2018","authors":[{"id":1074,"name":"Shant Hovsepian","image":"https://www.confluent.io/wp-content/uploads/Shant-Hovsepian-1-150x150-128x128.jpg","slug":"shant-hovsepian"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":147,"name":"Confluent Partner Program","slug":"confluent-partner-program"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":66,"name":"Real-Time Analytics","slug":"real-time-analytics"}],"summary":"

We’re pleased to welcome our partner Arcadia Data to the Confluent blog today. Shant Hovsepian is the CTO and co-founder of Arcadia Data, and is going to tell us about […]

\\n"},{"id":13440,"title":"Rounding Up Kafka Summit London 2018","url":"https://www.confluent.io/blog/rounding-up-kafka-summit-london-2018/","imageUrl":"https://www.confluent.io/wp-content/uploads/kafka_summit.png","datePublished":"May 11, 2018","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":1166,"name":"Kafka Summit London","slug":"kafka-summit-london"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

It has only been two weeks since the inaugural Kafka Summit London, and I’m sure many of you who attended are still internalizing what you learned there. But what about […]

\\n"},{"id":13320,"title":"Level Up Your KSQL","url":"https://www.confluent.io/blog/level-up-your-ksql/","imageUrl":"https://www.confluent.io/wp-content/uploads/ksql-3.png","datePublished":"May 8, 2018","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

Now that KSQL is available for production use as a part of the Confluent Platform, it has never been easier to run the open-source streaming SQL engine for Apache Kafka®. […]

\\n"},{"id":13090,"title":"Introducing the Confluent Operator: Apache Kafka on Kubernetes Made Simple","url":"https://www.confluent.io/blog/introducing-the-confluent-operator-apache-kafka-on-kubernetes/","imageUrl":"https://cdn.confluent.io/wp-content/uploads/kubernetes.png","datePublished":"May 3, 2018","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":999,"name":"Confluent Operator","slug":"confluent-operator"}],"tags":[{"id":1601,"name":"DevOps","slug":"devops"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":430,"name":"Kubernetes","slug":"kubernetes"}],"summary":"

At Confluent, our mission is to put a Streaming Platform at the heart of every digital company in the world. This means, making it easy to deploy and use Apache […]

\\n"},{"id":12963,"title":"Introducing Confluent Platform Preview Releases","url":"https://www.confluent.io/blog/introducing-confluent-platform-preview-releases/","imageUrl":"https://www.confluent.io/wp-content/uploads/activity.png","datePublished":"May 1, 2018","authors":[{"id":1051,"name":"Apurva Mehta","image":"https://www.confluent.io/wp-content/uploads/Apurva-128x128.jpg","slug":"apurva-mehta"},{"id":1065,"name":"Joseph Rea","image":"https://www.confluent.io/wp-content/uploads/Joseph_Rea-2-128x128.png","slug":"joseph-rea"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":883,"name":"Preview Release","slug":"preview-release"}],"summary":"

Download Confluent Platform preview release Historically, Confluent delivers a new release of Confluent Platform three times per year. While this cadence meets the needs of a meaningful portion of our […]

\\n"},{"id":12640,"title":"Welcome to Kafka Summit London 2018!","url":"https://www.confluent.io/blog/welcome-to-kafka-summit-london-2018/","imageUrl":"https://www.confluent.io/wp-content/uploads/london-bw.jpg","datePublished":"April 23, 2018","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1166,"name":"Kafka Summit London","slug":"kafka-summit-london"}],"summary":"

San Francisco. New York. San Francisco again. What is left to do? Why, Kafka Summit London, of course! The Kafka Community’s first Summit on this sceptred isle opens today. Kafka Summit […]

\\n"},{"id":12508,"title":"Confluent Platform 4.1 with Production-Ready KSQL Now Available","url":"https://www.confluent.io/blog/confluent-platform-4-1-with-production-ready-ksql-now-available/","imageUrl":"https://www.confluent.io/wp-content/uploads/cp41_c3.png","datePublished":"April 17, 2018","authors":[{"id":1031,"name":"Rohit Bakhshi","image":"https://www.confluent.io/wp-content/uploads/rohit-128x128.jpg","slug":"rohit-bakhshi"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

We are pleased to announce that Confluent Platform 4.1, our enterprise streaming platform built on Apache Kafka®, is available for download today. With Confluent Platform, you get the latest in […]

\\n"},{"id":11921,"title":"We ❤ syslogs: Real-time syslog Processing with Apache Kafka and KSQL – Part 2: Event-Driven Alerting with Slack","url":"https://www.confluent.io/blog/real-time-syslog-processing-with-apache-kafka-and-ksql-part-2-event-driven-alerting-with-slack/","imageUrl":"https://www.confluent.io/wp-content/uploads/2018-04-04_18-18-39.png","datePublished":"April 13, 2018","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":145,"name":"Clients","slug":"clients"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":853,"name":"Alerting","slug":"alerting"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":138,"name":"Python","slug":"python"},{"id":318,"name":"Syslog","slug":"syslog"}],"summary":"

In the previous article, we saw how syslog data can be easily streamed into Apache Kafka® and filtered in real time with KSQL. In this article, we’re going to see how […]

\\n"},{"id":11658,"title":"We ❤️ syslogs: Real-time syslog Processing with Apache Kafka and KSQL – Part 1: Filtering","url":"https://www.confluent.io/blog/real-time-syslog-processing-apache-kafka-ksql-part-1-filtering","imageUrl":"https://www.confluent.io/wp-content/uploads/2018-04-04_18-18-39.png","datePublished":"April 5, 2018","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":847,"name":"FIltering","slug":"filtering"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":318,"name":"Syslog","slug":"syslog"}],"summary":"

Syslog is one of those ubiquitous standards on which much of modern computing runs. Built into operating systems such as Linux, it’s also commonplace in networking and IoT devices like […]

\\n"},{"id":11482,"title":"KSQL in Action: Enriching CSV Events with Data from RDBMS into AWS","url":"https://www.confluent.io/blog/ksql-in-action-enriching-csv-events-with-data-from-rdbms-into-AWS/","imageUrl":"https://www.confluent.io/wp-content/uploads/KSQL-Kafka-350x200.png","datePublished":"March 22, 2018","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":79,"name":"AWS","slug":"aws"},{"id":47,"name":"Connector","slug":"connector"},{"id":312,"name":"CSV","slug":"csv"},{"id":313,"name":"Debezium","slug":"debezium"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":233,"name":"MySQL","slug":"mysql"},{"id":314,"name":"S3","slug":"s3"}],"summary":"

Life would be simple if data lived in one place: one single solitary database to rule them all. Anything that needed to be joined to anything could be with a […]

\\n"},{"id":11366,"title":"No More Silos: How to Integrate Your Databases with Apache Kafka and CDC","url":"https://www.confluent.io/blog/no-more-silos-how-to-integrate-your-databases-with-apache-kafka-and-cdc","imageUrl":"https://www.confluent.io/wp-content/uploads/kafka_connect-1.png","datePublished":"March 16, 2018","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"},{"id":1469,"name":"Pipelines","slug":"pipelines"}],"tags":[{"id":273,"name":"CDC","slug":"cdc"},{"id":47,"name":"Connector","slug":"connector"},{"id":1176,"name":"Database","slug":"database"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":115,"name":"Oracle","slug":"oracle"},{"id":274,"name":"RDBMS","slug":"rdbms"}],"summary":"

One of the most frequent questions and topics that I see come up on community resources such as StackOverflow, the Confluent Platform mailing list, and the Confluent Community Slack group, […]

\\n"},{"id":11077,"title":"Event Sourcing Using Apache Kafka","url":"https://www.confluent.io/blog/event-sourcing-using-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/kafka-event.png","datePublished":"March 13, 2018","authors":[{"id":1083,"name":"Adam Warski","image":"https://www.confluent.io/wp-content/uploads/adam.jpeg","slug":"adam-warski"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"}],"tags":[{"id":104,"name":"Event Sourcing","slug":"event-sourcing"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

Adam Warski is one of the co-founders of SoftwareMill, where he codes mainly using Scala and other interesting technologies. He is involved in open-source projects, such as sttp, MacWire, Quicklens, […]

\\n"},{"id":11112,"title":"KSQL February Release: Streaming SQL for Apache Kafka","url":"https://www.confluent.io/blog/ksql-february-release-streaming-sql-for-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/ksql-feb-release.png","datePublished":"March 7, 2018","authors":[{"id":1067,"name":"Neil Avery","image":"https://www.confluent.io/wp-content/uploads/neil_headshot2_small-128x128.png","slug":"neil-avery"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":110,"name":"Release","slug":"release"}],"summary":"

We are pleased to announce the release of KSQL v0.5, aka the February 2018 release of KSQL. This release is focused on bug fixes and as well as performance and stability […]

\\n"},{"id":10863,"title":"Secure Stream Processing with Apache Kafka, Confluent Platform and KSQL","url":"https://www.confluent.io/blog/secure-stream-processing-apache-kafka-ksql/","imageUrl":"https://www.confluent.io/wp-content/uploads/cp-demo-ksql.png","datePublished":"February 22, 2018","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":50,"name":"Security","slug":"security"}],"summary":"

In this blog post, we first look at stream processing examples using KSQL that show how companies are using Apache Kafka® to grow their business and to analyze data in […]

\\n"},{"id":10663,"title":"KSQL in Action: Real-Time Streaming ETL from Oracle Transactional Data","url":"https://www.confluent.io/blog/ksql-in-action-real-time-streaming-etl-from-oracle-transactional-data","imageUrl":"https://www.confluent.io/wp-content/uploads/ogg_kafka_ksql_es.png","datePublished":"February 15, 2018","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":1469,"name":"Pipelines","slug":"pipelines"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":273,"name":"CDC","slug":"cdc"},{"id":221,"name":"ETL","slug":"etl"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":275,"name":"GoldenGate","slug":"goldengate"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":115,"name":"Oracle","slug":"oracle"}],"summary":"

In this post I’m going to show what streaming ETL looks like in practice. We’re replacing batch extracts with event streams, and batch transformation with in-flight transformation. But first, a […]

\\n"},{"id":10770,"title":"Confluent and Apache Kafka in 2017","url":"https://www.confluent.io/blog/confluent-apache-kafka-2017/","imageUrl":"https://www.confluent.io/wp-content/uploads/2017-confluent.png","datePublished":"February 8, 2018","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":null,"summary":"

2017 was an amazing year for Apache Kafka® as an open source project and for Confluent as a company. I wanted to take moment to thank all the contributors and […]

\\n"},{"id":10696,"title":"KSQL January release: Streaming SQL for Apache Kafka","url":"https://www.confluent.io/blog/ksql-january-release-streaming-sql-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/ksql-jan-release.png","datePublished":"February 1, 2018","authors":[{"id":1051,"name":"Apurva Mehta","image":"https://www.confluent.io/wp-content/uploads/Apurva-128x128.jpg","slug":"apurva-mehta"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":110,"name":"Release","slug":"release"}],"summary":"

We are pleased to announce the release of KSQL 0.4, aka the January 2018 release of KSQL. As usual, this release is a mix of new features as well as […]

\\n"},{"id":10549,"title":"Should You Put Several Event Types in the Same Kafka Topic?","url":"https://www.confluent.io/blog/put-several-event-types-kafka-topic/","imageUrl":"https://www.confluent.io/wp-content/uploads/kafkablog.png","datePublished":"January 18, 2018","authors":[{"id":4,"name":"Martin Kleppmann","image":"https://www.confluent.io/wp-content/uploads/2016/08/martinkl-2013-400px-150x150.jpg","slug":"martin-kleppmann"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":297,"name":"Kafka Topic","slug":"kafka-topic"}],"summary":"

If you adopt a streaming platform such as Apache Kafka, one of the most important questions to answer is: what topics are you going to use? In particular, if you […]

\\n"},{"id":10294,"title":"Apache Mesos, Apache Kafka and Kafka Streams for Highly Scalable Microservices","url":"https://www.confluent.io/blog/apache-mesos-apache-kafka-kafka-streams-highly-scalable-microservices/","imageUrl":"https://www.confluent.io/wp-content/uploads/ccc.png","datePublished":"January 12, 2018","authors":[{"id":1066,"name":"Kai Waehner","image":"https://www.confluent.io/wp-content/uploads/Kai_Waehner_2017-e1505825154505-128x128.jpg","slug":"kai-waehner"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"},{"id":286,"name":"Microservices","slug":"microservices"}],"tags":[{"id":294,"name":"DC/OS","slug":"dc-os"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":87,"name":"Mesos","slug":"mesos"},{"id":1178,"name":"Mesosphere","slug":"mesosphere"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

Apache Kafka and Apache Mesos are very well-known and successful Apache projects. A lot has happened in these projects since Confluent’s last blog post on the topic in July 2015. […]

\\n"},{"id":10314,"title":"Kafka Summit London 2018 Agenda Announced","url":"https://www.confluent.io/blog/kafka-summit-london-2018-agenda-announced/","imageUrl":"https://www.confluent.io/wp-content/uploads/london-bw.jpg","datePublished":"January 11, 2018","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1214,"name":"Agenda","slug":"agenda"},{"id":1166,"name":"Kafka Summit London","slug":"kafka-summit-london"}],"summary":"

Good news! The agenda and speakers for the first-ever Kafka Summit in London have been announced. If you’ve been to one of the Summits in New York or San Francisco, […]

\\n"},{"id":10110,"title":"KSQL December Release: Streaming SQL for Apache Kafka","url":"https://www.confluent.io/blog/ksql-december-release","imageUrl":"https://www.confluent.io/wp-content/uploads/ksql-december-release.png","datePublished":"December 20, 2017","authors":[{"id":1060,"name":"Hojjat Jafarpour","image":"https://www.confluent.io/wp-content/uploads/Hojjat_Jafarpour-e1513805759108-128x128.png","slug":"hojjat-jafarpour"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":110,"name":"Release","slug":"release"}],"summary":"

We are very excited to announce the December release of KSQL, the streaming SQL engine for Apache Kafka®! As we announced in the November release blog, we are releasing KSQL […]

\\n"},{"id":9980,"title":"The Blog Post on Monitoring an Apache Kafka Deployment to End Most Blog Posts","url":"https://www.confluent.io/blog/blog-post-on-monitoring-an-apache-kafka-deployment-to-end-most-blog-posts","imageUrl":"https://www.confluent.io/wp-content/uploads/kafka-alerting-featured.png","datePublished":"December 14, 2017","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":64,"name":"Monitoring","slug":"monitoring"}],"summary":"

Confluent Platform is the central nervous system for a business, uniting your organization around a Kafka-based single source of truth. Apache Kafka® has been in production at thousands of companies […]

\\n"},{"id":9934,"title":"Enabling Exactly-Once in Kafka Streams","url":"https://www.confluent.io/blog/enabling-exactly-once-kafka-streams/","imageUrl":"https://www.confluent.io/wp-content/uploads/kafka-topic-featured.png","datePublished":"December 13, 2017","authors":[{"id":10,"name":"Guozhang Wang","image":"https://www.confluent.io/wp-content/uploads/2016/08/Guozhang_ATO5C0221-025338-edited-150x150.jpg","slug":"guozhang-wang"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":224,"name":"Exactly Once","slug":"exactly-once"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

This blog post is the third and last in a series about the exactly-once semantics for Apache Kafka®. See Exactly-once Semantics are Possible: Here’s How Kafka Does it for the […]

\\n"},{"id":9884,"title":"Monitoring Apache Kafka with Confluent Control Center Video Tutorials","url":"https://www.confluent.io/blog/monitoring-apache-kafka-confluent-control-center-video-tutorials/","imageUrl":"https://www.confluent.io/wp-content/uploads/cp-demo-1.png","datePublished":"December 12, 2017","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":64,"name":"Monitoring","slug":"monitoring"}],"summary":"

Mission critical applications built on Kafka need a robust and Kafka-specific monitoring solution that is performant, scalable, durable, highly available, and secure. Confluent Control Center helps monitor your Kafka deployments […]

\\n"},{"id":9860,"title":"Handling GDPR with Apache Kafka: How does a log forget?","url":"https://www.confluent.io/blog/handling-gdpr-log-forget/","imageUrl":"https://www.confluent.io/wp-content/uploads/DSC_9919.jpg","datePublished":"December 8, 2017","authors":[{"id":1027,"name":"Ben Stopford","image":"https://www.confluent.io/wp-content/uploads/ben-1-128x128.png","slug":"ben-stopford"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":46,"name":"Kafka Connect","slug":"kafka-connect"}],"summary":"

If you follow the press around Apache Kafka you’ll probably know it’s pretty good at tracking and retaining messages, but sometimes removing messages is important too. GDPR is a good […]

\\n"},{"id":9770,"title":"Toward a Functional Programming Analogy for Microservices","url":"https://www.confluent.io/blog/toward-functional-programming-analogy-microservices/","imageUrl":"https://www.confluent.io/wp-content/uploads/aws_death_star.png","datePublished":"November 29, 2017","authors":[{"id":92,"name":"Bobby Calderwood","image":"https://www.confluent.io/wp-content/uploads/bobby-128x128.jpg","slug":"bobby"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"}],"tags":[{"id":948,"name":"Financial Services","slug":"financial-services"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

Bobby Calderwood is a Distinguished Engineer at Capital One, where he influences the technical direction of Capital One and engages the broader community via speaking and open-source contributions. In the […]

\\n"},{"id":9741,"title":"Introducing Confluent Platform 4.0","url":"https://www.confluent.io/blog/introducing-confluent-platform-4-0/","imageUrl":"https://www.confluent.io/wp-content/uploads/confluent-platform-4.png","datePublished":"November 28, 2017","authors":[{"id":1030,"name":"Sriram Subramanian","image":"https://www.confluent.io/wp-content/uploads/Sriram-Subramanian-200x200-128x128.jpg","slug":"sriram-subramanian"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":110,"name":"Release","slug":"release"}],"summary":"

I am very excited to announce the general availability of Confluent Platform 4.0, the enterprise distribution of Apache Kafka 1.0. This release includes a number of significant improvements, including enhancements […]

\\n"},{"id":9755,"title":"Confluent Cloud: Enterprise-Ready, Hosted Apache Kafka is Here!","url":"https://www.confluent.io/blog/confluent-cloud-enterprise-ready-hosted-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/introducing_confluent_cloud_banner_image-1.png","datePublished":"November 28, 2017","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":null,"summary":"

Today, 40,000 people in Las Vegas are thinking about the Cloud—not because the weather is dry in Nevada, but because AWS re:Invent is in full force. Today is a perfect […]

\\n"},{"id":9714,"title":"November Update of KSQL Developer Preview Available","url":"https://www.confluent.io/blog/november-update-ksql-developer-preview-available/","imageUrl":"https://www.confluent.io/wp-content/uploads/ksql-nov.png","datePublished":"November 21, 2017","authors":[{"id":1067,"name":"Neil Avery","image":"https://www.confluent.io/wp-content/uploads/neil_headshot2_small-128x128.png","slug":"neil-avery"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

Update: KSQL is now available as a component of the Confluent Platform. Today we are releasing the first update to KSQL since its launch as a Developer Preview at Kafka […]

\\n"},{"id":9691,"title":"Transactions in Apache Kafka","url":"https://www.confluent.io/blog/transactions-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/transaction-1.png","datePublished":"November 17, 2017","authors":[{"id":1051,"name":"Apurva Mehta","image":"https://www.confluent.io/wp-content/uploads/Apurva-128x128.jpg","slug":"apurva-mehta"},{"id":14,"name":"Jason Gustafson","image":"https://www.confluent.io/wp-content/uploads/2016/08/Jason_ATO5C0448-945557-edited-150x150.jpg","slug":"jason-gustafson"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":146,"name":"Streams","slug":"streams"}],"summary":"

In a previous blog post, we introduced exactly once semantics for Apache Kafka®. That post covered the various message delivery semantics, introduced the idempotent producer, transactions, and the exactly once […]

\\n"},{"id":9558,"title":"Building a Microservices Ecosystem with Kafka Streams and KSQL","url":"https://www.confluent.io/blog/building-a-microservices-ecosystem-with-kafka-streams-and-ksql/","imageUrl":"https://www.confluent.io/wp-content/uploads/orders_view-1.png","datePublished":"November 9, 2017","authors":[{"id":1027,"name":"Ben Stopford","image":"https://www.confluent.io/wp-content/uploads/ben-1-128x128.png","slug":"ben-stopford"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"},{"id":1363,"name":"microservices","slug":"microservices"}],"summary":"

Today, we invariably operate in ecosystems: groups of applications and services which together work towards some higher level business goal. When we make these systems event-driven they come with a […]

\\n"},{"id":9528,"title":"Taking KSQL for a Spin Using Real-time Device Data","url":"https://www.confluent.io/blog/taking-ksql-spin-using-real-time-device-data/","imageUrl":"https://www.confluent.io/wp-content/uploads/ksql-e1510159876821.png","datePublished":"November 8, 2017","authors":[{"id":1076,"name":"Tom Underhill","image":"https://www.confluent.io/wp-content/uploads/tom-128x128.png","slug":"tom-underhill"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

We are pleased to invite Tom Underhill to join us as a guest blogger. Tom is Head of R&D at Rittman Mead, a data and analytics company who specialise in […]

\\n"},{"id":9451,"title":"Apache Kafka Goes 1.0","url":"https://www.confluent.io/blog/apache-kafka-goes-1-0/","imageUrl":"https://www.confluent.io/wp-content/uploads/kafkablog.png","datePublished":"November 1, 2017","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":110,"name":"Release","slug":"release"}],"summary":"

It has been seven years since we first set out to create the distributed streaming platform we know now as Apache Kafka®. Born initially as a highly scalable messaging system, […]

\\n"},{"id":9376,"title":"The London Kafka Summit 2018 Call for Papers is Open!","url":"https://www.confluent.io/blog/london-kafka-summit-2018-call-papers-open/","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka-Summit-Montage-2.png","datePublished":"October 26, 2017","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":280,"name":"Call for Papers","slug":"call-for-papers"},{"id":1166,"name":"Kafka Summit London","slug":"kafka-summit-london"}],"summary":"

After three successful Kafka Summits in the United States in 2016 and 2017, we decided the Kafka community was ready to have a Summit in London. And based on the […]

\\n"},{"id":9364,"title":"Running Kafka Streams Applications in AWS","url":"https://www.confluent.io/blog/running-kafka-streams-applications-aws/","imageUrl":"https://www.confluent.io/wp-content/uploads/heap_memory-min.png","datePublished":"October 24, 2017","authors":[{"id":1062,"name":"Ian Duffy","image":"https://www.confluent.io/wp-content/uploads/ian-128x128.jpg","slug":"ian-duffy"},{"id":1068,"name":"Nina Hanzlikova","image":"https://www.confluent.io/wp-content/uploads/nina-128x128.jpg","slug":"nina-hanzlikova"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1183,"name":"Retail","slug":"retail"},{"id":146,"name":"Streams","slug":"streams"}],"summary":"

This guest blog post is the second in a series about the use of Apache Kafka’s Streams API by Zalando, Europe’s largest online fashion retailer. See Ranking Websites in Real-time […]

\\n"},{"id":9273,"title":"Ranking Websites in Real-time with Apache Kafka’s Streams API","url":"https://www.confluent.io/blog/ranking-websites-real-time-apache-kafkas-streams-api/","imageUrl":"https://www.confluent.io/wp-content/uploads/current.png","datePublished":"October 19, 2017","authors":[{"id":1061,"name":"Hunter Kelly","image":"https://www.confluent.io/wp-content/uploads/Screen-Shot-2017-10-18-at-12.21.47-PM-128x128.png","slug":"hunter-kelly"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1183,"name":"Retail","slug":"retail"}],"summary":"

This article is by Hunter Kelly, Technical Architect at Zalando. Hunter enjoys using technology, and in particular machine learning, to solve difficult problems. He’s a graduate of the University of […]

\\n"},{"id":9227,"title":"Predicting Flight Arrivals with the Apache Kafka Streams API","url":"https://www.confluent.io/blog/predicting-flight-arrivals-with-the-apache-kafka-streams-api/","imageUrl":"https://www.confluent.io/wp-content/uploads/onlinepredictionsdiagram-min.jpg","datePublished":"October 18, 2017","authors":[{"id":1053,"name":"Bill Bejeck","image":"https://www.confluent.io/wp-content/uploads/199238-128x128.jpeg","slug":"bill-bejeck"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":271,"name":"Machine Learning","slug":"machine-learning"},{"id":63,"name":"Stream Data","slug":"stream-data"},{"id":146,"name":"Streams","slug":"streams"}],"summary":"

Kafka Streams makes it easy to write scalable, fault-tolerant, and real-time production apps and microservices. This post builds upon a previous post that covered scalable machine learning with Apache Kafka, […]

\\n"},{"id":9123,"title":"Getting Started Analyzing Twitter Data in Apache Kafka through KSQL","url":"https://www.confluent.io/blog/using-ksql-to-analyse-query-and-transform-data-in-kafka","imageUrl":"https://www.confluent.io/wp-content/uploads/KSQL_diagrams.png","datePublished":"October 10, 2017","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

KSQL is the streaming SQL engine for Apache Kafka®. It lets you do sophisticated stream processing on Kafka topics, easily, using a simple and interactive SQL interface. In this short […]

\\n"},{"id":9169,"title":"Using Kafka Streams API for Predictive Budgeting","url":"https://www.confluent.io/blog/using-kafka-streams-api-predictive-budgeting/","imageUrl":"https://www.confluent.io/wp-content/uploads/pinterest_ad_request.png","datePublished":"October 9, 2017","authors":[{"id":1054,"name":"Boyang Chen","image":"https://cdn.confluent.io/wp-content/uploads/Boyang-Chen-128x128.png","slug":"boyang-chen"}],"categories":[{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

At Pinterest, we use Kafka Streams API to provide inflight spend data to thousands of ads servers in mere seconds. Our ads engineering team works hard to ensure we’re providing […]

\\n"},{"id":8983,"title":"How to Build and Deploy Scalable Machine Learning in Production with Apache Kafka","url":"https://www.confluent.io/blog/build-deploy-scalable-machine-learning-production-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/ML-architecture.png","datePublished":"September 29, 2017","authors":[{"id":1066,"name":"Kai Waehner","image":"https://www.confluent.io/wp-content/uploads/Kai_Waehner_2017-e1505825154505-128x128.jpg","slug":"kai-waehner"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":271,"name":"Machine Learning","slug":"machine-learning"}],"summary":"

Scalable Machine Learning in Production with Apache Kafka® Intelligent real time applications are a game changer in any industry. Machine learning and its sub-topic, deep learning, are gaining momentum because […]

\\n"},{"id":8845,"title":"Disaster Recovery for Multi-Datacenter Apache Kafka Deployments","url":"https://www.confluent.io/blog/disaster-recovery-multi-datacenter-apache-kafka-deployments","imageUrl":"https://www.confluent.io/wp-content/uploads/disaster_recovery.png","datePublished":"September 22, 2017","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":269,"name":"Disaster Recovery","slug":"disaster-recovery"},{"id":131,"name":"Multi-Datacenter Replication","slug":"multi-datacenter-replication"},{"id":905,"name":"Replicator","slug":"replicator"},{"id":1156,"name":"White Paper","slug":"white-paper"}],"summary":"

Datacenter downtime and data loss can result in businesses losing a vast amount of revenue or entirely halting operations. To minimize the downtime and data loss resulting from a disaster, […]

\\n"},{"id":8716,"title":"Crossing the Streams – Joins in Apache Kafka","url":"https://www.confluent.io/blog/crossing-streams-joins-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/inner_stream-stream_join.jpg","datePublished":"September 19, 2017","authors":[{"id":1058,"name":"Florian Troßbach","image":"https://www.confluent.io/wp-content/uploads/o-icGrOn_400x400-128x128.jpg","slug":"florian-trossbach"},{"id":25,"name":"Matthias J. Sax","image":"https://www.confluent.io/wp-content/uploads/slack-128x128.jpg","slug":"matthias-j-sax"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":147,"name":"Confluent Partner Program","slug":"confluent-partner-program"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

This post was originally published at the Codecentric blog with a focus on “old” join semantics in Apache Kafka versions 0.10.0 and 0.10.1. Version 0.10.0 of the popular distributed streaming […]

\\n"},{"id":8750,"title":"It’s Okay To Store Data In Apache Kafka","url":"https://www.confluent.io/blog/okay-store-data-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/log-of-records.png","datePublished":"September 15, 2017","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":97,"name":"Storage","slug":"storage"}],"summary":"

A question people often ask about Apache Kafka® is whether it is okay to use it for longer term storage. Kafka, as you might know, stores a log of records, […]

\\n"},{"id":8672,"title":"How Apache Kafka is Tested","url":"https://www.confluent.io/blog/apache-kafka-tested/","imageUrl":"https://www.confluent.io/wp-content/uploads/kafkablog.png","datePublished":"September 13, 2017","authors":[{"id":1056,"name":"Colin McCabe","image":"https://cdn.confluent.io/wp-content/uploads/colin-mccabe-e1589496557291-128x128.jpeg","slug":"colin-mccabe"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":1186,"name":"Testing","slug":"testing"}],"summary":"

Introduction Apache Kafka® is used in thousands of companies, including some of the most demanding, large scale, and critical systems in the world. Its largest users run Kafka across thousands […]

\\n"},{"id":7935,"title":"The Simplest Useful Kafka Connect Data Pipeline in the World…or Thereabouts – Part 3","url":"https://www.confluent.io/blog/simplest-useful-kafka-connect-data-pipeline-world-thereabouts-part-3/","imageUrl":"https://www.confluent.io/wp-content/uploads/connect11.png","datePublished":"September 7, 2017","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":237,"name":"Single Message Transforms","slug":"single-message-transforms"},{"id":238,"name":"SMT","slug":"smt"}],"summary":"

We saw in the earlier articles (part 1, part 2) in this series how to use the Kafka Connect API to build out a very simple, but powerful and scalable, streaming […]

\\n"},{"id":8387,"title":"Publishing with Apache Kafka at The New York Times","url":"https://www.confluent.io/blog/publishing-apache-kafka-new-york-times/","imageUrl":"https://www.confluent.io/wp-content/uploads/implementation-google-cloud-min.png","datePublished":"September 6, 2017","authors":[{"id":1059,"name":"Boerge Svingen","image":"https://www.confluent.io/wp-content/uploads/Boerge-Svingen-128x128.jpg","slug":"boerge-svingen"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"},{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

At The New York Times we have a number of different systems that are used for producing content. We have several Content Management Systems, and we use third-party data and […]

\\n"},{"id":8432,"title":"A Look Back at Kafka Summit San Francisco 2017","url":"https://www.confluent.io/blog/look-back-kafka-summit-san-francisco-2017/","imageUrl":"https://www.confluent.io/wp-content/uploads/kafka-summit.png","datePublished":"September 5, 2017","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

Another successful Kafka Summit is in the books! Around 800 Apache Kafka® committers, users, and enthusiasts joined us at the Hilton Union Square in San Francisco for a day of […]

\\n"},{"id":8228,"title":"Introducing KSQL: Streaming SQL for Apache Kafka","url":"https://www.confluent.io/blog/ksql-streaming-sql-for-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/Streaming_SQL_for_apache_kafka-1.png","datePublished":"August 28, 2017","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1482,"name":"ksqlDB","slug":"ksqldb"}],"summary":"

Update: KSQL is now available as a component of the Confluent Platform. I’m really excited to announce KSQL, a streaming SQL engine for Apache Kafka®. KSQL lowers the entry bar to […]

\\n"},{"id":8314,"title":"Today is the day! Welcome to Kafka Summit San Francisco 2017!","url":"https://www.confluent.io/blog/today-day-welcome-kafka-summit-san-francisco-2017/","imageUrl":"https://www.confluent.io/wp-content/uploads/c_c3_720-min.png","datePublished":"August 28, 2017","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

A huge number of people have been hard at work to make today happen. Our speakers have been writing presentations and preparing to teach their audiences about new Apache Kafka® […]

\\n"},{"id":7929,"title":"The Simplest Useful Kafka Connect Data Pipeline in the World…or Thereabouts – Part 2","url":"https://www.confluent.io/blog/the-simplest-useful-kafka-connect-data-pipeline-in-the-world-or-thereabouts-part-2/","imageUrl":"https://www.confluent.io/wp-content/uploads/kibana_kafka.png","datePublished":"August 23, 2017","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":236,"name":"Elasticsearch","slug":"elasticsearch"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"}],"summary":"

In the previous article in this blog series I showed how easy it is to stream data out of a database into Apache Kafka®, using the Kafka Connect API. I […]

\\n"},{"id":7988,"title":"Leveraging the Power of a Database ‘Unbundled’","url":"https://www.confluent.io/blog/leveraging-power-database-unbundled/","imageUrl":"https://www.confluent.io/wp-content/uploads/data_inadequacy-min.png","datePublished":"August 17, 2017","authors":[{"id":1027,"name":"Ben Stopford","image":"https://www.confluent.io/wp-content/uploads/ben-1-128x128.png","slug":"ben-stopford"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1176,"name":"Database","slug":"database"},{"id":205,"name":"Events","slug":"events"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":204,"name":"Systems","slug":"systems"}],"summary":"

When you build microservices using Apache Kafka®, the log can be used as more than just a communication protocol. It can be used to store events: messaging that remembers. This […]

\\n"},{"id":7904,"title":"The Simplest Useful Kafka Connect Data Pipeline in the World…or Thereabouts – Part 1","url":"https://www.confluent.io/blog/simplest-useful-kafka-connect-data-pipeline-world-thereabouts-part-1/","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka_connect.jpg","datePublished":"August 11, 2017","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":234,"name":"DB2","slug":"db2"},{"id":232,"name":"JDBC","slug":"jdbc"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":233,"name":"MySQL","slug":"mysql"},{"id":115,"name":"Oracle","slug":"oracle"},{"id":235,"name":"SQL Server","slug":"sql-server"}],"summary":"

This short series of articles is going to show you how to stream data from a database (MySQL) into Apache Kafka® and from Kafka into both a text file and Elasticsearch—all […]

\\n"},{"id":7786,"title":"Are You Ready for Kafka Summit San Francisco?","url":"https://www.confluent.io/blog/ready-kafka-summit-san-francisco/","imageUrl":"https://www.confluent.io/wp-content/uploads/sf-bg-e1480393050650.jpg","datePublished":"August 3, 2017","authors":[{"id":1032,"name":"Tim Berglund","image":"https://cdn.confluent.io/wp-content/uploads/Tim_Berglund_Headshots-128x128.png","slug":"tim-berglund"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

Just a few months ago, hundreds of Apache Kafka® users and leaders from 400+ companies and 20 countries gathered in New York City to learn about the latest Kafka developments […]

\\n"},{"id":7681,"title":"Messaging as the Single Source of Truth","url":"https://www.confluent.io/blog/messaging-single-source-truth/","imageUrl":"https://www.confluent.io/wp-content/uploads/Screenshot-2017-08-02-08.44.51.png","datePublished":"August 2, 2017","authors":[{"id":1027,"name":"Ben Stopford","image":"https://www.confluent.io/wp-content/uploads/ben-1-128x128.png","slug":"ben-stopford"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"}],"tags":[{"id":104,"name":"Event Sourcing","slug":"event-sourcing"}],"summary":"

This post discusses Event Sourcing in the context of Apache Kafka®, examining the need for a single source of truth that spans entire service estates. Events are Truth One of […]

\\n"},{"id":7371,"title":"We’ll Say This Exactly Once: Confluent Platform 3.3 is Available Now","url":"https://www.confluent.io/blog/we-will-say-exactly-confluent-platform-3-3-available-now/","imageUrl":"https://www.confluent.io/wp-content/uploads/confluent-platform-c-e1544735506534.png","datePublished":"August 1, 2017","authors":[{"id":1028,"name":"Gehrig Kunz","image":"https://www.confluent.io/wp-content/uploads/Gehrig-128x128.jpg","slug":"gehrig-kunz"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":110,"name":"Release","slug":"release"}],"summary":"

Confluent Platform and Apache Kafka® have come a long way from the time of their origin story. Like superheroes finding out they have powers, the latest updates always seem to […]

\\n"},{"id":7399,"title":"Chain Services with Exactly-Once Guarantees","url":"https://www.confluent.io/blog/chain-services-exactly-guarantees/","imageUrl":"https://www.confluent.io/wp-content/uploads/Building_services_with_Exactly-Once-min.png","datePublished":"July 26, 2017","authors":[{"id":1027,"name":"Ben Stopford","image":"https://www.confluent.io/wp-content/uploads/ben-1-128x128.png","slug":"ben-stopford"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"}],"tags":[{"id":224,"name":"Exactly Once","slug":"exactly-once"}],"summary":"

This fourth post in the microservices series looks at how we can sew together complex chains of services, efficiently, and accurately, using Apache Kafka’s Exactly-Once guarantees. Duplicates, Duplicates Everywhere Any […]

\\n"},{"id":7150,"title":"Using Apache Kafka as a Scalable, Event-Driven Backbone for Service Architectures","url":"https://www.confluent.io/blog/apache-kafka-for-service-architectures/","imageUrl":"https://www.confluent.io/wp-content/uploads/event-based-1.png","datePublished":"July 19, 2017","authors":[{"id":1027,"name":"Ben Stopford","image":"https://www.confluent.io/wp-content/uploads/ben-1-128x128.png","slug":"ben-stopford"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"}],"tags":[{"id":205,"name":"Events","slug":"events"}],"summary":"

The last post in this microservices series looked at building systems on a backbone of events, where events become both a trigger as well as a mechanism for distributing state. […]

\\n"},{"id":7096,"title":"Upgrading Apache Kafka Clients Just Got Easier","url":"https://www.confluent.io/blog/upgrading-apache-kafka-clients-just-got-easier/","imageUrl":"https://www.confluent.io/wp-content/uploads/kafkablog.png","datePublished":"July 18, 2017","authors":[{"id":1056,"name":"Colin McCabe","image":"https://cdn.confluent.io/wp-content/uploads/colin-mccabe-e1589496557291-128x128.jpeg","slug":"colin-mccabe"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"},{"id":145,"name":"Clients","slug":"clients"}],"tags":[{"id":146,"name":"Streams","slug":"streams"}],"summary":"

This is a very exciting time to be part of the Apache Kafka® community! Every four months, a new Apache Kafka release brings additional features and improvements. We’re particularly excited […]

\\n"},{"id":6786,"title":"Exactly-once Semantics are Possible: Here’s How Kafka Does it","url":"https://www.confluent.io/blog/exactly-once-semantics-are-possible-heres-how-apache-kafka-does-it/","imageUrl":"https://www.confluent.io/wp-content/uploads/image2.png","datePublished":"June 30, 2017","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":224,"name":"Exactly Once","slug":"exactly-once"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

I’m thrilled that we have hit an exciting milestone the Kafka community has long been waiting for: we have  introduced exactly-once semantics in Apache Kafka in the 0.11 release and […]

\\n"},{"id":6685,"title":"Building a Real-Time Streaming ETL Pipeline in 20 Minutes","url":"https://www.confluent.io/blog/building-real-time-streaming-etl-pipeline-20-minutes/","imageUrl":"https://www.confluent.io/wp-content/uploads/etl_mess.png","datePublished":"June 23, 2017","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":1469,"name":"Pipelines","slug":"pipelines"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":221,"name":"ETL","slug":"etl"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":146,"name":"Streams","slug":"streams"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

There has been a lot of talk recently that traditional ETL is dead. In the traditional ETL paradigm, data warehouses were king, ETL jobs were batch-driven, everything talked to everything […]

\\n"},{"id":6621,"title":"Log Compaction – Highlights in the Apache Kafka® and Stream Processing Community – June 2017","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-apache-kafka-and-stream-processing-community-june-2017/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"June 21, 2017","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":null,"summary":"

We are very excited for the GA for Kafka release 0.11.0.0 which is just days away. This release is bringing many new features as described in the previous Log Compaction […]

\\n"},{"id":6500,"title":"Introduction to Apache Kafka® for Python Programmers","url":"https://www.confluent.io/blog/introduction-to-apache-kafka-for-python-programmers/","imageUrl":"https://www.confluent.io/wp-content/uploads/kafkablog.png","datePublished":"June 7, 2017","authors":[{"id":70,"name":"Matt Howlett","image":"https://www.confluent.io/wp-content/uploads/Matt_ATO5C0154-128x128.jpg","slug":"matthowlett"}],"categories":[{"id":145,"name":"Clients","slug":"clients"}],"tags":[{"id":114,"name":"Languages","slug":"languages"},{"id":138,"name":"Python","slug":"python"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

In this blog post, we’re going to get back to basics and walk through how to get started using Apache Kafka with your Python applications. We will assume some basic […]

\\n"},{"id":6428,"title":"The Future of ETL Isn’t What It Used To Be","url":"https://www.confluent.io/blog/the-future-of-etl-isnt-what-it-used-to-be/","imageUrl":"https://www.confluent.io/wp-content/uploads/streaming_platform_rev-1024x457.jpg","datePublished":"June 1, 2017","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":1469,"name":"Pipelines","slug":"pipelines"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":221,"name":"ETL","slug":"etl"},{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":146,"name":"Streams","slug":"streams"}],"summary":"

In his book Design Patterns Explained, Alan Shalloway compares his car to an umbrella. After all, he uses both to stay dry in the rain. The umbrella has an advantage […]

\\n"},{"id":6267,"title":"Build Services on a Backbone of Events","url":"https://www.confluent.io/blog/build-services-backbone-events/","imageUrl":"https://www.confluent.io/wp-content/uploads/12.png","datePublished":"May 31, 2017","authors":[{"id":1027,"name":"Ben Stopford","image":"https://www.confluent.io/wp-content/uploads/ben-1-128x128.png","slug":"ben-stopford"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"}],"tags":[{"id":205,"name":"Events","slug":"events"},{"id":49,"name":"REST Proxy","slug":"rest-proxy"}],"summary":"

For many, microservices are built on a protocol of requests and responses. REST etc. This approach is very natural. It is after all the way we write programs: we make […]

\\n"},{"id":6123,"title":"Log Compaction – Highlights in the Apache Kafka® and Stream Processing Community – May 2017","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-apache-kafka-and-stream-processing-community-may-2017/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"May 23, 2017","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":null,"summary":"

We are very excited to share a wealth of streaming news from the past month! If you are looking for an ideal streaming data service that delivers the resilient, scalable […]

\\n"},{"id":5916,"title":"Getting Started with the Kafka Streams API using Confluent Docker Images","url":"https://www.confluent.io/blog/getting-started-with-the-kafka-streams-api-using-confluent-docker-image/","imageUrl":"https://www.confluent.io/wp-content/uploads/Running-confluent-kafka-music-demo.png","datePublished":"May 17, 2017","authors":[{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":218,"name":"Docker","slug":"docker"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":146,"name":"Streams","slug":"streams"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

Introduction What’s great about the Kafka Streams API is not just how fast your application can process data with it, but also how fast you can get up and running […]

\\n"},{"id":5866,"title":"Kafka Summit New York City: The Rise of the Event Streaming Platform","url":"https://www.confluent.io/blog/kafka-summit-new-york-city-rise-streaming-platform/","imageUrl":"https://www.confluent.io/wp-content/uploads/IMG_7425.jpg","datePublished":"May 12, 2017","authors":[{"id":1050,"name":"Clarke Patterson","image":"https://www.confluent.io/wp-content/uploads/clarke-patterson-128x128.png","slug":"clarke-patterson"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1165,"name":"Kafka Summit NYC","slug":"kafka-summit-nyc"}],"summary":"

Kafka Summit New York City was the largest gathering of the Apache Kafka community outside Silicon Valley in history. Over 500 “Kafkateers” from 400+ companies and 20 countries converged in […]

\\n"},{"id":5799,"title":"Optimizing Your Apache Kafka® Deployment","url":"https://www.confluent.io/blog/optimizing-apache-kafka-deployment/","imageUrl":"https://www.confluent.io/wp-content/uploads/optimizing-kafka-deployment.png","datePublished":"May 10, 2017","authors":[{"id":1078,"name":"Yeva Byzek","image":"https://www.confluent.io/wp-content/uploads/yeva-128x128.jpg","slug":"yeva-byzek"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":217,"name":"Deployment","slug":"deployment"},{"id":216,"name":"Optimization","slug":"optimization"}],"summary":"

Apache Kafka® is the best enterprise streaming platform that runs straight off the shelf. Just point your client applications at your Kafka cluster and Kafka takes care of the rest: […]

\\n"},{"id":5708,"title":"Announcing Confluent Cloud: Apache Kafka as a Service","url":"https://www.confluent.io/blog/announcing-confluent-cloud-apache-kafka-as-a-service/","imageUrl":"https://www.confluent.io/wp-content/uploads/confluent_cloud_apache-e1532106792706.png","datePublished":"May 8, 2017","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":null,"summary":"

Today, I’m really excited to announce Confluent CloudTM, Apache Kafka® as a Service: the simplest, fastest, most robust and cost effective way to run Apache Kafka in the public cloud. […]

\\n"},{"id":5691,"title":"It’s Time for Kafka Summit NYC!","url":"https://www.confluent.io/blog/time-kafka-summit-nyc/","imageUrl":"https://www.confluent.io/wp-content/uploads/Bridge_banner.png","datePublished":"May 8, 2017","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1165,"name":"Kafka Summit NYC","slug":"kafka-summit-nyc"}],"summary":"

The team at Confluent, along with the Apache KafkaTM community, are excited the day is finally here – it’s time for Kafka Summit NYC! We’ll be at the Midtown Hilton […]

\\n"},{"id":5417,"title":"Kafka Summit NYC is Almost Here – Don’t Miss the Streams Track!","url":"https://www.confluent.io/blog/kafka-summit-nyc-almost-dont-miss-streams-track/","imageUrl":"https://www.confluent.io/wp-content/uploads/Bridge_banner.png","datePublished":"May 4, 2017","authors":[{"id":65,"name":"Frances Perry","image":"https://www.confluent.io/wp-content/uploads/2016/08/Frances-Perry-Headshot-150x150.jpg","slug":"frances-perry"},{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1165,"name":"Kafka Summit NYC","slug":"kafka-summit-nyc"}],"summary":"

Ever wondered what it’s like to run Kafka in production? What about building and deploying microservices that process streams of data in real-time, at large scale?  Or, maybe just the […]

\\n"},{"id":5542,"title":"The 2017 Apache Kafka Survey: Streaming Data on the Rise","url":"https://www.confluent.io/blog/2017-apache-kafka-survey-streaming-data-on-the-rise/","imageUrl":"https://www.confluent.io/wp-content/uploads/kafka-report.png","datePublished":"May 4, 2017","authors":[{"id":24,"name":"Luanne Dauber","image":"https://www.confluent.io/wp-content/uploads/lu-128x128.png","slug":"luanne-dauber"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":214,"name":"Survey","slug":"survey"}],"summary":"

In Q1, Confluent conducted a survey of the Apache Kafka® community and those using streaming platforms to learn about their application of streaming data. This is our second execution of […]

\\n"},{"id":5491,"title":"Watermarks, Tables, Event Time, and the Dataflow Model","url":"https://www.confluent.io/blog/watermarks-tables-event-time-dataflow-model/","imageUrl":"https://www.confluent.io/wp-content/uploads/image5.png","datePublished":"May 3, 2017","authors":[{"id":1057,"name":"Eno Thereska","image":"https://www.confluent.io/wp-content/uploads/2016/10/Eno_AIMG_2211-150x150.jpg","slug":"eno-thereska"},{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"},{"id":25,"name":"Matthias J. Sax","image":"https://www.confluent.io/wp-content/uploads/slack-128x128.jpg","slug":"matthias-j-sax"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":208,"name":"Dataflow","slug":"dataflow"},{"id":205,"name":"Events","slug":"events"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":146,"name":"Streams","slug":"streams"},{"id":209,"name":"Watermarks","slug":"watermarks"}],"summary":"

The Google Dataflow team has done a fantastic job in evangelizing their model of handling time for stream processing. Their key observation is that in most cases you can’t globally […]

\\n"},{"id":5251,"title":"Kafka Summit NYC Systems Track: What to Expect","url":"https://www.confluent.io/blog/kafka-summit-nyc-systems-track-expect/","imageUrl":"https://www.confluent.io/wp-content/uploads/conf-hp-2-01-1-5.jpg","datePublished":"April 25, 2017","authors":[{"id":5,"name":"Jun Rao","image":"https://www.confluent.io/wp-content/uploads/2016/08/jun-150x150.jpg","slug":"jun-rao"},{"id":63,"name":"Rajini Sivaram","image":"https://www.confluent.io/wp-content/uploads/program-committee-RajiniSivaram-1-128x128.jpg","slug":"rajini-sivaram"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1165,"name":"Kafka Summit NYC","slug":"kafka-summit-nyc"},{"id":204,"name":"Systems","slug":"systems"}],"summary":"

In our previous post on the Streaming Pipelines track, we highlighted some of the sessions not to be missed at Kafka Summit NYC. As a follow on to that, let’s […]

\\n"},{"id":5203,"title":"Stories from the Front: Lessons Learned from Supporting Apache Kafka®","url":"https://www.confluent.io/blog/stories-front-lessons-learned-supporting-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/08/fig22.jpg","datePublished":"April 18, 2017","authors":[{"id":1088,"name":"Dustin Cote","image":"https://cdn.confluent.io/wp-content/uploads/dustin-e1588780783383-128x128.jpg","slug":"dustin-cote"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":73,"name":"Replication","slug":"replication"},{"id":203,"name":"Support","slug":"support"}],"summary":"

Here at Confluent, our goal is to ensure every company is successful with their streaming platform deployments. Oftentimes, we’re asked to come in and provide guidance and tips as developers […]

\\n"},{"id":5162,"title":"Creating a Data Pipeline with the Kafka Connect API – from Architecture to Operations","url":"https://www.confluent.io/blog/creating-data-pipeline-kafka-connect-api-architecture-operations/","imageUrl":"https://www.confluent.io/wp-content/uploads/Diagram-3.-Create-and-Register-Schema-1.png","datePublished":"April 14, 2017","authors":[{"id":61,"name":"Alexandra Wang","image":"https://www.confluent.io/wp-content/uploads/AlexandraWang-128x128.jpg","slug":"alexandra-wang"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"},{"id":1469,"name":"Pipelines","slug":"pipelines"}],"tags":[{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

This is a guest blog from Alexandra Wang, Software Engineer, Pandora Media. You can connect with her on LinkedIn. Also special thanks to Lawrence Weikum and Stu Thompson as contributors of the work in this post. […]

\\n"},{"id":5029,"title":"Kafka Summit NYC: Streaming Pipelines Track – What to Expect","url":"https://www.confluent.io/blog/kafka-summit-nyc-streaming-pipelines-track-expect/","imageUrl":"https://www.confluent.io/wp-content/uploads/Bridge_banner.png","datePublished":"April 5, 2017","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"},{"id":1052,"name":"Becket Qin","image":"https://www.confluent.io/wp-content/uploads/becket-128x128.png","slug":"becket-qin"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":69,"name":"Conferences","slug":"conferences"},{"id":1165,"name":"Kafka Summit NYC","slug":"kafka-summit-nyc"}],"summary":"

It is just a few weeks out until Kafka Summit NYC! Since we’re on the program committee for this event and are also the track leads for the Streaming Pipelines track, […]

\\n"},{"id":4875,"title":"Securing the Confluent Schema Registry for Apache Kafka®","url":"https://www.confluent.io/blog/securing-confluent-schema-registry-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/image05-2.png","datePublished":"March 29, 2017","authors":[{"id":59,"name":"Stéphane Maarek","image":"https://www.confluent.io/wp-content/uploads/stephane-original-128x128.jpg","slug":"stephane-maarek"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":48,"name":"Schema Registry","slug":"schema-registry"},{"id":50,"name":"Security","slug":"security"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

This is a guest blog post by Stephane Maarek. Stephane is an IT consultant at Simple Machines. You can check his GitHub or connect with him on LinkedIn. If you use Apache Kafka […]

\\n"},{"id":4431,"title":"There’s So Much More to Apache Kafka than Just Hadoop","url":"https://www.confluent.io/blog/theres-much-more-to-apache-kafka-than-just-hadoop/","imageUrl":"https://www.confluent.io/wp-content/uploads/Strata2017.jpg","datePublished":"March 13, 2017","authors":[{"id":1050,"name":"Clarke Patterson","image":"https://www.confluent.io/wp-content/uploads/clarke-patterson-128x128.png","slug":"clarke-patterson"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":69,"name":"Conferences","slug":"conferences"},{"id":180,"name":"Hadoop","slug":"hadoop"},{"id":181,"name":"Strata","slug":"strata"}],"summary":"

It’s Strata+Hadoop World this week, and the who’s who of the data management world will gather at the San Jose Convention Center to talk all things big data. I’m kind […]

\\n"},{"id":4389,"title":"Log Compaction – Highlights in the Apache Kafka® and Stream Processing Community – March 2017","url":"https://www.confluent.io/blog/log-compaction-highlights-apache-kafka-stream-processing-community-march-2017/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"March 9, 2017","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":null,"summary":"

Big news this month! First and foremost, Confluent Platform 3.2.0 with Apache Kafka® 0.10.2.0 was released! Read about the new features, check out all 200 bug fixes and performance improvements […]

\\n"},{"id":4320,"title":"The Arrival of Streaming: Confluent Raises $50 Million Series C","url":"https://www.confluent.io/blog/the-arrival-of-streaming-confluent-raises-50-million-series-c/","imageUrl":"https://www.confluent.io/wp-content/uploads/streaming-platform.png","datePublished":"March 7, 2017","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":149,"name":"Funding","slug":"funding"}],"summary":"

I have some exciting news to share: we’ve completed a $50 million investment led by our newest partner, Sequoia Capital and Matt Miller of Sequoia will be joining our board […]

\\n"},{"id":4220,"title":"Confluent 3.2 with Apache Kafka® 0.10.2 Now Available","url":"https://www.confluent.io/blog/confluent-3-2-apache-kafka-0-10-2-now-available/","imageUrl":"https://www.confluent.io/wp-content/uploads/Sesion-windows.png","datePublished":"March 2, 2017","authors":[{"id":1055,"name":"Chrix Finne","image":"https://www.confluent.io/wp-content/uploads/chrix-150x150.jpg","slug":"chrix-finne"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":142,"name":"Dotnet","slug":"dotnet"},{"id":1181,"name":"JMS","slug":"jms"},{"id":110,"name":"Release","slug":"release"}],"summary":"

We’re excited to announce the release of Confluent 3.2, our enterprise streaming platform built on Apache Kafka. At Confluent, our vision is to provide a comprehensive, enterprise-ready streaming platform that […]

\\n"},{"id":4147,"title":"Kinetica Joins Confluent Partner Program and Releases Confluent Certified Connector for Apache Kafka®","url":"https://www.confluent.io/blog/kinetica-releases-confluent-certified-connector-for-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/02/Kafka_and_the_age_of_streaming_data_integration_image_kafka_connect.png","datePublished":"February 28, 2017","authors":[{"id":56,"name":"Chris Prendergast","image":"https://www.confluent.io/wp-content/uploads/Chris-Pendergrast-150x150.png","slug":"chris-prendergast"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":147,"name":"Confluent Partner Program","slug":"confluent-partner-program"},{"id":47,"name":"Connector","slug":"connector"},{"id":148,"name":"Kinetica","slug":"kinetica"}],"summary":"

This guest post is written by Chris Prendergast, VP of Business Development and Alliances at Kinetica. Today, we’re excited to announce that we have joined the Confluent Partner Program and […]

\\n"},{"id":4075,"title":"Join us for Kafka Summit Hackathon in New York City","url":"https://www.confluent.io/blog/join-us-kafka-summit-hackathon-new-york-city/","imageUrl":"https://www.confluent.io/wp-content/uploads/Bridge_banner.png","datePublished":"February 23, 2017","authors":[{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":98,"name":"Hackathon","slug":"hackathon"},{"id":146,"name":"Streams","slug":"streams"}],"summary":"

I’m happy to announce Confluent will be hosting another Kafka Summit Hackathon on May 7th in New York City! The free hackathon will take place a day prior to Kafka […]

\\n"},{"id":3999,"title":"Kafka Summit New York Keynote Speakers and Agenda Set","url":"https://www.confluent.io/blog/kafka-summit-new-york-keynote-speakers-agenda-set/","imageUrl":"https://www.confluent.io/wp-content/uploads/Bridge_banner.png","datePublished":"February 16, 2017","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1214,"name":"Agenda","slug":"agenda"},{"id":1165,"name":"Kafka Summit NYC","slug":"kafka-summit-nyc"}],"summary":"

We are excited to announce the keynote speakers and agenda for Kafka Summit NYC on May 8th! Mirroring the growth of Apache Kafka®, we received an overwhelming number of speaking […]

\\n"},{"id":3912,"title":"The First Annual State of Apache Kafka® Client Use Survey","url":"https://www.confluent.io/blog/first-annual-state-apache-kafka-client-use-survey/","imageUrl":"https://www.confluent.io/wp-content/uploads/image04-1.png","datePublished":"February 14, 2017","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":145,"name":"Clients","slug":"clients"}],"tags":[{"id":141,"name":"Clojure","slug":"clojure"},{"id":142,"name":"Dotnet","slug":"dotnet"},{"id":139,"name":"Go","slug":"go"},{"id":113,"name":"Java","slug":"java"},{"id":138,"name":"Python","slug":"python"},{"id":140,"name":"Ruby","slug":"ruby"},{"id":137,"name":"Scala","slug":"scala"},{"id":214,"name":"Survey","slug":"survey"}],"summary":"

At the end of 2016 we conducted a survey of the Apache Kafka® community regarding their use of Kafka clients (the producers and consumers used with Kafka) and their priorities […]

\\n"},{"id":3803,"title":"Log Compaction – Highlights in the Apache Kafka and Stream Processing Community – February 2017","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-apache-kafka-and-stream-processing-community-february-2017/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"February 8, 2017","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":null,"summary":"

As always, we bring you news, updates and recommended content from the hectic world of Apache Kafka® and stream processing. Sometimes it seems that in Apache Kafka every improvement is […]

\\n"},{"id":3680,"title":"Confluent Delivers Upgrades to Clients, The streams API in Kafka, Brokers and Apache Kafka™ 0.10.1.1","url":"https://www.confluent.io/blog/confluent-delivers-upgrades-clients-kafka-streams-brokers-apache-kafka-0-10-1-1/","imageUrl":"https://www.confluent.io/wp-content/uploads/platform-diagram-112916-HP_homepage.png","datePublished":"January 25, 2017","authors":[{"id":6,"name":"Ewen Cheslack-Postava","image":"https://www.confluent.io/wp-content/uploads/2016/08/e0468c9d90e6af40ddc76a13e4442b61.jpeg","slug":"ewen-cheslack-postava"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":110,"name":"Release","slug":"release"}],"summary":"

Last November, we released Confluent 3.1, with new connectors, clients, and Enterprise features. Today, we’re pleased to announce Confluent 3.1.2, a patch release which incorporates the latest stable version of […]

\\n"},{"id":3548,"title":"Apache Kafka: Getting Started","url":"https://www.confluent.io/blog/apache-kafka-getting-started/","imageUrl":"https://www.confluent.io/wp-content/uploads/learn-kafka.jpg","datePublished":"January 13, 2017","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"},{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

Seems that many engineers have “Learn Kafka” on their new year resolution list. This isn’t very surprising. Apache Kafka is a popular technology with many use-cases. Armed with basic Kafka […]

\\n"},{"id":3392,"title":"Log Compaction: Highlights in the Apache Kafka and Stream Processing Community – January 2017","url":"https://www.confluent.io/blog/log-compaction-highlights-apache-kafka-stream-processing-community-january-2017/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"January 5, 2017","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":null,"summary":"

Happy 2017! Wishing you a wonderful year full of fast and scalable data streams. Many things have happened since we last shared the state of Apache Kafka® and the streams […]

\\n"},{"id":2941,"title":"The Data Dichotomy: Rethinking the Way We Treat Data and Services","url":"https://www.confluent.io/blog/data-dichotomy-rethinking-the-way-we-treat-data-and-services/","imageUrl":"https://www.confluent.io/wp-content/uploads/image12.png","datePublished":"December 13, 2016","authors":[{"id":1027,"name":"Ben Stopford","image":"https://www.confluent.io/wp-content/uploads/ben-1-128x128.png","slug":"ben-stopford"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"}],"tags":[{"id":1176,"name":"Database","slug":"database"},{"id":94,"name":"Database System","slug":"database-system"}],"summary":"

If you were to stumble upon the whole microservices thing, without any prior context, you’d be forgiven for thinking it a little strange. Taking an application and splitting it into fragments, […]

\\n"},{"id":2820,"title":"Enterprise Streaming Multi-Datacenter Replication using Apache Kafka","url":"https://www.confluent.io/blog/enterprise-streaming-multi-datacenter-replication-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/MDC-Replictor.png","datePublished":"December 8, 2016","authors":[{"id":6,"name":"Ewen Cheslack-Postava","image":"https://www.confluent.io/wp-content/uploads/2016/08/e0468c9d90e6af40ddc76a13e4442b61.jpeg","slug":"ewen-cheslack-postava"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":131,"name":"Multi-Datacenter Replication","slug":"multi-datacenter-replication"},{"id":73,"name":"Replication","slug":"replication"}],"summary":"

One of the most common pain points we hear is around managing the flow and placement of data between datacenters. Almost every Apache Kafka user eventually ends up with clusters […]

\\n"},{"id":3061,"title":"Log Compaction | Highlights in the Apache Kafka and Stream Processing Community | December 2016","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-apache-kafka-and-stream-processing-community-december-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"December 6, 2016","authors":[{"id":1051,"name":"Apurva Mehta","image":"https://www.confluent.io/wp-content/uploads/Apurva-128x128.jpg","slug":"apurva-mehta"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":null,"summary":"

This month saw the proposal of a few KIPs which will have a big impact on Apache Kafka’s semantics as well as Kafka’s operability. KIP-95 : Incremental Batch Processing for […]

\\n"},{"id":2858,"title":"Announcing the 2017 Kafka Summits!","url":"https://www.confluent.io/blog/2017-kafka-summits/","imageUrl":"https://www.confluent.io/wp-content/uploads/Kafka-Summit-Logo.png","datePublished":"November 28, 2016","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":1165,"name":"Kafka Summit NYC","slug":"kafka-summit-nyc"},{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

This year, we were pleased to host the inaugural Kafka Summit, the first global summit for the Apache Kafka community. Kafka Summit 2016 contributed valuable content to help Kafka users […]

\\n"},{"id":2911,"title":"Announcing the Availability of Confluent Platform in Azure Marketplace","url":"https://www.confluent.io/blog/announcing-the-availability-of-confluent-enterprise-in-azure-marketplace/","imageUrl":"https://www.confluent.io/wp-content/uploads/microsoft-azure-screen.png","datePublished":"November 21, 2016","authors":[{"id":19,"name":"David Tucker","image":"https://www.confluent.io/wp-content/uploads/2016/08/DavidInIstanbul-329835-edited-150x150.jpg","slug":"david-tucker"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":135,"name":"Microsoft Azure","slug":"microsoft-azure"},{"id":1156,"name":"White Paper","slug":"white-paper"}],"summary":"

Confluent and Microsoft are pleased to announce the successful integration of Confluent Platform into Microsoft’s Azure Marketplace. Users can now rapidly deploy a complete Confluent Platform cluster with the click […]

\\n"},{"id":2822,"title":"Announcing Confluent 3.1 with Apache Kafka 0.10.1.0","url":"https://www.confluent.io/blog/announcing-confluent-3-1-with-apache-kafka-0-10-1-0/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/platform-diagram-102516_COMPARE.png","datePublished":"November 15, 2016","authors":[{"id":1030,"name":"Sriram Subramanian","image":"https://www.confluent.io/wp-content/uploads/Sriram-Subramanian-200x200-128x128.jpg","slug":"sriram-subramanian"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":132,"name":"Auto Data Balancing","slug":"auto-data-balancing"},{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":131,"name":"Multi-Datacenter Replication","slug":"multi-datacenter-replication"}],"summary":"

Today, we are excited to announce the release of Confluent 3.1, the only stream processing platform built entirely on Apache Kafka. At Confluent, our vision is to not only ship […]

\\n"},{"id":2712,"title":"Log Compaction | Highlights in the Apache Kafka and Stream Processing Community | November 2016","url":"https://www.confluent.io/blog/bloglog-compaction-highlights-in-the-apache-kafka-and-stream-processing-community-november-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"November 3, 2016","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":null,"summary":"

Last month the Apache Kafka community released version 0.10.1.0, the announcement blog contains a good description of new features and major improvements. In other exciting news, the PMC for Apache […]

\\n"},{"id":2384,"title":"Confluent Contributions to the Apache Kafka™ Client Ecosystem","url":"https://www.confluent.io/blog/confluent-contributions-to-the-apache-kafka-client-ecosystem/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo.png","datePublished":"November 2, 2016","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":145,"name":"Clients","slug":"clients"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":130,"name":"Ecosystem","slug":"ecosystem"},{"id":113,"name":"Java","slug":"java"},{"id":114,"name":"Languages","slug":"languages"}],"summary":"

If you are using Apache Kafka from a language other than Java one of the first questions you probably have is something like, “Why are there two (or five!) clients […]

\\n"},{"id":2489,"title":"Unifying Stream Processing and Interactive Queries in Apache Kafka","url":"https://www.confluent.io/blog/unifying-stream-processing-and-interactive-queries-in-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/10/IQueries-Blog-Diagrams-5-1.png","datePublished":"October 26, 2016","authors":[{"id":1057,"name":"Eno Thereska","image":"https://www.confluent.io/wp-content/uploads/2016/10/Eno_AIMG_2211-150x150.jpg","slug":"eno-thereska"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":126,"name":"Feature","slug":"feature"},{"id":1182,"name":"Interactive Queries","slug":"interactive-queries"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

This post was co-written with Damian Guy, Engineer at Confluent, Michael Noll, Product Manager at Confluent and Neha Narkhede, CTO and Co-Founder at Confluent. We are excited to announce Interactive […]

\\n"},{"id":2663,"title":"Confluent Event Streaming Platform and Syncsort Data Management: Bringing Big Data to Life","url":"https://www.confluent.io/blog/confluent-and-syncsort-forge-central-nervous-system-for-streaming-and-at-rest-data/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/10/syncsort-blog-1.png","datePublished":"October 25, 2016","authors":[{"id":1069,"name":"Paige Roberts","image":"https://www.confluent.io/wp-content/uploads/2016/10/paige-roberts-1-150x150.jpg","slug":"paige-roberts"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":130,"name":"Ecosystem","slug":"ecosystem"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"}],"summary":"

The following post is a guest blog by Paige Roberts, Product Manager, Syncsort. Paige spent 19 years in the data management industry in a wide variety of roles – programmer, analyst, trainer, […]

\\n"},{"id":2515,"title":"Apache Kafka for Real-Time Retail at Walmart Labs","url":"https://www.confluent.io/blog/apache-kafka-item-setup/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/10/walmart-example.png","datePublished":"October 24, 2016","authors":[{"id":1034,"name":"Anil Kumar","image":"https://www.confluent.io/wp-content/uploads/2016/10/anil-walmart-150x150.jpeg","slug":"anil-kumar"}],"categories":[{"id":111,"name":"Use Cases","slug":"use-cases"}],"tags":[{"id":1183,"name":"Retail","slug":"retail"}],"summary":"

This post is by Anil Kumar, Global eCommerce Engineer at Walmart Labs. Anil specializes in enabling stream processing, cloud computing, ad technology, search services, information retrieval, transport and application layer protocols, […]

\\n"},{"id":2635,"title":"Announcing Apache Kafka 0.10.1.0","url":"https://www.confluent.io/blog/announcing-apache-kafka-0-10-1-0/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/10/103_kafka_logo.png","datePublished":"October 20, 2016","authors":[{"id":14,"name":"Jason Gustafson","image":"https://www.confluent.io/wp-content/uploads/2016/08/Jason_ATO5C0448-945557-edited-150x150.jpg","slug":"jason-gustafson"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":1182,"name":"Interactive Queries","slug":"interactive-queries"},{"id":110,"name":"Release","slug":"release"}],"summary":"

The Apache Kafka community is pleased to announce the release of Apache Kafka 0.10.1.0. This is a feature release which includes the completion of 15 KIPs, over 200 bug fixes and […]

\\n"},{"id":2444,"title":"Streaming data from Oracle using Oracle GoldenGate and the Connect API in Kafka","url":"https://www.confluent.io/blog/streaming-data-oracle-using-oracle-goldengate-kafka-connect/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/10/ogges20-350x131-1.png","datePublished":"October 12, 2016","authors":[{"id":1033,"name":"Robin Moffatt","image":"https://www.confluent.io/wp-content/uploads/Robin_kafkasummit_headshot_600px-128x128.png","slug":"robin-moffatt"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":273,"name":"CDC","slug":"cdc"},{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":275,"name":"GoldenGate","slug":"goldengate"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":115,"name":"Oracle","slug":"oracle"},{"id":274,"name":"RDBMS","slug":"rdbms"}],"summary":"

This is a guest blog from Robin Moffatt. Robin Moffatt is Head of R&D (Europe) at Rittman Mead, and an Oracle ACE. His particular interests are analytics, systems architecture, administration, and […]

\\n"},{"id":2455,"title":"Log Compaction | Highlights in the Apache Kafka and Stream Processing Community | October 2016","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-apache-kafka-and-stream-processing-community-october-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"October 11, 2016","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":116,"name":"Community","slug":"community"},{"id":58,"name":"Confluent News","slug":"confluent-news"},{"id":88,"name":"KIP","slug":"kip"}],"summary":"

This month the community has been focused on the upcoming release of Apache Kafka 0.10.1.0. Led by the fearless release manager, Jason Gustafson, we voted on a release plan, cut […]

\\n"},{"id":2267,"title":"Introducing Apache Kafka™ for the Enterprise","url":"https://www.confluent.io/blog/introducing-apache-kafka-for-the-enterprise/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/mdc-1024x666-1-350x228-1.png","datePublished":"September 28, 2016","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":null,"summary":"

In May, we introduced our first enterprise-focused feature, Confluent Control Center, with the 3.0 release of Confluent. Today, more than 35% of the Fortune 500 companies use Kafka for mission-critical […]

\\n"},{"id":2090,"title":"Want to migrate to AWS Cloud? Use Apache Kafka.","url":"https://www.confluent.io/blog/want-migrate-aws-cloud-use-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/Want-to-migrate-to-AWS-Cloud-Use-Apache-Kafka-img-.png","datePublished":"September 22, 2016","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":1151,"name":"Confluent Cloud","slug":"confluent-cloud"}],"tags":[{"id":79,"name":"AWS","slug":"aws"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"}],"summary":"

Amazon’s AWS cloud is doing really well. Doing well to the tune of making $2.57 Billion in Q1 2016. That’s 64% up from Q1 last year. Clearly a lot of […]

\\n"},{"id":2070,"title":"Confluent at Strata + Hadoop World NYC 2016","url":"https://www.confluent.io/blog/confluent-strata-hadoop-world-nyc-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/sfeatured-strata-350x175-1.png","datePublished":"September 19, 2016","authors":[{"id":24,"name":"Luanne Dauber","image":"https://www.confluent.io/wp-content/uploads/lu-128x128.png","slug":"luanne-dauber"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":69,"name":"Conferences","slug":"conferences"},{"id":180,"name":"Hadoop","slug":"hadoop"},{"id":181,"name":"Strata","slug":"strata"}],"summary":"

Strata + Hadoop World kicks off in NYC from September 26-29, 2016 and will feature sessions and tutorials on the future of data. Naturally, Confluent will be there with speaking […]

\\n"},{"id":2034,"title":"Log Compaction | Highlights in the Apache Kafka and Stream Processing Community | September 2016","url":"https://www.confluent.io/blog/log-compaction-highlights-apache-kafka-stream-processing-community-september-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"September 14, 2016","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":58,"name":"Confluent News","slug":"confluent-news"},{"id":88,"name":"KIP","slug":"kip"}],"summary":"

It is September and it’s evident that everyone is back from their summer vacation! We released Apache Kafka 0.10.0.1 which includes fixes of the bugs in the 0.10.0 release. In […]

\\n"},{"id":1880,"title":"The Connect API in Kafka Cassandra Sink: The Perfect Match","url":"https://www.confluent.io/blog/kafka-connect-cassandra-sink-the-perfect-match/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/164.png","datePublished":"September 8, 2016","authors":[{"id":1020,"name":"Andrew Stevenson","image":"https://www.confluent.io/wp-content/uploads/2016/10/astevenson-pic-1-150x150-1.png","slug":"andrew-stevenson"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":81,"name":"Cassandra","slug":"cassandra"},{"id":47,"name":"Connector","slug":"connector"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":106,"name":"KCQL","slug":"kcql"}],"summary":"

This guest post is written by Andrew Stevenson, CTO at DataMountaineer. Andrew focuses on providing real-time data pipelines allowing reactive decision making, streaming analytics and big data integration. He has […]

\\n"},{"id":1798,"title":"Event sourcing, CQRS, stream processing and Apache Kafka: What’s the connection?","url":"https://www.confluent.io/blog/event-sourcing-cqrs-stream-processing-apache-kafka-whats-connection/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/Event-sourced-based-architecture.jpeg","datePublished":"September 7, 2016","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":286,"name":"Microservices","slug":"microservices"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":105,"name":"CQRS","slug":"cqrs"},{"id":104,"name":"Event Sourcing","slug":"event-sourcing"},{"id":1182,"name":"Interactive Queries","slug":"interactive-queries"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1183,"name":"Retail","slug":"retail"}],"summary":"

Event sourcing as an application architecture pattern is rising in popularity. Event sourcing involves modeling the state changes made by applications as an immutable sequence or “log” of events. Instead […]

\\n"},{"id":1749,"title":"Announcing Confluent Platform 3.0.1 & Apache Kafka 0.10.0.1","url":"https://www.confluent.io/blog/announcing-confluent-platform-3-0-1-apache-kafka-0-10-0-1/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo-350x200-1.png","datePublished":"September 6, 2016","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":110,"name":"Release","slug":"release"}],"summary":"

A few months ago, we announced the release of open-source Confluent Platform 3.0 and Apache Kafka 0.10, marking the availability of Kafka Streams — the new stream processing engine of […]

\\n"},{"id":1709,"title":"Flink and Kafka Streams: a Comparison and Guideline for Users","url":"https://www.confluent.io/blog/apache-flink-apache-kafka-streams-comparison-guideline-users/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/170_streams_1.png","datePublished":"September 2, 2016","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":83,"name":"Flink","slug":"flink"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

This blog post is written jointly by Stephan Ewen, CTO of data Artisans, and Neha Narkhede, CTO of Confluent. Stephan Ewen is PMC member of Apache Flink and co-founder and CTO […]

\\n"},{"id":1514,"title":"Sharing is Caring: Multi-tenancy in Distributed Data Systems","url":"https://www.confluent.io/blog/sharing-is-caring-multi-tenancy-in-distributed-data-systems/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/169_Computers_Datacenter.jpg","datePublished":"August 24, 2016","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":1220,"name":"Big Ideas","slug":"big-ideas"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":53,"name":"Multi-Tenancy","slug":"multi-tenancy"},{"id":54,"name":"Scalability","slug":"scalability"},{"id":50,"name":"Security","slug":"security"}],"summary":"

Most people think that what’s exciting about distributed systems is the ability to support really big applications. When you read a blog about a new distributed database, it usually talks […]

\\n"},{"id":1127,"title":"Data Reprocessing with the Streams API in Kafka: Resetting a Streams Application","url":"https://www.confluent.io/blog/data-reprocessing-with-kafka-streams-resetting-a-streams-application/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/170_streams_1.png","datePublished":"August 15, 2016","authors":[{"id":25,"name":"Matthias J. Sax","image":"https://www.confluent.io/wp-content/uploads/slack-128x128.jpg","slug":"matthias-j-sax"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":54,"name":"Scalability","slug":"scalability"},{"id":146,"name":"Streams","slug":"streams"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

This blog post is the third in a series about the Streams API of Apache Kafka, the new stream processing library of the Apache Kafka project, which was introduced in Kafka v0.10.

\\n"},{"id":1121,"title":"The Top Sessions from This Year’s Kafka Summit Are…","url":"https://www.confluent.io/blog/the-top-sessions-from-kafka-summit-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/115_kafka_summit.png","datePublished":"August 9, 2016","authors":[{"id":24,"name":"Luanne Dauber","image":"https://www.confluent.io/wp-content/uploads/lu-128x128.png","slug":"luanne-dauber"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"},{"id":57,"name":"Real-Time Data","slug":"real-time-data"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

This past April, Confluent hosted the inaugural Kafka Summit in San Francisco. Bringing together the entire Kafka community to share use cases, learnings and to participate in the hackathon. The […]

\\n"},{"id":900,"title":"Log Compaction | Highlights in the Apache Kafka and Stream Processing Community | August 2016","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-apache-kafka-and-stream-processing-community-august-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"July 30, 2016","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":59,"name":"Spark","slug":"spark"}],"summary":"

It is August already, and this marks exactly one year of monthly “Log Compaction” blog posts – summarizing news from the very active Apache Kafka and stream processing community. Hope […]

\\n"},{"id":897,"title":"Design and Deployment Considerations for Deploying Apache Kafka on AWS","url":"https://www.confluent.io/blog/design-and-deployment-considerations-for-deploying-apache-kafka-on-aws/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/125_Generic.png","datePublished":"July 28, 2016","authors":[{"id":23,"name":"Alex Loddengaard","image":"https://www.confluent.io/wp-content/uploads/2016/08/alex-150x150.png","slug":"alex-loddengaard"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":79,"name":"AWS","slug":"aws"},{"id":54,"name":"Scalability","slug":"scalability"}],"summary":"

Apache Kafka (the basis for the Confluent Platform) delivers an advanced stream processing platform for streaming data across AWS, GCP, and Azure at scale, used by thousands of companies. Amazon […]

\\n"},{"id":895,"title":"Secure Stream Processing with the Streams API in Kafka","url":"https://www.confluent.io/blog/secure-stream-processing-with-kafka-streams/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/170_streams.png","datePublished":"July 21, 2016","authors":[{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":50,"name":"Security","slug":"security"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

This blog post is the second in a series about the Streams API of Apache Kafka, the new stream processing library of the Apache Kafka project, which was introduced in Kafka v0.10. Current […]

\\n"},{"id":890,"title":"Elastic Scaling in the Streams API in Kafka","url":"https://www.confluent.io/blog/elastic-scaling-in-kafka-streams/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/170_streams_1.png","datePublished":"July 12, 2016","authors":[{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":61,"name":"Elasticity","slug":"elasticity"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":54,"name":"Scalability","slug":"scalability"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

This blog post is the first in a series about the Streams API of Apache Kafka, the new stream processing library of the Apache Kafka project, which was introduced in Kafka v0.10. Current […]

\\n"},{"id":888,"title":"Log Compaction | Highlights in the Apache Kafka and Stream Processing Community | July 2016","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-apache-kafka-and-stream-processing-community-july-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"July 1, 2016","authors":[{"id":10,"name":"Guozhang Wang","image":"https://www.confluent.io/wp-content/uploads/2016/08/Guozhang_ATO5C0221-025338-edited-150x150.jpg","slug":"guozhang-wang"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":88,"name":"KIP","slug":"kip"}],"summary":"

Here comes the July 2016 edition of Log Compaction, a monthly digest of highlights in the Apache Kafka and stream processing community. Want to share some exciting news on this […]

\\n"},{"id":879,"title":"Build and monitor Kafka pipelines with Confluent Control Center","url":"https://www.confluent.io/blog/introducing-confluent-control-center/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/C.png","datePublished":"June 28, 2016","authors":[{"id":22,"name":"Joseph Adler","image":"https://www.confluent.io/wp-content/uploads/2016/08/Joe_AIMG_9478-772945-edited-859720-edited-150x150.jpg","slug":"joseph-adler"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":64,"name":"Monitoring","slug":"monitoring"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

On May 24, we announced Confluent Control Center, an application for managing and monitoring a Kafka-based streaming platform. Control Center has a beautiful user interface, and under the surface we […]

\\n"},{"id":861,"title":"Distributed, Real-time Joins and Aggregations on User Activity Events using Kafka Streams","url":"https://www.confluent.io/blog/distributed-real-time-joins-and-aggregations-on-user-activity-events-using-kafka-streams/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/170_streams_1.png","datePublished":"June 23, 2016","authors":[{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":65,"name":"Event-Triggered Analysis","slug":"event-triggered-analysis"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":54,"name":"Scalability","slug":"scalability"},{"id":146,"name":"Streams","slug":"streams"}],"summary":"

In previous blog posts we introduced Kafka Streams and demonstrated an end-to-end Hello World streaming application that analyzes Wikipedia real-time updates through a combination of Kafka Streams and Kafka Connect. […]

\\n"},{"id":857,"title":"Apache Kafka and Kafka Streams at Berlin Buzzwords","url":"https://www.confluent.io/blog/apache-kafka-and-kafka-streams-at-berlin-buzzwords/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/08/Neha_Narkhede_at_Berlin_Buzzwords.jpg","datePublished":"June 15, 2016","authors":[{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"}],"categories":[{"id":78,"name":"Company","slug":"company"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":69,"name":"Conferences","slug":"conferences"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":90,"name":"Talks","slug":"talks"}],"summary":"

At the beginning of June several Confluent team members attended Berlin Buzzwords 2016, where we gave three talks focused on stream processing and distributed computing. These talks, which we summarize […]

\\n"},{"id":852,"title":"Building a Streaming Analytics Stack with Apache Kafka and Druid","url":"https://www.confluent.io/blog/building-a-streaming-analytics-stack-with-apache-kafka-and-druid/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/110_doublelogo.png","datePublished":"June 14, 2016","authors":[{"id":21,"name":"Fangjin Yang","image":"https://www.confluent.io/wp-content/uploads/2016/08/profile_pic_large_1-150x150.jpeg","slug":"fangjin-yang"}],"categories":[{"id":1449,"name":"Analytics","slug":"analytics"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":91,"name":"Druid","slug":"druid"},{"id":66,"name":"Real-Time Analytics","slug":"real-time-analytics"},{"id":63,"name":"Stream Data","slug":"stream-data"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

This is a guest blog from Fangjin Yang. Fangjin is the co-founder and CEO of Imply, a San Francisco based technology company, and one of the main committers of the Druid […]

\\n"},{"id":849,"title":"Kafka Connect Sink for PostgreSQL from JustOne Database","url":"https://www.confluent.io/blog/kafka-connect-sink-for-postgresql-from-justone-database/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/111_ImageBlog.png","datePublished":"June 1, 2016","authors":[{"id":20,"name":"Duncan Pauly","image":"https://www.confluent.io/wp-content/uploads/2016/08/Duncan_Pauly-150x150.jpg","slug":"duncan-pauly"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":47,"name":"Connector","slug":"connector"},{"id":67,"name":"JustOne","slug":"justone"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":95,"name":"PostgreSQL","slug":"postgresql"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

The following post was written by guest blogger Duncan Pauly from JustOne. JustOne is a member of the Confluent partner program. Duncan is the Chief Technology Officer at JustOne and possesses over two decades of senior technical […]

\\n"},{"id":847,"title":"Log Compaction | Highlights in the Apache Kafka and Stream Processing Community | June 2016","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-apache-kafka-and-stream-processing-community-june-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"June 1, 2016","authors":[{"id":10,"name":"Guozhang Wang","image":"https://www.confluent.io/wp-content/uploads/2016/08/Guozhang_ATO5C0221-025338-edited-150x150.jpg","slug":"guozhang-wang"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

After months of testing efforts and seven voting rounds, Apache Kafka 0.10.0 and the corresponding Confluent Platform 3.0 have been finally released, cheers!

\\n"},{"id":842,"title":"Announcing Apache Kafka 0.10 and Confluent Platform 3.0","url":"https://www.confluent.io/blog/announcing-apache-kafka-0-10-and-confluent-platform-3-0/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo.png","datePublished":"May 24, 2016","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":44,"name":"Confluent Control Center","slug":"confluent-control-center"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":110,"name":"Release","slug":"release"}],"summary":"

I am very excited to announce the availability of the 0.10 release of Apache Kafka and the 3.0 release of the Confluent Platform. This release marks the availability of Kafka […]

\\n"},{"id":838,"title":"Log Compaction | Kafka Summit Edition | May 2016","url":"https://www.confluent.io/blog/log-compaction-kafka-summit-edition-may-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"May 1, 2016","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":69,"name":"Conferences","slug":"conferences"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

Last week, Confluent hosted Kafka Summit, the first ever conference to focus on Apache Kafka and stream processing. It was exciting to see the stream processing community coming together in […]

\\n"},{"id":833,"title":"Kafka Summit is Here","url":"https://www.confluent.io/blog/kafka-summit-is-here/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/115_kafka_summit.png","datePublished":"April 26, 2016","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":982,"name":"Kafka Summit","slug":"kafka-summit"}],"tags":[{"id":1170,"name":"Kafka Summit SF","slug":"kafka-summit-sf"}],"summary":"

We at Confluent are pleased to announce that the inaugural Kafka Summit, the first global summit of the Apache Kafka community, is happening today at the Hilton in San Francisco. […]

\\n"},{"id":827,"title":"Deploying Apache Kafka on AWS Elastic Block Store (EBS)","url":"https://www.confluent.io/blog/deploying-apache-kafka-on-aws-elastic-block-store-ebs/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/116_storage_infrastructure.png","datePublished":"April 19, 2016","authors":[{"id":19,"name":"David Tucker","image":"https://www.confluent.io/wp-content/uploads/2016/08/DavidInIstanbul-329835-edited-150x150.jpg","slug":"david-tucker"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":79,"name":"AWS","slug":"aws"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":97,"name":"Storage","slug":"storage"}],"summary":"

Apache Kafka is designed to be highly performant, reliable, scalable, and fault tolerant. At the same time, the performance and reliability of a Kafka cluster is highly dependent on the […]

\\n"},{"id":814,"title":"How We Monitor and Run Kafka At Scale","url":"https://www.confluent.io/blog/how-we-monitor-and-run-kafka-at-scale-signalfx/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/08/Kafka_Monitoring_-_Rebalancing_1.png","datePublished":"April 14, 2016","authors":[{"id":18,"name":"Rajiv Kurian","image":"https://www.confluent.io/wp-content/uploads/2016/08/Rajiv_Kurian.png","slug":"rajiv-kurian"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":93,"name":"Latency","slug":"latency"},{"id":64,"name":"Monitoring","slug":"monitoring"},{"id":54,"name":"Scalability","slug":"scalability"},{"id":100,"name":"SignalFx","slug":"signalfx"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

This post was written by guest blogger Rajiv Kurian from SignalFx. SignalFx is a member of the Confluent partner program. Rajiv is a software engineer with over five years experience building […]

\\n"},{"id":810,"title":"Join us for the Inaugural Stream Data Hackathon","url":"https://www.confluent.io/blog/join-us-for-the-inaugural-stream-data-hackathon/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1.png","datePublished":"April 12, 2016","authors":[{"id":6,"name":"Ewen Cheslack-Postava","image":"https://www.confluent.io/wp-content/uploads/2016/08/e0468c9d90e6af40ddc76a13e4442b61.jpeg","slug":"ewen-cheslack-postava"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":98,"name":"Hackathon","slug":"hackathon"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

I’m happy to announce that Confluent will be hosting the first Stream Data Hackathon this April 25th in San Francisco! Apache Kafka has recently introduced two new major features: Kafka […]

\\n"},{"id":801,"title":"Hello World, Kafka Connect + Kafka Streams","url":"https://www.confluent.io/blog/hello-world-kafka-connect-kafka-streams/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/119_imageblog.png","datePublished":"April 1, 2016","authors":[{"id":17,"name":"Michal Haris","image":"https://www.confluent.io/wp-content/uploads/2016/08/michal.haris_.2016-468476-edited-150x150.png","slug":"michal-haris"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":89,"name":"Event Streaming","slug":"event-streaming"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

Important: The information in this article is outdated. With recent Kafka versions the integration between Kafka Connect and Kafka Streams as well as KSQL has become much simpler and easier. […]

\\n"},{"id":799,"title":"Log Compaction | Highlights in the Apache Kafka and Stream Processing Community | April 2016","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-kafka-and-stream-processing-community-april-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"April 1, 2016","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":52,"name":"Kafka Training","slug":"kafka-training"}],"summary":"

The Apache Kafka community was crazy-busy last month. We released a technical preview of Kafka Streams and then voted on a release plan for Kafka 0.10.0. We accelerated the discussion […]

\\n"},{"id":796,"title":"Announcing Confluent University: World-Class Apache Kafka Training","url":"https://www.confluent.io/blog/announcing-confluent-university-world-class-kafka-training/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo.png","datePublished":"March 29, 2016","authors":[{"id":16,"name":"Ian Wrigley","image":"https://www.confluent.io/wp-content/uploads/2016/08/Ian_AIMG_9576-716852-edited-872632-edited-150x150.jpg","slug":"ian-wrigley"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":72,"name":"Integration","slug":"integration"},{"id":52,"name":"Kafka Training","slug":"kafka-training"},{"id":64,"name":"Monitoring","slug":"monitoring"}],"summary":"

I’m pleased to announce the launch of Confluent University: world-class Apache Kafka training now available both onsite and at public venues. Although we’ve been offering onsite training to our customers […]

\\n"},{"id":780,"title":"Introducing Kafka Streams: Stream Processing Made Simple","url":"https://www.confluent.io/blog/introducing-kafka-streams-stream-processing-made-simple/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/170_streams_1.png","datePublished":"March 10, 2016","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":57,"name":"Real-Time Data","slug":"real-time-data"},{"id":63,"name":"Stream Data","slug":"stream-data"},{"id":146,"name":"Streams","slug":"streams"}],"summary":"

I’m really excited to announce a major new feature in Apache Kafka v0.10: Kafka’s Streams API. The Streams API, available as a Java library that is part of the official […]

\\n"},{"id":778,"title":"Log Compaction | Highlights in the Kafka and Stream Processing Community | March 2016","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-kafka-and-stream-processing-community-march-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"March 1, 2016","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":52,"name":"Kafka Training","slug":"kafka-training"}],"summary":"

It was another productive month in the Apache Kafka community. Many of the KIPs that were under active discussion in the last Log Compaction were implemented, reviewed, and merged into […]

\\n"},{"id":776,"title":"Announcing Apache Kafka 0.9.0.1 and Confluent Platform 2.0.1","url":"https://www.confluent.io/blog/announcing-apache-kafka-0-9-0-1-and-confluent-platform-2-0-1/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo.png","datePublished":"February 19, 2016","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":50,"name":"Security","slug":"security"}],"summary":"

A few months ago, we announced the major release of Apache Kafka 0.9, which added several new features like Security, Kafka Connect, the new Java consumer and also critical bug […]

\\n"},{"id":763,"title":"Announcing Kafka Connect: Building large-scale low-latency data pipelines","url":"https://www.confluent.io/blog/announcing-kafka-connect-building-large-scale-low-latency-data-pipelines/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/125_Generic.png","datePublished":"February 18, 2016","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":93,"name":"Latency","slug":"latency"},{"id":66,"name":"Real-Time Analytics","slug":"real-time-analytics"},{"id":57,"name":"Real-Time Data","slug":"real-time-data"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

For a long time, a substantial portion of data processing that companies did ran as big batch jobs — CSV files dumped out of databases, log files collected at the […]

\\n"},{"id":756,"title":"Log Compaction | Highlights in the Kafka and Stream Processing Community | February 2016","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-kafka-and-stream-processing-community-february-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"February 1, 2016","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":72,"name":"Integration","slug":"integration"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"},{"id":59,"name":"Spark","slug":"spark"}],"summary":"

Welcome to the February 2016 edition of Log Compaction, a monthly digest of highlights in the Apache Kafka and stream processing community. Got a newsworthy item? Let us know.

\\n"},{"id":722,"title":"Apache Kafka Security 101","url":"https://www.confluent.io/blog/apache-kafka-security-authorization-authentication-encryption/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/104_Security_a.png","datePublished":"February 1, 2016","authors":[{"id":15,"name":"Ismael Juma","image":"https://www.confluent.io/wp-content/uploads/2016/08/Ismael_ATO5C9995-434563-edited-150x150.jpg","slug":"ismael-juma"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":72,"name":"Integration","slug":"integration"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":50,"name":"Security","slug":"security"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

TLS, Kerberos, SASL, and Authorizer in Apache Kafka 0.9 – Enabling New Encryption, Authorization, and Authentication Features Apache Kafka is frequently used to store critical data making it one of […]

\\n"},{"id":716,"title":"Introducing the Kafka Consumer: Getting Started with the New Apache Kafka 0.9 Consumer Client","url":"https://www.confluent.io/blog/tutorial-getting-started-with-the-new-apache-kafka-0-9-consumer-client/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo.png","datePublished":"January 21, 2016","authors":[{"id":14,"name":"Jason Gustafson","image":"https://www.confluent.io/wp-content/uploads/2016/08/Jason_ATO5C0448-945557-edited-150x150.jpg","slug":"jason-gustafson"}],"categories":[{"id":145,"name":"Clients","slug":"clients"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":64,"name":"Monitoring","slug":"monitoring"},{"id":50,"name":"Security","slug":"security"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

When Kafka was originally created, it shipped with a Scala producer and consumer client. Over time we came to realize many of the limitations of these APIs. For example, we […]

\\n"},{"id":714,"title":"290 Reasons to Upgrade to Apache Kafka 0.9.0.0","url":"https://www.confluent.io/blog/290-reasons-to-upgrade-to-apache-kafka-0-9-0-0/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo.png","datePublished":"January 13, 2016","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":74,"name":"Message Delivery","slug":"message-delivery"},{"id":73,"name":"Replication","slug":"replication"},{"id":50,"name":"Security","slug":"security"}],"summary":"

When we released Apache Kafka 0.9.0.0, we talked about all of the big new features we added: the new consumer, Kafka Connect, security features, and much more. What we didn’t […]

\\n"},{"id":709,"title":"Log Compaction | Highlights in the Kafka and Stream Processing Community | January 2016","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-kafka-and-stream-processing-community-january-2016/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"January 1, 2016","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

Happy 2016! Wishing you a wonderful, highly scalable, and very reliable year. Log Compaction is a monthly digest of highlights in the Apache Kafka and stream processing community. Got a newsworthy item? Let us […]

\\n"},{"id":702,"title":"How to Build a Scalable ETL Pipeline with Kafka Connect","url":"https://www.confluent.io/blog/how-to-build-a-scalable-etl-pipeline-with-kafka-connect/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/131_Pipes_2.png","datePublished":"December 17, 2015","authors":[{"id":13,"name":"Liquan Pei","image":"https://www.confluent.io/wp-content/uploads/2016/08/Liquan_ATO5C9833-186838-edited-150x150.jpg","slug":"liquan-pei"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"},{"id":1469,"name":"Pipelines","slug":"pipelines"}],"tags":[{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":66,"name":"Real-Time Analytics","slug":"real-time-analytics"},{"id":54,"name":"Scalability","slug":"scalability"}],"summary":"

Apache Kafka is a high-throughput distributed message system that is being adopted by hundreds of companies to manage their real-time data. Companies use Kafka for many applications (real time stream […]

\\n"},{"id":697,"title":"Confluent Platform 2.0 is GA!","url":"https://www.confluent.io/blog/confluent-platform-2-0-with-apache-kafka-0-9-ga/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/Confluent_Platform_1.png","datePublished":"December 1, 2015","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":57,"name":"Real-Time Data","slug":"real-time-data"},{"id":110,"name":"Release","slug":"release"},{"id":50,"name":"Security","slug":"security"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

We are very excited to announce the general availability of Confluent Platform 2.0. For organizations that want to build a streaming data pipeline around Apache Kafka, Confluent Platform is the […]

\\n"},{"id":694,"title":"Apache Kafka 0.9 is Released","url":"https://www.confluent.io/blog/apache-kafka-0-9-is-released/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/119_imageblog.png","datePublished":"November 24, 2015","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":72,"name":"Integration","slug":"integration"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":46,"name":"Kafka Connect","slug":"kafka-connect"},{"id":53,"name":"Multi-Tenancy","slug":"multi-tenancy"},{"id":110,"name":"Release","slug":"release"},{"id":50,"name":"Security","slug":"security"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

I am pleased to announce the availability of the 0.9 release of Apache Kafka. This release has been in the works for several months with contributions from the community and […]

\\n"},{"id":691,"title":"Log Compaction | Highlights in the Kafka and Stream Processing Community | November 2015","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-kafka-and-stream-processing-community-november-2015/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"November 1, 2015","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":72,"name":"Integration","slug":"integration"},{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

The Apache Kafka community just concluded its busiest month ever. As we are preparing for the upcoming release of Kafka 0.9.0.0, the community worked together to close a record number […]

\\n"},{"id":679,"title":"Apache Kafka, Purgatory, and Hierarchical Timing Wheels","url":"https://www.confluent.io/blog/apache-kafka-purgatory-hierarchical-timing-wheels/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/135_imageblog.png","datePublished":"October 28, 2015","authors":[{"id":8,"name":"Yasuhiro Matsuda","image":"https://www.confluent.io/wp-content/uploads/2016/08/yasuhiro-150x150.jpg","slug":"yasuhiro-matsuda"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":80,"name":"Distributed System","slug":"distributed-system"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":54,"name":"Scalability","slug":"scalability"}],"summary":"

Apache Kafka has a data structure called the “request purgatory”. The purgatory holds any request that hasn’t yet met its criteria to succeed but also hasn’t yet resulted in an […]

\\n"},{"id":674,"title":"Log Compaction | Highlights in the Kafka and Stream Processing Community | October 2015","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-kafka-and-stream-processing-community-october-2015/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"October 12, 2015","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":45,"name":"Kafka Streams","slug":"kafka-streams"}],"summary":"

The amount of work that got done by the community in the last month is truly impressive, especially considering how many conferences took place in September. Let’s take a look at the highlights: The […]

\\n"},{"id":670,"title":"Yes, Virginia, You Really Do Need a Schema Registry","url":"https://www.confluent.io/blog/schema-registry-kafka-stream-processing-yes-virginia-you-really-need-one/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/137_blogimage.png","datePublished":"September 24, 2015","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":47,"name":"Connector","slug":"connector"},{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":48,"name":"Schema Registry","slug":"schema-registry"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

I ran into the schema-management problem while working with my second Hadoop customer. Until then, there was one true database and the database was responsible for managing schemas and pretty […]

\\n"},{"id":666,"title":"Confluent at Apache: Big Data Europe | Being Ready for Apache Kafka","url":"https://www.confluent.io/blog/confluent-at-apache-big-data-europe-being-ready-for-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/138_conference.png","datePublished":"September 1, 2015","authors":[{"id":12,"name":"Michael Noll","image":"https://www.confluent.io/wp-content/uploads/2016/08/Michael_ATO5C9665-200676-edited-150x150.jpg","slug":"michael-noll"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":69,"name":"Conferences","slug":"conferences"}],"summary":"

Many of today’s most popular Big Data software projects such as Apache Hadoop and Apache Kafka are managed under the umbrella of the Apache Software Foundation. Hence a formidable way […]

\\n"},{"id":659,"title":"Apache Kafka Hits 1.1 Trillion Messages Per Day – Joins the 4 Comma Club","url":"https://www.confluent.io/blog/apache-kafka-hits-1-1-trillion-messages-per-day-joins-the-4-comma-club/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/139_Comma.png","datePublished":"September 1, 2015","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":57,"name":"Real-Time Data","slug":"real-time-data"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

I am very excited that LinkedIn’s deployment of Apache Kafka has surpassed 1.1 trillion (yes, trillion with a “t”, and 4 commas) messages per day. This is the largest deployment of Apache […]

\\n"},{"id":656,"title":"Log Compaction | Highlights in the Kafka and Stream Processing Community | September 2015","url":"https://www.confluent.io/blog/log-compaction-highlights-in-the-kafka-and-stream-processing-community-september-2015/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"September 1, 2015","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":81,"name":"Cassandra","slug":"cassandra"},{"id":59,"name":"Spark","slug":"spark"}],"summary":"

September is the start of the fall conference season. Between Strata + Hadoop World New York and ApacheCon: Big Data Europe, there is plenty to keep us busy learning.

\\n"},{"id":635,"title":"Distributed Consensus Reloaded: Apache ZooKeeper and Replication in Apache Kafka","url":"https://www.confluent.io/blog/distributed-consensus-reloaded-apache-zookeeper-and-replication-in-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/164_1.png","datePublished":"August 27, 2015","authors":[{"id":11,"name":"Flavio Junqueira","image":"https://www.confluent.io/wp-content/uploads/2016/08/f1c75d661c92643f5bae7f338c257404-80.png","slug":"flavio-junqueira"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":80,"name":"Distributed System","slug":"distributed-system"},{"id":72,"name":"Integration","slug":"integration"},{"id":73,"name":"Replication","slug":"replication"},{"id":82,"name":"ZooKeeper","slug":"zookeeper"}],"summary":"

This post was jointly written by Neha Narkhede, co-creator of Apache Kafka, and Flavio Junqueira, co-creator of Apache ZooKeeper. Many distributed systems that we build and use currently rely on dependencies like […]

\\n"},{"id":632,"title":"Confluent at VLDB 2015 | Building a Replicated Logging System with Apache Kafka","url":"https://www.confluent.io/blog/confluent-at-vldb-2015-building-a-replicated-logging-system-with-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/142_conference.png","datePublished":"August 20, 2015","authors":[{"id":10,"name":"Guozhang Wang","image":"https://www.confluent.io/wp-content/uploads/2016/08/Guozhang_ATO5C0221-025338-edited-150x150.jpg","slug":"guozhang-wang"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":69,"name":"Conferences","slug":"conferences"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

There has been much renewed interest in using log-centric architectures to scale distributed systems that provide efficient durability and high availability. In this approach, a collection of distributed servers can […]

\\n"},{"id":630,"title":"Log Compaction | Highlights in the Kafka and Stream Processing Community | August 2015","url":"https://www.confluent.io/blog/log-compaction-highlights-stream-processing-kafka-2015-08/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/102_log-compaction_1_revised-e1483639198129.png","datePublished":"August 12, 2015","authors":[{"id":9,"name":"Gwen Shapira","image":"https://www.confluent.io/wp-content/uploads/2016/08/Gwen_ATO5C9719-762475-edited-1-150x150.jpg","slug":"gwen-shapira"}],"categories":[{"id":77,"name":"Log Compaction","slug":"log-compaction"}],"tags":[{"id":83,"name":"Flink","slug":"flink"},{"id":72,"name":"Integration","slug":"integration"}],"summary":"

Welcome to the first edition of Log Compaction, a monthly digest of highlights in the Apache Kafka and stream processing community. Today’s edition are the highlights from July and early […]

\\n"},{"id":600,"title":"Apache Kafka, Samza, and the Unix Philosophy of Distributed Data","url":"https://www.confluent.io/blog/apache-kafka-samza-and-the-unix-philosophy-of-distributed-data/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/144_imageblog.png","datePublished":"August 1, 2015","authors":[{"id":4,"name":"Martin Kleppmann","image":"https://www.confluent.io/wp-content/uploads/2016/08/martinkl-2013-400px-150x150.jpg","slug":"martin-kleppmann"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":68,"name":"Big Data","slug":"big-data"},{"id":80,"name":"Distributed System","slug":"distributed-system"},{"id":84,"name":"Samza","slug":"samza"},{"id":85,"name":"Unix","slug":"unix"}],"summary":"

One of the things I realised while doing research for my book is that contemporary software engineering still has a lot to learn from the 1970s. As we’re in such […]

\\n"},{"id":595,"title":"Compression in Apache Kafka is now 34% faster","url":"https://www.confluent.io/blog/compression-in-apache-kafka-is-now-34-percent-faster/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo.png","datePublished":"July 30, 2015","authors":[{"id":8,"name":"Yasuhiro Matsuda","image":"https://www.confluent.io/wp-content/uploads/2016/08/yasuhiro-150x150.jpg","slug":"yasuhiro-matsuda"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":86,"name":"Compressed Data","slug":"compressed-data"},{"id":72,"name":"Integration","slug":"integration"},{"id":57,"name":"Real-Time Data","slug":"real-time-data"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

Apache Kafka is widely used to enable a number of data intensive operations from collecting log data for analysis to acting as a storage layer for large scale real-time stream […]

\\n"},{"id":588,"title":"Getting started with Kafka in node.js with the Confluent REST Proxy","url":"https://www.confluent.io/blog/getting-started-with-kafka-in-node-js-with-the-confluent-rest-proxy/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/121_ConfluentUniversity.png","datePublished":"July 23, 2015","authors":[{"id":6,"name":"Ewen Cheslack-Postava","image":"https://www.confluent.io/wp-content/uploads/2016/08/e0468c9d90e6af40ddc76a13e4442b61.jpeg","slug":"ewen-cheslack-postava"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":49,"name":"REST Proxy","slug":"rest-proxy"},{"id":63,"name":"Stream Data","slug":"stream-data"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

Previously, I posted about the Kafka REST Proxy from Confluent, which provides easy access to a Kafka cluster from any language. That post focused on the motivation, low-level examples, and […]

\\n"},{"id":581,"title":"Making Apache Kafka Elastic With Apache Mesos","url":"https://www.confluent.io/blog/making-apache-kafka-elastic-with-apache-mesos/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo.png","datePublished":"July 16, 2015","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":61,"name":"Elasticity","slug":"elasticity"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":87,"name":"Mesos","slug":"mesos"},{"id":57,"name":"Real-Time Data","slug":"real-time-data"},{"id":63,"name":"Stream Data","slug":"stream-data"},{"id":136,"name":"Tutorial","slug":"tutorial"}],"summary":"

This post has been written in collaboration with Derrick Harris from Mesosphere and Joe Stein, a Kafka committer. For an updated version of this article, please see Apache Mesos, Apache Kafka and […]

\\n"},{"id":579,"title":"Confluent Raises a Series B","url":"https://www.confluent.io/blog/confluent-raises-a-series-b-funding/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/Confluent_Platform_3.png","datePublished":"July 1, 2015","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":58,"name":"Confluent News","slug":"confluent-news"},{"id":149,"name":"Funding","slug":"funding"}],"summary":"

It is my pleasure to announce that Confluent has raised a Series B funding of $24M, led by Index Ventures and joined by our Series A investor, Benchmark. Mike Volpi […]

\\n"},{"id":569,"title":"Hands-free Kafka Replication: A lesson in operational simplicity","url":"https://www.confluent.io/blog/hands-free-kafka-replication-a-lesson-in-operational-simplicity/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/149_blogimage.png","datePublished":"July 1, 2015","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":73,"name":"Replication","slug":"replication"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

Building operational simplicity into distributed systems, especially for nuanced behaviors, is somewhat of an art and often best achieved after gathering production experience. Apache Kafka‘s popularity can be attributed in […]

\\n"},{"id":565,"title":"The Value of Apache Kafka in Big Data Ecosystem","url":"https://www.confluent.io/blog/the-value-of-apache-kafka-in-big-data-ecosystem/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo.png","datePublished":"June 16, 2015","authors":[{"id":5,"name":"Jun Rao","image":"https://www.confluent.io/wp-content/uploads/2016/08/jun-150x150.jpg","slug":"jun-rao"}],"categories":[{"id":1220,"name":"Big Ideas","slug":"big-ideas"},{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":68,"name":"Big Data","slug":"big-data"},{"id":80,"name":"Distributed System","slug":"distributed-system"},{"id":57,"name":"Real-Time Data","slug":"real-time-data"}],"summary":"

This is a repost of a recent article that I wrote for ODBMS. In the last few years, there has been significant growth in the adoption of Apache Kafka. Current […]

\\n"},{"id":563,"title":"Confluent will be at QCon NYC next week","url":"https://www.confluent.io/blog/confluent-will-be-at-qcon-nyc-next-week/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/151_conference_1.png","datePublished":"June 1, 2015","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":69,"name":"Conferences","slug":"conferences"},{"id":57,"name":"Real-Time Data","slug":"real-time-data"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

Some of us from Confluent will be speaking at QCon NYC next week about Apache Kafka and Confluent’s stream data platform. Here are some things to look forward to from […]

\\n"},{"id":519,"title":"Using logs to build a solid data infrastructure (or: why dual writes are a bad idea)","url":"https://www.confluent.io/blog/using-logs-to-build-a-solid-data-infrastructure-or-why-dual-writes-are-a-bad-idea/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/164_1.png","datePublished":"May 29, 2015","authors":[{"id":4,"name":"Martin Kleppmann","image":"https://www.confluent.io/wp-content/uploads/2016/08/martinkl-2013-400px-150x150.jpg","slug":"martin-kleppmann"}],"categories":[{"id":125,"name":"Apache Kafka","slug":"apache-kafka"},{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":69,"name":"Conferences","slug":"conferences"},{"id":72,"name":"Integration","slug":"integration"},{"id":84,"name":"Samza","slug":"samza"}],"summary":"

This is an edited transcript of a talk I gave at the Craft Conference 2015. The video and slides are also available.

\\n"},{"id":517,"title":"How I Learned to Stop Worrying and Love the Schema","url":"https://www.confluent.io/blog/how-i-learned-to-stop-worrying-and-love-the-schema-part-1/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/170_streams_1.png","datePublished":"May 19, 2015","authors":[{"id":7,"name":"Geoff Anderson","image":"https://www.confluent.io/wp-content/uploads/2016/08/geoff-150x150.jpg","slug":"geoff-anderson"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":54,"name":"Scalability","slug":"scalability"},{"id":48,"name":"Schema Registry","slug":"schema-registry"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

The rise in schema-free and document-oriented databases has led some to question the value and necessity of schemas. Schemas, in particular those following the relational model, can seem too restrictive, […]

\\n"},{"id":515,"title":"Compatibility Testing For Apache Kafka","url":"https://www.confluent.io/blog/compatibility-testing-for-apache-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo.png","datePublished":"May 1, 2015","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":63,"name":"Stream Data","slug":"stream-data"},{"id":1186,"name":"Testing","slug":"testing"}],"summary":"

Testing is one of the hardest parts of building reliable distributed systems. Kafka has long had a set of system tests that cover distributed operation but this is an area […]

\\n"},{"id":492,"title":"ApacheCon 2015","url":"https://www.confluent.io/blog/apachecon-2015/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/156_apacheconference.png","datePublished":"April 28, 2015","authors":[{"id":5,"name":"Jun Rao","image":"https://www.confluent.io/wp-content/uploads/2016/08/jun-150x150.jpg","slug":"jun-rao"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":70,"name":"Architecture","slug":"architecture"},{"id":69,"name":"Conferences","slug":"conferences"},{"id":54,"name":"Scalability","slug":"scalability"},{"id":48,"name":"Schema Registry","slug":"schema-registry"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

I was at ApacheCon 2015 in Austin, Texas a couple of weeks ago. The following is a short summary of some of the trends that I observed at the conference. […]

\\n"},{"id":483,"title":"Bottled Water: Real-time integration of PostgreSQL and Kafka","url":"https://www.confluent.io/blog/bottled-water-real-time-integration-of-postgresql-and-kafka/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/155_bottledwater.png","datePublished":"April 23, 2015","authors":[{"id":4,"name":"Martin Kleppmann","image":"https://www.confluent.io/wp-content/uploads/2016/08/martinkl-2013-400px-150x150.jpg","slug":"martin-kleppmann"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":72,"name":"Integration","slug":"integration"},{"id":73,"name":"Replication","slug":"replication"},{"id":84,"name":"Samza","slug":"samza"},{"id":48,"name":"Schema Registry","slug":"schema-registry"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

Summary: Confluent is starting to explore the integration of databases with event streams. As part of the first step in this exploration, Martin Kleppmann has made a new open source […]

\\n"},{"id":450,"title":"Real-time full-text search with Luwak and Samza","url":"https://www.confluent.io/blog/real-time-full-text-search-with-luwak-and-samza/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/159_textsearch.png","datePublished":"April 13, 2015","authors":[{"id":4,"name":"Martin Kleppmann","image":"https://www.confluent.io/wp-content/uploads/2016/08/martinkl-2013-400px-150x150.jpg","slug":"martin-kleppmann"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":1185,"name":"Luwak","slug":"luwak"},{"id":84,"name":"Samza","slug":"samza"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

This is an edited transcript of a talk given by Alan Woodward and Martin Kleppmann at FOSDEM 2015. Traditionally, search works like this: you have a large corpus of documents, […]

\\n"},{"id":445,"title":"A Comprehensive REST Proxy for Kafka","url":"https://www.confluent.io/blog/a-comprehensive-rest-proxy-for-kafka","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/159_blogimage.png","datePublished":"March 25, 2015","authors":[{"id":6,"name":"Ewen Cheslack-Postava","image":"https://www.confluent.io/wp-content/uploads/2016/08/e0468c9d90e6af40ddc76a13e4442b61.jpeg","slug":"ewen-cheslack-postava"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":49,"name":"REST Proxy","slug":"rest-proxy"},{"id":54,"name":"Scalability","slug":"scalability"},{"id":48,"name":"Schema Registry","slug":"schema-registry"}],"summary":"

As part of Confluent Platform 1.0 released about a month ago, we included a new Kafka REST Proxy to allow more flexibility for developers and to significantly broaden the number […]

\\n"},{"id":443,"title":"Apache Kafka 0.8.2.1 release","url":"https://www.confluent.io/blog/apache-kafka-0-8-2-1-release/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo.png","datePublished":"March 13, 2015","authors":[{"id":5,"name":"Jun Rao","image":"https://www.confluent.io/wp-content/uploads/2016/08/jun-150x150.jpg","slug":"jun-rao"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":110,"name":"Release","slug":"release"},{"id":82,"name":"ZooKeeper","slug":"zookeeper"}],"summary":"

The Apache Kafka community just announced the 0.8.2.1 release. This is a a bug fix release and fixes 4 critical issues reported in the 0.8.2.0 release (the full list of […]

\\n"},{"id":441,"title":"How to choose the number of topics/partitions in a Kafka cluster?","url":"https://www.confluent.io/blog/how-choose-number-topics-partitions-kafka-cluster","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/161_Cluster.png","datePublished":"March 12, 2015","authors":[{"id":5,"name":"Jun Rao","image":"https://www.confluent.io/wp-content/uploads/2016/08/jun-150x150.jpg","slug":"jun-rao"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":93,"name":"Latency","slug":"latency"}],"summary":"

Note: The blog post Apache Kafka Supports 200K Partitions Per Cluster contains important updates that have happened in Kafka as of version 2.0. This is a common question asked by […]

\\n"},{"id":394,"title":"Turning the database inside-out with Apache Samza","url":"https://www.confluent.io/blog/turning-the-database-inside-out-with-apache-samza/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/162_blogImage.png","datePublished":"March 1, 2015","authors":[{"id":4,"name":"Martin Kleppmann","image":"https://www.confluent.io/wp-content/uploads/2016/08/martinkl-2013-400px-150x150.jpg","slug":"martin-kleppmann"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":68,"name":"Big Data","slug":"big-data"},{"id":84,"name":"Samza","slug":"samza"}],"summary":"

This is an edited and expanded transcript of a talk I gave at Strange Loop 2014. The video recording (embedded below) has been watched over 8,000 times. For those of […]

\\n"},{"id":4767,"title":"Why Avro for Kafka Data?","url":"https://www.confluent.io/blog/avro-kafka-data/","imageUrl":"https://www.confluent.io/wp-content/uploads/why-avro-for-kafka-data-500x333px.png","datePublished":"February 25, 2015","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":823,"name":"Avro","slug":"avro"}],"summary":"

If you are getting started with Kafka one thing you’ll need to do is pick a data format. The most important thing to do is be consistent across your usage. […]

\\n"},{"id":390,"title":"Announcing the Confluent Platform 1.0","url":"https://www.confluent.io/blog/announcing-the-confluent-platform-1-0/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/Confluent_Platform_1.png","datePublished":"February 25, 2015","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":75,"name":"Confluent Platform","slug":"confluent-platform"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":80,"name":"Distributed System","slug":"distributed-system"},{"id":110,"name":"Release","slug":"release"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

We are very excited to announce general availability of Confluent Platform 1.0, a stream data platform powered by Apache Kafka, that enables high-throughput, scalable, reliable and low latency stream data […]

\\n"},{"id":384,"title":"Putting Apache Kafka To Use: A Practical Guide to Building an Event Streaming Platform (Part 2)","url":"https://www.confluent.io/blog/event-streaming-platform-2","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/170_streams_1.png","datePublished":"February 25, 2015","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":93,"name":"Latency","slug":"latency"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

This is the second part of our guide on streaming data and Apache Kafka. In part one I talked about the uses for real-time data streams and explained the concept of […]

\\n"},{"id":376,"title":"Putting Apache Kafka To Use: A Practical Guide to Building an Event Streaming Platform (Part 1)","url":"https://www.confluent.io/blog/event-streaming-platform-1","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/170_streams_1.png","datePublished":"February 25, 2015","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":68,"name":"Big Data","slug":"big-data"},{"id":62,"name":"Data Pipeline","slug":"data-pipeline"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

Data systems have mostly focused on the passive storage of data. Phrases like “data warehouse” or “data lake” or even the ubiquitous “data store” all evoke places data goes to […]

\\n"},{"id":337,"title":"Stream Processing, Event Sourcing, and Data Streaming Explained","url":"https://www.confluent.io/blog/making-sense-of-stream-processing/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/121_ConfluentUniversity.png","datePublished":"January 29, 2015","authors":[{"id":4,"name":"Martin Kleppmann","image":"https://www.confluent.io/wp-content/uploads/2016/08/martinkl-2013-400px-150x150.jpg","slug":"martin-kleppmann"}],"categories":[{"id":40,"name":"Stream Processing","slug":"stream-processing"}],"tags":[{"id":94,"name":"Database System","slug":"database-system"},{"id":65,"name":"Event-Triggered Analysis","slug":"event-triggered-analysis"},{"id":63,"name":"Stream Data","slug":"stream-data"}],"summary":"

Some people call it stream processing. Others call it event streaming, complex event processing (CEP), or CQRS. Sometimes, such buzzwords are just smoke and mirrors, invented by companies who want […]

\\n"},{"id":335,"title":"What’s coming in Apache Kafka 0.8.2","url":"https://www.confluent.io/blog/whats-coming-in-apache-kafka-0-8-2/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/103_kafka_logo.png","datePublished":"December 1, 2014","authors":[{"id":3,"name":"Neha Narkhede","image":"https://www.confluent.io/wp-content/uploads/Neha_Narkhede-1-128x128.png","slug":"neha-narkhede"}],"categories":[{"id":76,"name":"Connecting to Apache Kafka","slug":"connecting-to-kafka"}],"tags":[{"id":71,"name":"Kafka Cluster","slug":"kafka-cluster"},{"id":110,"name":"Release","slug":"release"},{"id":50,"name":"Security","slug":"security"},{"id":82,"name":"ZooKeeper","slug":"zookeeper"}],"summary":"

I am very excited to tell you about the forthcoming 0.8.2 release of Apache Kafka. Kafka is a fault-tolerant, low-latency, high-throughput distributed messaging system used in data pipelines at several […]

\\n"},{"id":332,"title":"Announcing Confluent, a Company for Apache Kafka and Realtime Data","url":"https://www.confluent.io/blog/announcing-confluent-a-company-for-apache-kafka-and-real-time-data/","imageUrl":"https://www.confluent.io/wp-content/uploads/2016/09/168_confluentlogo_1.png","datePublished":"November 1, 2014","authors":[{"id":2,"name":"Jay Kreps","image":"https://cdn.confluent.io/wp-content/uploads/jay-kreps-128x128.png","slug":"jay-kreps"}],"categories":[{"id":78,"name":"Company","slug":"company"}],"tags":[{"id":60,"name":"Application","slug":"application"},{"id":68,"name":"Big Data","slug":"big-data"},{"id":58,"name":"Confluent News","slug":"confluent-news"},{"id":72,"name":"Integration","slug":"integration"}],"summary":"

Today I’m excited to announce that Neha Narkhede, Jun Rao, and I are forming a start-up called Confluent around realtime data and the open source project Apache Kafka that we […]

\\n"}]}}}')},y3fh:function(e,a,t){e.exports={postItem:"style-module--postItem--3UA1F",imageContainer:"style-module--imageContainer--1coFo",content:"style-module--content--2cWa9",metadata:"style-module--metadata--dt9Hb",tagContainer:"style-module--tagContainer--3Xdt8",summary:"style-module--summary--2CPjk",listHeader:"style-module--listHeader--2FIuN",categorySelector:"style-module--categorySelector--fjNB4",buttonContainer:"style-module--buttonContainer--2bc55",searchResultHeader:"style-module--searchResultHeader--3ERwZ",bottomBannerSection:"style-module--bottomBannerSection--3t8WQ",authors:"style-module--authors--3Ppc_",author:"style-module--author--2AFBY",relatedPostSection:"style-module--relatedPostSection--2BQQq",post:"style-module--post--FIMvV",sharePostSection:"style-module--sharePostSection--3GHmv",shareContainer:"style-module--shareContainer--2JWTe"}},yFj8:function(e,a,t){"use strict";t.d(a,"a",(function(){return l}));var n=t("q1tI"),i=t.n(n),o=t("afMw"),s=t("Sdg+");function l(){var e=Object(n.useContext)(o.b),a=e.view,t=e.visible;return i.a.createElement(s.a,{id:1048,visible:t&&a&&"subscribe"===a.id,showAsPopup:!0,text:""},"Thank you!")}l.defaultProps={}}}]); \ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/1bfc9850-be8a875b8ed438695f8e.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/1bfc9850-be8a875b8ed438695f8e.js new file mode 100644 index 0000000..03a0103 --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/1bfc9850-be8a875b8ed438695f8e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{ma3e:function(t,a,c){"use strict";c.d(a,"a",(function(){return n})),c.d(a,"b",(function(){return e})),c.d(a,"c",(function(){return i})),c.d(a,"d",(function(){return s})),c.d(a,"e",(function(){return d})),c.d(a,"f",(function(){return u})),c.d(a,"g",(function(){return o}));var r=c("Lnxd"),n=function(t){return Object(r.a)({tag:"svg",attr:{viewBox:"0 0 320 512"},child:[{tag:"path",attr:{d:"M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z"}}]})(t)};n.displayName="FaFacebookF";var e=function(t){return Object(r.a)({tag:"svg",attr:{viewBox:"0 0 496 512"},child:[{tag:"path",attr:{d:"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"}}]})(t)};e.displayName="FaGithub";var i=function(t){return Object(r.a)({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"}}]})(t)};i.displayName="FaInstagram";var s=function(t){return Object(r.a)({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"}}]})(t)};s.displayName="FaLinkedin";var d=function(t){return Object(r.a)({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M187.7 153.7c-34 0-61.7 25.7-61.7 57.7 0 31.7 27.7 57.7 61.7 57.7s61.7-26 61.7-57.7c0-32-27.7-57.7-61.7-57.7zm143.4 0c-34 0-61.7 25.7-61.7 57.7 0 31.7 27.7 57.7 61.7 57.7 34.3 0 61.7-26 61.7-57.7.1-32-27.4-57.7-61.7-57.7zm156.6 90l-6 4.3V49.7c0-27.4-20.6-49.7-46-49.7H76.6c-25.4 0-46 22.3-46 49.7V248c-2-1.4-4.3-2.9-6.3-4.3-15.1-10.6-25.1 4-16 17.7 18.3 22.6 53.1 50.3 106.3 72C58.3 525.1 252 555.7 248.9 457.5c0-.7.3-56.6.3-96.6 5.1 1.1 9.4 2.3 13.7 3.1 0 39.7.3 92.8.3 93.5-3.1 98.3 190.6 67.7 134.3-124 53.1-21.7 88-49.4 106.3-72 9.1-13.8-.9-28.3-16.1-17.8zm-30.5 19.2c-68.9 37.4-128.3 31.1-160.6 29.7-23.7-.9-32.6 9.1-33.7 24.9-10.3-7.7-18.6-15.5-20.3-17.1-5.1-5.4-13.7-8-27.1-7.7-31.7 1.1-89.7 7.4-157.4-28V72.3c0-34.9 8.9-45.7 40.6-45.7h317.7c30.3 0 40.9 12.9 40.9 45.7v190.6z"}}]})(t)};d.displayName="FaSlideshare";var u=function(t){return Object(r.a)({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"}}]})(t)};u.displayName="FaTwitter";var o=function(t){return Object(r.a)({tag:"svg",attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"}}]})(t)};o.displayName="FaYoutube"}}]); \ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/2fb42410789a290cc2791c154cea2995e83f3b78-d02b991b92efc9545ed0.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/2fb42410789a290cc2791c154cea2995e83f3b78-d02b991b92efc9545ed0.js new file mode 100644 index 0000000..c601198 --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/2fb42410789a290cc2791c154cea2995e83f3b78-d02b991b92efc9545ed0.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{"3V3P":function(e,t,n){e.exports={formPlatformDownloadModal:"style-module--formPlatformDownloadModal--1rKbi",show:"style-module--show--2NTMt",content:"style-module--content--2ruvk",formContainer:"style-module--formContainer--1XMLD",buttonContainer:"style-module--buttonContainer--3C_YP",select:"style-module--select--1OhVX",error:"style-module--error--2nMVD",options:"style-module--options--3_n0T",selected:"style-module--selected--3lV6f",divider:"style-module--divider--1qB1j",arrow:"style-module--arrow--CsSfj",expanded:"style-module--expanded--1Lbrq",titleContainer:"style-module--titleContainer--WVppj",close:"style-module--close--xlWko",checkboxWrapper:"style-module--checkboxWrapper--2lEzb",checkboxContainer:"style-module--checkboxContainer--2b_qe",tos:"style-module--tos--3pYRd",tosUS:"style-module--tosUS--3c4R4",us:"style-module--us--2ibcg"}},"63F2":function(e,t,n){e.exports={form:"style-module--form--3BUsB"}},DciD:function(e,t,n){"use strict";function a(){return null}function o(){return a}a.isRequired=a,e.exports={and:o,between:o,booleanSome:o,childrenHavePropXorChildren:o,childrenOf:o,childrenOfType:o,childrenSequenceOf:o,componentWithName:o,disallowedIf:o,elementType:o,empty:o,explicitNull:o,forbidExtraProps:Object,integer:o,keysOf:o,mutuallyExclusiveProps:o,mutuallyExclusiveTrueProps:o,nChildren:o,nonNegativeInteger:a,nonNegativeNumber:o,numericString:o,object:o,or:o,range:o,ref:o,requiredBy:o,restrictedProp:o,sequenceOf:o,shape:o,stringEndsWith:o,stringStartsWith:o,uniqueArray:o,uniqueArrayOf:o,valuesOf:o,withShape:o}},H2c4:function(e,t,n){"use strict";n.d(t,"a",(function(){return m}));n("91GP");var a=n("q1tI"),o=n.n(a),r=n("TSYQ"),l=n.n(r),i=n("iw5O"),c=n.n(i),s=n("QPh0"),u=n("K73g");function m(e){var t=e.children,n=e.className,r=e.disableArrow,i=e.position,m=e.trigger,d=Object(a.createRef)(),f=Object(a.useState)({}),p=f[0],b=f[1];return Object(a.useEffect)((function(){if(m){var e=d.current.getBoundingClientRect().width;i===u.c?b({top:"2px",left:Math.floor(e)-40+"px"}):i===u.b?b({top:"2px",left:-1*(300-Math.floor(e))+"px"}):i===u.a?b({top:"2px",left:"50%",transform:"translateX(-50%)"}):i===u.d&&b({top:"2px",right:"100%",marginTop:"0"})}}),[]),o.a.createElement("div",{className:l()(c.a.tooltip,n,i?c.a[i]:null)},o.a.createElement("span",{ref:d,className:l()(m?null:c.a.default)},m||"i"),o.a.createElement("div",{className:l()(c.a.content,c.a.hidden,r?null:c.a.arrow),style:Object.assign(Object.assign({},p),{},{width:"300px"})},"string"==typeof t?o.a.createElement("p",null,o.a.createElement(s.a,null,t)):t))}m.defaultProps={disableArrow:!1,position:u.c}},Hsqg:function(e,t,n){e.exports=n("DciD")},K73g:function(e,t,n){"use strict";n.d(t,"c",(function(){return a})),n.d(t,"b",(function(){return o})),n.d(t,"a",(function(){return r})),n.d(t,"d",(function(){return l}));var a="bottomRight",o="bottomLeft",r="bottomCenter",l="centerLeft"},L6A5:function(e,t,n){"use strict";n.d(t,"a",(function(){return f}));n("rGqo"),n("yt8O"),n("Btvt"),n("RW0V"),n("91GP"),n("f3/d");var a=n("q1tI"),o=n.n(a),r=n("nP3w"),l=n("TSYQ"),i=n.n(l),c=n("mr2W"),s=n("2C3W"),u=n("9ZTj"),m=n("oeur"),d=n.n(m);function f(e){var t=e.checkboxClassName,n=e.children,l=e.className,u=e.id,m=e.initialChecked,f=e.labelProps,p=e.name,b=e.required,h=e.theme,y=function(e,t){if(null==e)return{};var n,a,o={},r=Object.keys(e);for(a=0;a=0||(o[n]=e[n]);return o}(e,["checkboxClassName","children","className","id","initialChecked","labelProps","name","required","theme"]),v=Object(a.useContext)(c.c),g=v.addRequiredField,w=v.removeErrorField,E=Object(r.c)();return Object(a.useEffect)((function(){b&&g(p)}),[]),Object(a.useEffect)((function(){m&&E.change(p,!0)}),[m]),o.a.createElement("label",Object.assign({},f,{htmlFor:u||p}),o.a.createElement(s.a,Object.assign({},y,{className:i()(l,d.a.input),disableRequiredMark:!0,onChange:function(e){b&&e.target.checked&&w(p)},name:p,theme:h,type:"checkbox"})),o.a.createElement("span",{className:i()(d.a.checkbox,t)}),n)}f.defaultProps=Object.assign(Object.assign({},u.a),{},{initialChecked:!1,reverseInputLabel:!0})},MGXT:function(e,t,n){"use strict";n.d(t,"e",(function(){return a})),n.d(t,"c",(function(){return o})),n.d(t,"d",(function(){return r})),n.d(t,"b",(function(){return l})),n.d(t,"g",(function(){return i})),n.d(t,"f",(function(){return c})),n.d(t,"a",(function(){return s}));var a="image_top",o="image_left",r="image_right",l="image_bottom",i="right",c="bottom",s={CLOUD_SIGN_UP:"cloud-signup",PLATFORM_DOWNLOAD:"platform-download",COMMUNITY_DOWNLOAD:"mktoForm_3108"}},Mnaz:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var a=n("Wbzz");function o(e,t){void 0===t&&(t=!1);e.indexOf("://")>=0?t?window.open(e,"_blank"):window.location.href=e:Object(a.navigate)(e)}},NmYn:function(e,t,n){var a;n("Oyvg"),n("KKXr"),n("pIFo"),a=function(){var e=JSON.parse('{"$":"dollar","%":"percent","&":"and","<":"less",">":"greater","|":"or","¢":"cent","£":"pound","¤":"currency","¥":"yen","©":"(c)","ª":"a","®":"(r)","º":"o","À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","Æ":"AE","Ç":"C","È":"E","É":"E","Ê":"E","Ë":"E","Ì":"I","Í":"I","Î":"I","Ï":"I","Ð":"D","Ñ":"N","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","Ù":"U","Ú":"U","Û":"U","Ü":"U","Ý":"Y","Þ":"TH","ß":"ss","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","æ":"ae","ç":"c","è":"e","é":"e","ê":"e","ë":"e","ì":"i","í":"i","î":"i","ï":"i","ð":"d","ñ":"n","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","ù":"u","ú":"u","û":"u","ü":"u","ý":"y","þ":"th","ÿ":"y","Ā":"A","ā":"a","Ă":"A","ă":"a","Ą":"A","ą":"a","Ć":"C","ć":"c","Č":"C","č":"c","Ď":"D","ď":"d","Đ":"DJ","đ":"dj","Ē":"E","ē":"e","Ė":"E","ė":"e","Ę":"e","ę":"e","Ě":"E","ě":"e","Ğ":"G","ğ":"g","Ģ":"G","ģ":"g","Ĩ":"I","ĩ":"i","Ī":"i","ī":"i","Į":"I","į":"i","İ":"I","ı":"i","Ķ":"k","ķ":"k","Ļ":"L","ļ":"l","Ľ":"L","ľ":"l","Ł":"L","ł":"l","Ń":"N","ń":"n","Ņ":"N","ņ":"n","Ň":"N","ň":"n","Ő":"O","ő":"o","Œ":"OE","œ":"oe","Ŕ":"R","ŕ":"r","Ř":"R","ř":"r","Ś":"S","ś":"s","Ş":"S","ş":"s","Š":"S","š":"s","Ţ":"T","ţ":"t","Ť":"T","ť":"t","Ũ":"U","ũ":"u","Ū":"u","ū":"u","Ů":"U","ů":"u","Ű":"U","ű":"u","Ų":"U","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","ź":"z","Ż":"Z","ż":"z","Ž":"Z","ž":"z","ƒ":"f","Ơ":"O","ơ":"o","Ư":"U","ư":"u","Lj":"LJ","lj":"lj","Nj":"NJ","nj":"nj","Ș":"S","ș":"s","Ț":"T","ț":"t","˚":"o","Ά":"A","Έ":"E","Ή":"H","Ί":"I","Ό":"O","Ύ":"Y","Ώ":"W","ΐ":"i","Α":"A","Β":"B","Γ":"G","Δ":"D","Ε":"E","Ζ":"Z","Η":"H","Θ":"8","Ι":"I","Κ":"K","Λ":"L","Μ":"M","Ν":"N","Ξ":"3","Ο":"O","Π":"P","Ρ":"R","Σ":"S","Τ":"T","Υ":"Y","Φ":"F","Χ":"X","Ψ":"PS","Ω":"W","Ϊ":"I","Ϋ":"Y","ά":"a","έ":"e","ή":"h","ί":"i","ΰ":"y","α":"a","β":"b","γ":"g","δ":"d","ε":"e","ζ":"z","η":"h","θ":"8","ι":"i","κ":"k","λ":"l","μ":"m","ν":"n","ξ":"3","ο":"o","π":"p","ρ":"r","ς":"s","σ":"s","τ":"t","υ":"y","φ":"f","χ":"x","ψ":"ps","ω":"w","ϊ":"i","ϋ":"y","ό":"o","ύ":"y","ώ":"w","Ё":"Yo","Ђ":"DJ","Є":"Ye","І":"I","Ї":"Yi","Ј":"J","Љ":"LJ","Њ":"NJ","Ћ":"C","Џ":"DZ","А":"A","Б":"B","В":"V","Г":"G","Д":"D","Е":"E","Ж":"Zh","З":"Z","И":"I","Й":"J","К":"K","Л":"L","М":"M","Н":"N","О":"O","П":"P","Р":"R","С":"S","Т":"T","У":"U","Ф":"F","Х":"H","Ц":"C","Ч":"Ch","Ш":"Sh","Щ":"Sh","Ъ":"U","Ы":"Y","Ь":"","Э":"E","Ю":"Yu","Я":"Ya","а":"a","б":"b","в":"v","г":"g","д":"d","е":"e","ж":"zh","з":"z","и":"i","й":"j","к":"k","л":"l","м":"m","н":"n","о":"o","п":"p","р":"r","с":"s","т":"t","у":"u","ф":"f","х":"h","ц":"c","ч":"ch","ш":"sh","щ":"sh","ъ":"u","ы":"y","ь":"","э":"e","ю":"yu","я":"ya","ё":"yo","ђ":"dj","є":"ye","і":"i","ї":"yi","ј":"j","љ":"lj","њ":"nj","ћ":"c","ѝ":"u","џ":"dz","Ґ":"G","ґ":"g","Ғ":"GH","ғ":"gh","Қ":"KH","қ":"kh","Ң":"NG","ң":"ng","Ү":"UE","ү":"ue","Ұ":"U","ұ":"u","Һ":"H","һ":"h","Ә":"AE","ә":"ae","Ө":"OE","ө":"oe","฿":"baht","ა":"a","ბ":"b","გ":"g","დ":"d","ე":"e","ვ":"v","ზ":"z","თ":"t","ი":"i","კ":"k","ლ":"l","მ":"m","ნ":"n","ო":"o","პ":"p","ჟ":"zh","რ":"r","ს":"s","ტ":"t","უ":"u","ფ":"f","ქ":"k","ღ":"gh","ყ":"q","შ":"sh","ჩ":"ch","ც":"ts","ძ":"dz","წ":"ts","ჭ":"ch","ხ":"kh","ჯ":"j","ჰ":"h","Ẁ":"W","ẁ":"w","Ẃ":"W","ẃ":"w","Ẅ":"W","ẅ":"w","ẞ":"SS","Ạ":"A","ạ":"a","Ả":"A","ả":"a","Ấ":"A","ấ":"a","Ầ":"A","ầ":"a","Ẩ":"A","ẩ":"a","Ẫ":"A","ẫ":"a","Ậ":"A","ậ":"a","Ắ":"A","ắ":"a","Ằ":"A","ằ":"a","Ẳ":"A","ẳ":"a","Ẵ":"A","ẵ":"a","Ặ":"A","ặ":"a","Ẹ":"E","ẹ":"e","Ẻ":"E","ẻ":"e","Ẽ":"E","ẽ":"e","Ế":"E","ế":"e","Ề":"E","ề":"e","Ể":"E","ể":"e","Ễ":"E","ễ":"e","Ệ":"E","ệ":"e","Ỉ":"I","ỉ":"i","Ị":"I","ị":"i","Ọ":"O","ọ":"o","Ỏ":"O","ỏ":"o","Ố":"O","ố":"o","Ồ":"O","ồ":"o","Ổ":"O","ổ":"o","Ỗ":"O","ỗ":"o","Ộ":"O","ộ":"o","Ớ":"O","ớ":"o","Ờ":"O","ờ":"o","Ở":"O","ở":"o","Ỡ":"O","ỡ":"o","Ợ":"O","ợ":"o","Ụ":"U","ụ":"u","Ủ":"U","ủ":"u","Ứ":"U","ứ":"u","Ừ":"U","ừ":"u","Ử":"U","ử":"u","Ữ":"U","ữ":"u","Ự":"U","ự":"u","Ỳ":"Y","ỳ":"y","Ỵ":"Y","ỵ":"y","Ỷ":"Y","ỷ":"y","Ỹ":"Y","ỹ":"y","‘":"\'","’":"\'","“":"\\"","”":"\\"","†":"+","•":"*","…":"...","₠":"ecu","₢":"cruzeiro","₣":"french franc","₤":"lira","₥":"mill","₦":"naira","₧":"peseta","₨":"rupee","₩":"won","₪":"new shequel","₫":"dong","€":"euro","₭":"kip","₮":"tugrik","₯":"drachma","₰":"penny","₱":"peso","₲":"guarani","₳":"austral","₴":"hryvnia","₵":"cedi","₸":"kazakhstani tenge","₹":"indian rupee","₽":"russian ruble","₿":"bitcoin","℠":"sm","™":"tm","∂":"d","∆":"delta","∑":"sum","∞":"infinity","♥":"love","元":"yuan","円":"yen","﷼":"rial"}'),t=JSON.parse('{"vi":{"Đ":"D","đ":"d"}}');function n(n,a){if("string"!=typeof n)throw new Error("slugify: string argument expected");var o=t[(a="string"==typeof a?{replacement:a}:a||{}).locale]||{},r=a.replacement||"-",l=n.split("").reduce((function(t,n){return t+(o[n]||e[n]||n)}),"").replace(a.remove||/[^\w\s$*_+~.()'"!\-:@]+/g,"").trim().replace(new RegExp("[\\s"+r+"]+","g"),r);return a.lower&&(l=l.toLowerCase()),a.strict&&(l=l.replace(new RegExp("[^a-zA-Z0-9"+r+"]","g"),"")),l}return n.extend=function(t){for(var n in t)e[n]=t[n]},n},e.exports=a(),e.exports.default=a()},PbPx:function(e,t,n){e.exports={formCloudSignUpModal:"style-module--formCloudSignUpModal--1AQ3A",show:"style-module--show--3nUPD",thankyou:"style-module--thankyou--32jb6",content:"style-module--content--2KGwt",formContainer:"style-module--formContainer--hGadi",buttonContainer:"style-module--buttonContainer--pKinf",checkboxWrapper:"style-module--checkboxWrapper--3sEqj",checkboxContainer:"style-module--checkboxContainer--1foY9",close:"style-module--close--3Sgcb",errorContainer:"style-module--errorContainer--3beGu",existingAccount:"style-module--existingAccount--3qZ8p",tos:"style-module--tos--2owUx",tosUS:"style-module--tosUS--FgYmU",us:"style-module--us--1yRJm"}},"Sdg+":function(e,t,n){"use strict";n.d(t,"a",(function(){return k}));n("VRzm");var a=n("o0o1"),o=n.n(a),r=(n("ls82"),n("f3/d"),n("rGqo"),n("yt8O"),n("Btvt"),n("RW0V"),n("91GP"),n("q1tI")),l=n.n(r),i=n("TSYQ"),c=n.n(i),s=n("Wbzz"),u=n("5UgU"),m=n("Mnaz"),d=n("m7xX"),f=n("O8Ai"),p=n("KuSc"),b=n("BGcL"),h=n("fuuT"),y=n("H5Y9"),v=n("ISdw"),g=n("VG8f"),w=n.n(g);function E(e,t,n,a,o,r,l){try{var i=e[r](l),c=i.value}catch(s){return void n(s)}i.done?t(c):Promise.resolve(c).then(a,o)}var O={utmmedium:"utm_medium",utmsource:"utm_source",utmcampaign:"utm_campaign",utmterm:"utm_term",utmpartner:"utm_partner"};function k(e){var t=e.buttonLabel,n=e.children,a=e.className,i=e.cookieExpiration,g=e.cookieName,k=e.cookieValue,C=e.form,x=e.formClassName,N=e.formStyle,j=e.id,_=e.text,S=e.name,A=e.onLoad,P=e.onSubmit,I=e.onSuccess,F=e.onValidate,U=e.prefill,T=e.rememberMe,L=e.showAsPopup,D=e.url,q=e.visible,M=g;M||(M=Object(d.b)((S||"form")+" "+j));var Y,z,R=Object(f.a)().marketo,W=Object(r.useContext)(b.c),V=W.getCookie,G=W.setCookie,B=Object(r.useContext)(p.b),K=B.geo,H=B.leadInfo,Z=B.gaClientId,J=(Y=Object(r.useContext)(h.b),z=Object.assign({},Y),Object.keys(O).forEach((function(e){z[e]=Y[O[e]]||""})),z),X=Object(r.useState)(),Q=X[0],$=X[1],ee=Object(r.useState)(!1),te=ee[0],ne=ee[1],ae="mktoForm_"+j;if((Object(r.useEffect)((function(){var e,a=!1;function r(){!1===a&&(a=!0,window.Munchkin.init(R.munchkinId))}(e=o.a.mark((function e(){var a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,u(R.baseUrl+"/js/forms2/js/forms2.min.js",{inBody:!0});case 2:(a=document.createElement("script")).type="text/javascript",a.async=!0,a.src="//munchkin.marketo.net/munchkin-beta.js",a.onreadystatechange=function(){"complete"!==this.readyState&&"loaded"!==this.readyState||r()},a.onload=r,document.getElementsByTagName("head")[0].appendChild(a),window.MktoForms2&&window.MktoForms2.loadForm(R.baseUrl,R.munchkinId,j,(function(e){if($(e),t){var a=document.querySelector("#"+ae+" .mktoButton");a&&(a.innerHTML=t)}A&&A(e),F&&e.onValidate((function(){e.submittable(!1);var t=F(e);"boolean"==typeof t&&e.submittable(t)})),e.onSuccess((function(t,a){var o=!0;if(window.trackForm&&window.trackForm(e,"formSubmit"),window.dataLayer&&window.dataLayer.push({event:"mktoLead",mktoFormId:j}),T&&G(M,k,i),I&&(o=I(e,t,a)),D)Object(m.a)(D);else if(n)ne(!0);else if(o)return!0;return!1}))}));case 10:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(a,o){var r=e.apply(t,n);function l(e){E(r,a,o,l,i,"next",e)}function i(e){E(r,a,o,l,i,"throw",e)}l(void 0)}))})()}),[]),Object(r.useEffect)((function(){U&&Q&&H&&Q.setValuesCoerced(H)}),[U,H,Q]),Object(r.useEffect)((function(){Q&&Z&&Q.setValues(Object.assign(Object.assign({},J),{},{gacid:Z,kFipaddress:K.ip||null}))}),[Z,J,Q,K]),T&&!1!==T)&&(V(M)===k&&"function"==typeof T))return T(),null;var oe={};return L&&(oe[w.a.popup]=!0,q&&(oe[w.a.active]=!0)),l.a.createElement("div",{className:c()(a,oe)},n&&te?l.a.createElement("div",{className:w.a.thankyou},n):l.a.createElement(l.a.Fragment,null,L?null:l.a.createElement(y.a,{styleUrls:[Object(s.withPrefix)("/css/marketo-form.css")]}),C?C({marketoId:j,submit:function(e){Q.setValues(e),Q.submit()}}):l.a.createElement(v.a,{id:ae,className:c()(x),style:{display:N.display||"block"},onSubmit:function(){if(P){Q.submittable(!1);var e=P(Q.getValues());"boolean"==typeof e?Q.submittable(e):e instanceof Promise&&e.then((function(e){Q.submittable(e),e&&Q.submit()}))}}},(function(){return _?l.a.createElement("p",{className:w.a.title},l.a.createElement("strong",null,l.a.createElement("br",null),_)):null}))))}k.defaultProps={cookieExpiration:1,cookieValue:"1",formStyle:{},prefill:!1,showAsPopup:!1,text:"Please fill out this form and we'll be in touch.",visible:!0}},VG8f:function(e,t,n){e.exports={popup:"style-module--popup--1HA66",active:"style-module--active--3SoXb",title:"style-module--title--3jrsZ",thankyou:"style-module--thankyou--3gN4F"}},Zttt:function(e,t,n){"use strict";n.d(t,"a",(function(){return ee}));n("dRSK");var a=n("q1tI"),o=n.n(a),r=n("TSYQ"),l=n.n(r),i=n("/Q2I"),c=n("bTZZ"),s=n("aF7g"),u=n("Rnav"),m=n("Fzi1"),d=n("2nyV"),f=n("wtQ5"),p=n("afMw"),b=(n("rGqo"),n("yt8O"),n("Btvt"),n("RW0V"),n("91GP"),n("f3/d"),n("KuSc")),h=n("BGcL"),y=n("dntC"),v=n("510Z"),g=n("ww3E"),w=n("Sdg+"),E=n("ISdw"),O=n("2C3W"),k=n("L6A5"),C=n("H2c4"),x=n("zE2F");function N(e){var t=x.data,n=t.downloadCommunity.nodes,a=t.downloadPlatform.nodes;return"DOWNLOAD_TYPE_PLATFORM"===e?a:n}var j=n("Mnaz"),_=n("3V3P"),S=n.n(_),A=n("/B5T"),P=n("K73g"),I=n("MGXT");function F(e){var t=e.visible,n=N("DOWNLOAD_TYPE_PLATFORM"),r=Object(a.useContext)(h.c).setCookie,i=Object(a.useContext)(p.b).hide,c=Object(a.useContext)(b.b).geo,s=Object(a.useState)(!1),u=s[0],m=s[1],d=Object(a.useState)(!1),f=d[0],x=d[1],_=Object(a.useState)(""),F=_[0],U=_[1],T=function(){x(!f)};return o.a.createElement("div",{className:l()(S.a.formPlatformDownloadModal,c?S.a[c.iso2]:null,t?S.a.show:"")},t?o.a.createElement(o.a.Fragment,null,o.a.createElement("div",{className:S.a.close,onClick:i},o.a.createElement(v.a,{src:"/images/close.svg",alt:"",useLocal:!0})),o.a.createElement(w.a,{id:3109,text:"",className:S.a.content,form:function(e){var t=e.resources,n={};t.forEach((function(e){n[e.type]||(n[e.type]=[]),n[e.type].push(e)}));var a=function(e){var t=e.name;return o.a.createElement("li",{key:t,onClick:function(){return function(e){U(e),m(!1),x(!1)}(t)},className:t===F?S.a.selected:""},t)};return function(e){var t=e.submit;return o.a.createElement("div",{className:S.a.formContainer},o.a.createElement(E.a,{name:I.a.PLATFORM_DOWNLOAD,onSubmit:function(e){var n=e.download_platform_agree,a=e.download_platform_tellmore,o=function(e,t){if(null==e)return{};var n,a,o={},r=Object.keys(e);for(a=0;a=0||(o[n]=e[n]);return o}(e,["download_platform_agree","download_platform_tellmore"]);t(Object.assign(Object.assign({},o),{},{iagreetothesoftwarelicenseagreement:n?"yes":"no",tellmeaboutplatformnewsreleases:a?"yes":"no",desiredDownloadFormat:F}))}},(function(){return o.a.createElement(o.a.Fragment,null,o.a.createElement("div",{className:S.a.titleContainer},o.a.createElement("h6",null,"Free Forever on a Single Kafka Broker"),o.a.createElement(C.a,{position:P.b},"The software will allow unlimited-time usage of commercial features on a single Kafka broker. Upon adding a second broker, a 30-day timer will automatically start on commercial features, which cannot be reset by moving back to one broker.")),o.a.createElement(O.a,{type:"email",name:"Email",theme:"wp",placeholder:"EMAIL",required:!0}),o.a.createElement("div",{className:l()(S.a.select,f?S.a.expanded:null,u?S.a.error:null)},o.a.createElement("div",{onClick:T},o.a.createElement("span",null,F?"Deployment Type: "+F:"Select Deployment Type"),o.a.createElement("div",{className:S.a.arrow})),o.a.createElement("div",{className:S.a.options},o.a.createElement("div",null,o.a.createElement("h6",null,"Manual Deployment")," ",o.a.createElement("ul",null,n.manual.map(a))),o.a.createElement("div",null,o.a.createElement("div",{className:S.a.divider},"or"),o.a.createElement("h6",null,"Auto Deployment")," ",o.a.createElement("ul",null,n.automated.map(a))))),o.a.createElement("div",{className:S.a.checkboxWrapper},o.a.createElement("div",{className:l()(S.a.checkboxContainer,S.a.tos)},o.a.createElement(k.a,{name:"download_platform_agree",required:!0,initialChecked:"us"===c.iso2},"I agree to the terms of the"," ",o.a.createElement(y.a,{href:"/confluent-software-evaluation-license",newTab:!0},"Confluent License Agreement"),".")),o.a.createElement("div",{className:l()(S.a.checkboxContainer,S.a.tos)},o.a.createElement(k.a,{name:"download_platform_tellmore",initialChecked:"us"===c.iso2},"Yes, I would like to receive emails about products, services, & events from Confluent that may interest me."))),o.a.createElement("div",{className:S.a.buttonContainer},o.a.createElement(g.a,{type:"submit",buttonStyle:A.c,theme:A.h},"Download Free")))})),o.a.createElement("div",{className:S.a.tos},o.a.createElement("p",null,'By clicking "download free" above you understand we will process your personal information in accordance with our'," ",o.a.createElement(y.a,{href:"/confluent-privacy-statement",newTab:!0},"Privacy Policy"),".")),o.a.createElement("div",{className:S.a.tos+" "+S.a.tosUS},o.a.createElement("p",null,'By clicking "download free" above, you agree to the'," ",o.a.createElement(y.a,{href:"/confluent-software-evaluation-license",newTab:!0},"Confluent License Agreement")," ","and to receive occasional marketing emails from Confluent. You also agree that your personal data will be processed in accordance with our"," ",o.a.createElement(y.a,{href:"/confluent-privacy-statement",newTab:!0},"Privacy Policy"),".")))}}({resources:n}),onValidate:function(e){return!!e.getValues().desiredDownloadFormat||(m(!0),!1)},onSuccess:function(e,t){var a=t.Email,o=t.desiredDownloadFormat;i(),r("downloaded_email",a),r("downloaded_type",o);var l=n.find((function(e){return e.name===o}));return l.download&&window.open(l.download,"_blank"),Object(j.a)(l.confirmation),!1}})):null)}F.defaultProps={visible:!1};n("VRzm");var U=n("o0o1"),T=n.n(U),L=(n("ls82"),n("vDqi")),D=n.n(L),q=n("fuuT"),M=n("O8Ai"),Y=n("PbPx"),z=n.n(Y),R=n("f0Ye");function W(e,t,n,a,o,r,l){try{var i=e[r](l),c=i.value}catch(s){return void n(s)}i.done?t(c):Promise.resolve(c).then(a,o)}function V(e){var t=e.visible,n=Object(a.useState)(),r=n[0],i=n[1],c=Object(a.useContext)(q.b),s=c.utm_source,u=c.utm_campaign,m=c.utm_medium,d=c.utm_partner,f=Object(a.useContext)(p.b).hide,h=Object(a.useContext)(b.b).geo,C=Object(M.a)().api.cloudSignUpUrl,x=function(){r&&i("")};return o.a.createElement("div",{className:l()(z.a.formCloudSignUpModal,h?z.a[h.iso2]:null,t?z.a.show:null)},t?o.a.createElement(o.a.Fragment,null,o.a.createElement("div",{className:z.a.close,onClick:f},o.a.createElement(v.a,{useLocal:!0,src:"/images/close.svg",alt:"close icon"})),o.a.createElement(w.a,{id:2835,form:function(e){var t=e.submit;return o.a.createElement(o.a.Fragment,null,o.a.createElement("h4",null,"Sign Up Now"),o.a.createElement("h6",null,"Receive up to $50 USD off your bill each calendar month for the first three months."),o.a.createElement("p",null,"New signups only."),o.a.createElement("div",{className:z.a.formContainer},o.a.createElement(E.a,{name:I.a.CLOUD_SIGN_UP,onSubmit:function(){var e,n=(e=T.a.mark((function e(n){var a,o,r,l,c,f,p,b,h,y,v,g;return T.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=n.cloud_signup_fullname,o=n.cloud_signup_company,r=n.cloud_signup_email,l=n.cloud_signup_password,c=n.cloud_signup_agree,f=n.cloud_signup_tellmore,p=Object(R.c)(a),b=p[0],h=p[1],y=void 0===h?"NULL":h,e.prev=2,e.next=5,D()({url:C,method:"post",headers:{"content-type":"application/json"},data:{user:{email:r,first_name:b,last_name:y},credentials:{password:l},organization:{name:o},utm:{source:s,campaign:u,medium:m,partner:d}}});case 5:t({FirstName:b,LastName:y,Company:o,Email:r,iagreetoterms:c?"yes":"no",tellmeaboutplatformnewsreleases:f?"yes":"no"}),e.next=12;break;case 8:e.prev=8,e.t0=e.catch(2),e.t0.response?(g=e.t0.response.data.error,v=g.message):v="Unable to sign you up at this time.",i(v);case 12:case"end":return e.stop()}}),e,null,[[2,8]])})),function(){var t=this,n=arguments;return new Promise((function(a,o){var r=e.apply(t,n);function l(e){W(r,a,o,l,i,"next",e)}function i(e){W(r,a,o,l,i,"throw",e)}l(void 0)}))});return function(e){return n.apply(this,arguments)}}()},(function(){return o.a.createElement(o.a.Fragment,null,o.a.createElement(O.a,{name:"cloud_signup_fullname",theme:"wp",placeholder:"FULL NAME",type:"text",required:!0,onFocus:x}),o.a.createElement(O.a,{name:"cloud_signup_company",theme:"wp",placeholder:"COMPANY",type:"text",onFocus:x,required:!0}),o.a.createElement(O.a,{name:"cloud_signup_email",theme:"wp",placeholder:"EMAIL",type:"email",onFocus:x,required:!0}),o.a.createElement(O.a,{name:"cloud_signup_password",theme:"wp",placeholder:"PASSWORD",type:"password",onFocus:x,required:!0}),o.a.createElement("div",{className:z.a.checkboxWrapper},o.a.createElement("div",{className:l()(z.a.checkboxContainer,z.a.tos)},o.a.createElement(k.a,{name:"cloud_signup_agree",initialChecked:"us"===h.iso2,required:!0},"I have read & agree to the"," ",o.a.createElement(y.a,{href:"/confluent-cloud-tos",newTab:!0},"Terms of Service"))),o.a.createElement("div",{className:l()(z.a.checkboxContainer,z.a.tos)},o.a.createElement(k.a,{name:"cloud_signup_tellmore",initialChecked:"us"===h.iso2},"Yes, I would like to receive emails about products, services, & events from Confluent that may interest me.")),o.a.createElement("div",{className:l()(z.a.errorContainer,r?z.a.show:"")},o.a.createElement("p",null,r),o.a.createElement("p",null,o.a.createElement(y.a,{newTab:!0,href:"/cloud-contact-us"},"Customer Support")))),o.a.createElement("div",{className:z.a.buttonContainer},o.a.createElement(g.a,{type:"submit",buttonStyle:A.c,theme:A.h,disabled:r},"Sign Up")))}))),o.a.createElement("div",{className:z.a.existingAccount},o.a.createElement(y.a,{href:"https://confluent.cloud/login",className:"fz-12 cnfl-link-item",newTab:!0},"I already have an account.")),o.a.createElement("div",{className:z.a.tos},o.a.createElement("p",null,"By clicking “sign up” above you understand we will process your personal information in accordance with our"," ",o.a.createElement(y.a,{href:"/confluent-privacy-statement",newTab:!0},"Privacy Policy."))),o.a.createElement("div",{className:z.a.tos+" "+z.a.tosUS},o.a.createElement("p",null,'By clicking "sign up" above you agree to the'," ",o.a.createElement(y.a,{href:"/confluent-cloud-tos",newTab:!0},"Terms of Service")," ","and to receive occasional marketing emails from Confluent. You also understand that we will process your personal information in accordance with our"," ",o.a.createElement(y.a,{href:"/confluent-privacy-statement",newTab:!0},"Privacy Policy."))))},text:"",className:z.a.content},o.a.createElement("p",{className:z.a.thankyou},"Thank you. Check your email for details on your request."))):null)}V.defaultProps={visible:!1};var G=n("ZXNi"),B=n("63F2"),K=n.n(B);function H(e){var t=e.visible,n=N("DOWNLOAD_TYPE_COMMUNITY"),r=Object(a.useContext)(h.c).setCookie,l=Object(a.useContext)(p.b).hide;return o.a.createElement("div",null,t?o.a.createElement(w.a,{className:K.a.form,onValidate:function(e){var t=e.vals().Email;if(t&&Object(G.a)(t))e.submittable(!0);else{var n=e.getFormElem().find("#mktoForm_3108 #Email");window.jQuery("#mktoForm_3108 #Email").focus(),e.showErrorMessage("Please enter a valid email format",n)}},onSuccess:function(e,t){l(),r("downloaded_email",t.Email),r("downloaded_type",t.desiredDownloadFormat);var a=n.find((function(e){return e.name===t.desiredDownloadFormat}));return a.download&&window.open(a.download,"_blank"),Object(j.a)(a.confirmation),!1},id:3108,showAsPopup:!0,text:"",buttonLabel:"Download"}):null)}H.defaultProps={visible:!1};var Z=n("Udcp"),J=n("ry8I"),X=(n("wqoN"),n("JHiC")),Q=n("kmoC"),$=n.n(Q);function ee(e){var t=e.children,n=e.childrenClassName,r=e.className,b=e.noIndex,h=e.seo,y=e.theme,v=e.title,g=e.topNavigation,w=e.wordpressId,E=Object(M.a)().intls,O=Object(a.useState)(),k=O[0],C=O[1],x=Object(a.useContext)(p.b),N=x.view,j=N.type,_=N.id,S=x.visible,A=Object(c.a)().y,P=Object(Z.a)(w);return Object(a.useEffect)((function(){var e;C((e=E.find((function(e){var t=e.url;return window.location.href.indexOf(t)>=0})))?"smartling-"+e.iso2:"")}),[E,A]),o.a.createElement(o.a.Fragment,null,o.a.createElement(s.a,null),o.a.createElement(i.a,null),o.a.createElement(f.a,{bodyAttributes:{class:l()(k,r)},htmlAttributes:{class:S?$.a.modalVisible:""},noIndex:b,seo:P&&P.seo?P.seo:h,title:v}),o.a.createElement(J.a,y,o.a.createElement(u.a,{containerStyle:{top:40},navigation:g}),o.a.createElement("div",{className:l()(n),style:{paddingTop:40}},o.a.createElement(d.a,null),t)),o.a.createElement(V,{visible:S&&"form"===j&&_===X.c}),o.a.createElement(F,{visible:S&&"form"===j&&_===X.e}),o.a.createElement(H,{visible:S&&"form"===j&&_===X.d}),o.a.createElement(m.a,null))}ee.defaultProps={noIndex:!1}},f0Ye:function(e,t,n){"use strict";n.d(t,"c",(function(){return r})),n.d(t,"b",(function(){return l})),n.d(t,"a",(function(){return i}));var a=n("cr+I"),o=n.n(a);function r(e){var t=e.lastIndexOf(" ");return t<0?[e]:[e.substr(0,t),e.substr(t+1)]}function l(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;aand Debian","type":"manual"},{"confirmation":"/confirmation-rpm","download":"https://docs.confluent.io/current/installation/installing_cp.html#rhel-and-centos","icon":"icon-rpm.svg","name":"rpm","text":"rpm for RHEL
and CentOS","type":"manual"},{"confirmation":"/confirmation-docker","download":null,"icon":"icon-docker.svg","name":"docker","text":"Docker images","type":"manual"}]}}}')}}]); \ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/5ed0e8c19a404b32f6f399ee7382a108b0b450e8-f73f4deab36ca1d4bc21.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/5ed0e8c19a404b32f6f399ee7382a108b0b450e8-f73f4deab36ca1d4bc21.js new file mode 100644 index 0000000..d16588f --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/5ed0e8c19a404b32f6f399ee7382a108b0b450e8-f73f4deab36ca1d4bc21.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[13],{"+JPL":function(t,n,e){t.exports={default:e("+SFK"),__esModule:!0}},"+SFK":function(t,n,e){e("AUvm"),e("wgeU"),e("adOz"),e("dl0q"),t.exports=e("WEpk").Symbol},"+plK":function(t,n,e){e("ApPD"),t.exports=e("WEpk").Object.getPrototypeOf},"29s/":function(t,n,e){var r=e("WEpk"),o=e("5T2Y"),i=o["__core-js_shared__"]||(o["__core-js_shared__"]={});(t.exports=function(t,n){return i[t]||(i[t]=void 0!==n?n:{})})("versions",[]).push({version:r.version,mode:e("uOPS")?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},"2GTP":function(t,n,e){var r=e("eaoh");t.exports=function(t,n,e){if(r(t),void 0===n)return t;switch(e){case 1:return function(e){return t.call(n,e)};case 2:return function(e,r){return t.call(n,e,r)};case 3:return function(e,r,o){return t.call(n,e,r,o)}}return function(){return t.apply(n,arguments)}}},"2Nb0":function(t,n,e){e("FlQf"),e("bBy9"),t.exports=e("zLkG").f("iterator")},"2faE":function(t,n,e){var r=e("5K7Z"),o=e("eUtF"),i=e("G8Mo"),u=Object.defineProperty;n.f=e("jmDH")?Object.defineProperty:function(t,n,e){if(r(t),n=i(n,!0),r(e),o)try{return u(t,n,e)}catch(f){}if("get"in e||"set"in e)throw TypeError("Accessors not supported!");return"value"in e&&(t[n]=e.value),t}},"3GJH":function(t,n,e){e("lCc8");var r=e("WEpk").Object;t.exports=function(t,n){return r.create(t,n)}},"5K7Z":function(t,n,e){var r=e("93I4");t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},"5T2Y":function(t,n){var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},"5vMV":function(t,n,e){var r=e("B+OT"),o=e("NsO/"),i=e("W070")(!1),u=e("VVlx")("IE_PROTO");t.exports=function(t,n){var e,f=o(t),c=0,s=[];for(e in f)e!=u&&r(f,e)&&s.push(e);for(;n.length>c;)r(f,e=n[c++])&&(~i(s,e)||s.push(e));return s}},"6/1s":function(t,n,e){var r=e("YqAc")("meta"),o=e("93I4"),i=e("B+OT"),u=e("2faE").f,f=0,c=Object.isExtensible||function(){return!0},s=!e("KUxP")((function(){return c(Object.preventExtensions({}))})),a=function(t){u(t,r,{value:{i:"O"+ ++f,w:{}}})},l=t.exports={KEY:r,NEED:!1,fastKey:function(t,n){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,r)){if(!c(t))return"F";if(!n)return"E";a(t)}return t[r].i},getWeak:function(t,n){if(!i(t,r)){if(!c(t))return!0;if(!n)return!1;a(t)}return t[r].w},onFreeze:function(t){return s&&l.NEED&&c(t)&&!i(t,r)&&a(t),t}}},"6tYh":function(t,n,e){var r=e("93I4"),o=e("5K7Z"),i=function(t,n){if(o(t),!r(n)&&null!==n)throw TypeError(n+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,n,r){try{(r=e("2GTP")(Function.call,e("vwuL").f(Object.prototype,"__proto__").set,2))(t,[]),n=!(t instanceof Array)}catch(o){n=!0}return function(t,e){return i(t,e),n?t.__proto__=e:r(t,e),t}}({},!1):void 0),check:i}},"93I4":function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},A5Xg:function(t,n,e){var r=e("NsO/"),o=e("ar/p").f,i={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return u&&"[object Window]"==i.call(t)?function(t){try{return o(t)}catch(n){return u.slice()}}(t):o(r(t))}},AUvm:function(t,n,e){"use strict";var r=e("5T2Y"),o=e("B+OT"),i=e("jmDH"),u=e("Y7ZC"),f=e("kTiW"),c=e("6/1s").KEY,s=e("KUxP"),a=e("29s/"),l=e("RfKB"),p=e("YqAc"),y=e("UWiX"),v=e("zLkG"),d=e("Zxgi"),h=e("R+7+"),b=e("kAMH"),O=e("5K7Z"),g=e("93I4"),m=e("JB68"),x=e("NsO/"),_=e("G8Mo"),w=e("rr1i"),S=e("oVml"),j=e("A5Xg"),M=e("vwuL"),E=e("mqlF"),P=e("2faE"),k=e("w6GO"),T=M.f,F=P.f,N=j.f,L=r.Symbol,Y=r.JSON,A=Y&&Y.stringify,C=y("_hidden"),U=y("toPrimitive"),B={}.propertyIsEnumerable,D=a("symbol-registry"),W=a("symbols"),H=a("op-symbols"),V=Object.prototype,G="function"==typeof L&&!!E.f,K=r.QObject,J=!K||!K.prototype||!K.prototype.findChild,R=i&&s((function(){return 7!=S(F({},"a",{get:function(){return F(this,"a",{value:7}).a}})).a}))?function(t,n,e){var r=T(V,n);r&&delete V[n],F(t,n,e),r&&t!==V&&F(V,n,r)}:F,Z=function(t){var n=W[t]=S(L.prototype);return n._k=t,n},I=G&&"symbol"==typeof L.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof L},q=function(t,n,e){return t===V&&q(H,n,e),O(t),n=_(n,!0),O(e),o(W,n)?(e.enumerable?(o(t,C)&&t[C][n]&&(t[C][n]=!1),e=S(e,{enumerable:w(0,!1)})):(o(t,C)||F(t,C,w(1,{})),t[C][n]=!0),R(t,n,e)):F(t,n,e)},z=function(t,n){O(t);for(var e,r=h(n=x(n)),o=0,i=r.length;i>o;)q(t,e=r[o++],n[e]);return t},X=function(t){var n=B.call(this,t=_(t,!0));return!(this===V&&o(W,t)&&!o(H,t))&&(!(n||!o(this,t)||!o(W,t)||o(this,C)&&this[C][t])||n)},Q=function(t,n){if(t=x(t),n=_(n,!0),t!==V||!o(W,n)||o(H,n)){var e=T(t,n);return!e||!o(W,n)||o(t,C)&&t[C][n]||(e.enumerable=!0),e}},$=function(t){for(var n,e=N(x(t)),r=[],i=0;e.length>i;)o(W,n=e[i++])||n==C||n==c||r.push(n);return r},tt=function(t){for(var n,e=t===V,r=N(e?H:x(t)),i=[],u=0;r.length>u;)!o(W,n=r[u++])||e&&!o(V,n)||i.push(W[n]);return i};G||(f((L=function(){if(this instanceof L)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),n=function(e){this===V&&n.call(H,e),o(this,C)&&o(this[C],t)&&(this[C][t]=!1),R(this,t,w(1,e))};return i&&J&&R(V,t,{configurable:!0,set:n}),Z(t)}).prototype,"toString",(function(){return this._k})),M.f=Q,P.f=q,e("ar/p").f=j.f=$,e("NV0k").f=X,E.f=tt,i&&!e("uOPS")&&f(V,"propertyIsEnumerable",X,!0),v.f=function(t){return Z(y(t))}),u(u.G+u.W+u.F*!G,{Symbol:L});for(var nt="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),et=0;nt.length>et;)y(nt[et++]);for(var rt=k(y.store),ot=0;rt.length>ot;)d(rt[ot++]);u(u.S+u.F*!G,"Symbol",{for:function(t){return o(D,t+="")?D[t]:D[t]=L(t)},keyFor:function(t){if(!I(t))throw TypeError(t+" is not a symbol!");for(var n in D)if(D[n]===t)return n},useSetter:function(){J=!0},useSimple:function(){J=!1}}),u(u.S+u.F*!G,"Object",{create:function(t,n){return void 0===n?S(t):z(S(t),n)},defineProperty:q,defineProperties:z,getOwnPropertyDescriptor:Q,getOwnPropertyNames:$,getOwnPropertySymbols:tt});var it=s((function(){E.f(1)}));u(u.S+u.F*it,"Object",{getOwnPropertySymbols:function(t){return E.f(m(t))}}),Y&&u(u.S+u.F*(!G||s((function(){var t=L();return"[null]"!=A([t])||"{}"!=A({a:t})||"{}"!=A(Object(t))}))),"JSON",{stringify:function(t){for(var n,e,r=[t],o=1;arguments.length>o;)r.push(arguments[o++]);if(e=n=r[1],(g(n)||void 0!==t)&&!I(t))return b(n)||(n=function(t,n){if("function"==typeof e&&(n=e.call(this,t,n)),!I(n))return n}),r[1]=n,A.apply(Y,r)}}),L.prototype[U]||e("NegM")(L.prototype,U,L.prototype.valueOf),l(L,"Symbol"),l(Math,"Math",!0),l(r.JSON,"JSON",!0)},ApPD:function(t,n,e){var r=e("JB68"),o=e("U+KD");e("zn7N")("getPrototypeOf",(function(){return function(t){return o(r(t))}}))},AyUB:function(t,n,e){t.exports={default:e("3GJH"),__esModule:!0}},"B+OT":function(t,n){var e={}.hasOwnProperty;t.exports=function(t,n){return e.call(t,n)}},D8kY:function(t,n,e){var r=e("Ojgd"),o=Math.max,i=Math.min;t.exports=function(t,n){return(t=r(t))<0?o(t+n,0):i(t,n)}},EJiy:function(t,n,e){"use strict";n.__esModule=!0;var r=u(e("F+2o")),o=u(e("+JPL")),i="function"==typeof o.default&&"symbol"==typeof r.default?function(t){return typeof t}:function(t){return t&&"function"==typeof o.default&&t.constructor===o.default&&t!==o.default.prototype?"symbol":typeof t};function u(t){return t&&t.__esModule?t:{default:t}}n.default="function"==typeof o.default&&"symbol"===i(r.default)?function(t){return void 0===t?"undefined":i(t)}:function(t){return t&&"function"==typeof o.default&&t.constructor===o.default&&t!==o.default.prototype?"symbol":void 0===t?"undefined":i(t)}},"F+2o":function(t,n,e){t.exports={default:e("2Nb0"),__esModule:!0}},FYw3:function(t,n,e){"use strict";n.__esModule=!0;var r,o=e("EJiy"),i=(r=o)&&r.__esModule?r:{default:r};n.default=function(t,n){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!n||"object"!==(void 0===n?"undefined":(0,i.default)(n))&&"function"!=typeof n?t:n}},FlQf:function(t,n,e){"use strict";var r=e("ccE7")(!0);e("MPFp")(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,n=this._t,e=this._i;return e>=n.length?{value:void 0,done:!0}:(t=r(n,e),this._i+=t.length,{value:t,done:!1})}))},FpHa:function(t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},G8Mo:function(t,n,e){var r=e("93I4");t.exports=function(t,n){if(!r(t))return t;var e,o;if(n&&"function"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;if("function"==typeof(e=t.valueOf)&&!r(o=e.call(t)))return o;if(!n&&"function"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},Hfiw:function(t,n,e){var r=e("Y7ZC");r(r.S,"Object",{setPrototypeOf:e("6tYh").set})},Hsns:function(t,n,e){var r=e("93I4"),o=e("5T2Y").document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},JB68:function(t,n,e){var r=e("Jes0");t.exports=function(t){return Object(r(t))}},JbBM:function(t,n,e){e("Hfiw"),t.exports=e("WEpk").Object.setPrototypeOf},Jes0:function(t,n){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},KUxP:function(t,n){t.exports=function(t){try{return!!t()}catch(n){return!0}}},M1xp:function(t,n,e){var r=e("a0xu");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},MPFp:function(t,n,e){"use strict";var r=e("uOPS"),o=e("Y7ZC"),i=e("kTiW"),u=e("NegM"),f=e("SBuE"),c=e("j2DC"),s=e("RfKB"),a=e("U+KD"),l=e("UWiX")("iterator"),p=!([].keys&&"next"in[].keys()),y=function(){return this};t.exports=function(t,n,e,v,d,h,b){c(e,n,v);var O,g,m,x=function(t){if(!p&&t in j)return j[t];switch(t){case"keys":case"values":return function(){return new e(this,t)}}return function(){return new e(this,t)}},_=n+" Iterator",w="values"==d,S=!1,j=t.prototype,M=j[l]||j["@@iterator"]||d&&j[d],E=M||x(d),P=d?w?x("entries"):E:void 0,k="Array"==n&&j.entries||M;if(k&&(m=a(k.call(new t)))!==Object.prototype&&m.next&&(s(m,_,!0),r||"function"==typeof m[l]||u(m,l,y)),w&&M&&"values"!==M.name&&(S=!0,E=function(){return M.call(this)}),r&&!b||!p&&!S&&j[l]||u(j,l,E),f[n]=E,f[_]=y,d)if(O={values:w?E:x("values"),keys:h?E:x("keys"),entries:P},b)for(g in O)g in j||i(j,g,O[g]);else o(o.P+o.F*(p||S),n,O);return O}},MvwC:function(t,n,e){var r=e("5T2Y").document;t.exports=r&&r.documentElement},NV0k:function(t,n){n.f={}.propertyIsEnumerable},NegM:function(t,n,e){var r=e("2faE"),o=e("rr1i");t.exports=e("jmDH")?function(t,n,e){return r.f(t,n,o(1,e))}:function(t,n,e){return t[n]=e,t}},"NsO/":function(t,n,e){var r=e("M1xp"),o=e("Jes0");t.exports=function(t){return r(o(t))}},Ojgd:function(t,n){var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},P2sY:function(t,n,e){t.exports={default:e("UbbE"),__esModule:!0}},QbLZ:function(t,n,e){"use strict";n.__esModule=!0;var r,o=e("P2sY"),i=(r=o)&&r.__esModule?r:{default:r};n.default=i.default||function(t){for(var n=1;ns;)c.call(t,u=f[s++])&&n.push(u);return n}},"RU/L":function(t,n,e){e("Rqdy");var r=e("WEpk").Object;t.exports=function(t,n,e){return r.defineProperty(t,n,e)}},RfKB:function(t,n,e){var r=e("2faE").f,o=e("B+OT"),i=e("UWiX")("toStringTag");t.exports=function(t,n,e){t&&!o(t=e?t:t.prototype,i)&&r(t,i,{configurable:!0,value:n})}},Rqdy:function(t,n,e){var r=e("Y7ZC");r(r.S+r.F*!e("jmDH"),"Object",{defineProperty:e("2faE").f})},SBuE:function(t,n){t.exports={}},SEkw:function(t,n,e){t.exports={default:e("RU/L"),__esModule:!0}},"U+KD":function(t,n,e){var r=e("B+OT"),o=e("JB68"),i=e("VVlx")("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},UO39:function(t,n){t.exports=function(t,n){return{value:n,done:!!t}}},UWiX:function(t,n,e){var r=e("29s/")("wks"),o=e("YqAc"),i=e("5T2Y").Symbol,u="function"==typeof i;(t.exports=function(t){return r[t]||(r[t]=u&&i[t]||(u?i:o)("Symbol."+t))}).store=r},UbbE:function(t,n,e){e("o8NH"),t.exports=e("WEpk").Object.assign},V7oC:function(t,n,e){"use strict";n.__esModule=!0;var r,o=e("SEkw"),i=(r=o)&&r.__esModule?r:{default:r};n.default=function(){function t(t,n){for(var e=0;ea;)if((f=c[a++])!=f)return!0}else for(;s>a;a++)if((t||a in c)&&c[a]===e)return t||a||0;return!t&&-1}}},WEpk:function(t,n){var e=t.exports={version:"2.6.11"};"number"==typeof __e&&(__e=e)},Y7ZC:function(t,n,e){var r=e("5T2Y"),o=e("WEpk"),i=e("2GTP"),u=e("NegM"),f=e("B+OT"),c=function(t,n,e){var s,a,l,p=t&c.F,y=t&c.G,v=t&c.S,d=t&c.P,h=t&c.B,b=t&c.W,O=y?o:o[n]||(o[n]={}),g=O.prototype,m=y?r:v?r[n]:(r[n]||{}).prototype;for(s in y&&(e=n),e)(a=!p&&m&&void 0!==m[s])&&f(O,s)||(l=a?m[s]:e[s],O[s]=y&&"function"!=typeof m[s]?e[s]:h&&a?i(l,r):b&&m[s]==l?function(t){var n=function(n,e,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(n);case 2:return new t(n,e)}return new t(n,e,r)}return t.apply(this,arguments)};return n.prototype=t.prototype,n}(l):d&&"function"==typeof l?i(Function.call,l):l,d&&((O.virtual||(O.virtual={}))[s]=l,t&c.R&&g&&!g[s]&&u(g,s,l)))};c.F=1,c.G=2,c.S=4,c.P=8,c.B=16,c.W=32,c.U=64,c.R=128,t.exports=c},YqAc:function(t,n){var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},"Yz+Y":function(t,n,e){t.exports={default:e("+plK"),__esModule:!0}},Zxgi:function(t,n,e){var r=e("5T2Y"),o=e("WEpk"),i=e("uOPS"),u=e("zLkG"),f=e("2faE").f;t.exports=function(t){var n=o.Symbol||(o.Symbol=i?{}:r.Symbol||{});"_"==t.charAt(0)||t in n||f(n,t,{value:u.f(t)})}},a0xu:function(t,n){var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},adOz:function(t,n,e){e("Zxgi")("asyncIterator")},"ar/p":function(t,n,e){var r=e("5vMV"),o=e("FpHa").concat("length","prototype");n.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},bBy9:function(t,n,e){e("w2d+");for(var r=e("5T2Y"),o=e("NegM"),i=e("SBuE"),u=e("UWiX")("toStringTag"),f="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),c=0;c=s?t?"":void 0:(i=f.charCodeAt(c))<55296||i>56319||c+1===s||(u=f.charCodeAt(c+1))<56320||u>57343?t?f.charAt(c):i:t?f.slice(c,c+2):u-56320+(i-55296<<10)+65536}}},dl0q:function(t,n,e){e("Zxgi")("observable")},eUtF:function(t,n,e){t.exports=!e("jmDH")&&!e("KUxP")((function(){return 7!=Object.defineProperty(e("Hsns")("div"),"a",{get:function(){return 7}}).a}))},eaoh:function(t,n){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},fpC5:function(t,n,e){var r=e("2faE"),o=e("5K7Z"),i=e("w6GO");t.exports=e("jmDH")?Object.defineProperties:function(t,n){o(t);for(var e,u=i(n),f=u.length,c=0;f>c;)r.f(t,e=u[c++],n[e]);return t}},hDam:function(t,n){t.exports=function(){}},iCc5:function(t,n,e){"use strict";n.__esModule=!0,n.default=function(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}},j2DC:function(t,n,e){"use strict";var r=e("oVml"),o=e("rr1i"),i=e("RfKB"),u={};e("NegM")(u,e("UWiX")("iterator"),(function(){return this})),t.exports=function(t,n,e){t.prototype=r(u,{next:o(1,e)}),i(t,n+" Iterator")}},jmDH:function(t,n,e){t.exports=!e("KUxP")((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},jo6Y:function(t,n,e){"use strict";n.__esModule=!0,n.default=function(t,n){var e={};for(var r in t)n.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}},kAMH:function(t,n,e){var r=e("a0xu");t.exports=Array.isArray||function(t){return"Array"==r(t)}},kTiW:function(t,n,e){t.exports=e("NegM")},kwZ1:function(t,n,e){"use strict";var r=e("jmDH"),o=e("w6GO"),i=e("mqlF"),u=e("NV0k"),f=e("JB68"),c=e("M1xp"),s=Object.assign;t.exports=!s||e("KUxP")((function(){var t={},n={},e=Symbol(),r="abcdefghijklmnopqrst";return t[e]=7,r.split("").forEach((function(t){n[t]=t})),7!=s({},t)[e]||Object.keys(s({},n)).join("")!=r}))?function(t,n){for(var e=f(t),s=arguments.length,a=1,l=i.f,p=u.f;s>a;)for(var y,v=c(arguments[a++]),d=l?o(v).concat(l(v)):o(v),h=d.length,b=0;h>b;)y=d[b++],r&&!p.call(v,y)||(e[y]=v[y]);return e}:s},lCc8:function(t,n,e){var r=e("Y7ZC");r(r.S,"Object",{create:e("oVml")})},mRg0:function(t,n,e){"use strict";n.__esModule=!0;var r=u(e("s3Ml")),o=u(e("AyUB")),i=u(e("EJiy"));function u(t){return t&&t.__esModule?t:{default:t}}n.default=function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function, not "+(void 0===n?"undefined":(0,i.default)(n)));t.prototype=(0,o.default)(n&&n.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),n&&(r.default?(0,r.default)(t,n):t.__proto__=n)}},mqlF:function(t,n){n.f=Object.getOwnPropertySymbols},o8NH:function(t,n,e){var r=e("Y7ZC");r(r.S+r.F,"Object",{assign:e("kwZ1")})},oVml:function(t,n,e){var r=e("5K7Z"),o=e("fpC5"),i=e("FpHa"),u=e("VVlx")("IE_PROTO"),f=function(){},c=function(){var t,n=e("Hsns")("iframe"),r=i.length;for(n.style.display="none",e("MvwC").appendChild(n),n.src="javascript:",(t=n.contentWindow.document).open(),t.write(" + + + +

This page is used by Marketo Forms 2 to proxy cross domain AJAX requests.

+ + \ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/app-35559e9d3c228dc23edc.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/app-35559e9d3c228dc23edc.js new file mode 100644 index 0000000..18c08bc --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/app-35559e9d3c228dc23edc.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[23],{"+ZDr":function(e,t,r){"use strict";r("pIFo");var n=r("TqRt");t.__esModule=!0,t.withPrefix=h,t.withAssetPrefix=function(e){return[""].concat([e.replace(/^\//,"")]).join("/")},t.navigateTo=t.replace=t.push=t.navigate=t.default=void 0;var o=n(r("8OQS")),a=n(r("pVnL")),s=n(r("PJYZ")),i=n(r("VbXa")),u=n(r("lSNA")),c=n(r("17x9")),l=n(r("q1tI")),f=r("YwZP"),d=r("cu4x");function h(e){return function(e){return e.replace(/\/+/g,"/")}(["",e].join("/"))}t.parsePath=d.parsePath;var m={activeClassName:c.default.string,activeStyle:c.default.object,partiallyActive:c.default.bool},p=function(e){function t(t){var r;r=e.call(this,t)||this,(0,u.default)((0,s.default)(r),"defaultGetProps",(function(e){var t=e.isPartiallyCurrent,n=e.isCurrent;return(r.props.partiallyActive?t:n)?{className:[r.props.className,r.props.activeClassName].filter(Boolean).join(" "),style:(0,a.default)({},r.props.style,{},r.props.activeStyle)}:null}));var n=!1;return"undefined"!=typeof window&&window.IntersectionObserver&&(n=!0),r.state={IOSupported:n},r.handleRef=r.handleRef.bind((0,s.default)(r)),r}(0,i.default)(t,e);var r=t.prototype;return r.componentDidUpdate=function(e,t){this.props.to===e.to||this.state.IOSupported||___loader.enqueue((0,d.parsePath)(this.props.to).pathname)},r.componentDidMount=function(){this.state.IOSupported||___loader.enqueue((0,d.parsePath)(this.props.to).pathname)},r.componentWillUnmount=function(){if(this.io){var e=this.io,t=e.instance,r=e.el;t.unobserve(r),t.disconnect()}},r.handleRef=function(e){var t,r,n,o=this;this.props.innerRef&&this.props.innerRef.hasOwnProperty("current")?this.props.innerRef.current=e:this.props.innerRef&&this.props.innerRef(e),this.state.IOSupported&&e&&(this.io=(t=e,r=function(){___loader.enqueue((0,d.parsePath)(o.props.to).pathname)},(n=new window.IntersectionObserver((function(e){e.forEach((function(e){t===e.target&&(e.isIntersecting||e.intersectionRatio>0)&&(n.unobserve(t),n.disconnect(),r())}))}))).observe(t),{instance:n,el:t}))},r.render=function(){var e=this,t=this.props,r=t.to,n=t.getProps,s=void 0===n?this.defaultGetProps:n,i=t.onClick,u=t.onMouseEnter,c=(t.activeClassName,t.activeStyle,t.innerRef,t.partiallyActive,t.state),m=t.replace,p=(0,o.default)(t,["to","getProps","onClick","onMouseEnter","activeClassName","activeStyle","innerRef","partiallyActive","state","replace"]);var g=h(r);return l.default.createElement(f.Link,(0,a.default)({to:g,state:c,getProps:s,innerRef:this.handleRef,onMouseEnter:function(e){u&&u(e),___loader.hovering((0,d.parsePath)(r).pathname)},onClick:function(t){return i&&i(t),0!==t.button||e.props.target||t.defaultPrevented||t.metaKey||t.altKey||t.ctrlKey||t.shiftKey||(t.preventDefault(),w(r,{state:c,replace:m})),!0}},p))},t}(l.default.Component);p.propTypes=(0,a.default)({},m,{onClick:c.default.func,to:c.default.string.isRequired,replace:c.default.bool,state:c.default.object});var g=function(e,t,r){return console.warn('The "'+e+'" method is now deprecated and will be removed in Gatsby v'+r+'. Please use "'+t+'" instead.')},P=l.default.forwardRef((function(e,t){return l.default.createElement(p,(0,a.default)({innerRef:t},e))}));t.default=P;var w=function(e,t){window.___navigate(h(e),t)};t.navigate=w;var b=function(e){g("push","navigate",3),window.___push(h(e))};t.push=b;t.replace=function(e){g("replace","navigate",3),window.___replace(h(e))};t.navigateTo=function(e){return g("navigateTo","navigate",3),b(e)}},"+i7v":function(e,t,r){"use strict";var n=r("TqRt");t.__esModule=!0,t.default=function(e,t){var r=(0,o.default)(e);if(void 0===t)return r?"pageXOffset"in r?r.pageXOffset:r.document.documentElement.scrollLeft:e.scrollLeft;r?r.scrollTo(t,"pageYOffset"in r?r.pageYOffset:r.document.documentElement.scrollTop):e.scrollLeft=t};var o=n(r("8Y+z"));e.exports=t.default},"+lvF":function(e,t,r){e.exports=r("VTer")("native-function-to-string",Function.toString)},"+rLv":function(e,t,r){var n=r("dyZX").document;e.exports=n&&n.documentElement},"/6Hr":function(e,t,r){"use strict";r.d(t,"a",(function(){return n})),r.d(t,"b",(function(){return o})),r.d(t,"c",(function(){return a}));var n=function(){},o="STRATEGY_ALL_SUBSTRINGS_INDEX",a="STRATEGY_EXACT_WORDS_INDEX"},"/SS/":function(e,t,r){var n=r("XKFU");n(n.S,"Object",{setPrototypeOf:r("i5dc").set})},"/e88":function(e,t){e.exports="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff"},"0/R4":function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},"0sh+":function(e,t,r){var n=r("quPj"),o=r("vhPU");e.exports=function(e,t,r){if(n(t))throw TypeError("String#"+r+" doesn't accept regex!");return String(o(e))}},"1MBn":function(e,t,r){var n=r("DVgA"),o=r("JiEa"),a=r("UqcF");e.exports=function(e){var t=n(e),r=o.f;if(r)for(var s,i=r(e),u=a.f,c=0;i.length>c;)u.call(e,s=i[c++])&&t.push(s);return t}},"1TsA":function(e,t){e.exports=function(e,t){return{value:t,done:!!e}}},"1fHE":function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n=function(){function e(){}var t=e.prototype;return t.read=function(e,t){var r=this.getStateKey(e,t);try{var n=window.sessionStorage.getItem(r);return JSON.parse(n)}catch(o){return window&&window.___GATSBY_REACT_ROUTER_SCROLL&&window.___GATSBY_REACT_ROUTER_SCROLL[r]?window.___GATSBY_REACT_ROUTER_SCROLL[r]:{}}},t.save=function(e,t,r){var n=this.getStateKey(e,t),o=JSON.stringify(r);try{window.sessionStorage.setItem(n,o)}catch(a){window&&window.___GATSBY_REACT_ROUTER_SCROLL||(window.___GATSBY_REACT_ROUTER_SCROLL={}),window.___GATSBY_REACT_ROUTER_SCROLL[n]=JSON.parse(o)}},t.getStateKey=function(e,t){var r="@@scroll|"+(e.key||e.pathname);return null==t?r:r+"|"+t},e}();t.default=n},"2OiF":function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},"2SVd":function(e,t,r){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},"3Lyj":function(e,t,r){var n=r("KroJ");e.exports=function(e,t,r){for(var o in t)n(e,o,t[o],r);return e}},"444f":function(e,t,r){"use strict";var n=r("TqRt");t.__esModule=!0,t.default=t.ScrollBehaviorContext=void 0;var o=n(r("PJYZ")),a=n(r("VbXa")),s=n(r("lSNA")),i=n(r("q1tI")),u=n(r("LHMV")),c=n(r("17x9")),l=r("9Xx/"),f=n(r("1fHE")),d=i.default.createContext();t.ScrollBehaviorContext=d;var h={shouldUpdateScroll:c.default.func,children:c.default.element.isRequired,location:c.default.object.isRequired},m=function(e){function t(t,r){var n;return n=e.call(this,t,r)||this,(0,s.default)((0,o.default)(n),"shouldUpdateScroll",(function(e,t){var r=n.props.shouldUpdateScroll;return!r||r.call(n.scrollBehavior,e,t)})),(0,s.default)((0,o.default)(n),"registerElement",(function(e,t,r){n.scrollBehavior.registerElement(e,t,r,n.getRouterProps())})),(0,s.default)((0,o.default)(n),"unregisterElement",(function(e){n.scrollBehavior.unregisterElement(e)})),n.scrollBehavior=new u.default({addTransitionHook:l.globalHistory.listen,stateStorage:new f.default,getCurrentLocation:function(){return n.props.location},shouldUpdateScroll:n.shouldUpdateScroll}),n}(0,a.default)(t,e);var r=t.prototype;return r.componentDidUpdate=function(e){var t=this.props.location;if(t!==e.location){var r={location:e.location};this.scrollBehavior.updateScroll(r,{history:l.globalHistory,location:t})}},r.componentWillUnmount=function(){this.scrollBehavior.stop()},r.getRouterProps=function(){return{location:this.props.location,history:l.globalHistory}},r.render=function(){return i.default.createElement(d.Provider,{value:this},i.default.Children.only(this.props.children))},t}(i.default.Component);m.propTypes=h;var p=m;t.default=p},"4LiD":function(e,t,r){"use strict";var n=r("dyZX"),o=r("XKFU"),a=r("KroJ"),s=r("3Lyj"),i=r("Z6vF"),u=r("SlkY"),c=r("9gX7"),l=r("0/R4"),f=r("eeVq"),d=r("XMVh"),h=r("fyDq"),m=r("Xbzi");e.exports=function(e,t,r,p,g,P){var w=n[e],b=w,v=g?"set":"add",k=b&&b.prototype,y={},C=function(e){var t=k[e];a(k,e,"delete"==e||"has"==e?function(e){return!(P&&!l(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return P&&!l(e)?void 0:t.call(this,0===e?0:e)}:"add"==e?function(e){return t.call(this,0===e?0:e),this}:function(e,r){return t.call(this,0===e?0:e,r),this})};if("function"==typeof b&&(P||k.forEach&&!f((function(){(new b).entries().next()})))){var I=new b,B=I[v](P?{}:-0,1)!=I,x=f((function(){I.has(1)})),j=d((function(e){new b(e)})),_=!P&&f((function(){for(var e=new b,t=5;t--;)e[v](t,t);return!e.has(-0)}));j||((b=t((function(t,r){c(t,b,e);var n=m(new w,t,b);return null!=r&&u(r,g,n[v],n),n}))).prototype=k,k.constructor=b),(x||_)&&(C("delete"),C("has"),g&&C("get")),(_||B)&&C(v),P&&k.clear&&delete k.clear}else b=p.getConstructor(t,e,g,v),s(b.prototype,r),i.NEED=!0;return h(b,e),y[e]=b,o(o.G+o.W+o.F*(b!=w),y),P||p.setStrong(b,e,g),b}},"4R4u":function(e,t){e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},"5oMp":function(e,t,r){"use strict";r("pIFo"),e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},"5yr3":function(e,t,r){"use strict";var n=function(e){return e=e||Object.create(null),{on:function(t,r){(e[t]||(e[t]=[])).push(r)},off:function(t,r){e[t]&&e[t].splice(e[t].indexOf(r)>>>0,1)},emit:function(t,r){(e[t]||[]).slice().map((function(e){e(r)})),(e["*"]||[]).slice().map((function(e){e(t,r)}))}}}();t.a=n},"69bn":function(e,t,r){var n=r("y3w9"),o=r("2OiF"),a=r("K0xU")("species");e.exports=function(e,t){var r,s=n(e).constructor;return void 0===s||null==(r=n(s)[a])?t:o(r)}},"7h0T":function(e,t,r){var n=r("XKFU");n(n.S,"Number",{isNaN:function(e){return e!=e}})},"7hJ6":function(e,t,r){"use strict";var n=r("TqRt"),o=n(r("444f")),a=n(r("IVHb"));t.ScrollContainer=a.default,t.ScrollContext=o.default},"8OQS":function(e,t){e.exports=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n=0||(o[r]=e[r]);return o}},"8Y+z":function(e,t,r){"use strict";t.__esModule=!0,t.default=function(e){return e===e.window?e:9===e.nodeType&&(e.defaultView||e.parentWindow)},e.exports=t.default},"8a7r":function(e,t,r){"use strict";var n=r("hswa"),o=r("RjD/");e.exports=function(e,t,r){t in e?n.f(e,t,o(0,r)):e[t]=r}},"8jRI":function(e,t,r){"use strict";r("pIFo"),r("rGqo"),r("yt8O"),r("Btvt"),r("RW0V"),r("SRfc"),r("Oyvg");var n=new RegExp("%[a-f0-9]{2}","gi"),o=new RegExp("(%[a-f0-9]{2})+","gi");function a(e,t){try{return decodeURIComponent(e.join(""))}catch(o){}if(1===e.length)return e;t=t||1;var r=e.slice(0,t),n=e.slice(t);return Array.prototype.concat.call([],a(r),a(n))}function s(e){try{return decodeURIComponent(e)}catch(o){for(var t=e.match(n),r=1;r1)for(var r=1;r0?arguments[0]:void 0)}}),{get:function(e){var t=n.getEntry(o(this,"Map"),e);return t&&t.v},set:function(e,t){return n.def(o(this,"Map"),0===e?0:e,t)}},n,!0)},"9Xx/":function(e,t,r){"use strict";r.r(t),r.d(t,"globalHistory",(function(){return u})),r.d(t,"navigate",(function(){return c})),r.d(t,"createHistory",(function(){return a})),r.d(t,"createMemorySource",(function(){return s}));r("KKXr"),r("VRzm"),r("Btvt"),r("pIFo"),r("OG14"),r("91GP");var n=Object.assign||function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},c=u.state,l=u.replace,f=void 0!==l&&l;if("number"==typeof t)e.history.go(t);else{c=n({},c,{key:Date.now()+""});try{s||f?e.history.replaceState(c,null,t):e.history.pushState(c,null,t)}catch(h){e.location[f?"replace":"assign"](t)}}a=o(e),s=!0;var d=new Promise((function(e){return i=e}));return r.forEach((function(e){return e({location:a,action:"PUSH"})})),d}}},s=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",t=e.indexOf("?"),r={pathname:t>-1?e.substr(0,t):e,search:t>-1?e.substr(t):""},n=0,o=[r],a=[null];return{get location(){return o[n]},addEventListener:function(e,t){},removeEventListener:function(e,t){},history:{get entries(){return o},get index(){return n},get state(){return a[n]},pushState:function(e,t,r){var s=r.split("?"),i=s[0],u=s[1],c=void 0===u?"":u;n++,o.push({pathname:i,search:c.length?"?"+c:c}),a.push(e)},replaceState:function(e,t,r){var s=r.split("?"),i=s[0],u=s[1],c=void 0===u?"":u;o[n]={pathname:i,search:c},a[n]=e},go:function(e){var t=n+e;t<0||t>a.length-1||(n=t)}}}},i=!("undefined"==typeof window||!window.document||!window.document.createElement),u=a(i?window:s()),c=u.navigate},"9gX7":function(e,t){e.exports=function(e,t,r,n){if(!(e instanceof t)||void 0!==n&&n in e)throw TypeError(r+": incorrect invocation!");return e}},"9rSQ":function(e,t,r){"use strict";var n=r("xTJ+");function o(){this.handlers=[]}o.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},o.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},o.prototype.forEach=function(e){n.forEach(this.handlers,(function(t){null!==t&&e(t)}))},e.exports=o},A5AN:function(e,t,r){"use strict";var n=r("AvRE")(!0);e.exports=function(e,t,r){return t+(r?n(e,t).length:1)}},Afnz:function(e,t,r){"use strict";var n=r("LQAc"),o=r("XKFU"),a=r("KroJ"),s=r("Mukb"),i=r("hPIQ"),u=r("QaDb"),c=r("fyDq"),l=r("OP3Y"),f=r("K0xU")("iterator"),d=!([].keys&&"next"in[].keys()),h=function(){return this};e.exports=function(e,t,r,m,p,g,P){u(r,t,m);var w,b,v,k=function(e){if(!d&&e in B)return B[e];switch(e){case"keys":case"values":return function(){return new r(this,e)}}return function(){return new r(this,e)}},y=t+" Iterator",C="values"==p,I=!1,B=e.prototype,x=B[f]||B["@@iterator"]||p&&B[p],j=x||k(p),_=p?C?k("entries"):j:void 0,S="Array"==t&&B.entries||x;if(S&&(v=l(S.call(new e)))!==Object.prototype&&v.next&&(c(v,y,!0),n||"function"==typeof v[f]||s(v,f,h)),C&&x&&"values"!==x.name&&(I=!0,j=function(){return x.call(this)}),n&&!P||!d&&!I&&B[f]||s(B,f,j),i[t]=j,i[y]=h,p)if(w={values:C?j:k("values"),keys:g?j:k("keys"),entries:_},P)for(b in w)b in B||a(B,b,w[b]);else o(o.P+o.F*(d||I),t,w);return w}},AvRE:function(e,t,r){var n=r("RYi7"),o=r("vhPU");e.exports=function(e){return function(t,r){var a,s,i=String(o(t)),u=n(r),c=i.length;return u<0||u>=c?e?"":void 0:(a=i.charCodeAt(u))<55296||a>56319||u+1===c||(s=i.charCodeAt(u+1))<56320||s>57343?e?i.charAt(u):a:e?i.slice(u,u+2):s-56320+(a-55296<<10)+65536}}},BGcL:function(e,t,r){"use strict";r.d(t,"b",(function(){return u})),r.d(t,"a",(function(){return h}));r("91GP");var n=r("q1tI"),o=r.n(n),a=r("p46w"),s=r.n(a),i=r("/6Hr"),u="__cnfl_mock_ip_address__";function c(){return navigator.cookieEnabled}function l(e){return s.a.get(e)}function f(e,t,r){void 0===r&&(r=1),c()&&s.a.set(e,t,{expires:r})}var d=o.a.createContext({setCookie:i.a,getCookie:i.a});function h(e){var t,r=e.children,a=Object(n.useState)(Object.assign({},{hasGdprCookie:void 0!==(t=l("confluent_cookies")),isOptedIn:"on"===t||"1"===t})),s=a[0],i=a[1];return o.a.createElement(d.Provider,{value:Object.assign(Object.assign({getCookie:l,setCookie:f,canSetCookie:c},s),{},{agreeGdpr:function(){f("confluent_cookies",1,7),i({hasGdprCookie:!0,isOptedIn:!0})}})},r)}d.Consumer;t.c=d},BOnt:function(e,t,r){"use strict";var n=r("TqRt"),o=r("Wbzz"),a=n(r("hqbx"));t.onClientEntry=function(e,t){void 0===t&&(t={}),(0,a.default)(window,t,(function(e){(0,o.navigate)(e)}))}},Bnag:function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}},Bp9Y:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n=!("undefined"==typeof window||!window.document||!window.document.createElement);t.default=n,e.exports=t.default},Btvt:function(e,t,r){"use strict";var n=r("I8a+"),o={};o[r("K0xU")("toStringTag")]="z",o+""!="[object z]"&&r("KroJ")(Object.prototype,"toString",(function(){return"[object "+n(this)+"]"}),!0)},"C/va":function(e,t,r){"use strict";var n=r("y3w9");e.exports=function(){var e=n(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},CgaS:function(e,t,r){"use strict";r("pIFo"),r("VRzm"),r("Btvt");var n=r("xTJ+"),o=r("MLWZ"),a=r("9rSQ"),s=r("UnBK"),i=r("SntB");function u(e){this.defaults=e,this.interceptors={request:new a,response:new a}}u.prototype.request=function(e){"string"==typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=i(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=[s,void 0],r=Promise.resolve(e);for(this.interceptors.request.forEach((function(e){t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((function(e){t.push(e.fulfilled,e.rejected)}));t.length;)r=r.then(t.shift(),t.shift());return r},u.prototype.getUri=function(e){return e=i(this.defaults,e),o(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},n.forEach(["delete","get","head","options"],(function(e){u.prototype[e]=function(t,r){return this.request(n.merge(r||{},{method:e,url:t}))}})),n.forEach(["post","put","patch"],(function(e){u.prototype[e]=function(t,r,o){return this.request(n.merge(o||{},{method:e,url:t,data:r}))}})),e.exports=u},DVgA:function(e,t,r){var n=r("zhAb"),o=r("4R4u");e.exports=Object.keys||function(e){return n(e,o)}},DfZB:function(e,t,r){"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},EWmC:function(e,t,r){var n=r("LZWt");e.exports=Array.isArray||function(e){return"Array"==n(e)}},EbDI:function(e,t){e.exports=function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}},EemH:function(e,t,r){var n=r("UqcF"),o=r("RjD/"),a=r("aCFj"),s=r("apmT"),i=r("aagx"),u=r("xpql"),c=Object.getOwnPropertyDescriptor;t.f=r("nh4g")?c:function(e,t){if(e=a(e),t=s(t,!0),u)try{return c(e,t)}catch(r){}if(i(e,t))return o(!n.f.call(e,t),e[t])}},FJW5:function(e,t,r){var n=r("hswa"),o=r("y3w9"),a=r("DVgA");e.exports=r("nh4g")?Object.defineProperties:function(e,t){o(e);for(var r,s=a(t),i=s.length,u=0;i>u;)n.f(e,r=s[u++],t[r]);return e}},GZEu:function(e,t,r){var n,o,a,s=r("m0Pp"),i=r("MfQN"),u=r("+rLv"),c=r("Iw71"),l=r("dyZX"),f=l.process,d=l.setImmediate,h=l.clearImmediate,m=l.MessageChannel,p=l.Dispatch,g=0,P={},w=function(){var e=+this;if(P.hasOwnProperty(e)){var t=P[e];delete P[e],t()}},b=function(e){w.call(e.data)};d&&h||(d=function(e){for(var t=[],r=1;arguments.length>r;)t.push(arguments[r++]);return P[++g]=function(){i("function"==typeof e?e:Function(e),t)},n(g),g},h=function(e){delete P[e]},"process"==r("LZWt")(f)?n=function(e){f.nextTick(s(w,e,1))}:p&&p.now?n=function(e){p.now(s(w,e,1))}:m?(a=(o=new m).port2,o.port1.onmessage=b,n=s(a.postMessage,a,1)):l.addEventListener&&"function"==typeof postMessage&&!l.importScripts?(n=function(e){l.postMessage(e+"","*")},l.addEventListener("message",b,!1)):n="onreadystatechange"in c("script")?function(e){u.appendChild(c("script")).onreadystatechange=function(){u.removeChild(this),w.call(e)}}:function(e){setTimeout(s(w,e,1),0)}),e.exports={set:d,clear:h}},GddB:function(e,t,r){"use strict";r.r(t),r.d(t,"wrapRootElement",(function(){return h})),r.d(t,"onClientEntry",(function(){return m})),r.d(t,"onInitialClientRender",(function(){return p}));r("VRzm"),r("Btvt");var n=r("o0o1"),o=r.n(n),a=(r("ls82"),r("q1tI")),s=r.n(a),i=r("BGcL"),u=r("KuSc"),c=r("w3Ia"),l=r("fuuT"),f=r("afMw");function d(e,t,r,n,o,a,s){try{var i=e[a](s),u=i.value}catch(c){return void r(c)}i.done?t(u):Promise.resolve(u).then(n,o)}var h=function(e){var t=e.element;return s.a.createElement(i.a,null,s.a.createElement(u.a,null,s.a.createElement(l.a,null,s.a.createElement(c.a,null,s.a.createElement(f.a,null,t)))))},m=function(){var e,t=(e=o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("undefined"!=typeof IntersectionObserver){e.next=3;break}return e.next=3,r.e(185).then(r.t.bind(null,"Wr5T",7));case 3:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var a=e.apply(t,r);function s(e){d(a,n,o,s,i,"next",e)}function i(e){d(a,n,o,s,i,"throw",e)}s(void 0)}))});return function(){return t.apply(this,arguments)}}(),p=function(){if("object"==typeof window.drift){var e="en";window.location.host.indexOf(".de")>=0&&(e="de-DE"),window.drift.SNIPPET_VERSION="0.3.1",window.drift.config({locale:e}),window.drift.load("mm7nabris7ki")}}},H6hf:function(e,t,r){var n=r("y3w9");e.exports=function(e,t,r,o){try{return o?t(n(r)[0],r[1]):t(r)}catch(s){var a=e.return;throw void 0!==a&&n(a.call(e)),s}}},HEwt:function(e,t,r){"use strict";var n=r("m0Pp"),o=r("XKFU"),a=r("S/j/"),s=r("H6hf"),i=r("M6Qj"),u=r("ne8i"),c=r("8a7r"),l=r("J+6e");o(o.S+o.F*!r("XMVh")((function(e){Array.from(e)})),"Array",{from:function(e){var t,r,o,f,d=a(e),h="function"==typeof this?this:Array,m=arguments.length,p=m>1?arguments[1]:void 0,g=void 0!==p,P=0,w=l(d);if(g&&(p=n(p,m>2?arguments[2]:void 0,2)),null==w||h==Array&&i(w))for(r=new h(t=u(d.length));t>P;P++)c(r,P,g?p(d[P],P):d[P]);else for(f=w.call(d),r=new h;!(o=f.next()).done;P++)c(r,P,g?s(f,p,[o.value,P],!0):o.value);return r.length=P,r}})},HSsa:function(e,t,r){"use strict";e.exports=function(e,t){return function(){for(var r=new Array(arguments.length),n=0;n")})),f=function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var r="ab".split(e);return 2===r.length&&"a"===r[0]&&"b"===r[1]}();e.exports=function(e,t,r){var d=i(e),h=!a((function(){var t={};return t[d]=function(){return 7},7!=""[e](t)})),m=h?!a((function(){var t=!1,r=/a/;return r.exec=function(){return t=!0,null},"split"===e&&(r.constructor={},r.constructor[c]=function(){return r}),r[d](""),!t})):void 0;if(!h||!m||"replace"===e&&!l||"split"===e&&!f){var p=/./[d],g=r(s,d,""[e],(function(e,t,r,n,o){return t.exec===u?h&&!o?{done:!0,value:p.call(t,r,n)}:{done:!0,value:e.call(r,t,n)}:{done:!1}})),P=g[0],w=g[1];n(String.prototype,e,P),o(RegExp.prototype,d,2==t?function(e,t){return w.call(e,this,t)}:function(e){return w.call(e,this)})}}},IVHb:function(e,t,r){"use strict";var n=r("TqRt");t.__esModule=!0,t.default=void 0;var o=n(r("pVnL")),a=n(r("PJYZ")),s=n(r("VbXa")),i=n(r("lSNA")),u=n(r("q1tI")),c=n(r("i8i4")),l=n(r("dpYK")),f=n(r("17x9")),d=r("444f"),h={scrollKey:f.default.string.isRequired,shouldUpdateScroll:f.default.func,children:f.default.element.isRequired},m=function(e){function t(t){var r;return r=e.call(this,t)||this,(0,i.default)((0,a.default)(r),"shouldUpdateScroll",(function(e,t){var n=r.props.shouldUpdateScroll;return!n||n.call(r.props.context.scrollBehavior,e,t)})),r.scrollKey=t.scrollKey,r}(0,s.default)(t,e);var r=t.prototype;return r.componentDidMount=function(){this.props.context.registerElement(this.props.scrollKey,c.default.findDOMNode(this),this.shouldUpdateScroll)},r.componentDidUpdate=function(e){(0,l.default)(e.scrollKey===this.props.scrollKey," does not support changing scrollKey.")},r.componentWillUnmount=function(){this.props.context.unregisterElement(this.scrollKey)},r.render=function(){return this.props.children},t}(u.default.Component),p=function(e){return u.default.createElement(d.ScrollBehaviorContext.Consumer,null,(function(t){return u.default.createElement(m,(0,o.default)({},e,{context:t}))}))};p.propTypes=h;var g=p;t.default=g},Ijbi:function(e,t,r){var n=r("WkPL");e.exports=function(e){if(Array.isArray(e))return n(e)}},Iw71:function(e,t,r){var n=r("0/R4"),o=r("dyZX").document,a=n(o)&&n(o.createElement);e.exports=function(e){return a?o.createElement(e):{}}},"J+6e":function(e,t,r){var n=r("I8a+"),o=r("K0xU")("iterator"),a=r("hPIQ");e.exports=r("g3g5").getIteratorMethod=function(e){if(null!=e)return e[o]||e["@@iterator"]||a[n(e)]}},J4zp:function(e,t,r){var n=r("wTVA"),o=r("m0LI"),a=r("ZhPi"),s=r("wkBT");e.exports=function(e,t){return n(e)||o(e,t)||a(e,t)||s()}},JEQr:function(e,t,r){"use strict";(function(t){r("a1Th"),r("h7Nl"),r("Btvt");var n=r("xTJ+"),o=r("yK9s"),a={"Content-Type":"application/x-www-form-urlencoded"};function s(e,t){!n.isUndefined(e)&&n.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var i,u={adapter:(("undefined"!=typeof XMLHttpRequest||void 0!==t&&"[object process]"===Object.prototype.toString.call(t))&&(i=r("tQ2B")),i),transformRequest:[function(e,t){return o(t,"Accept"),o(t,"Content-Type"),n.isFormData(e)||n.isArrayBuffer(e)||n.isBuffer(e)||n.isStream(e)||n.isFile(e)||n.isBlob(e)?e:n.isArrayBufferView(e)?e.buffer:n.isURLSearchParams(e)?(s(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):n.isObject(e)?(s(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"==typeof e)try{e=JSON.parse(e)}catch(t){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,validateStatus:function(e){return e>=200&&e<300}};u.headers={common:{Accept:"application/json, text/plain, */*"}},n.forEach(["delete","get","head"],(function(e){u.headers[e]={}})),n.forEach(["post","put","patch"],(function(e){u.headers[e]=n.merge(a)})),e.exports=u}).call(this,r("8oxB"))},JHiC:function(e,t,r){"use strict";r.d(t,"a",(function(){return n})),r.d(t,"f",(function(){return o})),r.d(t,"c",(function(){return a})),r.d(t,"e",(function(){return s})),r.d(t,"d",(function(){return i})),r.d(t,"b",(function(){return u}));var n=200,o="youtube",a="MODAL_VIEW_CLOUD_SIGN_UP",s="MODAL_VIEW_DOWNLOAD_PLATFORM",i="MODAL_VIEW_DOWNLOAD_COMMUNITY",u={type:"form",id:"search"}},JRtE:function(e,t,r){"use strict";t.onRouteUpdate=function(e,t){setTimeout((function(){(t.dataLayerName?window[t.dataLayerName]:window.dataLayer).push({event:"gatsby-route-change"})}),50)}},JiEa:function(e,t){t.f=Object.getOwnPropertySymbols},K0xU:function(e,t,r){var n=r("VTer")("wks"),o=r("ylqs"),a=r("dyZX").Symbol,s="function"==typeof a;(e.exports=function(e){return n[e]||(n[e]=s&&a[e]||(s?a:o)("Symbol."+e))}).store=n},KKXr:function(e,t,r){"use strict";var n=r("quPj"),o=r("y3w9"),a=r("69bn"),s=r("A5AN"),i=r("ne8i"),u=r("Xxuz"),c=r("Ugos"),l=r("eeVq"),f=Math.min,d=[].push,h="length",m=!l((function(){RegExp(4294967295,"y")}));r("IU+Z")("split",2,(function(e,t,r,l){var p;return p="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1)[h]||2!="ab".split(/(?:ab)*/)[h]||4!=".".split(/(.?)(.?)/)[h]||".".split(/()()/)[h]>1||"".split(/.?/)[h]?function(e,t){var o=String(this);if(void 0===e&&0===t)return[];if(!n(e))return r.call(o,e,t);for(var a,s,i,u=[],l=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),f=0,m=void 0===t?4294967295:t>>>0,p=new RegExp(e.source,l+"g");(a=c.call(p,o))&&!((s=p.lastIndex)>f&&(u.push(o.slice(f,a.index)),a[h]>1&&a.index=m));)p.lastIndex===a.index&&p.lastIndex++;return f===o[h]?!i&&p.test("")||u.push(""):u.push(o.slice(f)),u[h]>m?u.slice(0,m):u}:"0".split(void 0,0)[h]?function(e,t){return void 0===e&&0===t?[]:r.call(this,e,t)}:r,[function(r,n){var o=e(this),a=null==r?void 0:r[t];return void 0!==a?a.call(r,o,n):p.call(String(o),r,n)},function(e,t){var n=l(p,e,this,t,p!==r);if(n.done)return n.value;var c=o(e),d=String(this),h=a(c,RegExp),g=c.unicode,P=(c.ignoreCase?"i":"")+(c.multiline?"m":"")+(c.unicode?"u":"")+(m?"y":"g"),w=new h(m?c:"^(?:"+c.source+")",P),b=void 0===t?4294967295:t>>>0;if(0===b)return[];if(0===d.length)return null===u(w,d)?[d]:[];for(var v=0,k=0,y=[];k=0&&window.SimpleDTO)var e=new window.SimpleDTO({domain:"confluent.io",dataSrc:"https://go.confluent.io/dtp-102.html",debug:!1,mode:"receive",cb:function(){try{var t=e.getGlobal().mktoPreFillFields;e.cleanup(),l(t)}catch(r){}}})}),[]),s.a.createElement(p.Provider,{value:P},t)}p.Consumer;t.b=p},Kuth:function(e,t,r){var n=r("y3w9"),o=r("FJW5"),a=r("4R4u"),s=r("YTvA")("IE_PROTO"),i=function(){},u=function(){var e,t=r("Iw71")("iframe"),n=a.length;for(t.style.display="none",r("+rLv").appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write(" + + + + "Turning the database inside out with Apache Samza" by Martin Kleppmann - YouTube + + + + + + +
+ \ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/fU9hR3kiOK0_data/IBsoycHqu6ZdqZ5gHS35_f-v1rrNoj4t1cu0jBGkozc.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/fU9hR3kiOK0_data/IBsoycHqu6ZdqZ5gHS35_f-v1rrNoj4t1cu0jBGkozc.js new file mode 100644 index 0000000..9df365a --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/fU9hR3kiOK0_data/IBsoycHqu6ZdqZ5gHS35_f-v1rrNoj4t1cu0jBGkozc.js @@ -0,0 +1 @@ +/* Anti-spam. Want to say hello? Contact (base64) Ym90Z3VhcmQtY29udGFjdEBnb29nbGUuY29t */Function('var v={},g=function(V,Y,L){if("object"==(L=typeof V,L))if(V){if(V instanceof Array)return"array";if(V instanceof Object)return L;if("[object Window]"==(Y=Object.prototype.toString.call(V),Y))return"object";if("[object Array]"==Y||"number"==typeof V.length&&"undefined"!=typeof V.splice&&"undefined"!=typeof V.propertyIsEnumerable&&!V.propertyIsEnumerable("splice"))return"array";if("[object Function]"==Y||"undefined"!=typeof V.call&&"undefined"!=typeof V.propertyIsEnumerable&&!V.propertyIsEnumerable("call"))return"function"}else return"null";else if("function"==L&&"undefined"==typeof V.call)return"object";return L},y=function(V,Y,L,U,p,G){for(L=(U=(p=(((Y=(G={},D(V)),G).X=D(V),G).b=[],V.C==V?(D(V)|0)-1:1),D(V)),0);L>3,Y),p>>8&255,p&255],void 0)!=U&&Y.push(U),0)==V.T(16).length&&(V.L[16]=void 0,R(16,V,Y)),""),L&&(L.message&&(U+=L.message),L.stack&&(U+=":"+L.stack)),V.T(52)),3)L?U[p++]=L:(2048>L?U[p++]=L>>6|192:(55296==(L&64512)&&Y+1>18|240,U[p++]=L>>12&63|128):U[p++]=L>>12|224,U[p++]=L>>6&63|128),U[p++]=L&63|128);return U},a={},e={},E=function(V,Y,L,U){for(L=(U=(Y|0)-1,[]);0<=U;U--)L[(Y|0)-1-(U|0)]=V>>8*U&255;return L},t=function(V,Y){for(Y=[];V--;)Y.push(255*Math.random()|0);return Y},w=this||self,n={},Hk=function(V,Y,L,U,p){for(Y.v=((U=(Y.rx=function(G,H,k){return(k=(H=function(){return k()},function(){return G}),H)[this.N]=function(B){G=B},H},Y.f=(Y.s=(Y.I=void 0,Y.A=0,false),function(G,H,k,B,z,S){return G=(S=(z=this,k=(B=function(){return B[(z.m|0)+(k[z.F]===H|0)-!S[z.F]]},function(){return B()}),z.R),k[z.N]=function(X){B[z.l]=X},k[z.N](G),k)}),0),p=[],Y.a=[],Y).U=!(Y.G=0,Y.B=void 0,1),25);128>U;U++)p[U]=String.fromCharCode(U);R(19,((R(139,((R(137,Y,(R((R(16,(R(121,(R(((R(31,Y,(R(15,(R(215,(R(230,Y,[0,0,(U=(R(42,((R(211,Y,(R(70,Y,(R(164,Y,(R(134,(Y.p7=(R(58,(Y.C7=(U=(R(202,Y,(R(208,Y,((R(51,Y,(R(8,Y,((R(157,(R(171,Y,[(R(188,Y,(R(183,Y,(R((R(73,(R(108,(R(155,(R(152,(R(34,(R(225,(R(21,(R(124,(R(169,(R(170,(R(109,(Y.C=(Y.th=function(G){this.C=G},Y.H=[],Y),Y.L=[],Y),0),Y),0),Y),function(G,H,k){(H=D(G),k=D(G),H=G.T(H),R)(k,G,g(H))}),Y),function(G,H,k,B,z){B=(z=(H=(k=(k=(z=(H=D((B=D(G),G)),D)(G),D(G)),G).T(k),G).T(H),G.T(z)),G.T(B)),0!==B&&(k=Yv(G,z,1,k,B,H),B.addEventListener(H,k,x),R(134,G,[B,H,k]))}),Y),function(G,H,k,B,z){(B=D((H=D(G),k=D(G),G)),G).C==G&&(B=G.T(B),z=G.T(H),k=G.T(k),z[k]=B,171==H&&(G.Z=void 0,2==k&&(G.g=void 0,R(109,G,(G.T(109)|0)+32))))}),Y),function(G){Vj(G,4)}),Y),function(G,H,k,B){(H=(k=(B=D(G),D)(G),D)(G),k=G.T(k),B=G.T(B),R)(H,G,B[k])}),Y),[165,0,0]),Y),function(G,H,k,B,z,S){if(!W(true,G,255)){if("object"==g((G=(H=(k=(z=(B=(z=(k=D(G),H=D(G),D(G)),D(G)),G).T(z),G).T(k),G.T(H)),G.T(B)),k))){for(S in B=[],k)B.push(S);k=B}for(B=(z=0>=(J=H&(1<=J.length;)J.push(D(Q));u=J[u]}q.push(u)}Q.I=Q.f(X.slice(),Q.Y),Q.B=Q.f(q,Q.Y)})})),R)(213,Y,0),179),Y,function(G,H,k,B){if(B=G.h.pop()){for(H=D(G);0>H)}),V&&"!"==V.charAt(0)?(Y.$=V,U()):(Y.i=[],Y.j=0,L=!!L.S,F(Y,[e,V]),F(Y,[LV,U]),M(L,true,Y,false))},I={},K=function(V,Y,L){return(L=V.T(109),V.i&&L=Y.G||1>3,Y)>=V.j)throw d(V,31),V.o;return(R(109,((void 0==V.g&&(V.g=P((L|0)-4,V.i),V.Z=void 0),V).Z!=L>>3&&(V.Z=L>>3,U=V.T(171),V.L7=kv([0,0,U[1],U[2]],V.g,V.Z)),V),(Y|0)+8),V).i[L]^V.L7[L%8]},LV={},Vj=function(V,Y,L,U){l(V,(L=(U=D(V),D(V)),L),E(V.T(U),Y))},N=function(V,Y){try{Hk(V,this,Y)}catch(L){O(L,this)}},pV=((N.prototype.c=((N.prototype.K=function(V,Y,L,U){l(this,((L=(U=(L=(Y=V&4,V&=3,D(this)),D(this)),this.T(L)),Y&&(L=C((""+L).replace(/\\r\\n/g,"\\n"))),V)&&l(this,U,E(L.length,2)),U),L)},N.prototype).T=function(V,Y){if(void 0===(Y=this.L[V],Y))throw d(this,30,0,V),this.o;return Y()},(N.prototype.F="caller",window.performance)||{}).now?function(){return Math.floor(this.C7+window.performance.now())}:function(){return+new Date},N.prototype).IX=w.requestIdleCallback?function(V){requestIdleCallback(V,{timeout:4})}:w.setImmediate?function(V){setImmediate(V)}:function(V){setTimeout(V,0)},function(V,Y,L,U,p){if(U=(Y.s=false,V)[0],U==I)Y.v=25,Y.R(V);else if(U==a){p=V[1],U=V[3];try{L=Y.R(V)}catch(G){O(G,Y),L=Y.$}p&&p(L),U.push(L)}else if(U==v)Y.R(V);else if(U==e)Y.R(V);else if(U==LV){try{for(L=0;L>=8),Y[G++]=L;this.j=(this.i=Y,this.i).length<<3}catch(H){d(this,17,H)}Uv(this)}else if(p==I)U=V[1],U.push(this.T(52),this.T(123).length,this.T(152).length,this.T(42).length),R(8,this,V[2]),this.L[48]&&K(this,this.T(48));else{if(p==a){L=(V=E(((U=V[2],this.T(152).length)|0)+2,2),this.C),this.C=this;try{G=this.T(16),0L;L++)Y[L]+=V[L];for(L=(V=[13,8,13,12,16,5,3,10,15],0);9>L;L++)Y[3](Y,L%3,V[L])}},"toString"),function(V,Y,L,U,p){if(0!=L.O.length){if(p=0==L.A)L.P=L.c();return V=Bk(Y,L,V),p&&(p=L.c()-L.P,p<(U?10:0)||0>=L.v--||L.a.push(254>=p?p:254)),V}}),m,kv=((N.prototype.o={},N.prototype.Y=function(V){return(V=V().shift(),this).I().length||this.B().length||(this.B=this.I=void 0,this.A--),V},N.prototype.Oi=(N.prototype.Ei=function(V,Y,L,U,p){for(U=p=0;U>6;return(p=new Number((V=(p+=p<<3,p^=p>>11,p)+(p<<15)>>>0,V&(1<>>Y)%L,p},N.prototype.l=36,(N.prototype.dx=function(V,Y,L){return(Y=(Y^=Y<<13,Y^=Y>>17,(Y^Y<<5)&L))||(Y=1),V^Y},N.prototype).Ah=function(V,Y,L,U,p,G){for(p=G=(U=[],0);p>G&255);return U},function(V,Y,L,U){try{U=V[((Y|0)+2)%3],V[Y]=(V[Y]|0)-(V[((Y|0)+1)%3]|0)-(U|0)^(1==Y?U<>>L)}catch(p){throw p;}}),N.prototype).D=function(V,Y,L){for(L=(Y=D(this),0);0>>5)+(L|0)^(U|0)+(V[U&3]|0),U+=2489668359,L+=(Y<<4^Y>>>5)+(Y|0)^(U|0)+(V[U>>>11&3]|0);return[Y>>>24,Y>>16&255,Y>>8&255,Y&255,L>>>24,L>>16&255,L>>8&255,L&255]}catch(p){throw p;}}),F=(N.prototype.M=function(V,Y,L,U,p,G){if(this.$)return this.$;try{G=[],L=[],p=!!V,F(this,[I,G,Y]),F(this,[a,V,G,L]),M(p,true,this,false),U=L[0]}catch(H){O(H,this),U=this.$,V&&V(U)}return U},function(V,Y){V.O.splice(0,0,Y)}),l=(m=w.botguard||(w.botguard={}),function(V,Y,L,U,p,G){if(V.C==V)for(p=V.T(Y),42==Y?(Y=function(H,k,B,z){if((k=p.length,B=(k|0)-4>>3,p.Te)!=B){z=[0,(p.Te=B,B=(B<<3)-4,0),G[1],G[2]];try{p.W=kv(z,P(B,p),P((B|0)+4,p))}catch(S){throw S;}}p.push(p.W[k&7]^H)},G=V.T(230)):Y=function(H){p.push(H)},U&&Y(U&255),U=0,V=L.length;Ub.length||!b[0]?[]:b[0].toLowerCase().split(".").reverse(),b="com"==b[0]&&"youtube"==b[1]||"be"==b[0]&&"youtu"==b[1]);return b?-1==a.indexOf("/redirect?"):!1},Zsa=function(a,b){return b?b:Ysa(a)?"current":"new"},g3=function(a,b){g.A.call(this); +var c=this;this.Ka=a;this.context=b;this.dv=!1;this.ga=new Map;this.ma=new Map;this.context.K.addEventListener(g.lC("annotations_module"),function(d){(d=c.ga.get(d))&&d.apply(c)}); +this.context.K.addEventListener("crx_annotations_module",function(d){(d=c.ma.get(d))&&d.apply(c)})},$sa=function(a,b,c,d,e){var f=Y2(b); +if(f){var k=Zsa(f,b.target),l=(0,g.x)(function(){b.o&&this.context.K.pauseVideo();var m=this.context.videoData.lc||!1,n=g.mq(f||"");m&&n&&(n.v||n.list)?g.rT(this.context.K.app,n.v,c,n.list,!1,void 0):g.GN(f||"","current"==k?"_top":void 0,c)},a); +"new"==k&&(l(),l=null);$2(a.context.logger,d,l,e);Ysa(f)||(a=g.ds(),d=c.itct,a&&d&&g.zs(a,g.Wr(d)))}},ata=function(a){if(a.urlEndpoint&&a.urlEndpoint.url)return a.urlEndpoint.url; +if(a.watchEndpoint&&a.watchEndpoint.videoId){var b="/watch?v="+a.watchEndpoint.videoId;a.watchEndpoint.playlistId&&(b+="&list="+a.watchEndpoint.playlistId);a.watchEndpoint.index&&(b+="&index="+a.watchEndpoint.index);a.watchEndpoint.startTimeSeconds&&(b+="&t="+a.watchEndpoint.startTimeSeconds);return b}return null},h3=function(a,b,c){return{Yx:(a.impressionLoggingUrlsV2s||[]).map(function(d){return d.baseUrl}), +click:(c.loggingUrls||[]).map(function(d){return d.baseUrl}), +close:(b.dismissLoggingUrlsV2s||[]).map(function(d){return d.baseUrl}), +qC:(b.impressionLoggingUrlsV2s||[]).map(function(d){return d.baseUrl}), +Vp:(b.clickLoggingUrlsV2s||[]).map(function(d){return d.baseUrl})}},k3=function(a,b,c){g3.call(this,b,c); +var d=this;this.u=a;this.aa=this.Ia=this.B=this.Ea=!1;this.ha=null;this.ba=new g.I(g.Ia,c.A.Wa?4E3:3E3);g.B(this,this.ba);this.za=new g.I(g.Ia);g.B(this,this.za);this.G=new a3(c,(0,g.x)(this.yk,this),(0,g.x)(this.Co,this));this.U=new g.R({D:"div",H:"iv-drawer",O:{id:"iv-drawer"},J:[{D:"div",H:"iv-drawer-header",O:{"aria-role":"heading"},J:[{D:"span",H:"iv-drawer-header-text"},{D:"button",Y:["iv-drawer-close-button","ytp-button"],O:{"aria-label":"Masquer les fiches",tabindex:"0"}}]},{D:"div",H:"iv-drawer-content"}]}); +g.B(this,this.U);this.C=this.U.element;this.oa=new g.lN(this.U,330);g.B(this,this.oa);this.Ca=g.ce("iv-drawer-header-text",this.C);this.A=g.ce("iv-drawer-content",this.C);this.w=[];this.Aa=this.R=this.F=this.da=this.o=null;this.V=[];this.addCueRange(0,1E3*c.videoData.lengthSeconds,"",function(){d.Ia&&i3(d,"YOUTUBE_DRAWER_AUTO_OPEN")},function(){(d.Ia=d.B)&&j3(d)}); +this.M=this.I=this.Z=null;this.P=0},bta=function(a,b){b.data.autoOpenMs&&a.addCueRange(b.data.autoOpenMs,0x8000000000000,"",function(){i3(a,"YOUTUBE_DRAWER_AUTO_OPEN")}); +b.data.autoCloseMs&&a.addCueRange(b.data.autoCloseMs,0x8000000000000,"",function(){j3(a)}); +var c=b.data.headerText;g.ye(a.Ca,c);a.R&&a.R.setAttribute("title",c);a.Z=g.Wr(b.data.trackingParams);a.M=g.Wr(b.data.closeTrackingParams);a.I=g.Wr(b.data.iconTrackingParams)},cta=function(a,b){var c=b.cardId?b.cardId:"cr:"+a.P; +if(b.content.simpleCardContentRenderer){if(!b.cueRanges.length)return;var d=b.content.simpleCardContentRenderer,e=b.teaser.simpleCardTeaserRenderer,f=b.icon?b.icon.infoCardIconRenderer:null;c={id:c,timestamp:a.P,type:"simple",teaserText:g.T(e.message),teaserDurationMs:parseInt(b.cueRanges[0].teaserDurationMs,10),startMs:parseInt(b.cueRanges[0].startCardActiveMs,10),autoOpen:!!b.autoOpen,Ob:l3(a,c,b,d),sponsored:!1,Gc:h3(d,e,d.command),de:d.trackingParams?g.Wr(d.trackingParams):null,Yd:e.trackingParams? +g.Wr(e.trackingParams):null,yd:f&&f.trackingParams?g.Wr(f.trackingParams):null,imageUrl:m3(d.image.thumbnails,290).url,displayDomain:d.displayDomain?g.T(d.displayDomain):null,showLinkIcon:!!d.showLinkIcon,qn:null,title:d.title?g.T(d.title):"",customMessage:d.callToAction?g.T(d.callToAction):"",url:d.command.urlEndpoint.url?X2({pause_on_navigation:!a.context.videoData.va,target:"new",value:d.command.urlEndpoint.url}):null};n3(a,c)}else if(b.content.collaboratorInfoCardContentRenderer){if(!b.cueRanges.length)return; +d=b.content.collaboratorInfoCardContentRenderer;e=b.teaser.simpleCardTeaserRenderer;f=b.icon?b.icon.infoCardIconRenderer:null;c={id:c,timestamp:a.P,type:"collaborator",teaserText:g.T(e.message),teaserDurationMs:parseInt(b.cueRanges[0].teaserDurationMs,10),startMs:parseInt(b.cueRanges[0].startCardActiveMs,10),autoOpen:!!b.autoOpen,Ob:l3(a,c,b,d),sponsored:!1,Gc:h3(d,e,d.endpoint),de:d.trackingParams?g.Wr(d.trackingParams):null,Yd:e.trackingParams?g.Wr(e.trackingParams):null,yd:f&&f.trackingParams? +g.Wr(f.trackingParams):null,channelId:d.endpoint.browseEndpoint.browseId,customMessage:d.customText?g.T(d.customText):null,wB:m3(d.channelAvatar.thumbnails,290).url,title:d.channelName?g.T(d.channelName):"",metaInfo:[d.subscriberCountText?g.T(d.subscriberCountText):""],url:X2({pause_on_navigation:!a.context.videoData.va,target:"new",value:d.endpoint.browseEndpoint.canonicalBaseUrl?d.endpoint.browseEndpoint.canonicalBaseUrl:"/channel/"+d.endpoint.browseEndpoint.browseId})};n3(a,c)}else if(b.content.playlistInfoCardContentRenderer){if(!b.cueRanges.length)return; +d=b.content.playlistInfoCardContentRenderer;e=b.teaser.simpleCardTeaserRenderer;f=b.icon?b.icon.infoCardIconRenderer:null;c={id:c,timestamp:a.P,type:"playlist",teaserText:g.T(e.message),teaserDurationMs:parseInt(b.cueRanges[0].teaserDurationMs,10),startMs:parseInt(b.cueRanges[0].startCardActiveMs,10),autoOpen:!!b.autoOpen,Ob:l3(a,c,b,d),sponsored:!1,Gc:h3(d,e,d.action),de:d.trackingParams?g.Wr(d.trackingParams):null,Yd:e.trackingParams?g.Wr(e.trackingParams):null,yd:f&&f.trackingParams?g.Wr(f.trackingParams): +null,jj:m3(d.playlistThumbnail.thumbnails,258).url,customMessage:d.customMessage?g.T(d.customMessage):null,playlistVideoCount:g.T(d.playlistVideoCount),title:d.playlistTitle?g.T(d.playlistTitle):"",metaInfo:[d.channelName?g.T(d.channelName):"",d.videoCountText?g.T(d.videoCountText):""],url:X2({pause_on_navigation:!a.context.videoData.va,target:"new",value:ata(d.action)})};n3(a,c)}else if(b.content.videoInfoCardContentRenderer){if(!b.cueRanges.length)return;d=b.content.videoInfoCardContentRenderer; +e=b.teaser.simpleCardTeaserRenderer;f=b.icon?b.icon.infoCardIconRenderer:null;c={id:c,timestamp:a.P,type:"video",teaserText:g.T(e.message),teaserDurationMs:parseInt(b.cueRanges[0].teaserDurationMs,10),startMs:parseInt(b.cueRanges[0].startCardActiveMs,10),autoOpen:!!b.autoOpen,Ob:l3(a,c,b,d),sponsored:!1,Gc:h3(d,e,d.action),de:d.trackingParams?g.Wr(d.trackingParams):null,Yd:e.trackingParams?g.Wr(e.trackingParams):null,yd:f&&f.trackingParams?g.Wr(f.trackingParams):null,jj:m3(d.videoThumbnail.thumbnails, +258).url,videoDuration:d.lengthString?g.T(d.lengthString):null,customMessage:d.customMessage?g.T(d.customMessage):null,title:d.videoTitle?g.T(d.videoTitle):"",metaInfo:[d.channelName?g.T(d.channelName):"",d.viewCountText?g.T(d.viewCountText):""],isLiveNow:!!d.badge,url:X2({pause_on_navigation:!a.context.videoData.va,target:"new",value:ata(d.action)})};n3(a,c)}a.P++},m3=function(a,b){for(var c=-1,d=-1,e=0;e(a[e].width||0))&&(0>c||(a[c].height||0)<(a[e].height||0)||(a[c].width||0)<(a[e].width||0))?c=e:((a[e].height||0)>=b||290<=(a[e].width||0))&&(0>d||(a[d].height||0)>(a[e].height||0)||(a[d].width||0)>(a[e].width||0))&&(d=e)}return a[0<=d?d:c]},l3=function(a,b,c,d){return{feature:c.feature?c.feature:"cards", +src_vid:a.context.videoData.videoId,annotation_id:b,ei:a.context.videoData.eventId,itct:d.trackingParams}},eta=function(a,b){var c=dta(a,b); +c&&(c==a.o&&(a.o=null),a.u.removeCueRange(c.card.id),g.te(c.er),g.db(a.w,c),a.un(),o3(a))},i3=function(a,b,c){if(!a.B){a.oa.show(); +a.da=new g.I(function(){g.J(a.context.K.getRootNode(),g.lM.IV_DRAWER_OPEN)},0); +a.da.start();a.ha=g.Ep(a.A,"mousewheel",(0,g.x)(a.OL,a));a.B=!0;var d=g.ds();d&&a.Z&&a.M&&B2(d,[a.Z,a.M]);var e={TRIGGER_TYPE:b};(0,g.y)(a.w,function(f){f.Cy||(f.Cy=!0,Rsa(a.context.logger,f.card.Gc.Yx,e));d&&B2(d,[f.card.de])}); +A2(a.u);c&&(a.F=new g.I(function(){a.wa=a.R;a.Aa.focus()},330),a.F.start())}},j3=function(a){a.B&&(a.oa.hide(),g.Fp(a.ha),a.ha=null,g.Dn(a.context.K.getRootNode(),g.lM.IV_DRAWER_OPEN),a.B=!1,A2(a.u),a.F&&a.F.stop(),a.F=new g.I(function(){a.wa&&(a.wa.focus(),a.wa=null)},330),a.F.start())},fta=function(a){var b=g.ce("iv-drawer-close-button",a.C); +a.context.o.ka(b,"click",a.iE,a);a.context.o.ka(a.A,"touchend",function(){a.ba.start()}); +a.context.o.ka(a.A,"scroll",a.yE,a);a.context.u.subscribe("onHideControls",function(){a.aa=!0}); +a.context.u.subscribe("onShowControls",function(){a.aa=!1}); +a.context.u.subscribe("onVideoAreaChange",function(){a.aa=g.Bn(a.u.getRootNode(),"ytp-autohide")}); +a.V.push(g.Oo("iv-button-shown",a.oG,a));a.V.push(g.Oo("iv-button-hidden",a.nG,a));a.V.push(g.Oo("iv-teaser-shown",a.rG,a));a.V.push(g.Oo("iv-teaser-hidden",a.qG,a));a.V.push(g.Oo("iv-teaser-clicked",a.pG,a))},n3=function(a,b){a.Ea||(g.Cn(a.ua(),[g.lM.STOP_EVENT_PROPAGATION, +"iv-drawer-manager"]),g.iL(a.u,a.C,5),fta(a),a.R=g.ce("ytp-cards-button",a.u.getRootNode()),a.Aa=g.ce("iv-drawer-close-button",a.C),a.Ea=!0);eta(a,b.id);var c=gta(a,b);if(c){var d={card:b,er:c.element,Cy:!1},e=hta(a,d);g.kb(a.w,e,0,d);c.ca(a.A,e);a.un();b.autoOpen?a.addCueRange(b.startMs,0x8000000000000,b.id,g.Qa(a.vO,d)):(c=1E3*a.context.K.getCurrentTime(),5E3>c&&c>b.startMs&&a.bC(d),a.addCueRange(b.startMs,b.startMs+1,b.id,g.Qa(a.bC,d)),o3(a))}},gta=function(a,b){switch(b.type){case "simple":var c= +a.G; +var d=b.displayDomain?{D:"div",H:"iv-card-image-text",W:b.displayDomain}:"";var e=Xsa(b);d={D:"div",Y:["iv-card"],J:[{D:"a",H:"iv-click-target",O:{href:Y2(b.url)},J:[c3(b.imageUrl,d),{D:"div",H:"iv-card-content",J:[b3("h2",void 0,b.title),e]}]}]};d=new g.R(d);e3(c,g.be("iv-click-target",d.element),b,b.url);return d;case "collaborator":return c=a.G,d={D:"div",Y:["iv-card","iv-card-channel"],J:[{D:"a",Y:["iv-click-target"],O:{href:Y2(b.url),"data-ytid":b.channelId},J:[c3(b.wB),{D:"div",H:"iv-card-content", +J:[f3(b),{D:"h2",H:"iv-card-primary-link",W:b.title},d3(c,b)]}]}]},d=new g.R(d),e3(c,g.be("iv-click-target",d.element),b,b.url),d;case "episode":return Wsa(a.G,b,"iv-card-episode");case "movie":return Wsa(a.G,b,"iv-card-movie");case "playlist":return c=a.G,d={D:"div",Y:["iv-card","iv-card-playlist"],J:[{D:"a",H:"iv-click-target",O:{href:Y2(b.url)},J:[c3(b.jj,{D:"div",H:"iv-card-image-overlay",J:[{D:"span",H:"iv-card-playlist-video-count",W:b.playlistVideoCount}]}),{D:"div",H:"iv-card-content",J:[f3(b), +b3("h2","iv-card-primary-link",b.title),d3(c,b)]}]}]},d=new g.R(d),e3(c,g.be("iv-click-target",d.element),b,b.url),d;case "poll":return Vsa(a.G,b);case "productListing":c=a.G;var f=!g.ab(b.offers);d=["iv-card"];e="";var k=Xsa(b);f&&(d.push("iv-card-product-listing"),e="iv-card-primary-link",f=b.offers[0],k=[],f.price&&k.push({D:"div",H:"iv-card-offer-price",W:f.price}),f.merchant&&k.push({D:"div",H:"iv-card-offer-merchant",W:f.merchant}),k={D:"div",J:k});d={D:"div",Y:d,O:{tabindex:"0"},J:[{D:"a", +Y:["iv-card-image","iv-click-target"],O:{style:"background-image: url("+b.imageUrl+");",href:Y2(b.url),"aria-hidden":"true",tabindex:"-1"}},{D:"div",H:"iv-card-content",J:[b.sponsored?{D:"div",H:"iv-card-sponsored",J:["Lien commercial",{D:"div",H:"iv-ad-info-container",J:[{D:"div",H:"iv-ad-info",W:"{{adInfo}}"},{D:"div",H:"iv-ad-info-icon-container",J:[{D:"div",H:"iv-ad-info-icon"},{D:"div",H:"iv-ad-info-callout"}]}]}]}:"",{D:"a",H:"iv-click-target",O:{href:Y2(b.url)},J:[b3("h2",e,b.title),k]}]}]}; +d=new g.R(d);e=g.oe("span");g.ye(e,"Vous voyez ce produit, car nous pensons qu'il est pertinent pour la vid\u00e9o. Il se peut que le marchand r\u00e9mun\u00e8re Google.");d.qb(e,"adInfo");e3(c,g.be("iv-click-target",d.element),b,b.url);return d;case "video":return c=a.G,d=b.isLiveNow?{D:"span",Y:["yt-badge","yt-badge-live"],W:"EN DIRECT MAINTENANT"}:"",d={D:"div",Y:["iv-card","iv-card-video"],J:[{D:"a",H:"iv-click-target",O:{href:Y2(b.url)},J:[c3(b.jj,b.videoDuration?{D:"span",H:"iv-card-video-duration", +W:b.videoDuration}:""),{D:"div",H:"iv-card-content",J:[f3(b),b3("h2","iv-card-primary-link",b.title),d3(c,b),d]}]}]},d=new g.R(d),e3(c,g.be("iv-click-target",d.element),b,b.url),d}return null},hta=function(a,b){if(0==a.w.length)return 0; +var c=g.Ya(a.w,function(d){return b.card.startMs>d.card.startMs||b.card.startMs==d.card.startMs&&b.card.timestamp>=d.card.timestamp?!0:!1}); +return-1==c?0:c+1},ita=function(a){return a.o?"productListing"==a.o.card.type:(0,g.ti)(a.w,function(b){return"productListing"==b.card.type})},o3=function(a){g.K(a.u.getRootNode(),"ytp-cards-shopping-active",ita(a))},jta=function(a,b){if(a.U.Ha()){var c=new G2([0, +a.A.scrollTop],[0,b.er.offsetTop],600,psa);a.context.w.ka(c,"animate",function(d){a.A.scrollTop=d.y}); +a.context.w.ka(c,"finish",function(d){a.A.scrollTop=d.y}); +c.play()}else g.Qu(a.U,!0),a.A.scrollTop=b.er.offsetTop,g.Qu(a.U,!1)},p3=function(a){return a.o&&a.o.card?a.o.card:a.w[0]&&a.w[0].card?a.w[0].card:null},dta=function(a,b){return g.Xa(a.w,function(c){return c.card.id==b})},q3=function(a,b,c){g3.call(this,a,b); +this.annotation=c;this.isActive=!1},kta=function(a){var b=a.annotation.data; +"start_ms"in b&&"end_ms"in b&&a.addCueRange(a.annotation.data.start_ms,a.annotation.data.end_ms,a.annotation.id,function(){a.show()},function(){a.hide()})},r3=function(a,b,c){q3.call(this,a,b,c); +this.u=null;this.F=!1;this.w=null;this.A=!1;this.o=this.C=this.B=null},s3=function(a,b,c){q3.call(this,a,b,c); +this.I=this.B=this.P=!1;this.F=5E3;this.A=null;this.G=g.ne("DIV","iv-promo-contents");this.u=this.w=this.o=null;this.C=new g.I(function(){this.o.setAttribute("aria-hidden",!0);g.Oh(this.w,!1);g.Oh(this.u,!0)},700,this); +g.B(this,this.C)},lta=function(a){var b=a.annotation.data; +if("cta"==a.annotation.style)var c=6;else if("video"==a.annotation.style||"playlist"==a.annotation.style)c=7;a.F=b.collapse_delay_ms||a.F;var d=["iv-promo","iv-promo-inactive"];a.ua().setAttribute("aria-hidden",!0);a.ua().setAttribute("aria-label","Promotion");a.ua().tabIndex=0;var e=a.annotation.jc(),f=b.image_url;if(f){var k=g.ne("DIV",["iv-promo-img","iv-click-target"]);f=g.ne("IMG",{src:f,"aria-hidden":"true"});k.appendChild(f);b.video_duration&&!b.is_live?(f=g.ne("SPAN","iv-promo-video-duration", +b.video_duration),k.appendChild(f)):b.playlist_length&&(f=g.ne("SPAN","iv-promo-playlist-length",b.playlist_length.toString()),k.appendChild(f));e&&a.yk(k,e,a.annotation.id,b.session_data,void 0,c)}e?(f=g.ne("A","iv-promo-txt"),g.Yc(f,Y2(e)),a.o=f):a.o=g.ne("DIV","iv-promo-txt");switch(a.annotation.style){case "cta":case "website":var l=g.ne("P",null,g.ne("STRONG",null,b.text_line_1));var m=g.ne("P",null,g.ne("SPAN","iv-promo-link",b.text_line_2));if(f=b.text_line_3){d.push("iv-promo-website-card-cta-redesign"); +g.P(a.context.A.experiments,"web_action_cta_larger_ui")&&d.push("iv-promo-website-card-cta-larger-ui");var n=g.ne("BUTTON",["iv-promo-round-expand-icon","ytp-button"]);f=g.ne("BUTTON",["iv-button","iv-promo-button"],g.ne("SPAN","iv-button-content",f));var p=g.ne("DIV","iv-promo-button-container");p.appendChild(f);e&&a.yk(a.ua(),e,a.annotation.id,b.session_data,void 0,c)}g.J(a.o,"iv-click-target");e&&a.yk(a.o,e,a.annotation.id,b.session_data,void 0,c);break;case "playlist":case "video":l=g.ne("P", +null,g.ne("SPAN",null,b.text_line_1)),m=g.ne("P",null,g.ne("STRONG",null,b.text_line_2)),b.is_live&&(l=m,m=g.ne("SPAN",["yt-badge","iv-promo-badge-live"],"EN DIRECT MAINTENANT")),g.J(a.o,"iv-click-target"),e&&a.yk(a.o,e,a.annotation.id,b.session_data,void 0,c),d.push("iv-promo-video")}l&&a.o.appendChild(l);m&&a.o.appendChild(m);a.G.appendChild(a.o);p&&a.G.appendChild(p);c=g.ne("DIV","iv-promo-actions");a.u=g.ne("BUTTON",["iv-promo-expand","ytp-button"]);a.u.title="Agrandir";a.context.o.ka(a.u,"click", +g.Qa(a.hs,5E3),a);c.appendChild(a.u);g.Oh(a.u,!1);a.context.o.ka(a.ua(),"mouseover",a.xF,a);a.context.o.ka(a.ua(),"mouseout",a.wF,a);a.context.o.ka(a.ua(),"touchend",g.Qa(a.hs,5E3),a);a.w=g.ne("BUTTON",["iv-promo-close","ytp-button"]);a.w.title="Fermer";a.context.o.ka(a.w,"click","cta"==a.annotation.style&&b.text_line_3?a.pF:a.oF,a);c.appendChild(a.w);g.Cn(a.ua(),d);k&&(a.ua().appendChild(k),n&&k.appendChild(n));a.ua().appendChild(a.G);a.ua().appendChild(c)},mta=function(a){a.B||a.I||a.A||(g.J(a.ua(), +"iv-promo-collapsed"),a.B=!0,a.C.start())},nta=function(a){a.C.stop(); +a.B&&(g.En(a.ua(),["iv-promo-collapsed","iv-promo-collapsed-no-delay"]),a.B=!1,a.o&&a.o.removeAttribute("aria-hidden"),g.Oh(a.u,!1),g.Oh(a.w,!0))},ota=function(a,b){a.A||(a.A=g.Uf(function(){t3(this); +mta(this)},b,a))},t3=function(a){a.A&&(g.v.clearTimeout(a.A),a.A=null)},u3=function(a){g.vL.call(this,a); +this.P=!1;this.I=0;this.F={};this.V=new Qsa(a);this.B=new g.Gr(this);g.B(this,this.B);this.C=this.w=null;this.B.L(this.player,"onVideoAreaChange",(0,g.x)(this.S,this,"onVideoAreaChange"));this.B.L(this.player,"onHideControls",(0,g.x)(this.S,this,"onHideControls"));this.B.L(this.player,"onShowControls",(0,g.x)(this.S,this,"onShowControls"));this.B.L(this.player,"resize",(0,g.x)(this.S,this,"resize"));this.B.L(this.player,"presentingplayerstatechange",(0,g.x)(this.S,this,"presentingplayerstatechange")); +this.subscribe("presentingplayerstatechange",this.lM,this);this.subscribe("resize",this.pp,this);this.player.N().I.subscribe("vast_info_card_add",this.iB,this);this.U=new g.Gr(this);g.B(this,this.U);this.R=g.ne("DIV","video-custom-annotations");this.u=new g.R({D:"div",Y:["ytp-player-content","ytp-iv-player-content"]});g.B(this,this.u);g.iL(this.player,this.u.element,4);this.u.hide();this.A=new g.R({D:"div",Y:["ytp-iv-video-content"]});g.B(this,this.A);g.qe(this.A.element,g.ne("DIV","video-annotations", +this.R));this.G=this.o=null;this.M=[];pta(this)&&this.load();var b=g.oe("STYLE");(document.getElementsByTagName("HEAD")[0]||document.body).appendChild(b);g.Ge(this,function(){g.te(b)}); +if(a=b.sheet)a.insertRule(".iv-promo .iv-promo-contents .iv-promo-txt .iv-promo-link:after {background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUBAMAAAB/pwA+AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAHlBMVEVMaXH////////////////////////////////////Z6AnKAAAACXRSTlMA+/A2IuI1mJIldm0CAAAAAWJLR0QB/wIt3gAAAEVJREFUCNdjYGCYCQUMBJlACOIzIDElIcyZkwxgojOVWWDMSQauMKYySySUOSnBdSaUOZ0lEsac2YqwYiZ+JhwgM7E5HACgzVCI/YJ59AAAAABJRU5ErkJggg==) no-repeat center;background-size:10px;width:10px;height:10px}", +0),a.insertRule(".iv-promo .iv-promo-actions .iv-promo-close:after {background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJBAMAAAASvxsjAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAJFBMVEVMaXH///////////////////////////////////////////9tKdXLAAAAC3RSTlMAVaQDpaimqQbl5rjXUFUAAAABYktHRAH/Ai3eAAAAPUlEQVQI12MQMmAwEmDwDmaOTmAw39663YCBuXp2MQMDQ+fOBgYG5ujVwQwMptvbgeLaxczVCQwiBgxmAgBkXg1FN5iwiAAAAABJRU5ErkJggg==) no-repeat center;background-size:9px;width:9px;height:9px}", +0),a.insertRule(".iv-promo .iv-promo-actions .iv-promo-expand:after {background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAJBAMAAADnQZCTAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAJFBMVEVMaXHMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMz////eMKB4AAAAC3RSTlMAOpE7k5Uvj5kpfRaQSaQAAAABYktHRAsf18TAAAAAHklEQVQI12MQYGBQZmBwTWCo0GSo6AKRQDZQRIABADXXA/UkIpvtAAAAAElFTkSuQmCC) no-repeat center;background-size:4px 9px;width:4px;height:9px}",0),a.insertRule(".iv-promo-website-card-cta-redesign .iv-promo-round-expand-icon:after {background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAQAAAD9CzEMAAAAAmJLR0QA/4ePzL8AAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfgCgUUEztsNfqrAAAAXklEQVRYw+3Uuw2AQAwEUUNXfBpDIvBRMhQwJJAScNrA0r4CdiQHjjAzK4NGKucPAFmCnZcmwcTphBNO9CTGH4VB+/Zm6YlYis9fhedXz38FNvFriCCl808iw8ysrBu65gCeuV/CfgAAAABJRU5ErkJggg==) no-repeat center;background-size:18px 18px;width:18px;height:18px}", +0),a.insertRule(".iv-card-link-icon {background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASBAMAAACk4JNkAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAGFBMVEVMaXG7u7u7u7u7u7u7u7u7u7u7u7v///+WKTAlAAAABnRSTlMAFdQWbGj9GiOuAAAAAWJLR0QHFmGI6wAAAEhJREFUCNdjYACBNCBgQGMxMKrBWEJJaRAJRjVlKEsoSQDIAqtSZICwgEIQFkgIZBRECMxiBqsCsVjAqsCygQwwFgMeFgQgswBg2xjLrfC4mgAAAABJRU5ErkJggg==) no-repeat center;background-size:9px;width:9px;height:9px}",0),a.insertRule(".iv-card-playlist-video-count:after {background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYBAMAAAASWSDLAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAJFBMVEVMaXH///////////////////////////////////////////9tKdXLAAAAC3RSTlMAvDeyLvxYtDK9Ogx4T1QAAAABYktHRAH/Ai3eAAAAK0lEQVQY02NgoBjshgO8HJoYwKiAMGAD92YHJM7uMCTO9gaEHs4FlPuZAQC8Fj8x/xHjxwAAAABJRU5ErkJggg==) no-repeat center;background-size:24px;width:24px;height:24px}", +0),a.insertRule(".iv-drawer-close-button:after {background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMAgMAAAArG7R0AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACVBMVEVMaXH////////OZTV/AAAAAnRSTlMAoKBFbtAAAAABYktHRAH/Ai3eAAAAKUlEQVQI12MIYGBlSGGQBMIUBjbHCQyM0xwYGDIZwBjEBomB5EBqgGoBolQGzYuy51cAAAAASUVORK5CYII=) no-repeat center;background-size:12px;width:12px;height:12px}",0),a.insertRule(".iv-ad-info-icon {background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAMAAACecocUAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAVFBMVEVMaXGUlJSYmJiZmZmYmJiXl5eZmZmZmZmWlpaVlZWOjo6ZmZmSkpKXl5eYmJiYmJiZmZmZmZmZmZmZmZmYmJiJiYmXl5eZmZmYmJiWlpaZmZn///+81lbeAAAAGnRSTlMAE5DM80DliTMMEjccWIM5p1UjaTQNgB5cLlr5mgUAAAABYktHRBsCYNSkAAAAVElEQVQI102NRw7AIBADhw7ppIf/PzQLJ/ZgWSNrFlDaWKMVcs6HmGLwTqjEME6CFDrAXBYIGhNh3TJEg02wHydctvFc7sbrvnXZV8/zfs3T+7u/P7CrAso35YfPAAAAAElFTkSuQmCC) no-repeat center;background-size:11px;width:11px;height:11px}", +0),a.insertRule(".annotation-close-button {background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAALVBMVEVMaXEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/Pz9aWloBAQGZmZlbW1v///+X9wUzAAAACHRSTlMANprf+g6lyRmB9hUAAAABYktHRA5vvTBPAAAAWUlEQVQI12NgYBAycVZkAIKwDiBIZWBgrQAx2gMY2DrAIIFBomPWju6VHY0MGh1rbu891dHEYNGx9+yd2x3NDB4d3XfO7uhoQTDgUnDFcO1wA+FWwC2FOQMAdKg6tUSAFEAAAAAASUVORK5CYII=) no-repeat center}",0),a.insertRule(".annotation-link-icon {background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAiCAMAAAANmfvwAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAUVBMVEVMaXH////////////////////////////////////////////////////////////////////////////////////////////////////////JzkR1AAAAGnRSTlMAfXf+c3xsdGdv/GJoXPtXXflSVk5L7DBH9VeFfsQAAAABYktHRAH/Ai3eAAAAgElEQVQ4y93SSQ6AIAwFULSOOOJs739Qf9SF0VA2uNCu+psHaQJK7cVCqY+Rg92PXA++Q84KnCR03UIRJrFEKMEgZYFQhpyzQHSBWJJAdIVUENtJ3SC0mu3EdOh7zXZiBrRdzQLJ0Y1GfOlpVstD3HaZktX9X/gvRCxvxL6FR7IBS1RTM5xIpLoAAAAASUVORK5CYII=) no-repeat center}", +0)},qta=function(){var a=g.ne("DIV",["annotation", +"annotation-type-custom"]);g.Oh(a,!1);return a},rta=function(a){switch(a){case "annotation-editor":case "live-dashboard":return!0}return!1},pta=function(a){var b=a.player.N(); +a=a.player.getVideoData();return 1==(b.annotationsLoadPolicy||a.annotationsLoadPolicy)&&!a.SC||b.I.get(a.videoId)||g.KB(a)||g.LB(a)?!0:!1},sta=function(a,b,c){a.P=!0; +a.C=g.Eq(b,c)},tta=function(a,b){for(var c={},d=0;dd.length)&&(d=d[0].getAttribute("itct"))){var e=g.ds();if(e){var f=g.bs();f&&g.ts(g.xo("use_default_events_client")?void 0:g.Qq,e,f,[g.Wr(d)])}}d=b.getElementsByTagName("annotation");for(e=0;e=k)e=f,d=k}d=Eta[e];this.w&&g.sh(this.w.element,"outline-width",Math.max(b.width,b.height)+"px");for(b=0;b=m&&.5>=k?"ytp-ce-top-left-quad":.5=k?"ytp-ce-top-right-quad":.5>=m&&.5=b);g.K(a.C,"iv-drawer-big",1280<=b)}}; +g.h.lM=function(a){this.Rf(a.state);g.V(a.state,2)&&(this.Vl()&&this.Ny()&&2!=this.player.getPresentingPlayerType()&&this.setCardsVisible(!1),this.Ts(!1))}; +g.h.load=function(){g.vL.prototype.load.call(this);this.Rf(g.PK(this.player));this.I++;var a=this.player.getVideoData(),b=a.videoId,c=(0,g.x)(this.aL,this,b,this.I),d=(0,g.x)(function(){this.C=null},this); +g.Vp()&&(c=vta(this,c));c={format:"XML",Fc:c,onError:d,Zd:{}};a.isPharma&&(c.Zd.pharma="1");c.method="POST";c.withCredentials=!0;(b=this.player.N().I.get(b))&&wta(c,b);b=b&&(b.An||b.zn);if(!a.ln||b)a.be?sta(this,a.be,c):(this.w=(0,g.x)(this.TG,this,c),this.player.addEventListener("videodatachange",this.w));g.iL(this.player,this.A.element,4);this.pp();(b=g.KB(a))&&Bta(this,b);(b=g.LB(a))&&b.featuredChannel&&Cta(this,b.featuredChannel,b.annotationId||"branding",a.videoId||null,a.eventId||null)}; +g.h.Rf=function(a){a=!a.isCued()&&!g.V(a,1024);g.Qu(this.u,a);g.Qu(this.A,a)}; +g.h.TG=function(a){var b=this.player.getVideoData();b.be&&(this.w&&(this.player.removeEventListener("videodatachange",this.w),this.w=null),sta(this,b.be,a))}; +g.h.unload=function(){g.fR(this.player.app,"annotations_module",void 0);g.zb(this.F,function(a){a.destroy()}); +this.G=null;this.o&&(this.o.destroy(),this.o=null,A2(this.player));this.P=!1;this.C&&(this.C.abort(),this.C=null);this.F={};this.u.hide();g.vL.prototype.unload.call(this);g.Nu(this.A);this.w&&(this.player.removeEventListener("videodatachange",this.w),this.w=null)}; +g.h.aL=function(a,b,c){this.C=null;!uta(this,b,a)&&(a=g.yq(c)&&c.responseXML?c.responseXML:null)&&(v3(this,a),g.J(this.player.getRootNode(),"iv-module-loaded"))}; +g.h.iB=function(a){a==this.player.getVideoData().videoId&&(this.loaded?xta(this):this.load())}; +g.h.Vl=function(){return!!this.o&&this.o.isAvailable()}; +g.h.Ny=function(){this.Vl();return!!this.o&&this.o.B}; +g.h.setCardsVisible=function(a,b,c){b=void 0===b?!1:b;this.Vl();this.o&&(a?c?i3(this.o,c,b):i3(this.o,"YOUTUBE_DRAWER_AUTO_OPEN",b):j3(this.o))}; +g.h.Ts=function(a,b){this.player.S(a?"cardsteasershow":"cardsteaserhide",b)}; +g.h.X=function(){this.player.N().I.unsubscribe("vast_info_card_add",this.iB,this);g.Dn(this.player.getRootNode(),g.lM.IV_DRAWER_OPEN);for(var a=this.M,b=0,c=a.length;bb?null:"string"===typeof a?a.charAt(b):a[b]}; +g.Wa=function(a,b,c){for(var d=a.length,e="string"===typeof a?a.split(""):a,f=0;f=arguments.length?Array.prototype.slice.call(a,b):Array.prototype.slice.call(a,b,c)}; +naa=function(a){for(var b={},c=0,d=0;d>>1),n;c?n=b.call(e,a[m],m,a):n=b(d,a[m]);0b?1:ac&&g.kb(a,-(c+1),0,b)}; +g.vb=function(a,b,c){var d={};(0,g.y)(a,function(e,f){d[b.call(c,e,f,a)]=e}); +return d}; +qaa=function(a){for(var b=[],c=0;c")&&(a=a.replace(hc,">"));-1!=a.indexOf('"')&&(a=a.replace(ic,"""));-1!=a.indexOf("'")&&(a=a.replace(jc,"'"));-1!=a.indexOf("\x00")&&(a=a.replace(lc,"�"))}return a}; +nc=function(a,b){return-1!=a.toLowerCase().indexOf(b.toLowerCase())}; +g.qc=function(a,b){for(var c=0,d=oc(String(a)).split("."),e=oc(String(b)).split("."),f=Math.max(d.length,e.length),k=0;0==c&&kb?1:0}; +g.tc=function(a,b){this.u=a===rc&&b||"";this.w=sc}; +g.uc=function(a){if(a instanceof g.tc&&a.constructor===g.tc&&a.w===sc)return a.u;Ka(a);return"type_error:SafeUrl"}; +g.wc=function(a){if(a instanceof g.tc)return a;a="object"==typeof a&&a.ug?a.xe():String(a);vc.test(a)||(a="about:invalid#zClosurez");return new g.tc(rc,a)}; +g.xc=function(a,b){if(a instanceof g.tc)return a;a="object"==typeof a&&a.ug?a.xe():String(a);if(b&&/^data:/i.test(a)){var c=a.replace(/(%0A|%0D)/g,"");var d=c.match(zaa);d=d&&Aaa.test(d[1]);c=new g.tc(rc,d?c:"about:invalid#zClosurez");if(c.xe()==a)return c}vc.test(a)||(a="about:invalid#zClosurez");return new g.tc(rc,a)}; +zc=function(){this.o="";this.u=yc}; +Ac=function(a){if(a instanceof zc&&a.constructor===zc&&a.u===yc)return a.o;Ka(a);return"type_error:SafeStyle"}; +Bc=function(a){var b=new zc;b.o=a;return b}; +Fc=function(a){var b="",c;for(c in a){if(!/^[-_a-zA-Z0-9]+$/.test(c))throw Error("Name allows only [-_a-zA-Z0-9], got: "+c);var d=a[c];null!=d&&(d=Array.isArray(d)?(0,g.Cc)(d,Dc).join(" "):Dc(d),b+=c+":"+d+";")}return b?Bc(b):Ec}; +Dc=function(a){if(a instanceof g.tc)return'url("'+g.uc(a).replace(/>>0;return b}; +g.hd=function(a){var b=Number(a);return 0==b&&g.ec(a)?NaN:b}; +id=function(a){return String(a).replace(/\-([a-z])/g,function(b,c){return c.toUpperCase()})}; +g.jd=function(a){return String(a).replace(/([A-Z])/g,"-$1").toLowerCase()}; +Maa=function(a){return a.replace(RegExp("(^|[\\s]+)([a-z])","g"),function(b,c,d){return c+d.toUpperCase()})}; +kd=function(a,b,c,d,e,f,k){var l="";a&&(l+=a+":");c&&(l+="//",b&&(l+=b+"@"),l+=c,d&&(l+=":"+d));e&&(l+=e);f&&(l+="?"+f);k&&(l+="#"+k);return l}; +ld=function(a){return a?decodeURI(a):a}; +g.nd=function(a,b){return b.match(md)[a]||null}; +g.od=function(a){return ld(g.nd(3,a))}; +pd=function(a){a=a.match(md);return kd(null,null,null,null,a[5],a[6],a[7])}; +qd=function(a,b){if(a)for(var c=a.split("&"),d=0;db&&(b=a.length);var c=a.indexOf("?");if(0>c||c>b){c=b;var d=""}else d=a.substring(c+1,b);return[a.substr(0,c),d,a.substr(b)]}; +sd=function(a,b){return b?a?a+"&"+b:b:a}; +td=function(a,b){if(!b)return a;var c=rd(a);c[1]=sd(c[1],b);return c[0]+(c[1]?"?"+c[1]:"")+c[2]}; +ud=function(a,b,c){if(Array.isArray(b))for(var d=0;dd)return null;var e=a.indexOf("&",d);if(0>e||e>c)e=c;d+=b.length+1;return cd(a.substr(d,e-d))}; +Dd=function(a,b){for(var c=a.search(Bd),d=0,e,f=[];0<=(e=Ad(a,d,b,c));)f.push(a.substring(d,e)),d=Math.min(a.indexOf("&",e)+1||c,c);f.push(a.substr(d));return f.join("").replace(Naa,"$1")}; +Oaa=function(a,b){var c=rd(a),d=c[1],e=[];d&&(0,g.y)(d.split("&"),function(f){var k=f.indexOf("=");b.hasOwnProperty(0<=k?f.substr(0,k):f)||e.push(f)}); +c[1]=sd(e.join("&"),g.wd(b));return c[0]+(c[1]?"?"+c[1]:"")+c[2]}; +Ed=function(){return Jc("iPhone")&&!Jc("iPod")&&!Jc("iPad")}; +Fd=function(){return Ed()||Jc("iPad")||Jc("iPod")}; +Gd=function(a){Gd[" "](a);return a}; +Hd=function(a,b){try{return Gd(a[b]),!0}catch(c){}return!1}; +Qaa=function(a,b){var c=Paa;return Object.prototype.hasOwnProperty.call(c,a)?c[a]:c[a]=b(a)}; +Id=function(){var a=g.v.document;return a?a.documentMode:void 0}; +g.Kd=function(a){return Qaa(a,function(){return 0<=g.qc(Jd,a)})}; +g.Ld=function(a){return Number(Raa)>=a}; +g.Md=function(a,b,c){return Math.min(Math.max(a,b),c)}; +g.Nd=function(a,b){var c=a%b;return 0>c*b?c+b:c}; +g.Od=function(a,b,c){return a+c*(b-a)}; +Pd=function(a,b){return 1E-6>=Math.abs(a-b)}; +g.Qd=function(a,b){this.x=void 0!==a?a:0;this.y=void 0!==b?b:0}; +Rd=function(a,b){return a==b?!0:a&&b?a.x==b.x&&a.y==b.y:!1}; +g.Sd=function(a,b){this.width=a;this.height=b}; +g.Td=function(a,b){return a==b?!0:a&&b?a.width==b.width&&a.height==b.height:!1}; +Ud=function(a){return a.width*a.height}; +Zd=function(a){return a?new Vd(Wd(a)):Xd||(Xd=new Vd)}; +$d=function(a,b){return"string"===typeof b?a.getElementById(b):b}; +g.be=function(a,b){var c=b||document;return c.querySelectorAll&&c.querySelector?c.querySelectorAll("."+a):g.ae(document,"*",a,b)}; +g.ce=function(a,b){var c=b||document;if(c.getElementsByClassName)c=c.getElementsByClassName(a)[0];else{c=document;var d=b||c;c=d.querySelectorAll&&d.querySelector&&a?d.querySelector(a?"."+a:""):g.ae(c,"*",a,b)[0]||null}return c||null}; +g.ae=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,k;k=a[f];f++)b==k.nodeName&&(d[e++]=k);d.length=e;return d}return a}a=a.getElementsByTagName(b||"*");if(c){d={};for(f=e=0;k=a[f];f++)b=k.className,"function"==typeof b.split&&g.$a(b.split(/\s+/),c)&&(d[e++]=k);d.length=e;return d}return a}; +ee=function(a,b){g.zb(b,function(c,d){c&&"object"==typeof c&&c.ug&&(c=c.xe());"style"==d?a.style.cssText=c:"class"==d?a.className=c:"for"==d?a.htmlFor=c:de.hasOwnProperty(d)?a.setAttribute(de[d],c):cc(d,"aria-")||cc(d,"data-")?a.setAttribute(d,c):a[d]=c})}; +fe=function(a){a=a.document;a="CSS1Compat"==a.compatMode?a.documentElement:a.body;return new g.Sd(a.clientWidth,a.clientHeight)}; +ie=function(a){var b=ge(a);a=a.parentWindow||a.defaultView;return g.he&&g.Kd("10")&&a.pageYOffset!=b.scrollTop?new g.Qd(b.scrollLeft,b.scrollTop):new g.Qd(a.pageXOffset||b.scrollLeft,a.pageYOffset||b.scrollTop)}; +ge=function(a){return a.scrollingElement?a.scrollingElement:g.je||"CSS1Compat"!=a.compatMode?a.body||a.documentElement:a.documentElement}; +ke=function(a){return a?a.parentWindow||a.defaultView:window}; +g.ne=function(a,b,c){var d=arguments,e=document,f=String(d[0]),k=d[1];if(!Saa&&k&&(k.name||k.type)){f=["<",f];k.name&&f.push(' name="',g.dd(k.name),'"');if(k.type){f.push(' type="',g.dd(k.type),'"');var l={};g.Sb(l,k);delete l.type;k=l}f.push(">");f=f.join("")}f=le(e,f);k&&("string"===typeof k?f.className=k:Array.isArray(k)?f.className=k.join(" "):ee(f,k));2a}; +Taa=function(a){if(a&&"number"==typeof a.length){if(g.Na(a))return"function"==typeof a.item||"string"==typeof a.item;if(g.Ma(a))return"function"==typeof a.item}return!1}; +g.De=function(a,b,c,d){if(!b&&!c)return null;var e=b?String(b).toUpperCase():null;return Ce(a,function(f){return(!e||f.nodeName==e)&&(!c||"string"===typeof f.className&&g.$a(f.className.split(/\s+/),c))},!0,d)}; +Ce=function(a,b,c,d){a&&!c&&(a=a.parentNode);for(c=0;a&&(null==d||c<=d);){if(b(a))return a;a=a.parentNode;c++}return null}; +Vd=function(a){this.o=a||g.v.document||document}; +Waa=function(a){this.ww=a}; +Ee=function(a,b,c){this.A=a;this.u=b;this.o=c||[];this.sj=new Map}; +Fe=function(a,b){Ee.call(this,a,3,b)}; +g.A=function(){this.ub=this.ub;this.Wi=this.Wi}; +g.B=function(a,b){g.Ge(a,g.Qa(g.He,b))}; +g.Ge=function(a,b){a.ub?b():(a.Wi||(a.Wi=[]),a.Wi.push(b))}; +g.He=function(a){a&&"function"==typeof a.dispose&&a.dispose()}; +g.Ie=function(a){for(var b=0,c=arguments.length;bc.keyCode||void 0!=c.returnValue)){a:{var f=!1;if(0==c.keyCode)try{c.keyCode=-1;break a}catch(m){f=!0}if(f||void 0==c.returnValue)c.returnValue=!0}c=[];for(f=d.currentTarget;f;f=f.parentNode)c.push(f);f=a.type;for(var k=c.length-1;!d.o&&0<=k;k--){d.currentTarget=c[k];var l=ef(c[k],f,!0,d);e=e&&l}for(k=0;!d.o&&ka.u&&(a.u++,b.next=a.o,a.o=b)}; +lf=function(a){g.v.setTimeout(function(){throw a;},0)}; +nf=function(a,b){var c=a;b&&(c=(0,g.x)(a,b));c=cba(c);!g.Ma(g.v.setImmediate)||g.v.Window&&g.v.Window.prototype&&!Jc("Edge")&&g.v.Window.prototype.setImmediate==g.v.setImmediate?(mf||(mf=dba()),mf(c)):g.v.setImmediate(c)}; +dba=function(){var a=g.v.MessageChannel;"undefined"===typeof a&&"undefined"!==typeof window&&window.postMessage&&window.addEventListener&&!Jc("Presto")&&(a=function(){var e=g.oe("IFRAME");e.style.display="none";document.documentElement.appendChild(e);var f=e.contentWindow;e=f.document;e.open();e.close();var k="callImmediate"+Math.random(),l="file:"==f.location.protocol?"*":f.location.protocol+"//"+f.location.host;e=(0,g.x)(function(m){if(("*"==l||m.origin==l)&&m.data==k)this.port1.onmessage()},this); +f.addEventListener("message",e,!1);this.port1={};this.port2={postMessage:function(){f.postMessage(k,l)}}}); +if("undefined"!==typeof a&&!Jc("Trident")&&!Jc("MSIE")){var b=new a,c={},d=c;b.port1.onmessage=function(){if(void 0!==c.next){c=c.next;var e=c.rw;c.rw=null;e()}}; +return function(e){d.next={rw:e};d=d.next;b.port2.postMessage(0)}}return function(e){g.v.setTimeout(e,0)}}; +of=function(){this.u=this.o=null}; +pf=function(){this.next=this.scope=this.ng=null}; +g.uf=function(a,b){rf||eba();sf||(rf(),sf=!0);tf.add(a,b)}; +eba=function(){if(g.v.Promise&&g.v.Promise.resolve){var a=g.v.Promise.resolve(void 0);rf=function(){a.then(vf)}}else rf=function(){nf(vf)}}; +vf=function(){for(var a;a=tf.remove();){try{a.ng.call(a.scope)}catch(b){lf(b)}kf(wf,a)}sf=!1}; +xf=function(a){if(!a)return!1;try{return!!a.$goog_Thenable}catch(b){return!1}}; +zf=function(a){this.o=0;this.F=void 0;this.A=this.u=this.w=null;this.B=this.C=!1;if(a!=g.Ia)try{var b=this;a.call(void 0,function(c){yf(b,2,c)},function(c){yf(b,3,c)})}catch(c){yf(this,3,c)}}; +Af=function(){this.next=this.context=this.onRejected=this.w=this.o=null;this.u=!1}; +Cf=function(a,b,c){var d=Bf.get();d.w=a;d.onRejected=b;d.context=c;return d}; +Df=function(a){if(a instanceof zf)return a;var b=new zf(g.Ia);yf(b,2,a);return b}; +Ef=function(a){return new zf(function(b,c){c(a)})}; +Gf=function(a,b,c){Ff(a,b,c,null)||g.uf(g.Qa(b,a))}; +Hf=function(a){return new zf(function(b,c){a.length||b(void 0);for(var d=0,e;d>2;f=(f&3)<<4|l>>4;l=(l&15)<<2|n>>6;n&=63;m||(n=64,k||(l=64));d.push(c[p],c[f],c[l]||"",c[n]||"")}return d.join("")}; +g.cg=function(a){for(var b=[],c=0,d=0;d>=8);b[c++]=e}return g.bg(b,3)}; +qba=function(a){var b=[];dg(a,function(c){b.push(c)}); +return b}; +g.eg=function(a){!g.he||g.Kd("10");var b=a.length,c=3*b/4;c%3?c=Math.floor(c):-1!="=.".indexOf(a[b-1])&&(c=-1!="=.".indexOf(a[b-2])?c-2:c-1);var d=new Uint8Array(c),e=0;dg(a,function(f){d[e++]=f}); +return d.subarray(0,e)}; +dg=function(a,b){function c(m){for(;d>4);64!=k&&(b(f<<4&240|k>>2),64!=l&&b(k<<6&192|l))}}; +Zf=function(){if(!fg){fg={};for(var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),b=["+/=","+/","-_=","-_.","-_"],c=0;5>c;c++){var d=a.concat(b[c].split(""));$f[c]=d;for(var e=0;ee&&128<=b;e++)b=a.u[a.o++],c|=(b&127)<<7*e;128<=b&&(b=a.u[a.o++],c|=(b&127)<<28,d|=(b&127)>>4);if(128<=b)for(e=0;5>e&&128<=b;e++)b=a.u[a.o++],d|=(b&127)<<7*e+3;if(128>b){a=c>>>0;b=d>>>0;if(d=b&2147483648)a=~a+1>>>0,b=~b>>>0,0==a&&(b=b+1>>>0);a=4294967296*b+(a>>>0);return d?-a:a}a.B=!0}; +lg=function(a){var b=a.u;var c=b[a.o+0];var d=c&127;if(128>c)return a.o+=1,d;c=b[a.o+1];d|=(c&127)<<7;if(128>c)return a.o+=2,d;c=b[a.o+2];d|=(c&127)<<14;if(128>c)return a.o+=3,d;c=b[a.o+3];d|=(c&127)<<21;if(128>c)return a.o+=4,d;c=b[a.o+4];d|=(c&15)<<28;if(128>c)return a.o+=5,d>>>0;a.o+=5;128<=b[a.o++]&&128<=b[a.o++]&&128<=b[a.o++]&&128<=b[a.o++]&&a.o++;return d}; +mg=function(a){this.o=jg(a,void 0,void 0);this.B=this.o.o;this.u=this.w=-1;this.A=!1}; +ng=function(a){var b=a.o;(b=b.o==b.w)||(b=a.A)||(b=a.o,b=b.B||0>b.o||b.o>b.w);if(b)return!1;a.B=a.o.o;b=lg(a.o);var c=b&7;if(0!=c&&5!=c&&1!=c&&2!=c&&3!=c&&4!=c)return a.A=!0,!1;a.w=b>>>3;a.u=c;return!0}; +og=function(a){switch(a.u){case 0:if(0!=a.u)og(a);else{for(a=a.o;a.u[a.o]&128;)a.o++;a.o++}break;case 1:1!=a.u?og(a):(a=a.o,a.o+=8);break;case 2:if(2!=a.u)og(a);else{var b=lg(a.o);a=a.o;a.o+=b}break;case 5:5!=a.u?og(a):(a=a.o,a.o+=4);break;case 3:b=a.w;do{if(!ng(a)){a.A=!0;break}if(4==a.u){a.w!=b&&(a.A=!0);break}og(a)}while(1);break;default:a.A=!0}}; +pg=function(a){var b=lg(a.o);a=a.o;var c=a.u,d=a.o,e=d+b;b=[];for(var f="";dk)b.push(k);else if(192>k)continue;else if(224>k){var l=c[d++];b.push((k&31)<<6|l&63)}else if(240>k){l=c[d++];var m=c[d++];b.push((k&15)<<12|(l&63)<<6|m&63)}else if(248>k){l=c[d++];m=c[d++];var n=c[d++];k=(k&7)<<18|(l&63)<<12|(m&63)<<6|n&63;k-=65536;b.push((k>>10&1023)+55296,(k&1023)+56320)}8192<=b.length&&(f+=String.fromCharCode.apply(null,b),b.length=0)}c=f;if(8192>=b.length)b=String.fromCharCode.apply(null, +b);else{e="";for(f=0;fb||a.o+b>a.u.length)a.B=!0,b=new Uint8Array(0);else{var c=a.u.subarray(a.o,a.o+b);a.o+=b;b=c}return b}; +rg=function(){this.o=[]}; +sg=function(a,b){for(;127>>=7;a.o.push(b)}; +tg=function(a,b){a.o.push(b>>>0&255);a.o.push(b>>>8&255);a.o.push(b>>>16&255);a.o.push(b>>>24&255)}; +ug=function(){this.w=[];this.u=0;this.o=new rg}; +vg=function(a,b){sg(a.o,8*b+2);var c=a.o.end();a.w.push(c);a.u+=c.length;c.push(a.u);return c}; +wg=function(a,b){var c=b.pop();for(c=a.u+a.o.length()-c;127>>=7,a.u++;b.push(c);a.u++}; +xg=function(a){for(var b=new Uint8Array(a.u+a.o.length()),c=a.w,d=c.length,e=0,f=0;fb;b++)a.o.push(c&127|128),c>>=7;a.o.push(1)}}; +Bg=function(a,b,c){if(null!=c&&null!=c){sg(a.o,8*b);a=a.o;var d=c;c=0>d;d=Math.abs(d);b=d>>>0;d=Math.floor((d-b)/4294967296);d>>>=0;c&&(d=~d>>>0,b=(~b>>>0)+1,4294967295>>7|b<<25)>>>0,b>>>=7;a.o.push(c)}}; +Cg=function(a,b,c){null!=c&&(sg(a.o,8*b+1),a=a.o,b=c>>>0,c=Math.floor((c-b)/4294967296)>>>0,zg=b,Ag=c,tg(a,zg),tg(a,Ag))}; +Dg=function(a,b,c){if(null!=c){sg(a.o,8*b+1);a=a.o;var d=c;d=(c=0>d?1:0)?-d:d;if(0===d)Ag=0<1/d?0:2147483648,zg=0;else if(isNaN(d))Ag=2147483647,zg=4294967295;else if(1.7976931348623157E308>>0,zg=0;else if(2.2250738585072014E-308>d)d/=Math.pow(2,-1074),Ag=(c<<31|d/4294967296)>>>0,zg=d>>>0;else{var e=d;b=0;if(2<=e)for(;2<=e&&1023>b;)b++,e/=2;else for(;1>e&&-1022>>0;zg=4503599627370496*d>>>0}tg(a,zg);tg(a, +Ag)}}; +Eg=function(a,b,c){null!=c&&(sg(a.o,8*b),a.o.o.push(c?1:0))}; +Fg=function(a,b,c){if(null!=c){b=vg(a,b);for(var d=a.o,e=0;ef)d.o.push(f);else if(2048>f)d.o.push(f>>6|192),d.o.push(f&63|128);else if(65536>f)if(55296<=f&&56319>=f&&e+1=k&&(f=1024*(f-55296)+k-56320+65536,d.o.push(f>>18|240),d.o.push(f>>12&63|128),d.o.push(f>>6&63|128),d.o.push(f&63|128),e++)}else d.o.push(f>>12|224),d.o.push(f>>6&63|128),d.o.push(f&63|128)}wg(a,b)}}; +Gg=function(a,b,c,d){null!=c&&(b=vg(a,b),d(c,a),wg(a,b))}; +Hg=function(a,b,c,d){if(null!=c)for(var e=0;ea&&b.setFullYear(b.getFullYear()-1900);return b}; +dh=function(a,b){a.getDate()!=b&&a.date.setUTCHours(a.date.getUTCHours()+(a.getDate()a.clientWidth||a.scrollHeight>a.clientHeight||"fixed"==c||"absolute"==c||"relative"==c))return a;return null}; +g.Eh=function(a){var b=Wd(a),c=new g.Qd(0,0);var d=b?Wd(b):document;d=!g.he||g.Ld(9)||"CSS1Compat"==Zd(d).o.compatMode?d.documentElement:d.body;if(a==d)return c;a=Ch(a);b=ie(Zd(b).o);c.x=a.left+b.x;c.y=a.top+b.y;return c}; +Gh=function(a,b){var c=new g.Qd(0,0),d=ke(Wd(a));if(!Hd(d,"parent"))return c;var e=a;do{var f=d==b?g.Eh(e):Fh(e);c.x+=f.x;c.y+=f.y}while(d&&d!=b&&d!=d.parent&&(e=d.frameElement)&&(d=d.parent));return c}; +g.Ih=function(a,b){var c=Hh(a),d=Hh(b);return new g.Qd(c.x-d.x,c.y-d.y)}; +Fh=function(a){a=Ch(a);return new g.Qd(a.left,a.top)}; +Hh=function(a){if(1==a.nodeType)return Fh(a);a=a.changedTouches?a.changedTouches[0]:a;return new g.Qd(a.clientX,a.clientY)}; +g.Mh=function(a,b,c){if(b instanceof g.Sd)c=b.height,b=b.width;else if(void 0==c)throw Error("missing height argument");g.Jh(a,b);a.style.height=zh(c,!0)}; +zh=function(a,b){"number"==typeof a&&(a=(b?Math.round(a):a)+"px");return a}; +g.Jh=function(a,b){a.style.width=zh(b,!0)}; +g.Nh=function(a){var b=Aba;if("none"!=yh(a,"display"))return b(a);var c=a.style,d=c.display,e=c.visibility,f=c.position;c.visibility="hidden";c.position="absolute";c.display="inline";a=b(a);c.display=d;c.position=f;c.visibility=e;return a}; +Aba=function(a){var b=a.offsetWidth,c=a.offsetHeight,d=g.je&&!b&&!c;return(void 0===b||d)&&a.getBoundingClientRect?(a=Ch(a),new g.Sd(a.right-a.left,a.bottom-a.top)):new g.Sd(b,c)}; +g.Oh=function(a,b){a.style.display=b?"":"none"}; +Sh=function(){if(Ph&&!jh(Qh)){var a="."+Rh.domain;try{for(;2e?encodeURIComponent(qi(a,b,c,d,e+1)):"...";return encodeURIComponent(String(a))}; +ri=function(a,b,c,d){a.o.push(b);a.u[b]=oi(c,d)}; +Hba=function(a){var b=1,c;for(c in a.u)b=c.length>b?c.length:b;return 3997-b-a.w.length-1}; +si=function(a,b){this.o=a;this.depth=b}; +Jba=function(){function a(l,m){return null==l?m:l} +var b=ki(),c=Math.max(b.length-1,0),d=mi(b);b=d.o;var e=d.u,f=d.w,k=[];f&&k.push(new si([f.url,f.Es?2:0],a(f.depth,1)));e&&e!=f&&k.push(new si([e.url,2],0));b.url&&b!=f&&k.push(new si([b.url,0],a(b.depth,c)));d=(0,g.Cc)(k,function(l,m){return k.slice(0,k.length-m)}); +!b.url||(f||e)&&b!=f||(e=wba(b.url))&&d.push([new si([e,1],a(b.depth,c))]);d.push([]);return(0,g.Cc)(d,function(l){return Iba(c,l)})}; +Iba=function(a,b){(0,g.ti)(b,function(e){return 0<=e.depth}); +var c=(0,g.ui)(b,function(e,f){return Math.max(e,f.depth)},-1),d=qaa(c+2); +d[0]=a;(0,g.y)(b,function(e){return d[e.depth+1]=e.o}); +return d}; +Kba=function(){var a=Jba();return(0,g.Cc)(a,function(b){return pi(b)})}; +vi=function(){this.u=new ji;this.o=fi()?new gi:new ei}; +Lba=function(){wi();var a=hi.document;return!!(a&&a.body&&a.body.getBoundingClientRect&&g.Ma(hi.setInterval)&&g.Ma(hi.clearInterval)&&g.Ma(hi.setTimeout)&&g.Ma(hi.clearTimeout))}; +xi=function(a){wi();var b=Sh()||hi;b.google_image_requests||(b.google_image_requests=[]);var c=b.document.createElement("img");c.src=a;b.google_image_requests.push(c)}; +yi=function(){wi();return Kba()}; +zi=function(){}; +wi=function(){return zi.getInstance().getContext()}; +Ai=function(a){Ng(this,a,null,null)}; +Mba=function(a){this.A=a;this.o=-1;this.u=this.w=0}; +Bi=function(a,b){return function(c){for(var d=[],e=0;eMath.random())}; +Li=function(a){a&&Ki&&Ii()&&(Ki.clearMarks("goog_"+a.label+"_"+a.uniqueId+"_start"),Ki.clearMarks("goog_"+a.label+"_"+a.uniqueId+"_end"))}; +Oi=function(){var a=Mi;this.B=Ni;this.A="jserror";this.w=!0;this.o=null;this.C=this.u;this.Ga=void 0===a?null:a}; +Ri=function(a,b,c,d){return Bi(Di.getInstance().u.o,function(){try{if(a.Ga&&a.Ga.o){var e=a.Ga.start(b.toString(),3);var f=c();a.Ga.end(e)}else f=c()}catch(m){var k=a.w;try{Li(e);var l=new Pi(Qi(m));k=a.C(b,l,void 0,d)}catch(n){a.u(217,n)}if(!k)throw m;}return f})()}; +Ti=function(a,b,c){var d=Si;return Bi(Di.getInstance().u.o,function(e){for(var f=[],k=0;kd?500:k}; +dj=function(a){for(var b=0,c=a,d=0;a&&a!=a.parent;)a=a.parent,d++,jh(a)&&(c=a,b=d);return{Bd:c,level:b}}; +ej=function(a){var b=a!==a.top,c=a.top===dj(a).Bd,d=-1,e=0;if(b&&c&&a.top.mraid){d=3;var f=a.top.mraid}else d=(f=a.mraid)?b?c?2:1:0:-1;f&&(f.IS_GMA_SDK||(e=2),Db(Wba,function(k){return g.Ma(f[k])})||(e=1)); +return{af:f,compatibility:e,GO:d}}; +Xba=function(a){return(a=a.document)&&g.Ma(a.elementFromPoint)}; +fj=function(a,b,c,d){var e=void 0===e?!1:e;c=Ti(d,c,void 0);ah(a,b,c,{capture:e})}; +gj=function(a,b){var c=Math.pow(10,b);return Math.floor(a*c)/c}; +hj=function(a){return new nh(a.top,a.right,a.bottom,a.left)}; +ij=function(a){var b=a.top||0,c=a.left||0;return new nh(b,c+(a.width||0),b+(a.height||0),c)}; +jj=function(a){return null!=a&&0<=a&&1>=a}; +Yba=function(){var a=g.Ic;return a?kj("Android TV;AppleTV;Apple TV;GoogleTV;HbbTV;NetCast.TV;Opera TV;POV_TV;SMART-TV;SmartTV;TV Store;AmazonWebAppPlatform;MiBOX".split(";"),function(b){return nc(a,b)})||nc(a,"OMI/")&&!nc(a,"XiaoMi/")?!0:nc(a,"Presto")&&nc(a,"Linux")&&!nc(a,"X11")&&!nc(a,"Android")&&!nc(a,"Mobi"):!1}; +lj=function(){this.w=!jh(hi.top);this.isMobileDevice=hh()||ih();var a=ki();this.domain=0c.height?n>t?(e=n,f=p):(e=t,f=u):nc++;){if(a===b)return!0;try{if(a=g.we(a)||a){var d=Wd(a),e=d&&ke(d),f=e&&e.frameElement;f&&(a=f)}}catch(k){break}}return!1}; +$ba=function(a,b,c){if(!a||!b)return!1;b=oh(a.clone(),-b.left,-b.top);a=(b.left+b.right)/2;b=(b.top+b.bottom)/2;var d=Sh();jh(d.top)&&d.top&&d.top.document&&(d=d.top);if(!Xba(d))return!1;a=d.document.elementFromPoint(a,b);if(!a)return!1;b=(b=(b=Wd(c))&&b.defaultView&&b.defaultView.frameElement)&&Zba(b,a);d=a===c;a=!d&&a&&Ce(a,function(e){return e===c}); +return!(b||d||a)}; +aca=function(a,b,c,d){return lj.getInstance().w?!1:0>=a.Yc()||0>=a.getHeight()?!0:c&&d?Vi(208,function(){return $ba(a,b,c)}):!1}; +rj=function(a,b,c){var d=new nh(0,0,0,0);this.time=a;this.volume=null;this.w=b;this.o=d;this.u=c}; +sj=function(a,b,c,d,e,f,k,l){this.F=a;this.G=b;this.C=c;this.B=d;this.o=e;this.A=f;this.u=k;this.w=l}; +tj=function(a){this.w=a;this.u=0;this.o=null}; +uj=function(a,b,c){this.Bd=a;this.aa=void 0===c?"na":c;this.A=[];this.I=!1;this.w=new rj(-1,!0,this);this.o=this;this.F=b;this.P=this.Z=this.G=!1;this.U="uk";this.ub=!1;this.B=!0}; +wj=function(a,b,c){if(!a.P||(void 0===c?0:c))a.P=!0,a.U=b,a.F=0,a.o!=a||vj(a)}; +xj=function(a,b){g.$a(a.A,b)||(a.A.push(b),b.Hj(a.o),b.oh(a.w),b.Mf()&&(a.G=!0))}; +yj=function(a){a=a.o;a.az();a.Zy();var b=lj.getInstance();b.F=Uh(!1,a.Bd,b.isMobileDevice);a.jH();a.w.o=a.Ex()}; +zj=function(a){a.G=a.A.length?kj(a.A,function(b){return b.Mf()}):!1}; +Aj=function(a){var b=g.gb(a.A);(0,g.y)(b,function(c){c.oh(a.w)})}; +vj=function(a){var b=g.gb(a.A);(0,g.y)(b,function(c){c.Hj(a.o)}); +a.o!=a||Aj(a)}; +Bj=function(a,b,c,d){this.element=a;this.o=new nh(0,0,0,0);this.B=new nh(0,0,0,0);this.u=b;this.Ya=c;this.P=d;this.ub=!1;this.timestamp=-1;this.A=new sj(b.w,this.element,this.o,new nh(0,0,0,0),0,0,Zi(),0)}; +Cj=function(a){this.ub=!1;this.o=a;this.A=g.Ia}; +Dj=function(a,b,c){this.w=void 0===c?0:c;this.u=a;this.o=null==b?"":b}; +bca=function(a){switch(Math.trunc(a.w)){case -16:return-16;case -8:return-8;case 0:return 0;case 8:return 8;case 16:return 16;default:return 16}}; +cca=function(a,b){return new Dj(a.u,a.o,a.w+b)}; +Ej=function(a,b){return a.wb.w?!1:a.ub.u?!1:typeof a.otypeof b.o?!1:a.oc?0:a}; +mca=function(a,b,c){if(a.Ib){a.Ib.dg();var d=a.Ib.A,e=d.F,f=e.o;if(null!=d.B){var k=d.C;a.lp=new g.Qd(k.left-f.left,k.top-f.top)}f=a.Np()?Math.max(d.o,d.A):d.o;k={};null!==e.volume&&(k.volume=e.volume);e=1===ci(a.Ya,"osddt");var l=a.Ib.getName();switch(l){case "aio":case "iem":case "exc":case "geo":case "gsv":case "mraid":case "nis":case "nio":case "omid":e=!0;break;case "a100":case "na":e=!0;break;default:e||-1!=a.Nl||Xi("av-js",{strategy_name:l,bin:Di.getInstance().o})}e?(e=a.zx(d),a.Bo=d,a.sa(f, +b,c,!1,k,e,d.w)):a.sa(f,b,c,!1,k,a.Vr(b),d.w)}}; +nca=function(a){if(a.In&&a.Km){var b=1==ci(a.Ya,"od"),c=lj.getInstance().o,d=a.Km,e=a.Ib?a.Ib.getName():"ns",f=new g.Sd(c.Yc(),c.getHeight());c=a.Np();a={KO:e,lp:a.lp,gP:f,Np:c,vb:a.ie.vb,dP:b};if(b=d.u){b.dg();e=b.A;f=e.F.o;var k=null,l=null;null!=e.B&&f&&(k=e.C,k=new g.Qd(k.left-f.left,k.top-f.top),l=new g.Sd(f.right-f.left,f.bottom-f.top));e=c?Math.max(e.o,e.A):e.o;c={KO:b.getName(),lp:k,gP:l,Np:c,dP:!1,vb:e}}else c=null;c&&gca(d,a,c)}}; +oca=function(a,b,c){b&&(a.Rs=b);c&&(a.EC=c)}; +ek=function(){}; +gk=function(a){if(a instanceof ek)return a;if("function"==typeof a.Zf)return a.Zf(!1);if(g.La(a)){var b=0,c=new ek;c.next=function(){for(;;){if(b>=a.length)throw fk;if(b in a)return a[b++];b++}}; +return c}throw Error("Not implemented");}; +g.hk=function(a,b,c){if(g.La(a))try{(0,g.y)(a,b,c)}catch(d){if(d!==fk)throw d;}else{a=gk(a);try{for(;;)b.call(c,a.next(),void 0,a)}catch(d){if(d!==fk)throw d;}}}; +pca=function(a){if(g.La(a))return g.gb(a);a=gk(a);var b=[];g.hk(a,function(c){b.push(c)}); +return b}; +qca=function(){this.A=this.o=this.w=this.u=this.B=0}; +rca=function(a){var b={};var c=(0,g.H)()-a.B;b=(b.ptlt=c,b);(c=a.u)&&(b.pnk=c);(c=a.w)&&(b.pnc=c);(c=a.A)&&(b.pnmm=c);(a=a.o)&&(b.pns=a);return b}; +ik=function(){Vh.call(this);this.fullscreen=!1;this.volume=void 0;this.paused=!1;this.w=-1}; +jk=function(a){return jj(a.volume)&&.1<=a.volume}; +sca=function(){var a={};this.u=(a.vs=[1,0],a.vw=[0,1],a.am=[2,2],a.a=[4,4],a.f=[8,8],a.bm=[16,16],a.b=[32,32],a.avw=[0,64],a.avs=[64,0],a.pv=[256,256],a.gdr=[0,512],a.p=[0,1024],a.r=[0,2048],a.m=[0,4096],a.um=[0,8192],a.ef=[0,16384],a.s=[0,32768],a.pmx=[0,16777216],a);this.o={};for(var b in this.u)0=a.w/2:0=a.V:!1:!1}; +yca=function(a){var b=gj(a.ie.vb,2),c=a.yc.w,d=a.ie,e=xk(a),f=wk(e.A),k=wk(e.C),l=wk(d.volume),m=gj(e.F,2),n=gj(e.M,2),p=gj(d.vb,2),t=gj(e.R,2),u=gj(e.V,2);d=gj(d.Wd,2);a=a.ih().clone();a.round();e=Yj(e,!1);return{fP:b,Il:c,Lo:f,Ho:k,Uk:l,Mo:m,Io:n,vb:p,No:t,Jo:u,Wd:d,position:a,kp:e}}; +Bk=function(a,b){Ak(a.o,b,function(){return{fP:0,Il:void 0,Lo:-1,Ho:-1,Uk:-1,Mo:-1,Io:-1,vb:-1,No:-1,Jo:-1,Wd:-1,position:void 0,kp:[]}}); +a.o[b]=yca(a)}; +Ak=function(a,b,c){for(var d=a.length;dc.time?b:c},a[0])}; +$k=function(a,b,c,d){Yk.call(this,a,b,c,d);this.C=this.F=this.w=null}; +al=function(a){return a.w&&a.w.takeRecords?a.w.takeRecords():[]}; +Rca=function(a){if(!a.element)return!1;var b=a.element,c=a.u.o.Bd,d=Di.getInstance().u.o;a.w=new c.IntersectionObserver(Bi(d,function(e){return Zk(a,e)}),Qca); +d=Bi(d,function(){a.w.unobserve(b);a.w.observe(b);Zk(a,al(a))}); +c.ResizeObserver?(a.F=new c.ResizeObserver(d),a.F.observe(b)):c.MutationObserver&&(a.C=new g.v.MutationObserver(d),a.C.observe(b,{attributes:!0,childList:!0,characterData:!0,subtree:!0}));a.w.observe(b);Zk(a,al(a));return!0}; +bl=function(){var a=/Chrome\/(\d+)/.exec(g.Ic);return a?parseFloat(a[1]):NaN}; +cl=function(){var a=/\sCobalt\/(\S+)\s/.exec(g.Ic);if(!a)return NaN;var b=[];a=g.q(a[1].split("."));for(var c=a.next();!c.done;c=a.next())c=parseInt(c.value,10),0<=c&&b.push(c);return parseFloat(b.join("."))}; +Sca=function(){var a=/_(TV|STB|GAME|OTT|ATV|BDP)_/.exec(g.Ic);return a?a[1]:""}; +el=function(){return dl("android")&&dl("chrome")&&!(dl("trident/")||dl("edge/"))}; +fl=function(){return dl("armv7")||dl("aarch64")||dl("android")}; +g.gl=function(){return dl("cobalt")}; +hl=function(){return dl("cobalt")&&dl("appletv")}; +il=function(){return dl("(ps3; leanback shell)")||dl("ps3")&&g.gl()}; +jl=function(){return dl("(ps4; leanback shell)")||dl("ps4")&&g.gl()}; +g.kl=function(){return g.gl()&&(dl("ps4 vr")||dl("ps4 pro vr"))}; +ll=function(){var a=/WebKit\/([0-9]+)/.exec(g.Ic);return!!(a&&600<=parseInt(a[1],10))}; +ml=function(){return dl("iemobile")||dl("windows phone")&&dl("edge")}; +ol=function(){return nl&&dl("applewebkit")&&!dl("version")&&(!dl("safari")||dl("gsa/"))}; +pl=function(){return dl("smart-tv")&&dl("samsung")}; +dl=function(a){var b=g.Ic;return b?0<=b.toLowerCase().indexOf(a):!1}; +ql=function(a){a=void 0===a?hi:a;Cj.call(this,new uj(a,2))}; +sl=function(){var a=rl();uj.call(this,hi.top,a,"geo")}; +rl=function(){Di.getInstance();var a=lj.getInstance();return a.w||a.u?0:2}; +tl=function(){}; +ul=function(){this.done=!1;this.o={QD:0,Vv:0,TT:0,Pw:0,xs:-1,pE:0,oE:0,qE:0};this.B=null;this.C=!1;this.u=null;this.F=0;this.w=new tj(this)}; +wl=function(){var a=vl;a.C||(a.C=!0,Tca(a,function(b){for(var c=[],d=0;dg.Gb(Yca).length?null:(0,g.ui)(b,function(c,d){var e=d.toLowerCase().split("=");if(2!=e.length||void 0===Ll[e[0]]||!Ll[e[0]](e[1]))throw Error("Entry ("+e[0]+", "+e[1]+") is invalid.");c[e[0]]=e[1];return c},{})}catch(c){return null}}; +$ca=function(a,b){if(void 0==a.o)return 0;switch(a.B){case "mtos":return a.u?Uj(b.o,a.o):Uj(b.u,a.o);case "tos":return a.u?Sj(b.o,a.o):Sj(b.u,a.o)}return 0}; +Ml=function(a,b,c,d){pk.call(this,b,d);this.F=a;this.C=c}; +Nl=function(a){pk.call(this,"fully_viewable_audible_half_duration_impression",a)}; +Ol=function(a,b){pk.call(this,a,b)}; +Pl=function(){this.u=this.A=this.C=this.B=this.w=this.o=""}; +ada=function(){}; +Ql=function(a,b,c,d,e){var f={};if(void 0!==a)if(null!=b)for(var k in b){var l=b[k];k in Object.prototype||null!=l&&(g.Ma(l)?f[k]=l(a):f[k]=a[l])}else g.Sb(f,a);void 0!==c&&g.Sb(f,c);a=Hj(Gj(new Fj,f));0String(Function.prototype.toString).indexOf("[native code]")?!1:0<=String(a).indexOf("[native code]")&&!0||!1}; +sm=function(a){return!!(1<>>0]|=f<>>0).toString(16)+"&"}); +c=105;(0,g.y)(oda,function(d){var e="false";try{e=d(hi)}catch(f){}a+=String.fromCharCode(c++)+"="+e+"&"}); +(0,g.y)(pda,function(d){var e="";try{e=g.cg(d(hi))}catch(f){}a+=String.fromCharCode(c++)+"="+e+"&"}); +return a.slice(0,-1)}; +mda=function(){if(!tm){var a=function(){um=!0;hi.document.removeEventListener("webdriver-evaluate",a,!0)}; +hi.document.addEventListener("webdriver-evaluate",a,!0);var b=function(){vm=!0;hi.document.removeEventListener("webdriver-evaluate-response",b,!0)}; +hi.document.addEventListener("webdriver-evaluate-response",b,!0);tm=!0}}; +rda=function(){this.u=-1}; +wm=function(){this.u=64;this.o=Array(4);this.B=Array(this.u);this.A=this.w=0;this.reset()}; +xm=function(a,b,c){c||(c=0);var d=Array(16);if("string"===typeof b)for(var e=0;16>e;++e)d[e]=b.charCodeAt(c++)|b.charCodeAt(c++)<<8|b.charCodeAt(c++)<<16|b.charCodeAt(c++)<<24;else for(e=0;16>e;++e)d[e]=b[c++]|b[c++]<<8|b[c++]<<16|b[c++]<<24;b=a.o[0];c=a.o[1];e=a.o[2];var f=a.o[3];var k=b+(f^c&(e^f))+d[0]+3614090360&4294967295;b=c+(k<<7&4294967295|k>>>25);k=f+(e^b&(c^e))+d[1]+3905402710&4294967295;f=b+(k<<12&4294967295|k>>>20);k=e+(c^f&(b^c))+d[2]+606105819&4294967295;e=f+(k<<17&4294967295|k>>>15); +k=c+(b^e&(f^b))+d[3]+3250441966&4294967295;c=e+(k<<22&4294967295|k>>>10);k=b+(f^c&(e^f))+d[4]+4118548399&4294967295;b=c+(k<<7&4294967295|k>>>25);k=f+(e^b&(c^e))+d[5]+1200080426&4294967295;f=b+(k<<12&4294967295|k>>>20);k=e+(c^f&(b^c))+d[6]+2821735955&4294967295;e=f+(k<<17&4294967295|k>>>15);k=c+(b^e&(f^b))+d[7]+4249261313&4294967295;c=e+(k<<22&4294967295|k>>>10);k=b+(f^c&(e^f))+d[8]+1770035416&4294967295;b=c+(k<<7&4294967295|k>>>25);k=f+(e^b&(c^e))+d[9]+2336552879&4294967295;f=b+(k<<12&4294967295| +k>>>20);k=e+(c^f&(b^c))+d[10]+4294925233&4294967295;e=f+(k<<17&4294967295|k>>>15);k=c+(b^e&(f^b))+d[11]+2304563134&4294967295;c=e+(k<<22&4294967295|k>>>10);k=b+(f^c&(e^f))+d[12]+1804603682&4294967295;b=c+(k<<7&4294967295|k>>>25);k=f+(e^b&(c^e))+d[13]+4254626195&4294967295;f=b+(k<<12&4294967295|k>>>20);k=e+(c^f&(b^c))+d[14]+2792965006&4294967295;e=f+(k<<17&4294967295|k>>>15);k=c+(b^e&(f^b))+d[15]+1236535329&4294967295;c=e+(k<<22&4294967295|k>>>10);k=b+(e^f&(c^e))+d[1]+4129170786&4294967295;b=c+(k<< +5&4294967295|k>>>27);k=f+(c^e&(b^c))+d[6]+3225465664&4294967295;f=b+(k<<9&4294967295|k>>>23);k=e+(b^c&(f^b))+d[11]+643717713&4294967295;e=f+(k<<14&4294967295|k>>>18);k=c+(f^b&(e^f))+d[0]+3921069994&4294967295;c=e+(k<<20&4294967295|k>>>12);k=b+(e^f&(c^e))+d[5]+3593408605&4294967295;b=c+(k<<5&4294967295|k>>>27);k=f+(c^e&(b^c))+d[10]+38016083&4294967295;f=b+(k<<9&4294967295|k>>>23);k=e+(b^c&(f^b))+d[15]+3634488961&4294967295;e=f+(k<<14&4294967295|k>>>18);k=c+(f^b&(e^f))+d[4]+3889429448&4294967295;c= +e+(k<<20&4294967295|k>>>12);k=b+(e^f&(c^e))+d[9]+568446438&4294967295;b=c+(k<<5&4294967295|k>>>27);k=f+(c^e&(b^c))+d[14]+3275163606&4294967295;f=b+(k<<9&4294967295|k>>>23);k=e+(b^c&(f^b))+d[3]+4107603335&4294967295;e=f+(k<<14&4294967295|k>>>18);k=c+(f^b&(e^f))+d[8]+1163531501&4294967295;c=e+(k<<20&4294967295|k>>>12);k=b+(e^f&(c^e))+d[13]+2850285829&4294967295;b=c+(k<<5&4294967295|k>>>27);k=f+(c^e&(b^c))+d[2]+4243563512&4294967295;f=b+(k<<9&4294967295|k>>>23);k=e+(b^c&(f^b))+d[7]+1735328473&4294967295; +e=f+(k<<14&4294967295|k>>>18);k=c+(f^b&(e^f))+d[12]+2368359562&4294967295;c=e+(k<<20&4294967295|k>>>12);k=b+(c^e^f)+d[5]+4294588738&4294967295;b=c+(k<<4&4294967295|k>>>28);k=f+(b^c^e)+d[8]+2272392833&4294967295;f=b+(k<<11&4294967295|k>>>21);k=e+(f^b^c)+d[11]+1839030562&4294967295;e=f+(k<<16&4294967295|k>>>16);k=c+(e^f^b)+d[14]+4259657740&4294967295;c=e+(k<<23&4294967295|k>>>9);k=b+(c^e^f)+d[1]+2763975236&4294967295;b=c+(k<<4&4294967295|k>>>28);k=f+(b^c^e)+d[4]+1272893353&4294967295;f=b+(k<<11&4294967295| +k>>>21);k=e+(f^b^c)+d[7]+4139469664&4294967295;e=f+(k<<16&4294967295|k>>>16);k=c+(e^f^b)+d[10]+3200236656&4294967295;c=e+(k<<23&4294967295|k>>>9);k=b+(c^e^f)+d[13]+681279174&4294967295;b=c+(k<<4&4294967295|k>>>28);k=f+(b^c^e)+d[0]+3936430074&4294967295;f=b+(k<<11&4294967295|k>>>21);k=e+(f^b^c)+d[3]+3572445317&4294967295;e=f+(k<<16&4294967295|k>>>16);k=c+(e^f^b)+d[6]+76029189&4294967295;c=e+(k<<23&4294967295|k>>>9);k=b+(c^e^f)+d[9]+3654602809&4294967295;b=c+(k<<4&4294967295|k>>>28);k=f+(b^c^e)+d[12]+ +3873151461&4294967295;f=b+(k<<11&4294967295|k>>>21);k=e+(f^b^c)+d[15]+530742520&4294967295;e=f+(k<<16&4294967295|k>>>16);k=c+(e^f^b)+d[2]+3299628645&4294967295;c=e+(k<<23&4294967295|k>>>9);k=b+(e^(c|~f))+d[0]+4096336452&4294967295;b=c+(k<<6&4294967295|k>>>26);k=f+(c^(b|~e))+d[7]+1126891415&4294967295;f=b+(k<<10&4294967295|k>>>22);k=e+(b^(f|~c))+d[14]+2878612391&4294967295;e=f+(k<<15&4294967295|k>>>17);k=c+(f^(e|~b))+d[5]+4237533241&4294967295;c=e+(k<<21&4294967295|k>>>11);k=b+(e^(c|~f))+d[12]+1700485571& +4294967295;b=c+(k<<6&4294967295|k>>>26);k=f+(c^(b|~e))+d[3]+2399980690&4294967295;f=b+(k<<10&4294967295|k>>>22);k=e+(b^(f|~c))+d[10]+4293915773&4294967295;e=f+(k<<15&4294967295|k>>>17);k=c+(f^(e|~b))+d[1]+2240044497&4294967295;c=e+(k<<21&4294967295|k>>>11);k=b+(e^(c|~f))+d[8]+1873313359&4294967295;b=c+(k<<6&4294967295|k>>>26);k=f+(c^(b|~e))+d[15]+4264355552&4294967295;f=b+(k<<10&4294967295|k>>>22);k=e+(b^(f|~c))+d[6]+2734768916&4294967295;e=f+(k<<15&4294967295|k>>>17);k=c+(f^(e|~b))+d[13]+1309151649& +4294967295;c=e+(k<<21&4294967295|k>>>11);k=b+(e^(c|~f))+d[4]+4149444226&4294967295;b=c+(k<<6&4294967295|k>>>26);k=f+(c^(b|~e))+d[11]+3174756917&4294967295;f=b+(k<<10&4294967295|k>>>22);k=e+(b^(f|~c))+d[2]+718787259&4294967295;e=f+(k<<15&4294967295|k>>>17);k=c+(f^(e|~b))+d[9]+3951481745&4294967295;a.o[0]=a.o[0]+b&4294967295;a.o[1]=a.o[1]+(e+(k<<21&4294967295|k>>>11))&4294967295;a.o[2]=a.o[2]+e&4294967295;a.o[3]=a.o[3]+f&4294967295}; +ym=function(){this.u=null}; +zm=function(a){return function(b){var c=new wm;c.update(b+a);return pba(c.digest()).slice(-8)}}; +Am=function(a,b){this.u=a;this.w=b}; +qk=function(a,b,c){var d=a.o(c);if(g.Ma(d)){var e={};e=(e.sv="862",e.cb="j",e.e=sda(b),e);var f=Ek(c,b,oj());g.Sb(e,f);c.RC[b]=f;a=2==c.xf()?fca(e).join("&"):a.w.o(e).o;try{return d(c.jd,a,b),0}catch(k){return 2}}else return 1}; +sda=function(a){var b=Kl(a)?"custom_metric_viewable":a;a=Kb(Ck,function(c){return c==b}); +return Il[a]}; +Bm=function(a,b,c){Am.call(this,a,b);this.A=c}; +Cm=function(){dm.call(this);this.C=null;this.B=!1;this.G={};this.w=new ym}; +tda=function(a,b,c){c=c.opt_configurable_tracking_events;null!=a.u&&Array.isArray(c)&&fda(a,c,b)}; +uda=function(a,b,c){var d=Nk(Rk,b);d||(d=c.opt_nativeTime||-1,d=em(a,b,jm(a),d),c.opt_osdId&&(d.pk=c.opt_osdId));return d}; +vda=function(a,b,c){var d=Nk(Rk,b);d||(d=em(a,b,"n",c.opt_nativeTime||-1));return d}; +wda=function(a,b){var c=Nk(Rk,b);c||(c=em(a,b,"h",-1));return c}; +xda=function(a){Di.getInstance();switch(jm(a)){case "b":return"ytads.bulleit.triggerExternalActivityEvent";case "n":return"ima.bridge.triggerExternalActivityEvent";case "h":case "m":case "ml":return"ima.common.triggerExternalActivityEvent"}return null}; +Em=function(a,b,c,d){c=void 0===c?{}:c;var e={};g.Sb(e,{opt_adElement:void 0,opt_fullscreen:void 0},c);if(e.opt_bounds)return a.w.o(Jl("ol",d));if(void 0!==d)if(void 0!==Hl(d))if(gm)b=Jl("ue",d);else if(ida(a),"i"==hm)b=Jl("i",d),b["if"]=0;else if(b=a.co(b,e))if(a.A&&3==b.Cc)b="stopped";else{b:{"i"==hm&&(b.Rj=!0,a.Bu());c=e.opt_fullscreen;void 0!==c&&bk(b,!!c);var f;if(c=!lj.getInstance().u)(c=nc(g.Ic,"CrKey")||nc(g.Ic,"PlayStation")||nc(g.Ic,"Roku")||Yba()||nc(g.Ic,"Xbox"))||(c=g.Ic,c=nc(c,"AppleTV")|| +nc(c,"Apple TV")||nc(c,"CFNetwork")||nc(c,"tvOS")),c||(c=g.Ic,c=nc(c,"sdk_google_atv_x86")||nc(c,"Android TV")),c=!c;c&&(wi(),c=0===ii(Rh));if(f=c){switch(b.xf()){case 1:lm(a,b,"pv");break;case 2:a.uu(b)}im("pv")}c=d.toLowerCase();if(!f&&g.$a(yda,c)&&0==b.Cc){"i"!=hm&&(vl.done=!1);f=void 0!==e?e.opt_nativeTime:void 0;cj=f="number"===typeof f?f:Zi();b.In=!0;var k=oj();b.Cc=1;b.Nf={};b.Nf.firstquartile=!1;b.Nf.midpoint=!1;b.Nf.thirdquartile=!1;b.Nf.complete=!1;b.Nf.pause=!1;b.Nf.skip=!1;b.Nf.viewable_impression= +!1;b.tr=0;k||(b.Pd().G=f);xl(vl,[b],!k)}0!=b.Cc&&g.$a(zda,c)&&!b.Rj&&b.Gi&&(f=b.Gi,f.o||(f.o=rk(f,b)));(f=b.mj[c])&&kk(b.yc,f);switch(b.xf()){case 1:var l=Kl(c)?a.F.custom_metric_viewable:a.F[c];break;case 2:l=a.P[c]}if(l&&(d=l.call(a,b,e,d),void 0!==d)){e=Jl(void 0,c);g.Sb(e,d);d=e;break b}d=void 0}3==b.Cc&&(a.A?b.Ib&&b.Ib.Zl():a.il(b));b=d}else b=Jl("nf",d);else b=void 0;else gm?b=Jl("ue"):(b=a.co(b,e))?(d=Jl(),g.Sb(d,Dk(b,!0,!1,!1)),b=d):b=Jl("nf");return"string"===typeof b?a.A&&"stopped"===b? +Dm:a.w.o(void 0):a.w.o(b)}; +Fm=function(a){return Di.getInstance(),"h"!=jm(a)&&jm(a),!1}; +Gm=function(a){var b={};return b.viewability=a.o,b.googleViewability=a.w,b.moatInit=a.B,b.moatViewability=a.C,b.integralAdsViewability=a.A,b.doubleVerifyViewability=a.u,b}; +Hm=function(a,b,c){c=void 0===c?{}:c;a=Em(Cm.getInstance(),b,c,a);return Gm(a)}; +Im=function(a,b){b=void 0===b?!1:b;var c=Cm.getInstance().co(a,{});c?vk(c):b&&(c=Cm.getInstance().zm(null,Zi(),!1,a),c.Cc=3,Uk([c]))}; +Jm=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&&"chrome-untrusted"!==a&&"chrome"!==a&&"app"!==a)throw Error("Invalid URI scheme in origin: "+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}; +Ada=function(){function a(){e[0]=1732584193;e[1]=4023233417;e[2]=2562383102;e[3]=271733878;e[4]=3285377520;p=n=0} +function b(t){for(var u=k,z=0;64>z;z+=4)u[z/4]=t[z]<<24|t[z+1]<<16|t[z+2]<<8|t[z+3];for(z=16;80>z;z++)t=u[z-3]^u[z-8]^u[z-14]^u[z-16],u[z]=(t<<1|t>>>31)&4294967295;t=e[0];var C=e[1],D=e[2],E=e[3],F=e[4];for(z=0;80>z;z++){if(40>z)if(20>z){var G=E^C&(D^E);var fa=1518500249}else G=C^D^E,fa=1859775393;else 60>z?(G=C&D|E&(C|D),fa=2400959708):(G=C^D^E,fa=3395469782);G=((t<<5|t>>>27)&4294967295)+G+F+fa+u[z]&4294967295;F=E;E=D;D=(C<<30|C>>>2)&4294967295;C=t;t=G}e[0]=e[0]+t&4294967295;e[1]=e[1]+C&4294967295; +e[2]=e[2]+D&4294967295;e[3]=e[3]+E&4294967295;e[4]=e[4]+F&4294967295} +function c(t,u){if("string"===typeof t){t=unescape(encodeURIComponent(t));for(var z=[],C=0,D=t.length;Cn?c(l,56-n):c(l,64-(n-56));for(var z=63;56<=z;z--)f[z]=u&255,u>>>=8;b(f);for(z=u=0;5>z;z++)for(var C=24;0<=C;C-=8)t[u++]=e[z]>>C&255;return t} +for(var e=[],f=[],k=[],l=[128],m=1;64>m;++m)l[m]=0;var n,p;a();return{reset:a,update:c,digest:d,wE:function(){for(var t=d(),u="",z=0;zb)throw Error("Bad port number "+b);a.A=b}else a.A=null}; +Tm=function(a,b,c){b instanceof Vm?(a.w=b,Cda(a.w,a.F)):(c||(b=Wm(b,Dda)),a.w=new Vm(b,a.F))}; +g.Xm=function(a){return a instanceof g.Pm?a.clone():new g.Pm(a,void 0)}; +Um=function(a,b){return a?b?decodeURI(a.replace(/%25/g,"%2525")):decodeURIComponent(a):""}; +Wm=function(a,b,c){return"string"===typeof a?(a=encodeURI(a).replace(b,Eda),c&&(a=a.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),a):null}; +Eda=function(a){a=a.charCodeAt(0);return"%"+(a>>4&15).toString(16)+(a&15).toString(16)}; +Vm=function(a,b){this.u=this.o=null;this.w=a||null;this.A=!!b}; +Ym=function(a){a.o||(a.o=new g.Mm,a.u=0,a.w&&qd(a.w,function(b,c){a.add(cd(b),c)}))}; +$m=function(a,b){Ym(a);b=Zm(a,b);return Nm(a.o.u,b)}; +g.an=function(a,b,c){a.remove(b);0document.documentMode){if(!b[c].call)throw Error("IE Clobbering detected");}else if("function"!=typeof b[c])throw Error("Clobbering detected");return b[c].apply(b,d)}; +dea=function(a){if(!a)return Ec;var b=document.createElement("div").style,c=$da(a);(0,g.y)(c,function(d){var e=g.je&&d in aea?d:d.replace(/^-(?:apple|css|epub|khtml|moz|mso?|o|rim|wap|webkit|xv)-(?=[a-z])/i,"");cc(e,"--")||cc(e,"var")||(d=Jn(bea,a,a.getPropertyValue?"getPropertyValue":"getAttribute",[d])||"",d=Zda(d),null!=d&&Jn(cea,b,b.setProperty?"setProperty":"setAttribute",[e,d]))}); +return Jaa(b.cssText||"")}; +$da=function(a){g.La(a)?a=g.gb(a):(a=g.Gb(a),g.db(a,"cssText"));return a}; +g.Ln=function(a){var b,c=b=0,d=!1;a=a.split(eea);for(var e=0;e(0,g.H)()}; +g.$n=function(a){this.o=a}; +kea=function(){}; +ao=function(){}; +bo=function(a){this.o=a}; +co=function(){var a=null;try{a=window.localStorage||null}catch(b){}this.o=a}; +eo=function(){var a=null;try{a=window.sessionStorage||null}catch(b){}this.o=a}; +go=function(a,b){this.u=a;this.o=null;if(g.he&&!g.Ld(9)){fo||(fo=new g.Mm);this.o=fo.get(a);this.o||(b?this.o=document.getElementById(b):(this.o=document.createElement("userdata"),this.o.addBehavior("#default#userData"),document.body.appendChild(this.o)),fo.set(a,this.o));try{this.o.load(this.u)}catch(c){this.o=null}}}; +ho=function(a){return"_"+encodeURIComponent(a).replace(/[.!~*'()%]/g,function(b){return lea[b]})}; +io=function(a){try{a.o.save(a.u)}catch(b){throw"Storage mechanism: Quota exceeded";}}; +jo=function(a,b){this.u=a;this.o=b+"::"}; +g.ko=function(a){var b=new co;return b.isAvailable()?a?new jo(b,a):b:null}; +lo=function(a,b){this.o=a;this.u=b}; +mo=function(a){this.o=[];if(a)a:{if(a instanceof mo){var b=a.te();a=a.Ed();if(0>=this.o.length){for(var c=this.o,d=0;d>1,a[d].o>c.o)a[b]=a[d],b=d;else break;a[b]=c}; +g.oo=function(){mo.call(this)}; +po=function(){}; +qo=function(a){Ng(this,a,mea,null)}; +ro=function(a){Ng(this,a,null,null)}; +nea=function(a,b){for(;ng(b)&&4!=b.u;)switch(b.w){case 1:var c=qg(b);Qg(a,1,c);break;case 2:c=qg(b);Qg(a,2,c);break;case 3:c=qg(b);Qg(a,3,c);break;case 4:c=qg(b);Qg(a,4,c);break;case 5:c=lg(b.o);Qg(a,5,c);break;default:og(b)}return a}; +oea=function(a){a=a.split("");var b=[null,-1713709306,function(c){for(var d=c.length;d;)c.push(c.splice(--d,1)[0])}, +1537509927,-1085997285,-2004441746,null,1514390249,a,-1727948138,function(c,d){d=(d%c.length+c.length)%c.length;c.splice(0,1,c.splice(d,1,c[0])[0])}, +268602481,-412932477,function(c,d){for(var e=64,f=[];++e-f.length-32;)switch(e){case 94:case 95:case 96:break;case 123:e-=76;case 92:case 93:continue;case 58:e=44;case 91:break;case 46:e=95;default:f.push(String.fromCharCode(e))}c.forEach(function(k,l,m){this.push(m[l]=f[(f.indexOf(k)-f.indexOf(this[l])+l-32+e--)%f.length])},d.split(""))}, +-1490306595,-1564815556,-412932477,-1052598320,1831551597,-1052598320,1173560505,1277646858,1078922486,"now",643470030,function(c,d){for(var e=64,f=[];++e-f.length-32;){switch(e){case 58:e-=14;case 91:case 92:case 93:continue;case 123:e=47;case 94:case 95:case 96:continue;case 46:e=95}f.push(String.fromCharCode(e))}c.forEach(function(k,l,m){this.push(m[l]=f[(f.indexOf(k)-f.indexOf(this[l])+l-32+e--)%f.length])},d.split(""))}, +-1211212009,-2052899271,-1754024156,"uJlWOl",function(c,d){c.push(d)}, +1605412962,function(c,d){for(var e=64,f=[];++e-f.length-32;){switch(e){case 58:e-=14;case 91:case 92:case 93:continue;case 123:e=47;case 94:case 95:case 96:continue;case 46:e=95}f.push(String.fromCharCode(e))}c.forEach(function(k,l,m){this.push(m[l]=f[(f.indexOf(k)-f.indexOf(this[l])+l-32+e--)%f.length])},d.split(""))}, +null,function(c,d){d=(d%c.length+c.length)%c.length;c.splice(d,1)}, +1507781321,function(c){c.reverse()}, +1381807086,function(c,d){d=(d%c.length+c.length)%c.length;var e=c[0];c[0]=c[d];c[d]=e}, +a,-447989605,"now",a,-444958683,-70039377,-1411955588,function(c,d){d=(d%c.length+c.length)%c.length;c.splice(-d).reverse().forEach(function(e){c.unshift(e)})}, +-2122552473,-410857127,-1194794,756895321,function(c,d){for(d=(d%c.length+c.length)%c.length;d--;)c.unshift(c.pop())}, +-1742591411,1078922486];b[0]=b;b[6]=b;b[33]=b;b[32](b[42],b[41]);b[51](b[8],b[45]);b[38](b[6],b[48]);b[51](b[39],b[19]);b[36](b[37]);b[51](b[16]);b[38](b[37],b[50]);b[34](b[8],b[40]);b[2](b[42]);b[38](b[33],b[0]);b[2](b[33]);b[17](b[47]);b[10](b[6],b[3]);b[51](b[42],b[24]);b[51](b[37],b[11]);b[11](b[34],b[53]);b[39](b[7],b[32]);b[11](b[9],b[16]);b[11](b[34],b[19]);b[31](b[38],b[26]);b[35](b[0],b[2]);b[47](b[43],b[45]);b[39](b[38],b[13]);b[31](b[34],b[28]);b[52](b[34],b[10]);b[53](b[1],b[20]);b[53](b[21], +b[35]);b[5](b[48],b[2]);b[38](b[27],b[42]);b[2](b[34],b[28]);b[23](b[5],b[36]);b[11](b[2],b[25]);b[6](b[7],b[53]);b[19](b[10],b[51]);b[6](b[10],b[45]);b[34](b[10],b[31]);b[37](b[23],b[54]);b[19](b[10],b[15]);b[19](b[7],b[27]);b[19](b[10],b[17]);b[2](b[23],b[4]);return a.join("")}; +to=function(a){var b=arguments,c=so;1f&&(c=a.substring(f,e),c=c.replace(rea,""),c=c.replace(sea,""),c=c.replace("debug-",""),c=c.replace("tracing-",""))}spf.script.load(a,c,b)}else tea(a,b,c)}; +tea=function(a,b,c){c=void 0===c?null:c;var d=Uo(a),e=document.getElementById(d),f=e&&Co(e),k=e&&!f;f?b&&b():(b&&(f=g.Oo(d,b),b=""+g.Pa(b),Vo[b]=f),k||(e=uea(a,d,function(){Co(e)||(Bo(e,"loaded","true"),g.Qo(d),g.Ho(g.Qa(So,d),0))},c)))}; +uea=function(a,b,c,d){d=void 0===d?null:d;var e=g.oe("SCRIPT");e.id=b;e.onload=function(){c&&setTimeout(c,0)}; +e.onreadystatechange=function(){switch(e.readyState){case "loaded":case "complete":e.onload()}}; +d&&e.setAttribute("nonce",d);$c(e,gh(a));a=document.getElementsByTagName("head")[0]||document.body;a.insertBefore(e,a.firstChild);return e}; +Uo=function(a){var b=document.createElement("a");g.Yc(b,a);a=b.href.replace(/^[a-zA-Z]+:\/\//,"//");return"js-"+gd(a)}; +cp=function(){g.Jo(Wo);g.Jo(Xo);Xo=0;Yo&&Yo.isReady()?(Zo($o),"log_event"in ap&&Zo(Object.entries(ap.log_event)),$o.clear(),delete ap.log_event):bp()}; +bp=function(){g.xo("web_gel_timeout_cap")&&!Xo&&(Xo=g.Ho(cp,6E4));g.Jo(Wo);var a=g.L("LOGGING_BATCH_TIMEOUT",yo("web_gel_debounce_ms",1E4));g.xo("shorten_initial_gel_batch_timeout")&&dp&&(a=vea);Wo=g.Ho(cp,a)}; +Zo=function(a){var b=Yo,c=Math.round((0,g.N)());a=g.q(a);for(var d=a.next();!d.done;d=a.next()){var e=g.q(d.value);d=e.next().value;var f=e.next().value;e=g.Qb(g.ep(b));e.events=f;(f=fp[d])&&wea(e,d,f);delete fp[d];xea(e,c);g.gp(b,"log_event",e,{retry:!0,onSuccess:function(){hp=Math.round((0,g.N)()-c)}}); +dp=!1}}; +xea=function(a,b){a.requestTimeMs=String(b);g.xo("unsplit_gel_payloads_in_logs")&&(a.unsplitGelPayloadsInLogs=!0);var c=g.L("EVENT_ID",void 0);if(c){var d=g.L("BATCH_CLIENT_COUNTER",void 0)||0;!d&&g.xo("web_client_counter_random_seed")&&(d=Math.floor(Math.random()*ip/2));d++;d>ip&&(d=1);to("BATCH_CLIENT_COUNTER",d);c={serializedEventId:c,clientCounter:String(d)};a.serializedClientEventId=c;jp&&hp&&g.xo("log_gel_rtt_web")&&(a.previousBatchInfo={serializedClientEventId:jp,roundtripMs:String(hp)});jp= +c;hp=0}}; +wea=function(a,b,c){if(c.videoId)var d="VIDEO";else if(c.playlistId)d="PLAYLIST";else return;a.credentialTransferTokenTargetId=c;a.context=a.context||{};a.context.user=a.context.user||{};a.context.user.credentialTransferTokens=[{token:b,scope:d}]}; +vp=function(){if(g.xo("use_typescript_transport"))cp();else if(g.Jo(kp),g.Jo(lp),lp=0,!g.Mb(mp)){for(var a in mp){var b=np[a];if(b&&b.isReady()){var c=void 0,d=a,e=yea[d],f=Math.round((0,g.N)());for(c in mp[d]){var k=g.Qb(g.ep(b));k[e]=op(d,c);var l=pp[c];if(l)a:{var m=k,n=c;if(l.videoId)var p="VIDEO";else if(l.playlistId)p="PLAYLIST";else break a;m.credentialTransferTokenTargetId=l;m.context=m.context||{};m.context.user=m.context.user||{};m.context.user.credentialTransferTokens=[{token:n,scope:p}]}delete pp[c]; +l=k;l.requestTimeMs=f;g.xo("unsplit_gel_payloads_in_logs")&&(l.unsplitGelPayloadsInLogs=!0);if(p=g.L("EVENT_ID",void 0))m=g.L("BATCH_CLIENT_COUNTER",void 0)||0,!m&&g.xo("web_client_counter_random_seed")&&(m=Math.floor(Math.random()*qp/2)),m++,m>qp&&(m=1),to("BATCH_CLIENT_COUNTER",m),p={serializedEventId:p,clientCounter:m},l.serializedClientEventId=p,rp&&sp&&g.xo("log_gel_rtt_web")&&(l.previousBatchInfo={serializedClientEventId:rp,roundtripMs:sp}),rp=p,sp=0;g.gp(b,d,k,{retry:zea.has(d),onSuccess:g.Qa(Aea, +(0,g.N)())})}delete mp[a];tp=!1}}g.Mb(mp)||up()}}; +up=function(){g.xo("web_gel_timeout_cap")&&!lp&&(lp=g.Ho(vp,6E4));g.Jo(kp);var a=g.L("LOGGING_BATCH_TIMEOUT",yo("web_gel_debounce_ms",1E4));g.xo("shorten_initial_gel_batch_timeout")&&tp&&(a=Bea);kp=g.Ho(vp,a)}; +op=function(a,b){b=void 0===b?"":b;mp[a]=mp[a]||{};mp[a][b]=mp[a][b]||[];return mp[a][b]}; +Aea=function(a){sp=Math.round((0,g.N)()-a)}; +xp=function(){var a=document;if("visibilityState"in a)return a.visibilityState;var b=wp+"VisibilityState";if(b in a)return a[b]}; +yp=function(a,b){var c;kj(a,function(d){c=b[d];return!!c}); +return c}; +zp=function(a){this.type="";this.state=this.source=this.data=this.currentTarget=this.relatedTarget=this.target=null;this.charCode=this.keyCode=0;this.metaKey=this.shiftKey=this.ctrlKey=this.altKey=!1;this.rotation=this.clientY=this.clientX=0;this.changedTouches=this.touches=null;try{if(a=a||window.event){this.event=a;for(var b in a)b in Cea||(this[b]=a[b]);this.rotation=a.rotation;var c=a.target||a.srcElement;c&&3==c.nodeType&&(c=c.parentNode);this.target=c;var d=a.relatedTarget;if(d)try{d=d.nodeName? +d:null}catch(e){d=null}else"mouseover"==this.type?d=a.fromElement:"mouseout"==this.type&&(d=a.toElement);this.relatedTarget=d;this.clientX=void 0!=a.clientX?a.clientX:a.pageX;this.clientY=void 0!=a.clientY?a.clientY:a.pageY;this.keyCode=a.keyCode?a.keyCode:a.which;this.charCode=a.charCode||("keypress"==this.type?this.keyCode:0);this.altKey=a.altKey;this.ctrlKey=a.ctrlKey;this.shiftKey=a.shiftKey;this.metaKey=a.metaKey;this.o=a.pageX;this.u=a.pageY}}catch(e){}}; +Ap=function(a){if(document.body&&document.documentElement){var b=document.body.scrollTop+document.documentElement.scrollTop;a.o=a.clientX+(document.body.scrollLeft+document.documentElement.scrollLeft);a.u=a.clientY+b}}; +Dea=function(a,b,c,d){d=void 0===d?{}:d;a.addEventListener&&("mouseenter"!=b||"onmouseenter"in document?"mouseleave"!=b||"onmouseenter"in document?"mousewheel"==b&&"MozBoxSizing"in document.documentElement.style&&(b="MozMousePixelScroll"):b="mouseout":b="mouseover");return Kb(Bp,function(e){var f="boolean"===typeof e[4]&&e[4]==!!d,k=g.Na(e[4])&&g.Na(d)&&g.Ob(e[4],d);return!!e.length&&e[0]==a&&e[1]==b&&e[2]==c&&(f||k)})}; +g.Ep=function(a,b,c,d){d=void 0===d?{}:d;if(!a||!a.addEventListener&&!a.attachEvent)return"";var e=Dea(a,b,c,d);if(e)return e;e=++Cp.count+"";var f=!("mouseenter"!=b&&"mouseleave"!=b||!a.addEventListener||"onmouseenter"in document);var k=f?function(l){l=new zp(l);if(!Ce(l.relatedTarget,function(m){return m==a},!0))return l.currentTarget=a,l.type=b,c.call(a,l)}:function(l){l=new zp(l); +l.currentTarget=a;return c.call(a,l)}; +k=Fo(k);a.addEventListener?("mouseenter"==b&&f?b="mouseover":"mouseleave"==b&&f?b="mouseout":"mousewheel"==b&&"MozBoxSizing"in document.documentElement.style&&(b="MozMousePixelScroll"),Dp()||"boolean"===typeof d?a.addEventListener(b,k,d):a.addEventListener(b,k,!!d.capture)):a.attachEvent("on"+b,k);Bp[e]=[a,b,c,k,d];return e}; +Eea=function(a,b,c,d){var e=a||document;return g.Ep(e,b,function(f){var k=Ce(f.target,function(l){return l===e||d(l)},!0); +k&&k!==e&&!k.disabled&&(f.currentTarget=k,c.call(k,f))})}; +g.Fp=function(a){a&&("string"==typeof a&&(a=[a]),(0,g.y)(a,function(b){if(b in Bp){var c=Bp[b],d=c[0],e=c[1],f=c[3];c=c[4];d.removeEventListener?Dp()||"boolean"===typeof c?d.removeEventListener(e,f,c):d.removeEventListener(e,f,!!c.capture):d.detachEvent&&d.detachEvent("on"+e,f);delete Bp[b]}}))}; +g.Gp=function(a){a=a||window.event;a=a.target||a.srcElement;3==a.nodeType&&(a=a.parentNode);return a}; +Hp=function(a){a=a||window.event;var b;a.composedPath&&g.Ma(a.composedPath)?b=a.composedPath():b=a.path;return b&&b.length?b[0]:g.Gp(a)}; +Ip=function(a){a=a||window.event;var b=a.relatedTarget;b||("mouseover"==a.type?b=a.fromElement:"mouseout"==a.type&&(b=a.toElement));return b}; +Jp=function(a){a=a||window.event;var b=a.pageX,c=a.pageY;document.body&&document.documentElement&&("number"!==typeof b&&(b=a.clientX+document.body.scrollLeft+document.documentElement.scrollLeft),"number"!==typeof c&&(c=a.clientY+document.body.scrollTop+document.documentElement.scrollTop));return new g.Qd(b,c)}; +g.Kp=function(a){a=a||window.event;a.returnValue=!1;a.preventDefault&&a.preventDefault()}; +g.Lp=function(a){a=a||window.event;return!1===a.returnValue||a.iy&&a.iy()}; +g.Mp=function(a){a=a||window.event;return a.keyCode?a.keyCode:a.which}; +g.Np=function(a,b,c,d){return Eea(a,b,c,function(e){return g.Bn(e,d)})}; +g.Op=function(a,b,c){var d=void 0===d?{}:d;var e;return e=g.Ep(a,b,function(){g.Fp(e);c.apply(a,arguments)},d)}; +Pp=function(a){for(var b in Bp)Bp[b][0]==a&&g.Fp(b)}; +Qp=function(a){this.I=a;this.o=null;this.B=0;this.C=null;this.A=0;this.u=[];for(a=0;4>a;a++)this.u.push(0);this.w=0;this.G=g.Ep(window,"mousemove",(0,g.x)(this.M,this));this.P=Io((0,g.x)(this.F,this),25)}; +Fea=function(){}; +Sp=function(a,b){return Rp(a,0,b)}; +g.Tp=function(a,b){return Rp(a,1,b)}; +Up=function(){}; +g.Vp=function(){return!!g.w("yt.scheduler.instance")}; +Rp=function(a,b,c){isNaN(c)&&(c=void 0);var d=g.w("yt.scheduler.instance.addJob");return d?d(a,b,c):void 0===c?(a(),NaN):g.Ho(a,c||0)}; +g.Wp=function(a){if(!isNaN(a)){var b=g.w("yt.scheduler.instance.cancelJob");b?b(a):g.Jo(a)}}; +Xp=function(a){var b=g.w("yt.scheduler.instance.setPriorityThreshold");b&&b(a)}; +$p=function(){var a={},b=void 0===a.VF?!0:a.VF;a=void 0===a.VN?!1:a.VN;if(null==g.w("_lact",window)){var c=parseInt(g.L("LACT"),10);c=isFinite(c)?(0,g.H)()-Math.max(c,0):-1;g.Ga("_lact",c,window);g.Ga("_fact",c,window);-1==c&&Yp();g.Ep(document,"keydown",Yp);g.Ep(document,"keyup",Yp);g.Ep(document,"mousedown",Yp);g.Ep(document,"mouseup",Yp);b&&(a?g.Ep(window,"touchmove",function(){Zp("touchmove",200)},{passive:!0}):(g.Ep(window,"resize",function(){Zp("resize",200)}),g.Ep(window,"scroll",function(){Zp("scroll", +200)}))); +new Qp(function(){Zp("mouse",100)}); +g.Ep(document,"touchstart",Yp,{passive:!0});g.Ep(document,"touchend",Yp,{passive:!0})}}; +Zp=function(a,b){aq[a]||(aq[a]=!0,g.Tp(function(){Yp();aq[a]=!1},b))}; +Yp=function(){null==g.w("_lact",window)&&($p(),g.w("_lact",window));var a=(0,g.H)();g.Ga("_lact",a,window);-1==g.w("_fact",window)&&g.Ga("_fact",a,window);(a=g.w("ytglobal.ytUtilActivityCallback_"))&&a()}; +bq=function(){var a=g.w("_lact",window),b;null==a?b=-1:b=Math.max((0,g.H)()-a,0);return b}; +g.fq=function(a,b,c,d){d=void 0===d?{}:d;var e={};e.eventTimeMs=Math.round(d.timestamp||(0,g.N)());e[a]=b;e.context={lastActivityMs:String(d.timestamp?-1:bq())};g.xo("log_sequence_info_on_gel_web")&&d.bj&&(a=e.context,b=d.bj,cq[b]=b in cq?cq[b]+1:0,a.sequence={index:cq[b],groupKey:b},d.CE&&delete cq[d.bj]);d=d.al;g.xo("use_typescript_transport")?(a="",d&&(a={},d.videoId?a.videoId=d.videoId:d.playlistId&&(a.playlistId=d.playlistId),fp[d.token]=a,a=d.token),d=$o.get(a)||[],$o.set(a,d),d.push(e),c&& +(Yo=new c),c=yo("web_logging_max_batch")||100,e=(0,g.N)(),d.length>=c?cp():10<=e-dq&&(bp(),dq=e)):(d?(a={},d.videoId?a.videoId=d.videoId:d.playlistId&&(a.playlistId=d.playlistId),pp[d.token]=a,d=op("log_event",d.token)):d=op("log_event"),d.push(e),c&&(np.log_event=new c),c=yo("web_logging_max_batch")||100,e=(0,g.N)(),d.length>=c?vp():10<=e-eq&&(up(),eq=e))}; +gq=function(){return g.w("yt.ads.biscotti.lastId_")||""}; +hq=function(a){g.Ga("yt.ads.biscotti.lastId_",a,void 0)}; +iq=function(a){a=a.split("&");for(var b={},c=0,d=a.length;ck.status)?k.json().then(m,function(){m(null)}):m(null)}}); +b.AA&&0l.status,t=500<=l.status&&600>l.status;if(m||p||t)n=Mea(c,l,b.tT);if(m)a:if(l&&204==l.status)m=!0;else{switch(c){case "XML":m=0==parseInt(n&&n.return_code,10);break a;case "RAW":m=!0;break a}m=!!n}n=n||{};p=b.context||g.v;m?b.onSuccess&&b.onSuccess.call(p,l,n):b.onError&&b.onError.call(p,l,n);b.Fc&&b.Fc.call(p,l,n)}},b.method,d,b.headers,b.responseType, +b.withCredentials); +b.Ud&&0Math.random()&&g.Go(Error("Missing VISITOR_DATA when sending innertube request."));c={headers:{"Content-Type":"application/json"},method:"POST",sb:c,tB:"JSON",Ud:function(){d.Ud()}, +AA:d.Ud,onSuccess:function(k,l){if(d.onSuccess)d.onSuccess(l)}, +JT:function(k){if(d.onSuccess)d.onSuccess(k)}, +onError:function(k,l){if(d.onError)d.onError(l)}, +IT:function(k){if(d.onError)d.onError(k)}, +timeout:d.timeout,withCredentials:!0};var e="",f=a.o.qo;f&&(e=f);f=Qea(a.o.ey||!1,e,d);Object.assign(c.headers,f);c.headers.Authorization&&!e&&(c.headers["x-origin"]=window.location.origin);a=g.oq(""+e+("/youtubei/"+a.o.innertubeApiVersion+"/"+b),{alt:"json",key:a.o.innertubeApiKey});try{g.xo("use_fetch_for_op_xhr")?Lea(a,c):g.Iq(a,c)}catch(k){if("InvalidAccessError"==k)g.Go(Error("An extension is blocking network request."));else throw k;}}; +g.Rq=function(a,b,c){c=void 0===c?{}:c;var d=g.Qq;g.L("ytLoggingEventsDefaultDisabled",!1)&&g.Qq==g.Qq&&(d=null);g.fq(a,b,d,c)}; +Sq=function(a,b){for(var c=[],d=1;d"',style:"display:none"}),Wd(a).body.appendChild(a))):e?Fq(a,b,"POST",e,d):g.L("USE_NET_AJAX_FOR_PING_TRANSPORT",!1)||d?Fq(a,b,"GET","",d):Vea(a,b)||Wea(a,b))}; +Vea=function(a,b){if(!vo("web_use_beacon_api_for_ad_click_server_pings"))return!1;if(vo("use_sonic_js_library_for_v4_support")){a:{try{var c=new kaa({url:a,cP:!0});if(c.B?c.w&&c.o&&c.o[1]||c.A:c.u){var d=ld(g.nd(5,a));var e=!(!d||!d.endsWith("/aclk")||"1"!==Cd(a,"ri"));break a}}catch(f){}e=!1}if(!e)return!1}else if(e=ld(g.nd(5,a)),!e||-1==e.indexOf("/aclk")||"1"!==Cd(a,"ae")||"1"!==Cd(a,"act"))return!1;return dr(a)?(b&&b(),!0):!1}; +er=function(a,b,c){c=void 0===c?"":c;dr(a,c)?b&&b():g.cr(a,b,void 0,void 0,c)}; +dr=function(a,b){try{if(window.navigator&&window.navigator.sendBeacon&&window.navigator.sendBeacon(a,void 0===b?"":b))return!0}catch(c){}return!1}; +Wea=function(a,b){var c=new Image,d=""+Xea++;fr[d]=c;c.onload=c.onerror=function(){b&&fr[d]&&b();delete fr[d]}; +c.src=a}; +g.hr=function(a,b){var c=g.Pb(b),d;return Lf(new zf(function(e,f){c.onSuccess=function(k){g.yq(k)?e(k):f(new gr("Request failed, status="+xq(k),"net.badstatus",k))}; +c.onError=function(k){f(new gr("Unknown request error","net.unknown",k))}; +c.Ud=function(k){f(new gr("Request timed out","net.timeout",k))}; +d=g.Eq(a,c)}),function(e){e instanceof Qf&&d.abort(); +return Ef(e)})}; +g.ir=function(a,b,c,d){function e(k,l,m){return Lf(k,function(n){return 0>=l||403===xq(n.Ji)?Ef(new gr("Request retried too many times","net.retryexhausted",n.Ji)):f(m).then(function(){return e(g.hr(a,b),l-1,Math.pow(2,c-l+1)*m)})})} +function f(k){return new zf(function(l){setTimeout(l,k)})} +return e(g.hr(a,b),c-1,d)}; +gr=function(a,b,c){Ta.call(this,a+", errorCode="+b);this.errorCode=b;this.Ji=c;this.name="PromiseAjaxError"}; +jr=function(){this.u=0;this.o=null}; +kr=function(a){var b=new jr;a=void 0===a?null:a;b.u=2;b.o=void 0===a?null:a;return b}; +lr=function(a){var b=new jr;a=void 0===a?null:a;b.u=1;b.o=void 0===a?null:a;return b}; +nr=function(a){Ta.call(this,a.message||a.description||a.name);this.isMissing=a instanceof mr;this.isTimeout=a instanceof gr&&"net.timeout"==a.errorCode;this.isCanceled=a instanceof Qf}; +mr=function(){Ta.call(this,"Biscotti ID is missing from server")}; +Yea=function(){if("1"===g.Hb(g.L("PLAYER_CONFIG",{}),"args","privembed"))return Ef(Error("Biscotti ID is not available in private embed mode"));or||(or=Lf(g.hr("//googleads.g.doubleclick.net/pagead/id",pr).then(qr),function(a){return rr(2,a)})); +return or}; +qr=function(a){a=a.responseText;if(!cc(a,")]}'"))throw new mr;a=JSON.parse(a.substr(4));if(1<(a.type||1))throw new mr;a=a.id;hq(a);or=lr(a);sr(18E5,2);return a}; +rr=function(a,b){var c=new nr(b);hq("");or=kr(c);0b;b++){c=(0,g.H)();for(var d=0;d> "+a.translationLanguage.languageName);return c.join("")}; +Us=function(a,b){this.id=a;this.tb=b;this.captionTracks=[];this.Pn=this.sr=this.o=null;this.dr="UNKNOWN"}; +Vs=function(a,b,c){this.sampleRate=a||0;this.o=b||0;this.spatialAudioType=c||0}; +rfa=function(a,b,c,d){this.displayName=a;this.vssId=b;this.languageCode=c;this.kind=void 0===d?"":d}; +Ys=function(a,b,c,d,e,f,k,l,m,n){this.width=a;this.height=b;this.quality=f||Ws(a,b);this.fc=g.Xs[this.quality];this.fps=c||0;this.stereoLayout=!e||null!=d&&0!=d&&1!=d?0:e;this.projectionType=d?2==d&&2==e?3:d:0;(a=k)||(a=g.Xs[this.quality],0==a?a="Auto":(b=this.fps,c=this.projectionType,a=a+(2==c||3==c||4==c?"s":"p")+(55=1.3*Math.floor(16*l/9)||d>=1.3*l)return e;e=k}return"tiny"}; +dt=function(a,b,c,d,e,f,k,l,m){this.id=a;this.containerType=bt(b);this.mimeType=b;this.o=k||0;this.w=l||0;this.audio=void 0===c?null:c;this.video=void 0===d?null:d;this.tb=void 0===e?null:e;this.captionTrack=void 0===m?null:m;this.zc=void 0===f?null:f;this.u=sfa[ct(this)]||"";this.A=!0}; +ct=function(a){return a.id.split(";",1)[0]}; +et=function(a){return"9"==a.u||"("==a.u||"9h"==a.u||"(h"==a.u}; +ft=function(a){return"9h"==a.u||"(h"==a.u}; +g.gt=function(a){return 1==a.containerType}; +ht=function(a){return"application/x-mpegURL"==a.mimeType}; +it=function(a){return/(opus|vorbis|mp4a|dtse|ac-3|ec-3)/.test(a)}; +jt=function(a){return a.includes("vtt")||a.includes("text/mp4")}; +bt=function(a){return 0<=a.indexOf("/mp4")?1:0<=a.indexOf("/webm")?2:0<=a.indexOf("/x-flv")?3:0<=a.indexOf("/vtt")?4:0}; +kt=function(a,b,c,d,e){var f=new Vs;b in g.Xs||(b="small");d&&e?(e=parseInt(e,10),d=parseInt(d,10)):(e=g.Xs[b],d=Math.round(16*e/9));b=new Ys(d,e,0,null,void 0,b,void 0,void 0,void 0);a=unescape(a.replace(/"/g,'"'));return new dt(c,a,f,b)}; +mt=function(){return g.Ba(function(a){lt||(lt=new Promise(function(b,c){var d=indexedDB.open("yt-player-local-media",3);d.onerror=function(e){"VersionError"==e.target.error.name?(e=indexedDB.open("yt-player-local-media"),e.onsuccess=function(f){return void b(f.target.result)},e.onerror=c):c()}; +d.onsuccess=function(e){var f=e.target.result;f.onversionchange=function(){f.close();lt=null}; +b(f)}; +d.onupgradeneeded=function(e){var f=e.target.result;2>e.oldVersion&&(f.createObjectStore("index"),f.createObjectStore("media"));3>e.oldVersion&&f.createObjectStore("metadata")}})); +return a["return"](lt)})}; +tfa=function(a){var b;return g.Ba(function(c){if(1==c.o)return g.ta(c,mt(),2);b=c.u;return c["return"](nt(b.transaction("media").objectStore("media").get(a)))})}; +ot=function(a,b){var c,d;return g.Ba(function(e){c=IDBKeyRange.bound(b+"|",b+"~");d=a.objectStore("index").getAll(c);return e["return"](new Promise(function(f,k){d.onsuccess=function(l){return void f(l.target.result.join(","))}; +d.onerror=k}))})}; +ufa=function(){var a;return g.Ba(function(b){if(1==b.o)return lt?b=g.ta(b,lt,3):(b.o=2,b=void 0),b;2!=b.o&&(a=b.u,a.close(),lt=null);return b["return"](new Promise(function(c,d){var e=indexedDB.deleteDatabase("yt-player-local-media");e.onsuccess=function(){return void c()}; +e.onerror=function(){return void d()}}))})}; +qt=function(a){if(!pt||(void 0===a?0:a)){a=window.localStorage["yt-player-lv"]||"{}";try{pt=JSON.parse(a)}catch(b){pt={}}}return pt}; +rt=function(a){return qt()[a]||0}; +vfa=function(){var a=qt();return Object.keys(a)}; +tt=function(a){var b=qt();return Object.keys(b).filter(function(c){return b[c]===a})}; +ut=function(a,b){var c=qt(!0);0!==b?c[a]=b:delete c[a];c=JSON.stringify(pt);window.localStorage["yt-player-lv"]=c}; +wfa=function(a,b){var c,d;g.Ba(function(e){if(1==e.o)return g.ta(e,mt(),2);c=e.u;d=c.transaction(["metadata"],"readwrite");d.objectStore("metadata").put(b,a);return e["return"](new Promise(function(f,k){d.oncomplete=function(){return void f()}; +d.onabort=k}))})}; +wt=function(a,b,c,d,e){var f,k,l,m,n,p,t;return g.Ba(function(u){if(1==u.o)return f=""+a+"|"+b.id+"|"+c,k=vt(a,b.isVideo()),l=vt(a,!b.isVideo()),g.ta(u,mt(),2);m=u.u;n=m.transaction(["index","media"],"readwrite");n.objectStore("media").put(d,f);n.objectStore("index").put(e,k);t=(p=!!e&&-1==e.indexOf("dlt"))?n.objectStore("index").get(l):null;return u["return"](new Promise(function(z,C){n.oncomplete=function(){var D=2,E;if(E=p&&t)E=t.result,E=!!E&&-1==E.indexOf("dlt");E&&(D=1,ut(a,D));z(D)}; +n.onabort=C}))})}; +xfa=function(a,b,c){var d,e,f;g.Ba(function(k){if(1==k.o)return d=vt(a,b),g.ta(k,mt(),2);e=k.u;f=e.transaction("index","readwrite");f.objectStore("index").put(c,d);return k["return"](new Promise(function(l,m){f.oncomplete=function(){return void l()}; +f.onabort=m}))})}; +yfa=function(a){var b,c;return g.Ba(function(d){if(1==d.o)return g.ta(d,mt(),2);b=d.u;c=b.transaction("index");return d["return"](ot(c,a))})}; +zfa=function(a,b,c){return g.Ba(function(d){return d["return"](tfa(""+a+"|"+b+"|"+c))})}; +Afa=function(a){var b,c;return g.Ba(function(d){if(1==d.o)return g.ta(d,mt(),2);b=d.u;c=b.transaction(["index","metadata"]);return d["return"](xt(c,a))})}; +Bfa=function(){var a,b;return g.Ba(function(c){if(1==c.o)return g.ta(c,mt(),2);a=c.u;b=a.transaction(["index","metadata"]);return c["return"](Promise.all(vfa().map(function(d){return xt(b,d)})))})}; +xt=function(a,b){var c,d,e,f,k,l,m,n;return g.Ba(function(p){if(1==p.o)return c=nt(a.objectStore("metadata").get(b)),g.ta(p,ot(a,b),2);if(3!=p.o){d=p.u;e={videoId:b,totalSize:0,downloadedSize:0,status:rt(b),details:null};if(!d.length)return p["return"](e);f=g.lq(d);k=g.q(f);for(l=k.next();!l.done;l=k.next())m=l.value,e.totalSize+=parseInt(m.mket,10)*parseInt(m.avbr,10),e.downloadedSize+=m.hasOwnProperty("dlt")?(parseInt(m.dlt,10)||0)*parseInt(m.avbr,10):parseInt(m.mket,10)*parseInt(m.avbr,10);n=e; +return g.ta(p,c,3)}n.details=p.u||null;return p["return"](e)})}; +zt=function(a){var b,c,d;return g.Ba(function(e){if(1==e.o)return ut(a,0),g.ta(e,mt(),2);b=e.u;c=b.transaction(["index","media"],"readwrite");d=IDBKeyRange.bound(a+"|",a+"~");return e["return"](new Promise(function(f,k){c.objectStore("index")["delete"](d);c.objectStore("media")["delete"](d);c.oncomplete=function(){return void f()}; +c.onabort=k}))})}; +Cfa=function(){return g.Ba(function(a){delete window.localStorage["yt-player-lv"];pt=null;return a["return"](ufa())})}; +vt=function(a,b){return""+a+"|"+(b?"v":"a")}; +nt=function(a){return new Promise(function(b,c){a.onsuccess=function(){return void b(a.result)}; +a.onerror=c})}; +Dfa=function(a,b){this.experimentIds=a?a.split(","):[];this.flags=iq(b||"");var c={};(0,g.y)(this.experimentIds,function(d){c[d]=!0}); +this.experiments=c}; +g.P=function(a,b){return"true"==a.flags[b]}; +g.Q=function(a,b){return parseFloat(a.flags[b])||0}; +g.At=function(a,b){var c=a.flags[b];return c?c.toString():""}; +Bt=function(){var a=g.w("yt.player.utils.videoElement_");a||(a=g.oe("VIDEO"),g.Ga("yt.player.utils.videoElement_",a,void 0));return a}; +Ct=function(a){var b=Bt();return!!(b&&b.canPlayType&&b.canPlayType(a))}; +Et=function(a){if(/opus/.test(a)&&(g.Dt&&!Sn("38")||g.Dt&&dl("crkey")))return!1;if(window.MediaSource&&window.MediaSource.isTypeSupported)return window.MediaSource.isTypeSupported(a);if(/webm/.test(a)&&!jl())return!1;'audio/mp4; codecs="mp4a.40.2"'==a&&(a='video/mp4; codecs="avc1.4d401f"');return!!Ct(a)}; +Efa=function(a){try{var b=Et('video/mp4; codecs="avc1.42001E"')||Et('video/webm; codecs="vp9"');return(Et('audio/mp4; codecs="mp4a.40.2"')||Et('audio/webm; codecs="opus"'))&&(b||!a)||Ct('video/mp4; codecs="avc1.42001E, mp4a.40.2"')?null:"fmt.noneavailable"}catch(c){return"html5.missingapi"}}; +Ft=function(){var a=Bt();return!!a.webkitSupportsPresentationMode&&g.Ma(a.webkitSetPresentationMode)}; +Gt=function(){return"pictureInPictureEnabled"in window.document&&!!window.document.pictureInPictureEnabled}; +Ht=function(){var a=Bt();try{var b=a.muted;a.muted=!b;return a.muted!=b}catch(c){}return!1}; +It=function(a,b){this.o=a;this.u=b;this.w=0;Object.defineProperty(this,"timestampOffset",{get:this.kP,set:this.oP});Object.defineProperty(this,"buffered",{get:this.iP})}; +Ffa=function(){this.length=0}; +Jt=function(a){this.activeSourceBuffers=this.sourceBuffers=[];this.o=a;this.u=NaN;this.w=0;Object.defineProperty(this,"duration",{get:this.jP,set:this.nP});Object.defineProperty(this,"readyState",{get:this.lP});this.o.addEventListener("webkitsourceclose",(0,g.x)(this.mP,this),!0)}; +Kt=function(){this.length=1}; +Lt=function(){this.buffered=new Kt}; +Mt=function(a,b){return{start:function(c){return a[c]}, +end:function(c){return b[c]}, +length:a.length}}; +Nt=function(a,b,c){b=void 0===b?",":b;c=void 0===c?0:c;var d=[];if(a)for(c=c&&c=b)return c}catch(d){}return-1}; +Pt=function(a,b){return 0<=Ot(a,b)}; +Qt=function(a,b){if(!a)return NaN;var c=Ot(a,b);return 0<=c?a.end(c):NaN}; +Rt=function(a){return a&&a.length?a.end(a.length-1):NaN}; +St=function(a,b){var c=Qt(a,b);return 0<=c?c-b:0}; +Tt=function(a,b,c){for(var d=[],e=[],f=0;fc||(d.push(Math.max(b,a.start(f))-b),e.push(Math.min(c,a.end(f))-b));return Mt(d,e)}; +Ut=function(a,b,c){g.O.call(this);var d=this;this.o=a;this.I=b;this.G=c;this.P=this.w=this.B=null;this.C=0;this.A=function(e){return d.S(e.type,d)}; +this.supports(3)&&(this.o.addEventListener("updateend",this.A),this.o.addEventListener("error",this.A));this.M=0;this.F=Mt([],[]);this.u=!1}; +Vt=function(a,b,c,d){g.O.call(this);var e=this;this.o=a;this.I={error:function(){!e.ea()&&e.isActive()&&e.S("error",e)}, +updateend:function(){!e.ea()&&e.isActive()&&e.S("updateend",e)}}; +Jr(this.o,this.I);this.u=b;this.G=c;this.C=0;this.B=Infinity;this.A=0;this.F=this.w=d}; +Wt=function(a,b){this.o=a;this.u=void 0===b?!1:b;this.w=!1}; +Xt=function(a,b){b=void 0===b?!1:b;g.A.call(this);this.B=new g.Gr(this);g.B(this,this.B);this.u=this.o=null;this.w=a;var c=this.w;c=c.NI?c.o.webkitMediaSourceURL:window.URL.createObjectURL(c);this.Sl=new Wt(c,!0);this.C=b;this.A=null;Hr(this.B,this.w,["sourceopen","webkitsourceopen"],this.kN);Hr(this.B,this.w,["sourceclose","webkitsourceclose"],this.jN)}; +Gfa=function(a,b){Yt(a)?g.uf(function(){return b(a)}):a.A=b}; +Zt=function(a,b){try{a.w.duration=b}catch(c){}}; +$t=function(a){return!!a.o||!!a.u}; +Yt=function(a){try{return"open"==a.w.readyState}catch(b){return!1}}; +au=function(a){try{return"closed"==a.w.readyState}catch(b){return!0}}; +bu=function(){return!(!window.MediaSource||!window.MediaSource.isTypeSupported)}; +cu=function(a){return a.o?!!a.o.supports(0):bu()}; +du=function(a,b,c,d){if(!a.o||!a.u)return null;var e=a.o.isView()?a.o.o:a.o,f=a.u.isView()?a.u.o:a.u,k=new Xt(a.w,!0);k.Sl=a.Sl;e=new Vt(e,b,c,d);b=new Vt(f,b,c,d);k.o=e;k.u=b;g.B(k,e);g.B(k,b);Yt(a)||a.o.Mp(a.o.Bb());return k}; +eu=function(a,b,c){this.o=a;this.M=b;this.R=void 0===c?!1:c;this.C=!!g.w("cast.receiver.platform.canDisplayType");b=g.w("cast.receiver.platform.getValue");this.u=!this.C&&b&&b("max-video-resolution-vpx")||null;this.B={};this.G=!1;this.I=new Set;this.F=!0;this.w=!g.P(a,"html5_disable_protected_hdr");this.A=!1;this.P=g.P(a,"html5_disable_vp9_encrypted")}; +Hfa=function(a,b){var c=ct(b);if("0"===c)return!0;var d=b.mimeType;if(g.P(a.o,"html5_disable_codec_on_platform_errors")){if(a.I.has(b.u))return!1}else if("1"==b.u&&a.G)return!1;var e;if(e=b.video&&($s(b.video)||"bt2020"==b.video.primaries))e=!(fu(a,gu)||(g.P(a.o,"html5_hdr_matchmedia_killswitch")?24=c)}; +Iu=function(a,b,c){"string"===typeof a&&(a={mediaContentUrl:a,startSeconds:b,suggestedQuality:c});a:{if((b=a.mediaContentUrl)&&(b=/\/([ve]|embed)\/([^#?]+)/.exec(b))&&b[2]){b=b[2];break a}b=null}a.videoId=b;return Hu(a)}; +Hu=function(a,b,c){if("string"===typeof a)return{videoId:a,startSeconds:b,suggestedQuality:c};b=["endSeconds","startSeconds","mediaContentUrl","suggestedQuality","videoId"];c={};for(var d=0;da.jb())a.segments=[];else{var c=g.Wa(a.segments,function(d){return d.La>=b},a); +0a.byteLength-b)return!1;var c=a.getUint32(b);if(8>c||a.byteLength-bc;c++){var d=a.getInt8(b+c);if(97>d||122=a.u.byteLength}; +Jv=function(a,b,c){var d=new Cv(c);if(!Ev(d,a))return!1;d=Fv(d);if(!Gv(d,b))return!1;for(a=0;b;)b>>>=8,a++;b=d.w+d.o;var e=Hv(d,!0);d=a+(d.w+d.o-b)+e;d=9d;d++)c=256*c+Pv(a);return c}d=128;for(var e=0;6>e&&d>c;e++)c=256*c+Pv(a),d*=128;return b?c-d:c}; +Mv=function(a){var b=Hv(a,!0);a.o+=b}; +Kv=function(a){var b=a.o;a.o=0;var c=!1;try{Gv(a,440786851)&&(a.o=0,Gv(a,408125543)&&(c=!0))}catch(d){if(d instanceof RangeError)a.o=0,c=!1,g.Go(d);else throw d;}a.o=b;return c}; +Rfa=function(a){if(!Gv(a,440786851,!0))return null;var b=a.o;Hv(a,!1);var c=Hv(a,!0)+a.o-b;a.o=b+c;if(!Gv(a,408125543,!1))return null;Hv(a,!0);if(!Gv(a,357149030,!0))return null;var d=a.o;Hv(a,!1);var e=Hv(a,!0)+a.o-d;a.o=d+e;if(!Gv(a,374648427,!0))return null;var f=a.o;Hv(a,!1);var k=Hv(a,!0)+a.o-f,l=new Uint8Array(c+12+e+k),m=new DataView(l.buffer);l.set(new Uint8Array(a.u.buffer,a.u.byteOffset+b,c));m.setUint32(c,408125543);m.setUint32(c+4,33554431);m.setUint32(c+8,4294967295);l.set(new Uint8Array(a.u.buffer, +a.u.byteOffset+d,e),c+12);l.set(new Uint8Array(a.u.buffer,a.u.byteOffset+f,k),c+12+e);return l}; +Rv=function(a){var b=a.o,c={Ou:1E6,Pu:1E9,duration:0,yu:0,Bm:0};if(!Gv(a,408125543))return a.o=b,null;c.yu=Hv(a,!0);c.Bm=a.w+a.o;if(Gv(a,357149030))for(var d=Fv(a);!Dv(d);){var e=Hv(d,!1);2807729==e?c.Ou=Lv(d):2807730==e?c.Pu=Lv(d):17545==e?c.duration=Nv(d):Mv(d)}else return a.o=b,null;a.o=b;return c}; +Tv=function(a,b,c){var d=a.o,e=[];if(!Gv(a,475249515))return a.o=d,null;for(var f=Fv(a);Gv(f,187);){var k=Fv(f);if(Gv(k,179)){var l=Lv(k);if(Gv(k,183)){k=Fv(k);for(var m=b;Gv(k,241);)m=Lv(k)+b;e.push({ki:m,Gn:l})}}}if(0c&&(c=a.totalLength-b);a.focus(b);if(!ow(a,b,c)){var d=a.u,e=a.w;a.focus(b+c-1);e=new Uint8Array(a.w+a.o[a.u].length-e);for(var f=0,k=d;k<=a.u;k++)e.set(a.o[k],f),f+=a.o[k].length;a.o.splice(d,a.u-d+1,e);nw(a);a.focus(b)}d=a.o[a.u];return new DataView(d.buffer,d.byteOffset+b-a.w,c)}; +rw=function(a,b,c){a=qw(a,void 0===b?0:b,void 0===c?-1:c);return new Uint8Array(a.buffer,a.byteOffset,a.byteLength)}; +tw=function(a){a=rw(a,0,-1);var b=new Uint8Array(a.length);b.set(a);return b}; +uw=function(a,b){a.focus(b);return a.o[a.u][b-a.w]}; +vw=function(a,b){a.focus(b);return ow(a,b,4)?pw(a).getUint32(b-a.w):256*(256*(256*uw(a,b)+uw(a,b+1))+uw(a,b+2))+uw(a,b+3)}; +ww=function(a,b,c){this.info=a;this.o=b instanceof kw?b:new kw([b]);this.o.getLength();this.w=c;this.u=null;this.A=-1;this.B=0}; +xw=function(a){return qw(a.o)}; +yw=function(a,b){if(1!=a.info.o.info.containerType||0!=a.info.w||!a.info.A)return!0;for(var c=xw(a),d=0,e=0;d+4k)c=!1;else{for(f=k-1;0<=f;f--)c.u.setUint8(c.o+f,d&255),d>>>=8;c.o=e;c=!0}else c=!1;return c}; +Dw=function(a){g.gt(a.info.o.info)||a.info.o.info.Bc();if(a.u&&6==a.info.type)return a.u.Ee;if(g.gt(a.info.o.info)){var b=xw(a);var c=0;b=zv(b,1936286840);b=g.q(b);for(var d=b.next();!d.done;d=b.next())d=wv(d.value),c+=d.Sp[0]/d.Wp;c=c||NaN;if(!(0<=c))a:{c=xw(a);b=a.info.o.o;d=0;for(var e,f=0;rv(c,d);){var k=tv(c,d);if(1836476516==k.type)e=ov(k);else if(1836019558==k.type){!e&&b&&(e=pv(b));if(!e){c=NaN;break a}var l=qv(k.data,k.dataOffset,1953653094),m=e,n=qv(l.data,l.dataOffset,1952868452);l=qv(l.data, +l.dataOffset,1953658222);var p=bv(n);bv(n);p&2&&bv(n);n=p&8?bv(n):0;var t=bv(l),u=t&1;p=t&4;var z=t&256,C=t&512,D=t&1024;t&=2048;var E=cv(l);u&&bv(l);p&&bv(l);for(var F=u=0;F=b.Gv||1<=d.o)if(a=hx(a),c=Jw(c,Zw(a)),c.u+c.o<=d.u+d.o)return!0;return!1}; +fga=function(a,b){var c=b?hx(a):a.o;return new fx(c)}; +hx=function(a){a.w||(a.w=bx(a.A));return a.w}; +jx=function(a){return 1=l)if(l=e.shift(),k=(k=m.exec(l))?+k[1]/1E3:0)l=(l=n.exec(l))?+l[1]:0,l+=1; +else return;c.push(new Wu(p,f,k,NaN,"sq/"+(p+1)));f+=k;l--}a.index.append(c)}}; +g.Gx=function(){this.o=0;this.u=new Float64Array(128);this.w=new Float64Array(128);this.B=1;this.A=!1}; +Hx=function(a){if(a.u.length=c+d)break}return new lx(e)}; +qga=function(a,b){return g.Kx(function(c,d){return g.ir(c,d,4,1E3)},a,b)}; +g.Lx=function(a){var b;a.responseType&&"text"!==a.responseType?"arraybuffer"===a.responseType&&(b=Bv(new Uint8Array(a.response))):b=a.responseText;return!b||2048=a.F}; +ay=function(a){var b=a.F;isFinite(b)&&($x(a)?a.refresh():(b=Math.max(0,a.P+b-(0,g.N)()),a.A||(a.A=new g.I(a.refresh,b,a),g.B(a,a.A)),a.A.start(b)))}; +Bga=function(a){a=a.o;for(var b in a){var c=a[b].index;if(c.Hb())return c.jb()+1}return 0}; +by=function(a){if(!isNaN(a.I))return a.I;var b=a.o,c;for(c in b){var d=b[c].index;if(d.Hb()){b=0;for(c=d.Qe();c<=d.jb();c++)b+=d.getDuration(c);b/=d.Cj();b=.5*Math.round(b/.5);d.Cj()>a.ha&&(a.I=b);return b}if(a.isLive&&(d=b[c],d.Ee))return d.Ee}return NaN}; +cy=function(a,b){for(var c in a.o){var d=a.o[c].index;if(d.Hb()){var e=d.Re(b),f=d.qt(e);if(f)return f+b-d.gd(e)}}return NaN}; +Cga=function(a,b){var c=Lb(a.o,function(e){return e.index.Hb()}); +if(!c)return NaN;c=c.index;var d=c.Re(b);return c.gd(d)==b?b:d1E3*a)return"auto"}catch(c){}return g.Es("yt-player-quality")||"auto"}; +hy=function(a,b){var c="";49parseInt(c.get("dhmu",d.toString()),10));this.gn=d;this.wa="3"==this.controlsType||this.o||S(!1,a.use_media_volume);this.R=Ht();this.Nn=g.Ky;this.qe=S(!1,a.opt_out_deprecation);var f;b?void 0!=b.hideInfo&&(f=!b.hideInfo):f=a.showinfo;this.Qg=g.Ly(this)&&!this.qe||S(!My(this)&&!Ny(this)&&!this.B,f);this.Vf=b?!!b.mobileIphoneSupportsInlinePlayback:S(!1,a.playsinline);f=this.o&&Oy&&0=Py;d=b?b.useNativeControls:a.use_native_controls;c=this.o;d=Qy(this)||!f&&S(c,d)?"3":"1";this.controlsType= +"0"!=(b?b.controlsType:a.controls)?d:"0";this.Wa=this.o;this.color=By("red",a.color,Pga);this.nn="3"==this.controlsType||S(!1,a.modestbranding)&&"red"==this.color;this.ma=!this.u;this.Rg=(d=!this.ma&&!Ny(this)&&!this.P&&!this.B&&!My(this))&&!this.nn&&"1"==this.controlsType;this.Ca=g.Ry(this)&&d&&"0"==this.controlsType&&!this.Rg;this.zo=this.Hn=f;this.Yh=Sy&&!g.Kd(601)?!1:!0;this.fn=this.u||!1;this.Qa=Ny(this)?"":(this.loaderUrl||a.post_message_origin||"").substring(0,128);this.widgetReferrer=Dy("", +a.widget_referrer);this.ac=(!this.w||S(!0,a.enablecastapi))&&"1"==this.controlsType&&!this.o&&(Ny(this)||g.Ry(this)||g.Ty(this))&&!g.Uy(this)&&!Vy(this);this.po=Gt()||Ft();f=b?!!b.supportsAutoplayOverride:S(!1,a.autoplayoverride);this.Tc=!this.o&&!dl("nintendo wiiu")&&!dl("nintendo 3ds")||f;f=b?!!b.enableMutedAutoplay:S(!1,a.mutedautoplay);d=this.fa("embeds_enable_muted_autoplay")&&g.Ly(this);this.Uc=f&&d&&this.R&&!Qy(this);f=(Ny(this)||My(this))&&"blazer"==this.playerStyle;this.pc=b?!!b.disableFullscreen: +!S(!0,a.fs);this.da=!this.pc&&(f||Cr());this.bn=this.fa("uniplayer_block_pip")&&el()&&Sn(58)&&!(g.Iy&&dl("version/"));f=g.Ly(this)&&!this.qe;var k;b?void 0!=b.disableRelatedVideos&&(k=!b.disableRelatedVideos):k=a.rel;this.Aa=f||S(!this.B,k);this.Yf=S(!1,a.co_rel);this.C=g.Iy&&dl("version/")&&0=Py?"_top":"_blank";this.Ta=g.Ty(this);this.Kc="blazer"==this.playerStyle;switch(this.playerStyle){case "blogger":k="bl";break;case "gmail":k="gm";break;case "books":k="gb";break;case "docs":k="gd"; +break;case "duo":k="gu";break;case "google-live":k="gl";break;case "google-one":k="go";break;case "play":k="gp";break;case "chat":k="hc";break;case "hangouts-meet":k="hm";break;case "photos-edu":case "picasaweb":k="pw";break;default:k="yt"}this.V=k;this.Nc=Dy("",a.authuser);var l;b?void 0!=b.disableWatchLater&&(l=!b.disableWatchLater):l=a.showwatchlater;this.Th=(this.u&&!this.aa||!!this.Nc)&&S(!this.P,this.w?l:void 0);this.Xb=b?!!b.disableKeyboardControls:S(!1,a.disablekb);this.loop=S(!1,a.loop); +this.pageId=Dy("",a.pageid);this.Tn=S(!0,a.canplaylive);this.wg=S(!1,a.livemonitor);this.disableSharing=S(this.B,b?b.disableSharing:a.ss);(l=a.video_container_override)?(k=l.split("x"),2!==k.length?l=null:(l=Number(k[0]),k=Number(k[1]),l=isNaN(l)||isNaN(k)||0>=l*k?null:new g.Sd(l,k))):l=null;this.Pk=l;this.mute=b?!!b.startMuted:S(!1,a.mute);this.Mc=!this.mute&&S("0"!=this.controlsType,a.store_user_volume);l=b?b.annotationsLoadPolicy:a.iv_load_policy;this.annotationsLoadPolicy="3"==this.controlsType? +3:By(void 0,l,Wy);this.captionsLanguagePreference=b?b.captionsLanguagePreference||"":Dy("",a.cc_lang_pref);l=By(2,a.cc_load_policy,Wy);"3"==this.controlsType&&2==l&&(l=3);this.Xg=l;this.Ic=b?b.hl||"en_US":Dy("en_US",a.hl);this.region=b?b.contentRegion||"US":Dy("US",a.cr);this.hostLanguage=b?b.hostLanguage||"en":Dy("en",a.host_language);this.an=!this.aa&&Math.random()Math.random();this.Jc=a.onesie_hot_config?new Hga(a.onesie_hot_config): +void 0;this.isTectonic=!!a.isTectonic}; +dz=function(a,b){return!a.B&&el()&&Sn(55)&&"3"==a.controlsType&&!b}; +g.ez=function(a){a=Xy(a.G);return"www.youtube-nocookie.com"==a?"www.youtube.com":a}; +g.fz=function(a){return g.Uy(a)?"music.youtube.com":g.ez(a)}; +gz=function(a,b,c){return a.protocol+"://i1.ytimg.com/vi/"+b+"/"+(c||"hqdefault.jpg")}; +hz=function(a){return Ny(a)&&!g.az(a)}; +Qy=function(a){return Sy&&!a.Vf||dl("nintendo wiiu")||dl("nintendo 3ds")?!0:!1}; +Vy=function(a){return"area120-boutique"==a.playerStyle}; +g.Uy=function(a){return"music-embed"==a.playerStyle}; +g.$y=function(a){return/^TVHTML5/.test(a.deviceParams.c)?!0:"TV"==a.deviceParams.cplatform}; +Zy=function(a){return"CHROMECAST ULTRA/STEAK"==a.deviceParams.cmodel||"CHROMECAST/STEAK"==a.deviceParams.cmodel}; +g.iz=function(){return 1=navigator.hardwareConcurrency&&(b=c);(c=g.Q(a.experiments,"html5_av1_thresh_hcc"))&&4m},p=f["1"].filter(function(t){return n(t.ya().fc)}); +p=f[k].filter(function(t){return!n(t.ya().fc)}).concat(p); +p.length&&(f["19"]=p)}Nx(c)&&(f=Xga(b,f,d));b=Sga(a);d=Tga(a);b=g.Xa(b,e);d=g.Xa(d,e);if(!b||!d)return kr();a.Z&&"1"==b&&f[k]&&(p=Gz(f["1"]),Gz(f[k])>p&&(b=k));"9"==b&&f.h&&(k=Gz(f["9"]),Gz(f.h)>1.5*k&&(b="h"),c.Ef&&!Jfa(a.G)&&(b="h"));a=f[b];c=f[d];if(!a.length)return kr();Hz(a,c);return lr(new Ez(a,c,Yga(f,b,d)))}; +Yga=function(a,b,c){var d=a.h;"f"==b&&(d=a[b]);var e=a.a;b=a[b]!=d;a=a[c]!=e;return d&&e&&(b||a)?(Hz(d,e),new Ez(d,e)):null}; +Hz=function(a,b){g.rb(a,function(c,d){return d.ya().height*d.ya().width-c.ya().height*c.ya().width||d.o-c.o}); +g.rb(b,function(c,d){return d.o-c.o})}; +Wga=function(a,b){var c=(0,g.ui)(b,function(d,e){return 32c&&(b=a.F&&(a.M||fu(a,ku))?(0,g.ue)(b,function(d){return 32E.width*E.height*E.fps))var E=C}}else n.push(C)}}m=p.reduce(function(F,G){return G.og.uo()&&F},!0)?l:null; +d=Math.max(d,g.Q(a.experiments,"html5_hls_initial_bitrate"));E=E||{};p.push(Oz(n,c,e,"93",void 0===E.width?0:E.width,void 0===E.height?0:E.height,void 0===E.fps?0:E.fps,f,"auto",d,m));return yu(a.A,p,dz(a,b))}; +Oz=function(a,b,c,d,e,f,k,l,m,n,p){d=new dt(d,"application/x-mpegURL",new Vs,new Ys(e,f,k,null,void 0,m),void 0,p);a=new dha(a,b,c);a.A=n?n:1369843;return new Nz(d,a,l)}; +hha=function(a){a=g.q(a);for(var b=a.next();!b.done;b=a.next())if(b=b.value,b.url&&(b=b.url.split("expire/"),!(1>=b.length)))return+b[1].split("/")[0];return NaN}; +Pz=function(a,b){this.og=a;this.o=b}; +Qz=function(a,b){this.og=a;this.o=b}; +jha=function(a){var b=[];(0,g.y)(a,function(c){if(c.url){var d=kt(c.type,"medium","0");b.push(new Qz(d,c.url))}}); +return b}; +kha=function(a){return navigator.mediaCapabilities?Rz(a.videoInfos).then(function(){return a},function(){return a}):lr(a)}; +Rz=function(a){var b=navigator.mediaCapabilities;if(!b)return lr(a);var c=a.map(function(d){return b&&b.decodingInfo({type:"media-source",video:d.video?{contentType:d.mimeType,width:d.video.width||640,height:d.video.height||360,bitrate:8*d.o||1E6,framerate:d.video.fps||30}:null})}); +return fba(c).then(function(d){for(var e=0;e=e){e=Wz(k.url);g.Sw(e)&&(b[d]=e);break}}(a=a.pop())&&1280<=a.width&&(a=Wz(a.url),g.Sw(a)&&(b["maxresdefault.jpg"]=a));return b}; +Wz=function(a){return a.startsWith("//")?"https:"+a:a}; +g.T=function(a){if(a.simpleText)return a.simpleText;if(a.runs){var b=[];a=g.q(a.runs);for(var c=a.next();!c.done;c=a.next())c=c.value,c.text&&b.push(c.text);return b.join("")}return""}; +g.Yz=function(a){if(a.simpleText)return a=document.createTextNode(a.simpleText),a;var b=[];if(a.runs)for(var c=0;c1E5*Math.random()&&(c=new Sq("CSI data exceeded logging limit with key",b),0===b.indexOf("info")?g.Uq(c):g.Tq(c)),!0):!1}; +yA=function(a){return!!g.L("FORCE_CSI_ON_GEL",!1)||g.xo("csi_on_gel")||!!mA(a).useGel}; +zA=function(a){a=mA(a);if(!("gel"in a))a.gel={gelTicks:{},gelInfos:{}};else if(a.gel){var b=a.gel;b.gelInfos||(b.gelInfos={});b.gelTicks||(b.gelTicks={})}return a.gel}; +AA=function(a){lA(a);Nha();kA(!1,a);a||(g.L("TIMING_ACTION")&&to("PREVIOUS_ACTION",g.L("TIMING_ACTION")),to("TIMING_ACTION",""))}; +FA=function(a,b,c){var d=(c=c?c:a)||"",e=sA();e[d]&&delete e[d];var f=rA(),k={timerName:d,info:{},tick:{},span:{}};f.push(k);e[d]=k;tA(c||"").info.actionType=a;BA(c);AA(c);mA(c).useGel=!0;to(c+"TIMING_AFT_KEYS",b);to(c+"TIMING_ACTION",a);CA("c",c);yA(c)&&(a={actionType:DA[uo((c||"")+"TIMING_ACTION")]||"LATENCY_ACTION_UNKNOWN",previousAction:DA[uo("PREVIOUS_ACTION")]||"LATENCY_ACTION_UNKNOWN"},b=oA(c),vA().info(a,b));g.Ga("ytglobal.timing"+(c||"")+"ready_",!0,void 0);EA(c)}; +CA=function(a,b){GA("yt_sts",a,b);HA("_start",void 0,b)}; +GA=function(a,b,c){if(null!==b)if(nA(c)[a]=b,yA(c)){var d=b;b=zA(c);if(b.gelInfos)b.gelInfos["info_"+a]=!0;else{var e={};b.gelInfos=(e["info_"+a]=!0,e)}if(a in IA){if(a.match("_rid")){var f=a.split("_rid")[0];a="REQUEST_ID"}b=IA[a];g.$a(Oha,b)&&(d=!!d);a in JA&&"string"===typeof d&&(d=JA[a]+d.toUpperCase());a=d;d=b.split(".");for(var k=e={},l=0;l=b)return a.A.set(b,d),d;a.A.set(b,c-1);return c-1}; +YA=function(a,b,c,d){c=c.split("#");c=[c[1],c[2],0,c[3],c[4],-1,c[0],""].join("#");g.VA.call(this,a,b,c,0);this.u=null;this.C=d?3:0}; +ZA=function(a,b,c,d){WA.call(this,a,0,void 0,b,!(void 0===d||!d));for(a=0;a=Py&&(n.o=!0);if(f=c)f=d.fa("disable_html5_ambisonic_audio")||!(g.pz(d)||d.fa("html5_enable_spherical")||d.fa("html5_enable_spherical3d"))?!1:qz(d);f&&(n.I=!0);b&&(n.o=!0,n.ba=!0);l&&!g.P(d.experiments,"html5_otf_prefer_vp9")&&(n.o=!0);fu(d.A,ou)&&(g.P(d.experiments, +"html5_enable_aac51")&&(n.B=!0),g.P(d.experiments,"html5_enable_ac3")&&(n.u=!0),g.P(d.experiments,"html5_enable_eac3")&&(n.A=!0));!g.P(d.experiments,"html5_kaios_hd_killswitch")&&Jy&&(n.U=480);if(e||c)n.M=!1;n.R=!1;b=uz(d);0b&&window.SourceBuffer&&SourceBuffer.prototype.changeType&&(n.w=b);2160<=b&&(n.V=!0);my()&&(n.Z=!1);n.G=m;hl()&&a.Da&&a.Da.playerConfig&&a.Da.playerConfig.webPlayerConfig&&a.Da.playerConfig.webPlayerConfig.useCobaltTvosDogfoodFeatures&&(n.u=!0,n.A=!0);a.va&&(m=a.Mb&&a.Pa.fa("html5_enable_audio_51_for_live_dai"), +a=!a.Mb&&a.Pa.fa("html5_enable_audio_51_for_live_non_dai"),n.F=m||a);return n}; +Xha=function(a){kB(a)?a.di=!0:!lB(a,a.adaptiveFormats)&&a.fe&&(a.di=!0)}; +lB=function(a,b){var c;(c=!b)||(c=!(!mB(a)&&a.adaptiveFormats));if(c)return!1;c=nB(b);var d=a.zc;var e=a.lengthSeconds,f=a.va,k=a.ze,l=a.Pa.experiments,m=wga(c);d=f||k?vga(c,k,d,l):3==m?uga(c,d,e,l):tga(c,d,e,l);0b)return!1}return!qB(a)||"ULTRALOW"!=a.latencyClass&&21530001!=rB(a)?window.AbortController?a.fa("html5_streaming_xhr")||a.fa("html5_streaming_xhr_manifestless")&&qB(a)?!0:!1:!1:!0}; +tB=function(a){var b=qB(a),c=sB(a);return(a.hasSubfragmentedFmp4||a.Jj)&&b?c&&sx()?3:2:a.defraggedFromSubfragments&&b?-1:1}; +rB=function(a){return a.isLowLatencyLiveStream&&void 0!=a.ia&&5<=by(a.ia)?21530001:a.liveExperimentalContentId}; +eB=function(a){return hl()&&pB(a)?!1:!tu()||a.Mw?!0:!1}; +Zha=function(a){a.wc=!0;a.di=!1;if(!a.fe&&kB(a))yfa(a.videoId).then(function(d){return lB(a,d)},function(){return lB(a,a.adaptiveFormats)}).then(function(){return uB(a)}); +else{Rw(a.fe)||g.Uq(new Sq("DASH MPD Origin invalid: ",a.fe));var b=a.fe,c=g.Q(a.Pa.experiments,"dash_manifest_version")||4;b=g.yd(b,{mpd_version:c});a.isLowLatencyLiveStream&&"NORMAL"!=a.latencyClass||(b=g.yd(b,{pacing:0}));zga(b,a.Pa.experiments,a.va).then(a.MK,a.LK,a);HA("mrs")}}; +g.vB=function(a){if(!a.Sc)return null;var b=null!=a.Sc.latitudeE7&&null!=a.Sc.longitudeE7?a.Sc.latitudeE7+","+a.Sc.longitudeE7:",";return b+=","+(a.Sc.clientPermissionState||0)+","+(a.Sc.locationRadiusMeters||"")+","+(a.Sc.locationOverrideToken||"")}; +uB=function(a){a.ea()||(a.wc=!1,a.S("dataloaded"))}; +oB=function(a,b){a.ia=b;g.B(a,b);wB(a)&&a.Rc.push("webgl");a.ia.isLive||(a.va=!1);var c=b.sourceUrl.split("/");-1!=c.indexOf("manifest_duration")&&(a.Ql=parseInt(c[c.indexOf("manifest_duration")+1],10))}; +xB=function(a){return a.zc?!0:a.fa("web_player_content_protection_manifest_killswitch")?!1:!!a.ia&&Nx(a.ia)}; +$ha=function(a,b){var c=b||eB(a);if(a.ia&&!c){if(hB(a)){c=a.ia;var d=a.va;if(!c.o["0"]){var e=new dt("0","fakesb",void 0,new Ys(0,0,0,void 0,void 0,"auto"),null,null,1);c.o["0"]=d?new rx(new Xw("http://www.youtube.com/videoplayback"),e,"fake"):new Ix(new Xw("http://www.youtube.com/videoplayback"),e,new Xv(0,0),new Xv(0,0),0,NaN)}}iB(a,"html5_enable_cobalt_experimental_vp9_decoder")&&(a.Pa.A.A=!0);return Zga(jB(a),a.Pa.A,a.ia,a.uc).then(a.Hu,void 0,a)}return kr()}; +g.yB=function(a){return mB(a)&&a.Oe?(a={},a.fairplay="https://youtube.com/api/drm/fps?ek=uninitialized",a):a.Ba&&a.Ba.zc||null}; +zB=function(a){var b=a.Da&&a.Da.paidContentOverlay&&a.Da.paidContentOverlay.paidContentOverlayRenderer||null;return b&&b.text?g.T(b.text):a.PN}; +AB=function(a){var b=a.Da&&a.Da.paidContentOverlay&&a.Da.paidContentOverlay.paidContentOverlayRenderer||null;return b&&b.durationMs?g.hd(b.durationMs):a.mB}; +BB=function(a){var b="";if(a.Os)return a.Os;a.va&&(b=a.allowLiveDvr?"dvr":"live");return b}; +g.CB=function(a,b){return"string"!==typeof a.keywords[b]?null:a.keywords[b]}; +DB=function(a){return!!(a.fe||a.adaptiveFormats||a.Gk||a.Ak||a.hlsvp)}; +EB=function(a){var b=g.$a(a.Rc,"ypc");a.ypcPreview&&(b=!1);return a.isValid()&&!a.wc&&(DB(a)||g.$a(a.Rc,"fresca")||g.$a(a.Rc,"heartbeat")||b)}; +nB=function(a,b){var c=g.lq(a),d={};if(b)for(var e=g.q(b.split(",")),f=e.next();!f.done;f=e.next())(f=f.value.match(/^([0-9]+)\/([0-9]+)x([0-9]+)(\/|$)/))&&(d[f[1]]={width:f[2],height:f[3]});e=g.q(c);for(f=e.next();!f.done;f=e.next()){f=f.value;var k=d[f.itag];k&&(f.width=k.width,f.height=k.height)}return c}; +Uha=function(a){if(FB(a)&&(a.errorDetail="0",a.kl)){var b=a.kl.embeddedPlayerErrorMessageRenderer;b&&(a.Qw=b)}}; +gB=function(a,b){a.showShareButton=!!b;if(b){var c=b.buttonRenderer&&b.buttonRenderer.navigationEndpoint;c&&(a.Jm=!!c.copyTextEndpoint)}}; +Tha=function(a,b,c){c=c.thumbnailPreviewRenderer;var d=c.controlBgHtml;null!=d?(a.hg=d,a.lc=!0):(a.hg="",a.lc=!1);if(d=c.defaultThumbnail)a.gf=Xz(d);a.fa("web_player_embedded_details_parsing_killswitch")||(d=c.videoDetails&&c.videoDetails.embeddedPlayerOverlayVideoDetailsRenderer)&&fB(a,b,d);if(b=c.videoDetails&&c.videoDetails.musicEmbeddedPlayerOverlayVideoDetailsRenderer)a.Er=b.title,a.Dr=b.byline,b.musicVideoType&&(a.musicVideoType=b.musicVideoType);a.Th=!!c.addToWatchLaterButton;gB(a,c.shareButton); +c.playButton&&c.playButton.buttonRenderer&&c.playButton.buttonRenderer.navigationEndpoint&&(b=c.playButton.buttonRenderer.navigationEndpoint,b.watchEndpoint&&(b=b.watchEndpoint,b.watchEndpointSupportedOnesieConfig&&b.watchEndpointSupportedOnesieConfig.html5PlaybackOnesieConfig&&(a.tp=new Rha(b.watchEndpointSupportedOnesieConfig.html5PlaybackOnesieConfig))));a.fa("web_player_include_innertube_commands")&&c.webPlayerActionsPorting&&bA(a,c.webPlayerActionsPorting)}; +fB=function(a,b,c){var d=c.channelThumbnail;d&&(d=d.thumbnails)&&(d=d[0])&&(b.profile_picture=d.url);if(d=c.channelThumbnailEndpoint&&c.channelThumbnailEndpoint.channelThumbnailEndpoint)if(d=d.urlEndpoint&&d.urlEndpoint.urlEndpoint)b.channel_path=d.url;if(d=c.collapsedRenderer)if(d=d.embeddedPlayerOverlayVideoDetailsCollapsedRenderer){var e=d.title;e&&(b.title=g.T(e));if(d=d.subtitle)b.subtitle=g.T(d)}if(c=c.expandedRenderer)if(c=c.embeddedPlayerOverlayVideoDetailsExpandedRenderer){if(d=c.title)b.expanded_title= +g.T(d);if(d=c.subtitle)b.expanded_subtitle=g.T(d);if(c=c.subscribeButton)if(c=c.subscribeButtonRenderer)b.ucid=c.channelId,b.subscribed=c.subscribed,a.zk=!!c.notificationPreferenceToggleButton}}; +g.GB=function(a){return a.va&&!a.allowLiveDvr}; +HB=function(a){return a.va&&a.allowLiveDvr}; +wB=function(a){return a.zg()||a.yg()||a.Oj()||a.tg()}; +aia=function(a){a.xa=a.xa.u}; +g.IB=function(a){if(a.Lu)return null;var b=a.ry;b||(b=a.Da&&a.Da.endscreen&&a.Da.endscreen.endscreenUrlRenderer&&a.Da.endscreen.endscreenUrlRenderer.url);return b||null}; +g.JB=function(a){return a.Lu?null:a.Da&&a.Da.endscreen&&a.Da.endscreen.endscreenRenderer||null}; +g.KB=function(a){return a.Da&&a.Da.cards&&a.Da.cards.cardCollectionRenderer||null}; +g.LB=function(a){if(!a.Da||!a.Da.annotations)return null;a=g.q(a.Da.annotations);for(var b=a.next();!b.done;b=a.next())if(b=b.value,b.playerAnnotationsExpandedRenderer&&b.playerAnnotationsExpandedRenderer.featuredChannel)return b.playerAnnotationsExpandedRenderer;return null}; +MB=function(a){return a.adFormat&&"1_5"!=a.adFormat?"adunit":a.Pa.ba}; +NB=function(a){return a.Lh||"detailpage"==MB(a)||a.mutedAutoplay}; +OB=function(a){if(NB(a)){if("detailpage"==MB(a))return a.Pj||0(b?parseInt(b[1],10):NaN);if(c=!a.nj)c=a.Pa,c="TVHTML5_CAST"==c.deviceParams.c||"TVHTML5"==c.deviceParams.c&&c.deviceParams.cver.startsWith("6.20130725");c&&"MUSIC"==a.Pa.deviceParams.ctheme&&!b&&(b="MUSIC_VIDEO_TYPE_PRIVATELY_OWNED_TRACK"=== +a.musicVideoType,c=a.fa("cast_prefer_audio_only_for_atv_and_uploads")&&"MUSIC_VIDEO_TYPE_ATV"===a.musicVideoType,b||c)&&(a.nj=!0);return!a.Pa.deviceHasDisplay||a.nj&&a.Pa.w}; +QB=function(a){return!!(a.fa("mweb_hoffline")&&a.adaptiveFormats&&a.xj&&a.Pa.w)}; +RB=function(a,b){if(a.xj!=b&&(a.xj=b)&&a.ia){var c=a.ia,d;for(d in c.o){var e=c.o[d];e.B=!1;e.o=null}}}; +kB=function(a){var b;if(b=a.fa("mweb_hoffline")&&a.adaptiveFormats)b=a.videoId,b=!!b&&1===rt(b);return!(!b||a.xj)}; +FB=function(a){return(a=a.kl)&&a.showError?a.showError:!1}; +SB=function(a){return a.fa("disable_rqs")?!1:iB(a,"html5_high_res_logging")}; +iB=function(a,b){return a.fa(b)?!0:(a.Ww||"").includes(b+"=true")}; +bB=function(a,b){var c=b.video_masthead_ad_quartile_urls;c&&(a.yp=c.quartile_0_url,a.lu=c.quartile_25_url,a.nu=c.quartile_50_url,a.pu=c.quartile_75_url,a.ju=c.quartile_100_url,a.zp=c.quartile_0_urls,a.mu=c.quartile_25_urls,a.ou=c.quartile_50_urls,a.qu=c.quartile_75_urls,a.ku=c.quartile_100_urls)}; +eA=function(a){return a?tu()?!0:TB&&5>UB?!1:!0:!1}; +dA=function(a){var b={};(0,g.y)(a,function(c){var d=c.split("=");2==d.length?b[d[0]]=d[1]:b[c]=!0}); +return b}; +aA=function(a){if(a){if(Uw(a))return a;a=Vw(a);if(Uw(a,!0))return a}return""}; +WB=function(a,b){g.A.call(this);var c=this;this.app=a;this.o=!0;this.A=null;this.C={};this.G={};this.w={};this.I=[];this.F={};this.B={};this.u=null;this.M=new Set;this.playerType=b;VB(this,"cueVideoById",this.cueVideoById);VB(this,"loadVideoById",this.loadVideoById);VB(this,"cueVideoByUrl",this.cueVideoByUrl);VB(this,"loadVideoByUrl",this.loadVideoByUrl);VB(this,"playVideo",this.playVideo);VB(this,"pauseVideo",this.pauseVideo);VB(this,"stopVideo",this.stopVideo);VB(this,"clearVideo",this.clearVideo); +VB(this,"getVideoBytesLoaded",this.getVideoBytesLoaded);VB(this,"getVideoBytesTotal",this.getVideoBytesTotal);VB(this,"getVideoLoadedFraction",this.getVideoLoadedFraction);VB(this,"getVideoStartBytes",this.getVideoStartBytes);VB(this,"cuePlaylist",this.cuePlaylist);VB(this,"loadPlaylist",this.loadPlaylist);VB(this,"nextVideo",this.nextVideo);VB(this,"previousVideo",this.previousVideo);VB(this,"playVideoAt",this.playVideoAt);VB(this,"setShuffle",this.setShuffle);VB(this,"setLoop",this.setLoop);VB(this, +"getPlaylist",this.getPlaylist);VB(this,"getPlaylistIndex",this.getPlaylistIndex);VB(this,"getPlaylistId",this.getPlaylistId);VB(this,"loadModule",this.loadModule);VB(this,"unloadModule",this.unloadModule);VB(this,"setOption",this.setOption);VB(this,"getOption",this.getOption);VB(this,"getOptions",this.getOptions);VB(this,"mute",this.mute);VB(this,"unMute",this.unMute);VB(this,"isMuted",this.isMuted);VB(this,"setVolume",this.setVolume);VB(this,"getVolume",this.getVolume);VB(this,"seekTo",this.seekTo); +VB(this,"getPlayerState",this.getPlayerState);VB(this,"getPlaybackRate",this.getPlaybackRate);VB(this,"setPlaybackRate",this.setPlaybackRate);VB(this,"getAvailablePlaybackRates",this.getAvailablePlaybackRates);VB(this,"getPlaybackQuality",function(){return c.getPlaybackQuality(1)}); +VB(this,"setPlaybackQuality",this.setPlaybackQuality);VB(this,"getAvailableQualityLevels",this.getAvailableQualityLevels);VB(this,"getCurrentTime",this.getCurrentTime);VB(this,"getDuration",this.getDuration);VB(this,"addEventListener",this.addEventListener);VB(this,"removeEventListener",this.removeEventListener);VB(this,"getDebugText",this.getDebugText);VB(this,"getVideoData",function(){return c.getVideoData()}); +VB(this,"addCueRange",this.addCueRange);VB(this,"removeCueRange",this.removeCueRange);VB(this,"setSize",this.setSize);VB(this,"getApiInterface",this.getApiInterface);VB(this,"destroy",this.destroy);VB(this,"showVideoInfo",this.showVideoInfo);VB(this,"hideVideoInfo",this.hideVideoInfo);VB(this,"isVideoInfoVisible",this.isVideoInfoVisible);VB(this,"getSphericalProperties",this.getSphericalProperties);VB(this,"setSphericalProperties",this.setSphericalProperties);this.app.N().B||(VB(this,"getVideoEmbedCode", +this.getVideoEmbedCode),VB(this,"getVideoUrl",this.getVideoUrl));VB(this,"getMediaReferenceTime",this.getMediaReferenceTime);U(this,"getInternalApiInterface",this.getInternalApiInterface);U(this,"cueVideoByPlayerVars",this.cueVideoByPlayerVars);U(this,"loadVideoByPlayerVars",this.loadVideoByPlayerVars);U(this,"preloadVideoByPlayerVars",this.preloadVideoByPlayerVars);U(this,"getAdState",this.getAdState);U(this,"sendAbandonmentPing",this.sendAbandonmentPing);U(this,"setLoopRange",this.setLoopRange); +U(this,"getLoopRange",this.getLoopRange);U(this,"setAutonavState",this.setAutonavState);U(this,"seekToLiveHead",this.seekToLiveHead);U(this,"seekToStreamTime",this.seekToStreamTime);U(this,"getStreamTimeOffset",this.getStreamTimeOffset);U(this,"getVideoData",this.getVideoData);U(this,"setIsExternalPlaylist",this.setIsExternalPlaylist);U(this,"deleteLocalMediaById",this.deleteLocalMediaById);U(this,"deleteAllLocalMedia",this.deleteAllLocalMedia);U(this,"cancelPendingLocalMediaById",this.cancelPendingLocalMediaById); +U(this,"fetchLocalMedia",this.fetchLocalMedia);U(this,"fetchLocalMediaById",this.fetchLocalMediaById);U(this,"getLocalMediaInfoById",this.getLocalMediaInfoById);U(this,"getAllLocalMediaInfo",this.getAllLocalMediaInfo);U(this,"getAppState",this.getAppState);U(this,"addInfoCardXml",this.addInfoCardXml);U(this,"updateLastActiveTime",this.updateLastActiveTime);U(this,"setBlackout",this.setBlackout);U(this,"setAccountLinkState",this.setAccountLinkState);U(this,"setUserEngagement",this.setUserEngagement); +U(this,"updateSubtitlesUserSettings",this.updateSubtitlesUserSettings);U(this,"setFauxFullscreen",this.setFauxFullscreen);U(this,"setUseFastSizingOnWatch",this.setUseFastSizingOnWatch);U(this,"getPresentingPlayerType",this.getPresentingPlayerType);U(this,"canPlayType",this.canPlayType);U(this,"updatePlaylist",this.updatePlaylist);U(this,"updateVideoData",this.updateVideoData);U(this,"updateEnvironmentData",this.updateEnvironmentData);U(this,"sendVideoStatsEngageEvent",this.sendVideoStatsEngageEvent); +U(this,"setCardsVisible",this.setCardsVisible);U(this,"setSafetyMode",this.setSafetyMode);U(this,"isInline",this.isInline);U(this,"setInline",this.setInline);U(this,"isAtLiveHead",this.isAtLiveHead);U(this,"getVideoAspectRatio",this.getVideoAspectRatio);U(this,"getPreferredQuality",this.getPreferredQuality);U(this,"setPlaybackQualityRange",this.setPlaybackQualityRange);U(this,"onAdUxClicked",this.onAdUxClicked);U(this,"setAutonav",this.setAutonav);U(this,"isNotServable",this.isNotServable);U(this, +"channelSubscribed",this.channelSubscribed);U(this,"channelUnsubscribed",this.channelUnsubscribed);U(this,"isPictureInPictureAllowed",this.isPictureInPictureAllowed);U(this,"togglePictureInPicture",this.togglePictureInPicture);U(this,"supportsGaplessAudio",this.supportsGaplessAudio);U(this,"enqueueVideoByPlayerVars",function(d){return c.enqueueVideoByPlayerVars(d)}); +U(this,"clearQueue",this.clearQueue);U(this,"isFastLoad",function(){return!1}); +U(this,"getPlayerResponse",this.getPlayerResponse);U(this,"getStoryboardFrame",this.getStoryboardFrame);U(this,"getStoryboardFrameIndex",this.getStoryboardFrameIndex);U(this,"getStoryboardLevel",this.getStoryboardLevel);U(this,"getNumberOfStoryboardLevels",this.getNumberOfStoryboardLevels);U(this,"getAudioTrack",this.EE);U(this,"setAudioTrack",this.setAudioTrack);U(this,"getAvailableAudioTracks",this.FE);U(this,"getMaxPlaybackQuality",this.getMaxPlaybackQuality);U(this,"getUserPlaybackQualityPreference", +this.getUserPlaybackQualityPreference);U(this,"getSubtitlesUserSettings",this.getSubtitlesUserSettings);U(this,"resetSubtitlesUserSettings",this.resetSubtitlesUserSettings);U(this,"setMinimized",this.setMinimized);U(this,"handleExternalCall",this.handleExternalCall);U(this,"isExternalMethodAvailable",this.isExternalMethodAvailable);U(this,"getStatsForNerds",this.getStatsForNerds);U(this,"setScreenLayer",this.setScreenLayer);U(this,"getCurrentPlaylistSequence",this.getCurrentPlaylistSequence);U(this, +"getPlaylistSequenceForTime",this.getPlaylistSequenceForTime);U(this,"forceFrescaUpdate",this.forceFrescaUpdate);U(this,"shouldSendVisibilityState",this.shouldSendVisibilityState);U(this,"updateFullerscreenEduButtonVisibility",this.updateFullerscreenEduButtonVisibility);U(this,"updateFullerscreenEduButtonSubtleModeState",this.updateFullerscreenEduButtonSubtleModeState);U(this,"setGlobalCrop",this.setGlobalCrop);U(this,"getVisibilityState",this.getVisibilityState);U(this,"isMutedByMutedAutoplay",this.isMutedByMutedAutoplay); +U(this,"setInternalSize",this.setInternalSize)}; +VB=function(a,b,c){a.C[b]=function(d){for(var e=[],f=0;f=a.length?0:b}; +qC=function(a){var b=a.index-1;return 0>b?a.length-1:b}; +rC=function(a,b){a.index=g.Md(b,0,a.length-1);a.startSeconds=0}; +dia=function(a,b){if(!a.wc){a.listId=new g.mC("SR",b);var c={search_query:b};a.C&&(c.mob="1");a.loadPlaylist("/search_ajax?style=json&embeddable=1",c)}}; +eia=function(a){if(!a.wc){var b=b||a.listId;b={list:b};var c=a.ya();c&&c.videoId&&(b.v=c.videoId);a.loadPlaylist("/list_ajax?style=json&action_get_list=1",b)}}; +sC=function(a,b){if(b.video&&b.video.length){a.title=b.title||"";a.description=b.description;a.views=b.views;a.author=b.author;var c=b.loop;c&&(a.loop=c);c=a.ya();a.items=[];for(var d=g.q(b.video),e=d.next();!e.done;e=d.next())if(e=e.value)e.video_id=e.encrypted_id,a.items.push(e);a.length=a.items.length;(d=b.index)?a.index=d:a.findIndex(c);a.setShuffle(!1);a.wc=!1;a.loaded=!0;a.w++;a.o&&a.o()}}; +tC=function(a,b){a.o=b;a.loaded&&g.Ho(a.o,0)}; +uC=function(){}; +g.vC=function(){g.A.call(this);this.w=null;this.F=this.C=!1;this.B=new g.gf;g.B(this,this.B)}; +wC=function(a){a=a.yl();return 1>a.length?NaN:a.end(a.length-1)}; +xC=function(a,b){a.w&&null!==b&&b.o===a.w.o||(a.w&&a.w.dispose(),a.w=b)}; +yC=function(a){return St(a.Dd(),a.getCurrentTime())}; +fia=function(a,b){if(0==a.je()||0a.o+.001&&b(d||!a.w?1500:400);a.o=b;a.A=c;return!1}; +g.GC=function(a){return(a=hia[a.toString()])?a:"LICENSE"}; +g.HC=function(a,b){this.o=a||64;this.u=void 0===b?null:b}; +IC=function(a,b){return FC(a,b.getCurrentTime(),(0,g.N)(),yC(b))}; +JC=function(a,b,c){return b==a.o&&c==a.u||void 0!=b&&(b&128&&!c||b&2&&b&16)?a:new g.HC(b,c)}; +KC=function(a,b){return JC(a,a.o|b)}; +LC=function(a,b){return JC(a,a.o&~b)}; +MC=function(a,b,c){return JC(a,(a.o|b)&~c)}; +g.V=function(a,b){return!!(a.o&b)}; +g.NC=function(a,b){return b.o==a.o&&b.u==a.u}; +g.OC=function(a){return g.V(a,8)&&!g.V(a,2)&&!g.V(a,1024)}; +PC=function(a){return a.eb()&&!g.V(a,16)&&!g.V(a,32)}; +iia=function(a){return g.V(a,8)&&g.V(a,16)}; +g.QC=function(a){return g.V(a,1)&&!g.V(a,2)}; +RC=function(a){return g.V(a,128)?-1:g.V(a,2)?0:g.V(a,64)?-1:g.V(a,1)&&!g.V(a,32)?3:g.V(a,8)?1:g.V(a,4)?2:-1}; +SC=function(a,b){this.o=a;this.w=b;this.u=null;this.A=[];this.B=!1}; +g.TC=function(a){a.u||(a.u=a.o.createMediaElementSource(a.w.ua()));return a.u}; +g.UC=function(a){for(var b;0=e)break;var f=c.getUint32(d+4);if(1836019574==f)d+=8;else{if(1886614376==f){f=a.subarray(d,d+e);var k=new Uint8Array(b.length+f.length);k.set(b);k.set(f,b.length);b=k}d+=e}}return b}; +nia=function(a){a=zv(a,1886614376);(0,g.y)(a,function(b){return!b.u}); +return(0,g.Cc)(a,function(b){return new Uint8Array(b.data.buffer,b.offset+b.data.byteOffset,b.size)})}; +oia=function(a){var b=(0,g.ui)(a,function(e,f){return e+f.length},0),c=new Uint8Array(b),d=0; +(0,g.y)(a,function(e){c.set(e,d);d+=e.length}); +return c}; +pia=function(a,b){this.w=a;this.F=this.C=!1;this.length=b?b:0;this.u=0;this.A=null;this.o=[];this.B=null;this.length?1!=this.w.length||this.w[0].Oa||(this.w[0].Oa=this.length):1==this.w.length||(0,g.ti)(this.w,function(c){return!!c.range})}; +qia=function(a){return a.length-a.u+a.o.reduce(function(b,c){return b+c.o.getLength()},0)}; +aD=function(a,b,c,d){var e=this;this.yh=a;this.u=c;this.loaded=this.status=0;this.error="";a=Yv(this.yh.get("range")||"");if(!a)throw Error("bad range");this.range=a;this.o=new kw;ria(this).then(d,function(f){e.error=""+f||"unknown_err";d()}); +b()}; +ria=function(a){return mh(a,function c(){var d=this,e,f,k,l,m,n,p,t,u,z,C,D,E;return Aa(c,function(F){if(1==F.o){d.status=200;e=d.yh.get("docid");f=d.yh.get("fmtid");k=+(d.yh.get("csz")||0);if(!e||!f||!k)throw Error("Invalid local URL");l=d.range;m=Math.floor(l.start/k);n=Math.floor(l.end/k);p=m}if(5!=F.o)return p<=n?F=g.ta(F,zfa(e,f,p),5):(F.o=0,F=void 0),F;t=F.u;u=p*k;z=(p+1)*k;C=Math.max(0,l.start-u);D=Math.min(l.end+1,z)-(C+u);E=new Uint8Array(t.buffer,C,D);d.o.append(E);d.loaded+=D;d.loaded< +l.length&&d.u((0,g.H)(),d.loaded);p++;F.o=2})})}; +sia=function(a){this.schedule=a;this.o=NaN;this.u=[];this.totalBytes=0}; +tia=function(a,b,c,d){var e=void 0===d?{}:d;d=void 0===e.ee?!1:e.ee;var f=void 0===e.Cf?!1:e.Cf,k=void 0===e.Bi?!1:e.Bi,l=e.Gf,m=e.La;e=e.xd;this.V=null;this.U=this.o=NaN;this.ga=0;this.M=this.ba=this.u=this.A=NaN;this.ha=this.Z=this.isActive=!1;this.w=0;this.R=NaN;this.G=this.C=Infinity;this.P=NaN;this.da=!1;this.F=this.I=NaN;this.B=this.aa=void 0;this.ee=d;this.Cf=f;this.Bi=k;this.Gf=l;this.La=m;this.xd=e;this.schedule=a;this.ma=b;this.oa=c;this.snapshot=yy(this.schedule)}; +bD=function(a){return{rt:((0,g.H)()-a.o).toFixed(),lb:a.u.toFixed(),pt:(1E3*a.R).toFixed(),pb:a.ma.toFixed(),stall:(1E3*a.w).toFixed(),elbowTime:(a.U-a.o).toFixed(),elbowBytes:a.ga.toFixed()}}; +cD=function(a){!a.F&&a.V&&(a.F=a.V(),3===a.F&&(a.aa=new sia(a.schedule)));return a.F}; +gD=function(a,b,c,d){var e=(b-a.A)/1E3,f=c-a.u,k=cD(a);if(3===k&&f){var l=a.aa;l.u.push({CT:f,XT:isNaN(l.o)?NaN:d-l.o,LT:d});l.o=d}a.isActive?1===k&&0f?(a.w+=e,.2d&&(d=0);d=1E3*(d*a.snapshot.stall+d/a.snapshot.byterate);d=jD(a)?d+b:d+Math.max(b,c);a.I=d}; +hD=function(a,b){for(var c="";4095>6&63)+"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_".charAt(a&63)+"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_".charAt(b>>6&63)+"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_".charAt(b&63))}; +nD=function(a,b,c,d,e,f,k){var l=void 0===k?{}:k;k=void 0===l.method?"GET":l.method;var m=l.headers,n=l.body;l=void 0===l.credentials?"include":l.credentials;this.R=c;this.M=d;this.U=e;this.policy=f;this.status=0;this.response=void 0;this.P=!1;this.u=0;this.G=NaN;this.aborted=this.C=this.I=!1;this.errorMessage="";this.method=k;this.headers=m;this.body=n;this.credentials=l;this.o=new kw;this.id=wia++;this.A=window.AbortController?new AbortController:void 0;this.start(a);this.startTime=Date.now();b()}; +oD=function(a){a.w.read().then(a.BK.bind(a),a.onError.bind(a)).then(void 0,g.M)}; +qD=function(a){if(!a.ea()){a.I=!0;if(pD(a)&&!a.o.getLength()&&!a.C&&a.u){tx(a);var b=new Uint8Array(8),c=new DataView(b.buffer);c.setUint32(0,8);c.setUint32(4,1936419184);a.o.append(b);a.u+=b.length}a.M()}}; +pD=function(a){var b=a.dd("content-type");b="audio/mp4"===b||"video/mp4"===b;return a.policy.o&&a.policy.nd&&tx(a)&&b}; +rD=function(a,b,c,d,e){var f=this;this.status=0;this.ea=this.w=!1;this.u=NaN;this.o=new XMLHttpRequest;this.o.open("GET",a);this.o.responseType="arraybuffer";this.o.withCredentials=!0;this.o.onreadystatechange=function(){2===f.o.readyState&&f.C()}; +this.A=d;this.B=c;this.C=e;a=Fo(function(){if(!f.ea){f.status=f.o.status;try{f.response=f.o.response,f.u=f.response.byteLength}catch(k){}f.w=!0;f.A()}}); +this.o.addEventListener("load",a,!1);this.o.addEventListener("error",a,!1);this.o.send();b();this.o.addEventListener("progress",Fo(function(k){f.ea||(f.status=f.o.status,f.B(k.timeStamp,k.loaded))}),!1)}; +sD=function(a,b,c,d){this.u=a;this.info=b;this.timing=c;this.Z=d;this.state=1;this.o=this.aa=null;this.F=this.R=0;this.V=new g.I(this.kO,a.P,this);this.B=this.A=this.G=null;this.C=0;this.M=this.w=null;this.U=0;this.da=this.P=!1;this.I=this.u.Ka&&(nx(this.info)||this.info.ee());this.ha=!1;this.ba=null}; +xia=function(a,b){a.ea();a.G=b}; +tD=function(a){return a.A?Zw(a.A.Ie):""}; +uD=function(a){var b=bD(a.timing);b.shost=tD(a);b.rn=a.R.toString();a.C&&(b.rc=a.C.toString());b.itag=""+ct(a.info.o[0].o.info);b.ml=""+ +a.info.o[0].o.cd();b.sq=""+a.info.o[0].u;if(a.A){var c=a.A.Ie;Yw(c);var d=decodeURIComponent(c.get("mn")||"").split(",");b.ifi=""+ +("/videoplayback"===c.path&&1=d.getLength()&&(c=rw(d),c=Bv(c),c=Rw(c)?c:"")}if(c){d=vD(a);(0,g.N)();d.started=0;d.u=0;d.o=0;d=a.info;var e=a.A;g.kx(d.u,e,c);d.requestId=e.get("req_id");return 5}c=b.Qo();if((d=!!a.M&&a.M.length)&&d!=c||b.ru())return a.B="net.closed",7;xD(a,!0);if(a.u.Iv&&!d&&a.w&&(d=a.w.o,d.length&&!yw(d[0])))return a.B="net.closed",7;var f=yD(a)? +b.dd("X-Bandwidth-Est"):0;if(d=yD(a)?b.dd("X-Bandwidth-Est3"):0)a.da=!0,a.u.pC&&(f=d);d=a.timing;e=(0,g.H)();f=f?parseInt(f,10):0;if(!d.Z){d.Z=!0;if(!d.Cf){e=e>d.o&&4E12>e?e:(0,g.H)();iD(d,e,c);gD(d,e,c);var k=cD(d);if(2===k&&f)fD(d,d.u/f,d.u);else if(2===k||1===k)f=(e-d.o)/1E3,(f<=d.schedule.P.o||!d.schedule.P.o)&&!d.ha&&jD(d)&&fD(d,f,c),jD(d)&&(f=d.schedule,c=Math.max(c,2048),f.o.w(1,d.w/c),zy(f));sy(d.schedule,(e-d.o)/1E3,d.u,d.R,d.ee,d.Bi)}d.isActive&&(d.isActive=!1)}c=vD(a);(0,g.N)();c.started= +0;c.u=0;c.o=0;a.info.u.u=0;(0,g.N)()c.indexOf("googlevideo.com")||(g.Ds("yt-player-bandaid-host",{WN:c},432E3),zD=(0,g.N)());return 6}; +BD=function(a){if("net.timeout"==a.B){var b=a.timing,c=(0,g.H)();if(!b.Cf){c=c>b.o&&4E12>c?c:(0,g.H)();iD(b,c,1024*b.M);var d=(c-b.o)/1E3;if(2!==cD(b))if(jD(b)){b.w+=(c-b.A)/1E3;var e=b.schedule,f=b.u;f=Math.max(f,2048);e.o.w(1,b.w/f);zy(e)}else eD(b)||b.Cf||(e=b.schedule,e.B.w(1,d),zy(e)),b.U=c;sy(b.schedule,d,b.u,b.R,b.ee,b.Bi);uy(b.schedule,(c-b.A)/1E3,0)}}else(0,g.H)();"net.nocontent"!=a.B&&("net.timeout"==a.B||"net.connect"==a.B?(b=vD(a),b.u+=1):(b=vD(a),b.o+=1),a.info.u.u++);AD(a,7)}; +CD=function(a){a.ea();if(1==a.state)return!0;a=vD(a);return 100>a.u&&6>a.o}; +AD=function(a,b){a.state=b;if(5<=a.state)if(a.u.pc)DD(a);else{var c=a.timing;c.isActive&&(c.isActive=!1)}a.G&&a.G(a)}; +ED=function(a,b){if(b){var c=vD(a);c.w+=1}DD(a);a.B="net.timeout";BD(a)}; +yD=function(a){return(0,g.ti)(a.info.o,function(b){return 3==b.type})}; +DD=function(a){if(a.o){var b=a.o;a.o=null;b.abort()}a=a.timing;a.isActive&&(a.isActive=!1)}; +wD=function(a){var b=a.o.dd("content-type"),c=a.o.tl();return(!FD(a)||!b||-1!=b.indexOf("text/plain"))&&(!c||2048>=c)}; +zia=function(a,b){var c=(0,g.x)(a.eI,a),d=(0,g.x)(a.LN,a),e=(0,g.x)(a.fI,a),f=(0,g.x)(a.KN,a);return $w(a.A.Ie)?new aD(a.A,d,e,c):GD(a)?new nD(b,d,e,c,f,a.u.A):new rD(b,d,e,c,f)}; +GD=function(a){return a.u.aa?a.u.ov&&!isNaN(a.info.xd)&&a.info.xd>a.u.Hn?!1:sx():!1}; +FD=function(a){return a.o?a.o.Up():!1}; +HD=function(a){return 2>a.state||!a.w?!1:a.w.o.length||a.u.ga&&a.o&&a.o.Te()?!0:!1}; +Aia=function(a){ID(a);return a.w.o}; +ID=function(a){a.u.ga&&a.o&&a.o.Te()&&xD(a,!1)}; +xD=function(a,b){if(b||FD(a)&&!wD(a)){if(!a.w){if(FD(a))a.info.range&&(c=a.info.range.length);else var c=a.o.Qo();a.w=new pia(a.info.o,c)}for(;a.o.Te();)a:{c=a.w;var d=a.o.Ro(),e=b&&!a.o.Te();c.A&&(mw(c.A,d),d=c.A,c.A=null);for(var f=0,k=0,l=g.q(c.w),m=l.next();!m.done;m=l.next())if(m=m.value,m.range&&f+m.Oa<=c.u)f+=m.Oa;else{d.getLength();if(bw(m)&&!e&&c.u+d.getLength()-ka.info.o[0].u)return!1}return!0}; +JD=function(a,b,c){this.initData=a;this.contentType=(void 0===b?"":b)||null;this.isPrefetch=void 0===c?!1:c;this.o=this.cryptoPeriodIndex=NaN;this.u=[];this.Bc=!1}; +KD=function(a){a:{var b=a.initData;try{for(var c=0,d=new DataView(b.buffer);c=e)break;if(1886614376==d.getUint32(c+4)){var f=32;if(0=a.o.getLength())throw Error();return uw(a.o,a.offset++)}; +ND=function(a,b){var c=MD(a);if(1===c){c=-1;for(var d=0;7>d;d++){var e=MD(a);-1===c&&255!==e&&(c=0);-1e&&d>c;e++)c=256*c+MD(a),d*=128;return b?c:c-d}; +OD=function(a,b,c){g.O.call(this);var d=this;this.A=a;this.u=[];this.o=null;this.M=-1;this.G=0;this.U=NaN;this.I=0;this.w=b;this.ga=c;this.B=NaN;this.ba=0;this.aa=-1;this.C=this.P=this.ha=this.Z=this.F=this.R=null;this.A.w&&(this.C=new jia(this.A,this.w),this.C.I.o.then(function(e){1==e&&d.S("localmediacomplete",e)})); +this.da=!1;this.V=0}; +PD=function(a){return a.u.length?a.u[0]:null}; +QD=function(a){return a.u.length?a.u[a.u.length-1]:null}; +XD=function(a,b,c){a.Z&&!ew(a.Z,c.info)&&(a.B=NaN,a.ba=0,a.aa=-1);a.Z=c.info;a.w=c.info.o;0==c.info.w?RD(a):!a.w.ce()&&a.F&&iw(c.info,a.F);a.o?(c=zw(a.o,c),a.o=c):a.o=c;a:{c=g.gt(a.o.info.o.info);if(3!=a.o.info.type){if(!a.o.info.A)break a;6==a.o.info.type?SD(a,b,a.o):TD(a,a.o);a.o=null}for(;a.o;){var d=a.o.o.getLength();if(0>=a.M&&0==a.G){var e=a.o.o,f=-1,k=-1;if(c){for(var l=0;l+8k&&(f= +-1)}else{e=new LD(e);for(m=l=!1;;){n=e.offset;var p=e;try{var t=ND(p,!0),u=ND(p,!1);var z=t;var C=u}catch(E){C=z=-1}p=z;var D=C;if(0>p)break;if(408125543!==p)if(524531317===p)l=!0,0<=D&&(k=e.offset+D,m=!0);else{if(l&&(160===p||163===p)&&(0>f&&(f=n),m))break;163===p&&(f=Math.max(0,f),k=e.offset+D);if(160===p){0>f&&(k=f=e.offset+D);break}e.skip(D)}}0>f&&(k=-1)}if(0>f)break;a.M=f;a.G=k-f}if(a.M>d)break;a.M?(d=UD(a,a.M),d.w&&!a.w.ce()&&VD(a,d),SD(a,b,d),WD(a,d),a.M=0):a.G&&(d=UD(a,0>a.G?Infinity:a.G), +a.G-=d.o.getLength(),WD(a,d))}}a.o&&a.o.info.A&&(WD(a,a.o),a.o=null)}; +TD=function(a,b){!a.w.ce()&&0==b.info.w&&(g.gt(b.info.o.info)||b.info.o.info.Bc())&&Fw(b);if(1==b.info.type)try{VD(a,b),YD(a,b)}catch(d){g.M(d);var c=gw(b.info);c.hms="1";a.S("error",c||{})}b.info.o.ho(b);a.C&&$C(a.C,b)}; +Cia=function(a){var b=a.u.reduce(function(c,d){return c+d.o.getLength()},0); +a.o&&(b+=a.o.o.getLength());return b}; +ZD=function(a){return(0,g.Cc)(a.u,function(b){return b.info})}; +$D=function(a){a.P&&!a.A.Tc&&a.S("placeholderrollback",a.P);a.P=null;a.F=null;a.Z=a.ha;a.B-=a.I;RD(a)}; +UD=function(a,b){var c=a.o,d=Math.min(b,c.o.getLength());if(d==c.o.getLength())return a.o=null,c;c.o.getLength();d=Math.min(d,c.info.Oa);var e=c.o.split(d),f=e.mo;e=e.ij;var k=new aw(c.info.type,c.info.o,c.info.range,c.info.F,c.info.u,c.info.startTime,c.info.duration,c.info.w,d,!1,!1);f=new ww(k,f,c.w);c=new aw(c.info.type,c.info.o,c.info.range,c.info.F,c.info.u,c.info.startTime,c.info.duration,c.info.w+d,c.info.Oa-d,c.info.C,c.info.A);c=new ww(c,e,!1);c=[f,c];a.o=c[1];return c[0]}; +VD=function(a,b){b.o.getLength();var c=xw(b);if(!a.A.QC&&ft(b.info.o.info)&&"bt2020"==b.info.o.info.ya().primaries){var d=new Cv(c);Ev(d,[408125543,374648427,174,224,21936,21937])&&(d=d.w+d.o,129==c.getUint8(d)&&1==c.getUint8(d+1)&&c.setUint8(d+1,9))}d=b.info.o.info;et(d)&&!ft(d)&&(d=xw(b),Kv(new Cv(d)),Jv([408125543,374648427,174,224],21936,d));b.info.o.info.isVideo()&&(d=b.info.o,d.info&&d.info.video&&4==d.info.video.projectionType&&!d.A&&(g.gt(d.info)?d.A=Ofa(c):d.info.Bc()&&(d.A=Qfa(c))));b.info.o.info.Bc()&& +b.info.isVideo()&&(c=xw(b),Kv(new Cv(c)),Jv([408125543,374648427,174,224],30320,c)&&Jv([408125543,374648427,174,224],21432,c));if(a.w.info.audio&&g.gt(b.info.o.info)){d=xw(b);c=g.mv(d,0,1701606260);var e=g.mv(d,0,1836476516);if(c&&e){c.skip(2);var f=av(c),k=cv(c);d=[];var l=[],m=[],n=[];if(f)for(f=0;fm||(e&&b.skip(4),f&&b.skip(4),e=cv(b),b.skip((m-1)*(4+(k?4:0)+(l?4:0)+(d?4:0))-4),b.data.setUint32(b.offset+b.o,e))}}if(b=a.R&&!!a.R.w.w)if(b=c.info.isVideo())b=Ew(c),k=a.R,aE?(l=1/b,b=bE(a,b)>=bE(k)+l):b=a.getDuration()>=k.getDuration(),b=!b;b&&a.w.ce()&&c.info.u==c.info.o.index.jb()&&(b= +a.R,aE?(l=Ew(c),k=1/l,l=bE(a,l),b=bE(b)+k-l):b=b.getDuration()-a.getDuration(),b=1+b/c.info.duration,nv(xw(c),b))}else{k=!1;a.F||(Fw(c),c.u&&(a.F=c.u,k=!0,iw(c.info,c.u),e=c.info.o.info,d=xw(c),g.gt(e)?yv(d,1701671783):e.Bc()&&Jv([408125543],307544935,d)));if(d=e=Dw(c))d=c.info.o.info.Bc()&&160==uw(c.o,0);if(d)a.I+=e,a.B=l+e;else{if(a.A.zv){if(l=f=a.ga(Aw(c),1),0<=a.B&&6!=c.info.type){f-=a.B;m=f-a.ba;d=c.info.u;1E-4a.A.Hc||(l=a.B),a.A.xv&&a.R&&!a.w.info.audio&&g.gt(c.info.o.info))){var n=a.R;var p=n.aa;n=n.ba;var t=.02p&&d>a.aa)&&t&&(d=Math.max(.95,Math.min(1.05,(e-(n-f))/e)),nv(xw(c),d),d=Dw(c),m=e-d,e=d)}a.ba=f+m}}else isNaN(a.B)?f=c.info.startTime:f=a.B,l=f;Bw(c,l)?(isNaN(a.U)&&(a.U=l),a.I+=e,a.B=l+e):(l=gw(c.info),l.smst="1",a.S("error",l||{}))}if(k&&a.F){k=cE(a,!0);jw(c.info,k);a.o&&jw(a.o.info, +k);b=g.q(b.info.o);for(l=b.next();!l.done;l=b.next())jw(l.value,k);(c.info.A||a.o&&a.o.info.A)&&6!=c.info.type||(a.P=k,a.S("placeholderinfo",k),dE(a))}}YD(a,c);a.V&&Cw(c,a.V)}; +WD=function(a,b){if(b.info.A){a.ha=b.info;if(a.F){var c=cE(a,!1);a.S("segmentinfo",c);a.P||dE(a);a.P=null}RD(a)}a.C&&$C(a.C,b);if(c=QD(a))if(c=zw(c,b,a.A.Pk)){a.u.pop();a.u.push(c);return}a.u.push(b)}; +RD=function(a){a.o=null;a.M=-1;a.G=0;a.F=null;a.U=NaN;a.I=0;a.P=null}; +YD=function(a,b){if(a.w.info.zc){if(b.info.o.info.Bc()){var c=new Cv(xw(b));if(Ev(c,[408125543,374648427,174,28032,25152,20533,18402])){var d=Hv(c,!0);c=16!=d?null:Ov(c,d)}else c=null;d="webm"}else b.info.P=nia(xw(b)),c=oia(b.info.P),d="cenc";c&&c.length&&(c=new JD(c,d),c.Bc=b.info.o.info.Bc(),b.u&&b.u.cryptoPeriodIndex&&(c.cryptoPeriodIndex=b.u.cryptoPeriodIndex),a.A.an&&b.u&&b.u.B&&(c.o=b.u.B),a.S("needkeyinfo",c))}}; +dE=function(a){var b=a.F,c;b.o["Cuepoint-Type"]?c=new gv(eE?parseFloat(b.o["Cuepoint-Playhead-Time-Sec"])||0:-(parseFloat(b.o["Cuepoint-Playhead-Time-Sec"])||0),parseFloat(b.o["Cuepoint-Total-Duration-Sec"])||0,b.o["Cuepoint-Context"],b.o["Cuepoint-Identifier"]||"",Dia[b.o["Cuepoint-Event"]||""]||"unknown",1E3*(parseFloat(b.o["Cuepoint-Playhead-Time-Sec"])||0)):c=null;c&&(c.startSecs+=a.U,a.S("cuepoint",c,b.u))}; +cE=function(a,b){var c=a.F;if(c.o["Stitched-Video-Id"]||c.o["Stitched-Video-Duration-Us"]||c.o["Stitched-Video-Start-Frame-Index"]){c.o["Stitched-Video-Id"]&&c.o["Stitched-Video-Id"].split(",");var d=[];if(c.o["Stitched-Video-Duration-Us"])for(var e=g.q(c.o["Stitched-Video-Duration-Us"].split(",").slice(0,-1)),f=e.next();!f.done;f=e.next())d.push((parseInt(f.value,10)||0)/1E6);d=[];if(c.o["Stitched-Video-Start-Frame-Index"])for(e=g.q(c.o["Stitched-Video-Start-Frame-Index"].split(",").slice(0,-1)), +f=e.next();!f.done;f=e.next())d.push(parseInt(f.value,10)||0)}return new Wu(c.u,a.U,b?c.Ee:a.I,c.ingestionTime,"sq/"+c.u,void 0,void 0,b)}; +bE=function(a,b){b=void 0===b?0:b;var c=b?Math.round(a.V*b)/b:a.V;a.w.w&&c&&(c+=a.w.w.o);return c+a.getDuration()}; +fE=function(a,b){0>b||(a.u.forEach(function(c){return Cw(c,b)}),a.V=b)}; +gE=function(a,b,c){this.U=a;this.o=b;this.A=[];this.w=new OD(a,b,c);this.u=this.F=null;this.R=0;this.P=b.info.o;this.M=0;this.G=b.Ll();this.C=-1;this.B=this.G;this.I=!1}; +hE=function(a,b){b&&aE&&fE(a.w,b.Sr());a.F=b}; +iE=function(a){return a.F&&a.F.Or()}; +kE=function(a){for(;a.A.length&&6==a.A[0].state;){var b=a.A.shift();jE(a,b);b=b.timing;a.R=(b.A-b.o)/1E3}a.A.length&&HD(a.A[0])&&!a.A[0].info.ee()&&jE(a,a.A[0])}; +jE=function(a,b){if(HD(b)){b.P=!0;ID(b);var c=b.w,d=c.o;c.o=[];c.B=g.Va(d).info;c=g.q(d);for(d=c.next();!d.done;d=c.next())lE(a,b,d.value)}}; +lE=function(a,b,c){switch(c.info.type){case 1:case 2:TD(a.w,c);break;case 4:var d=c.info.o.Wy(c);c=c.info;var e=a.u;e&&e.o==c.o&&e.type==c.type&&(c.range&&e.range?e.range.start==c.range.start&&e.range.end==c.range.end:e.range==c.range)&&e.u==c.u&&e.w==c.w&&e.Oa==c.Oa&&(a.u=g.Va(d).info);d=g.q(d);for(c=d.next();!c.done;c=d.next())lE(a,b,c.value);break;case 3:XD(a.w,b,c);break;case 6:XD(a.w,b,c),a.u=c.info}}; +mE=function(a){return PD(a.w)}; +nE=function(a,b){var c=b.info;c.o.info.o>=a.P&&(a.P=c.o.info.o)}; +rE=function(a,b,c){c=void 0===c?!1:c;if(a.F){var d=a.F.ud(),e=Qt(d,b),f=NaN,k=iE(a);k&&(f=Qt(d,k.o.index.gd(k.u)));if(e==f&&a.u&&a.u.Oa&&oE(pE(a),0))return b}a=qE(a,b,c);return 0<=a?a:NaN}; +tE=function(a,b){a.o.cd();var c=qE(a,b);if(0<=c)return c;c=a.w;c.C?(c=c.C,c=c.o&&3==c.o.type?c.o.startTime:0):c=Infinity;b=Math.min(b,c);a.u=a.o.pg(b).o[0];sE(a)&&a.F&&a.F.abort();a.M=0;return a.u.startTime}; +uE=function(a){a.G=!0;a.B=!0;a.C=-1;tE(a,Infinity)}; +vE=function(a){var b=0;(0,g.y)(a.A,function(c){var d=b;c=c.w&&c.w.length?qia(c.w):px(c.info);b=d+c},a); +return b+=Cia(a.w)}; +wE=function(a,b){if(!a.F)return 0;var c=iE(a);if(c&&c.C)return c.B;c=a.F.ud(!0);return St(c,b)}; +yE=function(a){xE(a);a=a.w;a.u=[];RD(a)}; +zE=function(a,b){var c;for(c=0;c=e.range.start+e.w&&f.range.start+f.w+f.Oa<=e.range.start+e.w+e.Oa:f.u==e.u&&f.w>=e.w&&(f.w+f.Oa<=e.w+e.Oa||e.A))})); +(cw(e)||4==e.type)&&b.push(e)})}); +a.u&&!Tfa(a.u,g.Va(b),a.u.o.ce())&&b.push(a.u);return b}; +oE=function(a,b){if(!a.length)return!1;for(var c=b+1;c=b){b=f;break a}}b=e}return 0>b?NaN:oE(a,c?b:0)?a[b].startTime:NaN}; +AE=function(a){return kj(a.A,function(b){return 4<=b.state})}; +BE=function(a){return!(!a.u||a.u.o==a.o)}; +CE=function(a){return BE(a)&&a.o.cd()&&a.u.o.info.ob&&a.B=f&&a.Aa.C?(a.C++,PE(a,"iterativeSeeking","inprogress;count."+a.C+";target."+ +a.A+";actual."+f+";duration."+k+";isVideo."+c,!1),a.seek(a.A)):(PE(a,"iterativeSeeking","incomplete;count."+a.C+";target."+a.A+";actual."+f,!1),a.C=0,a.u.B=!1,a.o.B=!1,a.S("seekplayerrequired",f+.1,!0)))}})}; +Gia=function(a,b,c){if(!a.w)return-1;c=(c?a.u:a.o).o.index;var d=c.Re(a.A);return(xx(c,a.B.Hd)||b.La==a.B.Hd)&&d=c||(c=new gv(a.o.td.startSecs-(a.B.yb&&!isNaN(a.w)?a.w:0),c,a.o.td.context,a.o.td.identifier,"stop",a.o.td.o+1E3*b.duration),a.S("ctmp","cuepointdiscontinuity","segNum."+b.La,!1),a.G(c,b.La))}}; +Iia=function(a,b,c,d){this.V=a;this.F=b;this.C=c;this.G=d;this.A=Du;this.B=this.P=null;this.R=-1;this.u=this.w=null;this.o=[];this.U={};this.I=0;this.M=this.Z=!1;this.ba=0}; +Lia=function(a,b,c){VE(a,b);Jia(a,c);a.P=a.w;Kia(a);a.B=a.u;return WE(a)}; +Mia=function(a,b){if(Au(a.A,b))return null;if("m"==b.reason&&b.isLocked())return VE(a,b),a.I=a.o.length-1,XE(a),YE(a),a.M=a.M||a.B!=a.u,a.B=a.u,new VC(a.w,a.B,b.reason);"r"==b.reason&&(a.R=-1);VE(a,b);YE(a);if("r"==b.reason&&a.u==a.B)return new VC(a.w,a.u,b.reason);if(a.B&&a.u&&ZE(a,a.B.info)b)return!0;return!1}; +Oia=function(a){return new VC(a.P,a.B,a.A.reason)}; +bF=function(a){return a.A.isLocked()}; +Pia=function(a){return 0this.F.I)return!1;l=this.C.o[l.id];return l.P>d?!1:4k.video.width?(g.cb(e,c),c--):ZE(a,f)*a.F.o>ZE(a,k)&&(g.cb(e,c-1),c--)}c=e[e.length-1];a.o=e;Vfa(a.F,c)}; +Jia=function(a,b){if(b)a.w=a.C.o[b];else{var c=g.Xa(a.G.o,function(d){return!!d.tb&&d.tb.isDefault}); +c=c||a.G.o[0];a.w=a.C.o[c.id]}XE(a)}; +cF=function(a,b){for(var c=0;c+1d}; +XE=function(a){if(!a.w||!a.F.w)if(!a.w||!a.w.info.tb)if(a.w=a.C.o[a.G.o[0].id],1a.A.o:cF(a,a.w);b&&(a.w=a.C.o[g.Va(a.G.o).id])}}; +YE=function(a){if(!a.u||!a.F.w)if(bF(a))a.u=360>=a.A.o?a.C.o[a.o[0].id]:a.C.o[g.Va(a.o).id];else{for(var b=Math.min(a.I,a.o.length-1),c=LE(a.V),d=ZE(a,a.w.info),e=c/a.F.u-d;0=c);b++);a.u=a.C.o[a.o[b].id];a.I=b}}; +Kia=function(a){var b=a.F.u,c=LE(a.V)/b-ZE(a,a.w.info);b=g.Ya(a.o,function(d){return ZE(this,d)b&&(b=0);a.I=b;a.u=a.C.o[a.o[b].id]}; +ZE=function(a,b){if(!a.U[b.id]){var c=a.C.o[b.id].index.yx(a.ba,15);c=b.w&&a.B&&a.B.index.Hb()?c||b.w:c||b.o;a.U[b.id]=c}c=a.U[b.id];a.F.qe&&b.video&&b.video.fc>a.F.qe&&(c*=1.5);return c}; +Qia=function(a,b){var c=Lb(a.C.o,function(d){return ct(d.info)==b}); +if(!c)throw Error("Itag "+b+" from server not known.");return c}; +Ria=function(a){var b=[];if("m"==a.A.reason||"s"==a.A.reason)return b;var c=!1;if(sga(a.C)){for(var d=Math.max(0,a.I-2);d=c)a.P=NaN;else{var d=wy(a.V),e=b.index.o;c=Math.max(1,d/c);a.P=Math.round(1E3*Math.max(((c-1)*e+a.o.M)/c,e-a.o.rb))}}}; +Tia=function(a,b){var c=(0,g.H)()/1E3,d=c-a.C,e=c-a.G,f=e>=a.o.Vf,k=!1;if(f){var l=0;!isNaN(b)&&b>a.F&&(l=b-a.F,a.F=b);l/e=a.o.rb&&!a.A;if(!f&&!c&&gF(a,b))return NaN;c&&(a.A=!0);a:{d=k;c=(0,g.H)()/1E3-(a.U.o()||0)-a.I.w-a.o.M;f=a.w.startTime;c=f+c;if(d){if(isNaN(b)){hF(a,NaN,"n",b);f=NaN;break a}d=b-a.o.nb;dc)break}return d}; +lF=function(a,b){for(var c=[],d=g.q(a.o),e=d.next();!e.done&&!(e=e.value,e.contains(b)&&c.push(e),e.start>b);e=d.next());return c}; +Wia=function(a){return a.o.slice(kF(a,0x7ffffffffffff),a.o.length)}; +kF=function(a,b){var c=qb(a.o,function(d){return b-d.start||1}); +return 0>c?-(c+1):c}; +mF=function(a,b){for(var c=NaN,d=g.q(a.o),e=d.next();!e.done;e=d.next())if(e=e.value,e.contains(b)&&(isNaN(c)||e.endb&&(isNaN(c)||e.starta.o.length)a.o=a.o.concat(b),a.o.sort(a.u);else for(var c=g.q(b),d=c.next();!d.done;d=c.next())d=d.value,!a.o.length||0l.end:!l.contains(c))&&f.push(l);e=e.concat(tF(a,f));k=f=null;d?(b=lF(a.o,0x7ffffffffffff),f=b.filter(function(m){return 0x8000000000000>m.end}),k=Wia(a.o)):b=a.A<=c&&PC(b)?Via(a.o,a.A,c):lF(a.o,c); +e=e.concat(sF(a,b));f&&(e=e.concat(tF(a,f)));k&&(e=e.concat(sF(a,k)));a.A=c;Yia(a,e)}}; +Yia=function(a,b){for(var c=g.q(b),d=c.next();!d.done;d=c.next()){d=d.value;var e=d[1];1===d[0]?a.I(g.lC(e.namespace),e):a.I("crx_"+e.namespace,e)}}; +Xia=function(a){return g.V(a.G(),2)?0x8000000000000:1E3*a.M()}; +$ia=function(a){a=void 0===a?{}:a;var b=a.nd,c=a.Mm,d=a.jb,e=a.Aj;this.gg=a.gg;this.nd=b;this.Mm=c;this.jb=d;this.Aj=e}; +uF=function(a,b){if(0>b)return!0;var c=a.jb();return bb)return 1;c=a.jb();return b(0,g.N)()-d.R;var f=d.u&&3*ZE(d,d.u.info)=a.o.nn&&!a.o.Wa||!a.o.fA&&0=a.o.Nn)return!1;d=b.u;if(!d)return!0;if(!jx(d.o.u))return!1;4==d.type&&d.o.cd()&&(b.u=g.Va(d.o.Ip(d)),d= +b.u);if(!d.C&&!d.o.Cg(d)||d.o.info.audio&&4==d.type)return!1;if(CE(b)&&!a.o.da)return!0;if(d.C||vE(b)&&vE(b)+vE(c)>a.o.za)return!1;var e=!b.B&&!c.B,f=b==a.u&&a.U;!(c=!!(c.u&&!c.u.C&&c.u.Bc);return c||a.o.zo&&(a=b.F)&&a.isLocked()?!1:!0}; +IF=function(a,b,c){if((!a.w||Yt(a.w)||cu(a.w))&&!a.I.w&&a.F.Z){var d=a.C;a=a.P;c=JE(a,b.o.info.o,c.o.info.o,0);var e=ty(a.u)+c/wy(a.u);d+=Math.max(e,e+a.o.Mc-c/b.o.info.o);a:{if(b.A.length){if(b.A[0].info.o[0].startTime<=d)break a;xE(b)}a=b.w;for(c=a.u.length-1;0<=c;c--)a.u[c].info.startTime>d&&a.u.pop();b.A.length?b.u=g.Va(g.Va(b.A).info.o):b.w.u.length?b.u=QD(b.w).info:b.u=iE(b);b.u&&dc.o[0].u)a.Dc("invalidsq",hw(c.o[0]));else{if(a.Ma){var d=gja(a.Ma.o,c.o[0].G,c.o[0].o.info.id);d&&(c.B=d)}a.o.Qk&&-1!=c.o[0].u&&c.o[0].ud.u&&(c=gw(d),c.pr=""+b.A.length,a.I.w&&(c.sk="1"),a.Dc("nosq",d.F+";"+Ps(c))),d=k.hh(d));a.U&&d.o.forEach(function(l){l.type=6}); +return d}; +hja=function(a,b,c){if(!BE(b)||!b.o.cd())return!1;a=Math.min(15,.5*GF(a,b,!0));return CE(b)||c<=a}; +ija=function(a,b,c){b=a.o.Li(a,b);if(b.range&&1d&&(b=a.o.Li(a,b.range.length-c.Oa))}return b}; +jja=function(a,b){var c=px(b),d=a.P;var e=Math.min(2.5,ty(d.u));d=KE(d);e=c-e*d;d=bw(b.o[0]);var f=$w(b.u.o),k=a.o.F,l;a.Ka?l={ee:d,Cf:f,Bi:k,Gf:a.Ka,La:b.o[0].u,xd:b.xd}:l={ee:d,Cf:f,Bi:k};return new tia(a.R,c,e,l)}; +JF=function(a,b){cw(b.o[b.o.length-1])&&MF(a,Nia(a.F,b.o[0].o));var c=jja(a,b);a.o.hn&&(c.B=[]);var d=new sD(a.o,b,c,a.ga);c.V=function(){var e;if(Bia(d)){if(e=d.u.cn&&!(!window.performance||!window.performance.now)&&d.o&&d.o.Ij()&&FD(d))e=d.o,e=e.policy.nd&&tx(e);e=e?d.info.o[0].o.info.video?3:4:2}else e=1;return e}; +xia(d,(0,g.x)(a.IM,a));3==b.o.length&&1==b.o[0].type&&2==b.o[1].type&&4==b.o[2].type&&b.o[0].o.info.video&&(d.aa=Ria(a.F));a.U&&(d.ha=!0);d.start(Math.max(0,b.o[0].G-a.C));return d}; +MF=function(a,b){b&&a.S("videoformatchange",b)}; +NF=function(a,b){var c=b.info.o[0].o,d=c.info.video?a.u:a.A;kja(a,d,b);b.info.ee()&&!mx(b.info)&&((0,g.y)(Aia(b),function(e){TD(d.w,e)}),a.S("metadata",c)); +kE(d);return!!mE(d)}; +kja=function(a,b,c){if(a.B.u&&b&&(b.G&&(c.ea(),5<=c.state||FD(c)||HD(c),b.G=!1),c.U&&a.oa.w(1,c.U),c.o&&(c.ba=parseInt(c.o.dd("X-Head-Seqnum"),10)),b=c.ba)){a=a.B;for(var d in a.o)c=a.o[d].index,c.u&&(c.w=Math.max(c.w,b))}}; +OF=function(a,b,c){a:{b=b.info;var d=a.o.BC,e=null,f=b.o[0];if(b.range)e=Zv(b.range.start,Math.min(4096,b.range.length));else if(d){if(b.w&&0<=b.w.indexOf("/range/")||"1"==b.u.A.get("defrag")||"1"==b.u.A.get("otf")){c=null;break a}e=Zv(0,4096)}else if(f.o.info.video){c=null;break a}d=new aw(5,f.o,e,"createProbeRequestInfo_"+f.F,f.u);b=new lx([d],b.w);b.C=c;c=b}c&&JF(a,c)}; +SF=function(a){var b=a.w.o,c=a.w.u;a.A.o.w&&PF(a,b,a.A.o.w);if(lja(a)){if(a.o.Qg){if(!b.vi()){var d=mE(a.A);d&&QF(a,b,d)}c.vi()||(b=mE(a.u))&&QF(a,c,b)}}else{if(a.G){d=a.G;var e=a.A,f=Rt(a.w.u.ud());if(d.B)d=Tia(d,f);else{if(f=mE(e)){var k=f.u;k&&k.A&&k.w&&(e=e.A.length?e.A[0]:null)&&3<=e.state&&7!=e.state&&0==e.info.xd&&FD(e)&&(d.B=e,d.I=k,d.w=f.info,d.C=(0,g.H)()/1E3,d.G=d.C,d.F=d.w.startTime)}d=NaN}d&&a.S("seekplayerrequired",d,!0)}d=!1;RF(a,a.u,c)&&(d=!0,c=a.da,c.w||(c.w=(0,g.H)(),c.md("vda"), +OA("vda"),c.u&&Xp(4)));c=mE(a.u);a.o.wa&&!d&&c&&(a.yb||a.Dc("sbp",a.w.u.Za({ns:hw(c.info)})),a.yb=!0);a.w&&!au(a.w)&&(RF(a,a.A,b)&&(b=a.da,b.u||(b.u=(0,g.H)(),b.md("ada"),OA("ada"),b.w&&Xp(4)),d=!0),!a.ea()&&a.w&&(!a.o.Z&&sE(a.u)&&sE(a.A)&&Yt(a.w)&&!a.w.Sd()&&(b=iE(a.A).o,b==a.B.o[b.info.id]&&(b=a.w,Yt(b)&&b.w.endOfStream(),b=a.R,fy(yy(b)),b.A=ry())),d&&!cu(a.w)&&a.aa.Ua()))}}; +lja=function(a){if(a.o.Ia)return!1;var b;if(!(b=GE(a.u))&&(b=a.I.w)){b=a.P;var c=a.u,d=a.A;if(0==c.A.length&&0==d.A.length)b=!0;else{var e=0,f=ZD(c.w).concat(ZD(d.w));f=g.q(f);for(var k=f.next();!k.done;k=f.next())e+=k.value.Oa;c=c.o.info.o+d.o.info.o;e/=c;b=10c*(10-e)/LE(b)}(b=!b)||(b=a.u,b=0a.C||360e)){a:if(a.o.wa&&a.Dc("sba",c.Za({as:hw(d.info)})),e=d.w?d.info.o.o:null,f=rw(d.o),d.w&&(f=new Uint8Array(f.buffer,0,f.byteOffset+f.length)),e=TF(a,c,f,d.info,e),"s"==e){a.Ca=0;var l=!0}else{a.o.jv||(c.abort(),yE(b)); +if("i"==e||"x"==e)UF(a,"checked",e,d.info);else{if("q"==e&&(d.info.isVideo()?(e=a.o,e.C=Math.floor(.8*e.C),e.V=Math.floor(.8*e.V),e.B=Math.floor(.8*e.B)):(e=a.o,e.G=Math.floor(.8*e.G),e.Aa=Math.floor(.8*e.Aa),e.B=Math.floor(.8*e.B)),c.supports(2)&&!c.Sd()&&!a.w.isView())){e=!1;f=c.ud();try{for(k=0;!e&&kd.info.B&&(c.remove(f.start(k),f.end(f.length-1)),e=!0);var m=Math.max(0,Math.min(a.C,d.info.startTime)-5);!e&&m&&c.remove(0,m);l=!1;break a}catch(n){}}a.S("reattachrequired")}l= +!1}e=!l}if(e)return!1;b.w.u.shift();nE(b,d);return!0}; +UF=function(a,b,c,d){var e="fmt.unplayable",f=!0;"x"==c||"m"==c?(e="fmt.unparseable",d.o.C=e,d.o.info.video&&!aF(a.F)&&$E(a.F,d.o)):"i"==c&&(15>a.Ca?(a.Ca++,e="html5.invalidstate",f=!1):e="fmt.unplayable");d=gw(d);d.mrs=a.w.w.readyState;d.origin=b;d.reason=c;EF(a,f,e,d)}; +VF=function(a,b,c){if(c){var d=a.V;if(d.B.Qa){var e=d.o&&d.u&&d.o.La==d.u.La-1;e=d.o&&e&&"stop"!=d.o.td.event&&"predictStart"!=d.o.td.event;d.u&&d.u.Lac&&a.Dc("bwcapped","1",!0),c= +Math.max(c,15),d=Math.min(d,c));return d}; +eja=function(a){if(!a.Ta)return Infinity;var b=(0,g.ue)(qF(a.Ta),function(d){return"ad"==d.namespace}); +b=g.q(b);for(var c=b.next();!c.done;c=b.next())if(c=c.value,c.start/1E3>a.C)return c.start/1E3;return Infinity}; +mja=function(a,b){var c=pE(a.u).find(function(d){return d.startTime>=b&&wF(a,d.startTime,!1)}); +return c&&c.startTimed;d++)c[2*d]=''.charCodeAt(d);c=a.w.createSession("video/mp4",b,c);return new eG(null,null,null,null,c)}; +jG=function(a,b){var c=a.F[b.sessionId];!c&&a.A&&(c=a.A,a.A=null,c.sessionId=b.sessionId,a.F[b.sessionId]=c);return c}; +lG=function(a,b,c,d){g.O.call(this);this.T=a;this.u=a.uc;this.w=b;this.aa=c;this.cryptoPeriodIndex=c.cryptoPeriodIndex||NaN;this.da=d;this.B=vja(this);this.B.session_id=d;this.I=!0;"widevine"==this.u.flavor&&(this.B.hdr="1");"playready"==this.u.flavor&&(a=parseInt(g.At(b.experiments,"playready_first_play_expiration"),10),!isNaN(a)&&0<=a&&(this.B.mfpe=""+a),g.P(b.experiments,"html5_playready_keystatuses_killswitch")||(this.I=!1),g.P(b.experiments,"html5_playready_enable_non_persist_license")&&(this.B.pst= +"0"));a=Bz(this.u)?aG(c.initData).replace("skd://","https://"):this.u.u;g.P(this.w.experiments,"enable_shadow_yttv_channels")&&(a=new g.Pm(a),document.location.origin&&document.location.origin.includes("green")?g.Rm(a,"web-green-qa.youtube.com"):g.Rm(a,"www.youtube.com"),a=a.toString());this.G=a;this.ba=Cd(this.G,"ek")||"";this.V=g.P(b.experiments,"html5_use_drm_retry");this.U=0;this.F=this.P=!1;this.A=null;this.ha=c.u;this.C=[];this.M=!1;this.o={};this.R=NaN;kG(this,"sessioninit"+c.cryptoPeriodIndex)}; +xja=function(a,b){kG(a,"createkeysession");HA("drm_gk_s");a.Z=wja(a);try{a.A=b.createSession(a.aa,function(d){return kG(a,d)})}catch(d){var c="t.g"; +d instanceof DOMException&&(c+=";c."+d.code);a.S("licenseerror","drm.unavailable",!0,c,"HTML5_NO_AVAILABLE_FORMATS_FALLBACK");return}a.A&&(fG(a.A,a.iI,a.hI,a.gI,a.jI,a),g.B(a,a.A))}; +wja=function(a){var b=a.G,c=b;var d=void 0===d?!1:d;Mw(Ow(c,yja,null),c,d,"Drm Licensor URL")||mG(a,"drm.net",!0,"t.x");for(var e in a.B)c=e,d=a.B[e],b=zd(Dd(b,c),c,d);return b}; +vja=function(a){var b={};g.Sb(b,a.w.deviceParams);b.cpn=a.T.clientPlaybackNonce;var c=["23883098"].filter(function(d){return a.w.experiments.experiments[d]}); +0=b&&(a=.75*b),c=.5*(b-a),a=new $F(c,b,b-c-a,this)):a=null;break a;case "widevine":a=new yG(g.P(b,"disable_license_delay"),c,this);break a}a=null}if(this.F=a)g.B(this,this.F),this.F.subscribe("rotated_need_key_info_ready",this.Zv,this);AG(this,"cks"+this.o.ge());a=this.o;"com.youtube.widevine.forcehdcp"===a.o&&a.A&&(this.za=new wG(this.T.Oe,this.u.experiments),g.B(this,this.za))}; +EG=function(a,b,c){a.oa=!0;c=new JD(b,c);g.P(a.u.experiments,"html5_eme_loader_sync")?(a.C.get(b)||a.C.set(b,c),CG(a,c)):0!=a.A.length&&a.T.xa&&a.T.xa.o?DG(a):CG(a,c)}; +FG=function(a,b){AG(a,"onneedkeyinfo");g.P(a.u.experiments,"html5_eme_loader_sync")&&(a.I.get(b.initData)||a.I.set(b.initData,b));CG(a,b)}; +Gja=function(a,b){if(xz(a.o)&&!a.Z){var c=mia(b);if(0!=c.length){var d=new JD(c);a.Z=!0;navigator.requestMediaKeySystemAccess("com.microsoft.playready",[{initDataTypes:["keyids","cenc"],audioCapabilities:[{contentType:'audio/mp4; codecs="mp4a"'}],videoCapabilities:[{contentType:'video/mp4; codecs="avc1"'}]}]).then(function(e){e.createMediaKeys().then(function(f){Fja(a,f,d)})},null)}}}; +Fja=function(a,b,c){var d=b.createSession(),e=a.w.values[0],f=zja(e);d.addEventListener("message",function(k){k=new Uint8Array(k.message);tG(k,d,a.o.u,f,"playready")}); +d.addEventListener("keystatuseschange",function(){d.keyStatuses.forEach(function(k,l){"usable"==l&&(a.aa=!0,GG(a,rG(e,a.aa)))})}); +d.generateRequest("cenc",c.initData)}; +CG=function(a,b){if(!a.ea()){AG(a,"onInitData_");if(g.P(a.u.experiments,"html5_eme_loader_sync")&&a.T.xa&&a.T.xa.o){var c=a.I.get(b.initData),d=a.C.get(b.initData);if(!c||!d)return;b=c;c=b.initData;a.C.remove(c);a.I.remove(c)}AG(a,"initd"+b.initData.length+"ct"+b.contentType);"widevine"==a.o.flavor?a.da&&!a.T.va||g.P(a.u.experiments,"vp9_drm_live")&&a.T.va&&b.Bc||(a.da=!0,c=b.o,KD(b),c&&!b.Bc&&b.o!=c&&a.S("ctmp","cpsmm","emsg."+c+";pssh."+b.o),a.S("widevine_set_need_key_info",b)):a.Zv(b)}}; +HG=function(a){a.ea()||(a.V=!0,AG(a,"onmdkrdy"),DG(a))}; +DG=function(a){if(a.oa&&a.V&&!a.R){for(;a.A.length;){var b=a.A[0];if(a.w.get(b.initData))if("fairplay"==a.o.flavor)a.w.remove(b.initData);else{a.A.shift();continue}KD(b);break}if(a.A.length){b=a.A[0];a.w.get(b.initData);a.R=!0;var c=new lG(a.T,a.u,b,a.wa);a.w.set(b.initData,c);c.subscribe("ctmp",a.pA,a);c.subscribe("hdentitled",a.CA,a);c.subscribe("keystatuseschange",a.rz,a);c.subscribe("licenseerror",a.sz,a);c.subscribe("newlicense",a.MA,a);c.subscribe("newsession",a.OA,a);c.subscribe("sessionready", +a.dB,a);c.subscribe("fairplay_next_need_key_info",a.zA,a);xja(c,a.M)}}}; +GG=function(a,b){var c=Bu("auto",b,!1,"l");if(g.P(a.u.experiments,"html5_drm_initial_constraint_from_config")?a.T.jl:g.P(a.u.experiments,"html5_drm_start_from_null_constraint")){if(Au(a.G,c))return}else if(Gu(a.G,b))return;a.G=c;a.S("qualitychange");AG(a,"updtlq"+b)}; +AG=function(a,b){SB(a.T)&&a.Oh.S("ctmp","drmlog",b)}; +IG=function(a,b,c,d){this.videoData=a;this.o=b;this.reason=c;this.u=d}; +Hja=function(a,b){this.videoData=a;this.xa=b}; +Ija=function(a,b,c){return b.on(c).then(function(){return(a.fa("disable_index_range_auth")||!b.lo||!b.xa.o||b.Ef()||b.Ml()?0:/(&|,|^)init=0-0(&|,|$)/.test(b.adaptiveFormats))?kr(new Os("auth",!0,{init:"1"})):lr(new Hja(b,b.xa))},function(d){d instanceof Error&&g.Go(d); +d=b.va&&!g.uu(a.A,!0)?"html5.unsupportedlive":"fmt.noneavailable";var e={buildRej:"1",a:""+ +!!b.adaptiveFormats,d:""+ +!!b.fe,f18:""+ +(0<=b.Gk.indexOf("itag=18")),c18:""+ +Ct('video/mp4; codecs="avc1.42001E, mp4a.40.2"'),f43:""+ +(0<=b.Gk.indexOf("itag=43")),c43:""+ +Ct('video/webm; codecs="vp8.0, vorbis"')};b.ia&&(e.f133=""+ +!!b.ia.o["133"],e.c133=""+ +Et('video/mp4; codecs="avc1.42001E"'),e.f140=""+ +!!b.ia.o["140"],e.c140=""+ +Et('audio/mp4; codecs="mp4a.40.2"'),e.f242=""+ +!!b.ia.o["242"], +e.c242=""+ +Et('video/webm; codecs="vp9"'));return new Os(d,!0,e)})}; +JG=function(a,b){g.O.call(this);this.o=a;this.M=b;this.P=this.C=this.F=this.w=this.u=this.B=this.I=this.A=0;this.G=1}; +LG=function(a,b,c){!g.P(a.o.experiments,"html5_tv_ignore_capable_constraint")&&g.$y(a.o)&&(c=Eu(c,KG(a,b)));return c}; +KG=function(a,b){if(g.$y(a.o)&&fu(a.o.A,ju))var c=b.xa.videoInfos[0].ya().fc;else{var d=!!b.xa.o;Qy(a.o)&&(c=window.screen&&window.screen.width?new g.Sd(window.screen.width,window.screen.height):null);c||(c=a.o.Pk?a.o.Pk.clone():a.M.getPlayerSize());if(Sy||MG||d){d=c;var e=g.iz();d.width*=e;d.height*=e}hB(b.videoData)||QB(b.videoData);var f=b.xa.videoInfos;if(f.length){d=.85;e=f[0].ya();4!=e.projectionType&&2!=e.projectionType&&3!=e.projectionType||Oy||(d=.45);e=f[0];var k=e.ya();f=g.q(f);for(var l= +f.next();!l.done&&!(e=k=l.value,k=k.ya(),null===c||k.width*d(0,g.N)()-a.B?0:f||0k?a.w+1:0;if(!e||g.$y(a.o)||!PG(a,b))return!1;a.u=d>e?a.u+1:0;if(3!=a.u)return!1;QG(a,b.videoData.Ba);a.S("ctmp","dfd",RG());return!0}; +PG=function(a,b){if(OG(a,"html5_restore_perf_cap_redux"))return!0;if(!b.videoData.Ba)return!1;if("1"==b.videoData.Ba.u)return!0;var c=a.o.o?240:360;return b.videoData.Ba.ya().fc>c}; +QG=function(a,b){var c=b.ya().fc-1,d=b.u,e=b.ya().fps,f=c,k=iy();d=hy(d,e);0<+k[d]&&(f=Math.min(+k[d],f));k[d]!=f&&(k[d]=f,g.Ds("yt-player-performance-cap",k,604800));a.o.Wf=new zu(0,c,!1,"b")}; +SG=function(a,b){if(OG(a,"html5_restore_perf_cap_redux")){if(!b.xa.o)return Du;for(var c=0,d=a.o.o?240:360,e=g.q(b.xa.videoInfos),f=e.next();!f.done;f=e.next()){f=f.value;var k=f.u,l=f.ya().fps;k=+iy()[hy(k,l)]||0;f=f.ya().fc;if(!k||Math.max(k,d)>=f){c=f;break}}return new zu(0,c,!1,"b")}return a.o.Wf}; +OG=function(a,b){return g.P(a.o.experiments,b)}; +Lja=function(a,b){OG(a,"html5_log_media_perf_info")&&(a.S("ctmp","perfdb",RG()),a.S("ctmp","hwc",""+navigator.hardwareConcurrency,!0),b&&a.S("ctmp","mcdb",b.xa.videoInfos.filter(function(c){return!1===c.A}).map(function(c){return ct(c)}).join("-")))}; +RG=function(){var a=Bb(iy(),function(b){return""+b}); +return Ps(a)}; +TG=function(){this.endTime=this.startTime=-1;this.ar="-";this.playbackRate=1;this.visibilityState=0;this.Uq="";this.volume=this.connectionType=this.Wg=0;this.muted=!1;this.clipId="-"}; +UG=function(a,b,c,d,e,f,k,l,m,n,p,t,u){this.videoData=a;this.o=b;this.Wc=c;this.B=d;this.u=e;this.A=f;this.G=k;this.getAudioTrack=l;this.getPlaybackRate=m;this.C=n;this.getVisibilityState=p;this.F=t||function(){}; +this.w=null;this.I=u||function(){}}; +g.WG=function(a){return VG(a)()}; +VG=function(a){if(!a.w){var b=g.Qa(function(c){var d=(0,g.N)();c&&631152E6>=d&&(g.M(Error("invalid coreTime.now value: "+d)),d=(new Date).getTime()+2);return d},g.P(a.o.experiments,"html5_validate_yt_now")); +a.w=g.Qa(function(c){return Math.round(b()-c)/1E3},b()); +a.I()}return a.w}; +YG=function(a){if(navigator.connection&&navigator.connection.type)return XG[navigator.connection.type]||XG.other;if(g.$y(a.o)){a=navigator.userAgent;if(/[Ww]ireless[)]/.test(a))return 3;if(/[Ww]ired[)]/.test(a))return 1}return 0}; +ZG=function(a){var b=new TG;b.ar=a.Wc().cc||"-";b.playbackRate=a.getPlaybackRate();var c=a.getVisibilityState();0!=c&&(b.visibilityState=c);a.o.Wg&&(b.Wg=1);c=a.getAudioTrack();c.tb&&c.tb.id&&"und"!=c.tb.id&&(b.Uq=c.tb.id);b.connectionType=YG(a);b.volume=a.Wc().volume;b.muted=a.Wc().muted;b.clipId=a.Wc().clipid||"-";return b}; +g.$G=function(a,b){this.state=a;this.Jh=b}; +aH=function(a,b){return g.V(a.state,b)&&!g.V(a.Jh,b)?1:!g.V(a.state,b)&&g.V(a.Jh,b)?-1:0}; +g.bH=function(a,b){return 0a.A)){var b=g.WG(a.u),c=b-a.P;a.P=b;8==a.o.o?a.F+=c:g.QC(a.o)&&!g.V(a.o,16)&&(a.G+=c)}}; +fH=function(a){var b=g.At(a.o.experiments,"web_player_ipp_canary_type_for_logging");if("control"==b)return"HTML5_PLAYER_CANARY_TYPE_CONTROL";if("experiment"==b)return"HTML5_PLAYER_CANARY_TYPE_EXPERIMENT";a=a.o.experiments.experimentIds;return a.includes("21561000")?"HTML5_PLAYER_CANARY_TYPE_SMALL_EXPERIMENT":a.includes("21561001")?"HTML5_PLAYER_CANARY_TYPE_SMALL_CONTROL":"HTML5_PLAYER_CANARY_TYPE_UNSPECIFIED"}; +Mja=function(a){return(!a.fa("html5_health_to_gel")||a.o.oa+36E5<(0,g.N)())&&(a.fa("html5_health_to_gel_canary_killswitch")||a.o.oa+36E5<(0,g.N)()||"HTML5_PLAYER_CANARY_TYPE_UNSPECIFIED"==fH(a))?a.fa("html5_health_to_qoe"):!0}; +hH=function(a){g.A.call(this);var b=this;this.o=a;this.u={};this.V=1;this.ma=NaN;this.w="N";this.F=this.Ca=this.wa=this.da=this.C=0;this.ba=this.Ea="";this.oa=0;this.Ia=-1;this.Aa=1;this.R=this.U=0;this.aa=this.M=!1;this.Ma=[];this.G=null;this.I=this.Z=this.A=!1;this.B=-1;this.ga=!1;this.Ka=new g.I(this.DF,750,this);g.B(this,this.Ka);(a=navigator.getBattery?navigator.getBattery():null)&&a.then&&a.then(function(c){b.G=c}); +g.gH(this,0,"vps",["N"])}; +g.gH=function(a,b,c,d){var e=a.u[c];e||(e=[],a.u[c]=e);e.push(b.toFixed(3)+":"+d.join(":"))}; +jH=function(a,b){var c=a.o.u();g.gH(a,b,"cmt",[c.toFixed(3)]);if(a.P&&1E3*c>a.P.eA+100){var d=a.P;a.ha=1E3*b-d.pO-(1E3*c-d.eA)-d.fO;iH(a,"gllat","l."+a.ha.toFixed());delete a.P}}; +lH=function(a,b){b=0<=b?b:g.WG(a.o);var c=a.o.A();if(!isNaN(a.za)&&!isNaN(c.w)){var d=c.w-a.za;0=c-d}; +XH=function(a){return Math.max(a.I()-WH(a,!0),a.T.Ab())}; +ZH=function(a,b,c){b=YH(a,b);c||b?b&&(a.A=!0):a.A=!1;a.C=2==a.o.u||3==a.o.u&&a.A}; +$H=function(a,b){var c=YH(a,b);a.F!=c&&a.S("livestatusshift",c);a.F=c}; +VH=function(a){return a.T.ia?by(a.T.ia)||5:5}; +TH=function(a,b){b=Math.max(Math.max(a.o.P,Math.ceil(a.o.w/VH(a))),b);return Math.min(Math.min(8,Math.floor(a.o.G/VH(a))),b)}; +Wja=function(){this.P=1;this.w=0;this.G=Infinity;this.I=0;this.A=!0;this.o=2;this.u=1;this.B=!1;this.F=NaN;this.M=this.C=!1}; +aI=function(){var a=xp();return!(!a||"visible"===a)}; +cI=function(a){var b=bI();b&&document.addEventListener(b,a,!1)}; +dI=function(a){var b=bI();b&&document.removeEventListener(b,a,!1)}; +bI=function(){if(document.visibilityState)var a="visibilitychange";else{if(!document[wp+"VisibilityState"])return"";a=wp+"visibilitychange"}return a}; +eI=function(){g.O.call(this);this.w=0;this.A=this.B=this.u=this.o=this.C=!1;this.F=(0,g.x)(this.Qi,this);cI(this.F);this.G=this.getVisibilityState(this.u,this.isFullscreen(),this.o,this.isInline(),this.B,this.A)}; +Xja=function(a,b){a.u!=b&&(a.u=b,a.Qi())}; +fI=function(a,b){a.B!=b&&(a.B=b,a.Qi())}; +iI=function(a,b,c){g.A.call(this);this.B=a;this.G=b;this.U=c;this.A=new g.HC;this.u=this.w=null;this.I=this.P=this.o=0;this.F=new g.I(this.V,1001,this);g.B(this,this.F);this.ha=new gI({delayMs:g.Q(this.B.experiments,"html5_seek_timeout_delay_ms")});this.R=new gI({delayMs:g.Q(this.B.experiments,"html5_long_rebuffer_threshold_ms")});this.da=hI(this,"html5_seek_set_cmt");this.Z=hI(this,"html5_seek_jiggle_cmt");this.aa=hI(this,"html5_seek_new_elem");this.M=hI(this,"html5_decoder_freeze_timeout");this.ba= +hI(this,"html5_reload_element_long_rebuffer");this.C={}}; +hI=function(a,b){var c=g.Q(a.B.experiments,b+"_delay_ms"),d=g.P(a.B.experiments,b+"_cfl");return new gI({delayMs:c,Ew:d})}; +kI=function(a,b,c,d,e,f,k){Yja(b,c)?(d=jI(a,b),d.wn=k,d.wdup=a.C[e]?"1":"0",a.G("qoeerror",e,d),a.C[e]=!0,b.F||f()):(b.B&&b.u&&!b.C?(f=(0,g.N)(),d?b.o||(b.o=f):b.o=0,c=!d&&f-b.u>b.B,f=b.o&&f-b.o>b.G||c?b.C=!0:!1):f=!1,f&&(f=jI(a,b),f.wn=k,f.we=e,f.wsuc=""+ +d,k=Ps(f),a.G("ctmp","workaroundReport",k),d&&(b.reset(),a.C[e]=!1)))}; +jI=function(a,b){var c=b.Za();a.o&&(c.stt=a.o.toFixed(3));a.u&&Object.assign(c,a.u.Za());a.w&&Object.assign(c,a.w.Za());return c}; +gI=function(a){a=void 0===a?{}:a;var b=void 0===a.iO?1E3:a.iO,c=void 0===a.jO?3E4:a.jO,d=void 0===a.Ew?!1:a.Ew;this.A=void 0===a.delayMs?0:a.delayMs;this.G=b;this.B=c;this.F=d;this.reset()}; +Yja=function(a,b){if(!a.A||a.u)return!1;if(!b)return a.reset(),!1;var c=(0,g.N)();if(!a.w)a.w=c;else if(c-a.w>a.A)return a.u=c,!0;return!1}; +pI=function(a,b,c){g.O.call(this);var d=this;this.U=b;this.T=a;this.V=new Zja(b);this.Ca=c;this.P=new iI(this.U,(0,g.x)(this.S,this),this.Ca);a={};this.Z=(a.seekplayerrequired=this.tO,a.videoformatchange=this.OI,a);lI(this,"html5_unrewrite_timestamps")?this.Z.timestamp=this.BO:this.Z.timestamp=this.AO;this.wa=null;this.ma=new g.Gr;g.B(this,this.ma);this.I=this.u=this.B=this.o=null;this.w=NaN;this.F=0;this.C=null;this.aa=NaN;this.G=this.M=null;this.ga=this.R=!1;this.ba=new g.I(function(){return mI(d, +!1)},this.V.o); +g.B(this,this.ba);this.da=new g.I(function(){d.R=!0;nI(d)}); +g.B(this,this.da);this.Ea=new g.I(function(){return oI(d)}); +g.B(this,this.Ea);this.oa=this.A=0;this.ha=!0;this.za=0;this.Aa=NaN}; +$ja=function(a,b){a.wa=b;a.T.va&&(a.I=new Vja(function(){a:{if(a.wa&&a.wa.xa.o){if(qB(a.T)&&a.B){var c=a.B.oa.o()||0;break a}if(a.T.ia){c=a.T.ia.G;break a}}c=0}return c}),a.u=new UH(a.T,a.U.experiments,function(){return a.sc(!0)})); +a.T.startSeconds&&isFinite(a.T.startSeconds)&&1E9=a.sc()-.1)a.w=a.sc(),a.C.resolve(a.sc()),a.S("ended");else try{var c=a.w-a.A;a.o.seekTo(c);a.P.o=c;a.aa=c;a.F=a.w}catch(d){}}}; +zI=function(a){if(!a.o||0==a.o.je()||0=c)){for(var d=2*a.u.length;dd;d++)a.view.setUint8(a.o,c&127|128),c>>=7,a.o+=1;b=Math.floor(b/268435456)}for(LI(a,4);127>=7,a.o+=1;a.view.setUint8(a.o,b);a.o+=1}; +NI=function(a,b,c){MI(a,b<<3|2);b=c.length;MI(a,b);LI(a,b);a.u.set(c,a.o);a.o+=b}; +OI=function(a,b,c){a.w||(a.w=new TextEncoder);c=a.w.encode(c);NI(a,b,c)}; +PI=function(a){return new Uint8Array(a.u.buffer,0,a.o)}; +QI=function(a){var b=a.gl,c=a.deviceId,d=a.userAgent,e=a.clientName,f=a.clientVersion;this.u=a.hl;this.C=b;this.B=c;this.F=d;this.w=e;this.A=f}; +RI=function(a){var b=a.encryptedClientKey,c=a.iv,d=a.hmac;this.w=a.encryptedOnesiePlayerRequest;this.u=b;this.B=c;this.A=d}; +SI=function(){}; +TI=function(a){this.u=a.client}; +UI=function(a){this.u=a;this.A=this.o=0;this.w=-1}; +VI=function(a){var b=uw(a.u,a.o);++a.o;if(128>b)return b;for(var c=b&127,d=1;128<=b;)b=uw(a.u,a.o),++a.o,d*=128,c+=(b&127)*d;return c}; +WI=function(a,b){for(a.A=b;a.o+1<=a.u.totalLength;){var c=a.w;0>c&&(c=VI(a));var d=c>>3,e=c&7;if(d===b)return!0;if(d>b){a.w=c;break}switch(e){case 0:VI(a);break;case 1:a.o+=8;break;case 2:c=VI(a);a.o+=c;break;case 5:a.o+=4}}return!1}; +XI=function(a,b){var c=void 0===c?null:c;if(!WI(a,b))return c;c=VI(a);var d=rw(a.u,a.o,c);a.o+=c;return d}; +fka=function(a){this.iv=XI(new UI(a),5)}; +gka=function(a){a=new UI(a);var b=-1;b=void 0===b?0:b;this.o=WI(a,1)?VI(a):b;0===this.o&&(a=XI(a,4),this.u=new fka(new kw([a])))}; +YI=function(a){var b=a.videoId;this.u=a.YF;this.w=b}; +ZI=function(a){var b=a.httpHeaders,c=a.postBody;this.w=a.url;this.u=b;this.A=c}; +hka=function(a){this.body=XI(new UI(a),4)}; +$I=function(a){this.u=a.BE}; +aJ=function(a,b){if(b+1<=a.totalLength){var c=uw(a,b);c=128>c?1:192>c?2:224>c?3:240>c?4:5}else c=0;if(1>c||!(b+c<=a.totalLength))return[-1,b];if(1===c)c=uw(a,b++);else if(2===c){c=uw(a,b++);var d=uw(a,b++);c=(c&63)+64*d}else if(3===c){c=uw(a,b++);d=uw(a,b++);var e=uw(a,b++);c=(c&31)+32*(d+256*e)}else if(4===c){c=uw(a,b++);d=uw(a,b++);e=uw(a,b++);var f=uw(a,b++);c=(c&15)+16*(d+256*(e+256*f))}else c=b+1,a.focus(c),ow(a,c,4)?c=pw(a).getUint32(c-a.w,!0):(d=uw(a,c+2)+256*uw(a,c+3),c=uw(a,c)+256*(uw(a, +c+1)+256*d)),b+=5;return[c,b]}; +bJ=function(a){this.o=new kw;this.u=a}; +cJ=function(a){var b=g.q(aJ(a.o,0));var c=b.next().value;var d=b.next().value;d=g.q(aJ(a.o,d));b=d.next().value;d=d.next().value;!(0>c||0>b)&&d+b<=a.o.totalLength&&(d=a.o.split(d).ij.split(b),b=d.mo,d=d.ij,a.u(c,b),a.o=d,cJ(a))}; +ika=function(a){var b,c;a:{var d,e=a.N().Jc;if(e){var f=null===(c=g.Es("yt-player-bandaid-host"))||void 0===c?void 0:c.WN;if(f&&e.baseUrl){c=new Xw("https://"+f+e.baseUrl);if(e=null===(d=a.tp)||void 0===d?void 0:d.urlQueryOverride)for(d=dx(e),d=g.q(Object.entries(d)),e=d.next();!e.done;e=d.next())f=g.q(e.value),e=f.next().value,f=f.next().value,c.set(e,f);if(!c.get("id")){e=ey(a.videoId);d=[];if(e)for(e=g.q(e),f=e.next();!f.done;f=e.next())d.push(f.value.toString(16).padStart(2,"0"));d=d.join(""); +if(!d){c=void 0;break a}c.set("id",d)}break a}}c=void 0}!c&&(null===(b=a.tp)||void 0===b?0:b.url)&&(c=new Xw(a.tp.url));if(!c)return"";c.set("ack","1");c.set("cpn",a.clientPlaybackNonce);c.set("opr","1");c.set("pvi","135");c.set("pai","140");c.set("oad","0");c.set("ovd","0");c.set("oaad","0");c.set("oavd","0");return c.jc()}; +dJ=function(a,b){var c=this;this.T=a;this.u=b;this.A=new JI(a.N().Jc.o);this.P=new bJ(function(d,e){switch(d){case 10:var f=new gka(e);switch(f.o){case 5:c.u.tick("orfb");break;case 0:c.G=f.u.iv}c.F=f.o;break;case 11:switch(c.F){case 0:jka(c,e)}c.F=null}}); +this.w=new WC;this.C=!1;this.B=new g.I(this.I,3E4,this)}; +eJ=function(a,b){a.w.reject(b);a.B.stop();a.u.tick("ore");a.o&&a.o.abort()}; +fJ=function(a){for(;a.o.Te();){var b=a.o.Ro();a.P.feed(b)}}; +jka=function(a,b){var c,d,e,f;g.Ba(function(k){if(1==k.o)return a.u.tick("orpr"),a.C=!0,c=rw(b),g.ta(k,a.A.decrypt(c,a.G),2);d=k.u;e=new hka(new kw([d]));f=e.body;a.Da=(new TextDecoder).decode(f);a.u.tick("oprr");a.w.resolve(a.Da);a.B.stop();k.o=0})}; +lka=function(a){var b,c;return g.Ba(function(d){if(1==d.o)return g.ta(d,kka(a),2);b=d.u;c={BE:b};return d["return"](new $I(c))})}; +kka=function(a){var b,c,d,e,f;return g.Ba(function(k){if(1==k.o)return g.ta(k,mka(a),2);if(3!=k.o)return b=k.u,c=a.A.o.encryptedClientKey,d=a.A.u,g.ta(k,eka(a.A,b),3);e=k.u;f={encryptedOnesiePlayerRequest:b,encryptedClientKey:c,iv:d,hmac:e};return k["return"](new RI(f))})}; +mka=function(a){var b,c,d;return g.Ba(function(e){switch(e.o){case 1:var f=a.T.N().vg;f="https://youtubei.googleapis.com/youtubei/"+f.innertubeApiVersion+"/player?key="+f.innertubeApiKey;var k=[];k.push(new SI);var l=a.T.N().vg,m=l.Hl,n=l.Gl,p=g.Ic;switch(l.Mj){case "TVHTML5":var t=7;break;default:t=56}b=new ZI({url:f,httpHeaders:k,postBody:new YI({YF:new TI({client:new QI({hl:m,gl:n,deviceId:"Rory",userAgent:p,clientName:t,clientVersion:l.innertubeContextClientVersion})}),videoId:a.T.videoId})}); +e.B=2;return g.ta(e,a.A.encrypt(b.o()),4);case 4:c=e.u;ua(e,3);break;case 2:return va(e),d=new Os("onesie.request.encrypt",!1),e["return"](Promise.reject(d));case 3:return e["return"](c)}})}; +rka=function(a,b,c,d){a.ea();a.wc=!0;return nka(a.N())?oka(a).then(function(){return pka(a,d)}).then(function(){qka(a)})["catch"](function(e){e=Qs(e); +if(e.o)return Promise.reject(e);c(e);return gJ(a,b,c)}):gJ(a,b,c)}; +nka=function(a){return g.P(a.experiments,"html5_onesie")&&g.P(a.experiments,"html5_onesie_player_config")&&"yt"===a.V?!0:!1}; +oka=function(a){a=a.N().Jc;if(!a||!a.o)return Promise.reject(new Os("onesie.unavailable.hotconfig",!1,{key:"0"}));a={};window.fetch||(a.fetch="0");window.TextEncoder&&window.TextDecoder||(a.text="0");window.crypto&&window.crypto.subtle&&window.crypto.subtle.importKey||(a.crypto="0");window.Uint8Array||(a.uint8="0");return 0Math.random())try{g.Uq(new Sq("b/152131571",btoa(b)))}catch(D){}return C["return"](Promise.reject(new Os(z,!0,{backend:"gvi"})))}})})}; +ska=function(a,b){return mh(this,function d(){var e,f,k,l,m,n,p,t,u,z,C,D;return Aa(d,function(E){if(1==E.o)return e=a.N(),f={format:"RAW",method:"GET",withCredentials:!0,timeout:3E4},k={},e.sendVisitorIdHeader&&a.visitorData&&(k["X-Goog-Visitor-Id"]=a.visitorData),(l=g.At(e.experiments,"debug_dapper_trace_id"))&&(k["X-Google-DapperTraceInfo"]=l),(m=g.At(e.experiments,"debug_sherlog_username"))&&(k["X-Youtube-Sherlog-Username"]=m),0b.startSeconds){var c=b.endSeconds;a.ba&&(a.removeCueRange(a.ba),a.ba=null);a.ba=new g.iC(1E3*c,0x7ffffffffffff);a.ba.namespace="endcr";a.addCueRange(a.ba)}}; +IJ=function(a,b,c,d){a.T.Ba=c;d&&GJ(a,b,d);var e=(d=g.HJ(a))?ct(d):"";d=a.B;e=new IG(a.T,c,b,e);if(d.o){c=d.o;d=g.WG(c.o);g.gH(c,d,"vfs",[e.o.id,e.u,c.Ea,e.reason]);c.Ea=e.o.id;e=c.o.G();if(0=a.start);return b}; +PJ=function(a,b){if(a.o&&b.ua()==a.o.ua()&&(b.isView()||a.o.isView())){if(b.isView()||!a.o.isView())g.Ir(a.Ca),a.o=b,NJ(a),rI(a.C,a.o)}else{a.o&&OJ(a);if(!a.u.isError()){var c=LC(a.u,512);g.V(c,8)&&!g.V(c,2)&&(c=KC(c,1));b.isView()&&(c=LC(c,64));tJ(a,c)}a.o=b;a.o.setLoop(a.Kc);a.o.setPlaybackRate(a.yb);NJ(a);rI(a.C,a.o)}}; +OJ=function(a,b,c){b=void 0===b?!1:b;c=void 0===c?!1:c;if(a.o){var d=a.getCurrentTime();01E3*m);l&&(f=f?Math.min(f,k):k)}(k=g.Q(b.o.experiments,"html5_autoplay_default_quality_cap"))&&OB(c.videoData)&&(f=f?Math.min(f,k):k);k=g.Q(b.o.experiments,"html5_random_playback_cap");m=/[a-h]$/;k&&m.test(c.videoData.clientPlaybackNonce)&&(f=f?Math.min(f,k):k);if(m=k=g.Q(b.o.experiments,"html5_hfr_quality_cap"))a:{m= +c.xa;if(m.o)for(m=g.q(m.videoInfos),l=m.next();!l.done;l=m.next())if(32b.o;c||d||b?a.S("reattachrequired"):(CE(a.u)&&IF(a,a.u,a.A),a.aa.Ua())}}}; +YJ=function(a){XJ(a,"html5_nonblocking_media_capabilities")?VJ(a):WJ(a)}; +$J=function(a){Dga(a.T.ia,{cpn:a.T.clientPlaybackNonce,c:a.A.deviceParams.c,cver:a.A.deviceParams.cver});var b=a.A,c=a.T,d=new g.Iw,e=Hw(b,{hasSubfragmentedFmp4:c.hasSubfragmentedFmp4,Jj:c.Jj});d.A=e;d.Wf=b.fa("html5_unify_sqless_flow");d.R=b.fa("html5_accurate_seeking_redux");d.yb=b.fa("html5_unrewrite_timestamps");d.Wa=b.fa("html5_stop_overlapping_requests");d.Ea=g.Q(b.experiments,"html5_min_readbehind_secs");d.Tn=g.Q(b.experiments,"html5_min_readbehind_cap_secs");g.$y(b)&&(d.Ea=g.Q(b.experiments, +"tvhtml5_min_readbehind_secs"));d.Qg=b.fa("html5_append_init_while_paused");d.Kc=g.Q(b.experiments,"html5_max_readahead_bandwidth_cap");d.od=g.Q(b.experiments,"html5_post_interrupt_readahead");d.M=g.Q(b.experiments,"html5_subsegment_readahead_target_buffer_health_secs");d.rb=g.Q(b.experiments,"html5_subsegment_readahead_timeout_secs");d.Dv=g.Q(b.experiments,"html5_subsegment_readahead_min_buffer_health_secs");d.nb=g.Q(b.experiments,"html5_subsegment_readahead_min_buffer_health_secs_on_timeout");d.Ev= +g.Q(b.experiments,"html5_subsegment_readahead_min_load_speed");d.Vf=g.Q(b.experiments,"html5_subsegment_readahead_load_speed_check_interval");d.Fv=g.Q(b.experiments,"html5_subsegment_readahead_seek_latency_fudge");d.Ka=b.fa("html5_peak_shave");d.aA=b.fa("html5_peak_shave_always_include_sd");d.ov=b.fa("html5_restrict_streaming_xhr_on_sqless_requests");d.Hn=g.Q(b.experiments,"html5_max_headm_for_streaming_xhr");d.fA=b.fa("html5_pipeline_manifestless_allow_nonstreaming");d.pC=b.fa("html5_prefer_server_bwe3"); +d.Yf=1024*g.Q(b.experiments,"html5_video_tbd_min_kb");d.BC=b.fa("html5_probe_live_using_range");d.gn=b.fa("html5_last_slice_transition");d.Bv=b.fa("html5_store_xhr_headers_readable");d.cn=b.fa("html5_enable_packet_train_response_rate");if(e=g.Q(b.experiments,"html5_probe_secondary_during_timeout_miss_count"))d.qd=e,d.Gv=1;d.Ma=g.Q(b.experiments,"html5_probe_primary_delay_base_ms")||d.Ma;d.Tc=b.fa("html5_no_placeholder_rollbacks");d.Cv=b.fa("html5_subsegment_readahead_enable_mffa");b.fa("html5_allow_video_keyframe_without_audio")&& +(d.ha=!0);d.rd=b.fa("html5_reattach_on_stuck");d.Kv=b.fa("html5_webm_init_skipping");d.Md=g.Q(b.experiments,"html5_request_size_padding_secs")||d.Md;d.kn=b.fa("html5_log_timestamp_offset");d.Rb=b.fa("html5_abs_buffer_health");d.fn=b.fa("html5_interruption_resets_seeked_time");d.Jc=g.Q(b.experiments,"html5_max_live_dvr_window_plus_margin_secs")||d.Jc;d.pc=b.fa("html5_explicitly_dispose_xhr");d.zo=b.fa("html5_gapless_no_requests_after_lock");d.pd=g.Q(b.experiments,"html5_probe_primary_failure_factor"); +d.Av=b.fa("html5_skip_invalid_sq");d.kv=b.fa("html5_restart_on_unexpected_detach");d.jn=b.fa("html5_log_live_discontinuity");d.tv=b.fa("html5_rewrite_manifestless_for_continuity");d.Hc=g.Q(b.experiments,"html5_max_drift_per_track_secs");d.xv=b.fa("html5_rewrite_manifestless_for_sync");d.qe=g.Q(b.experiments,"html5_static_abr_resolution_shelf");d.Pk=!b.fa("html5_encourage_array_coalescing");d.an=b.fa("html5_crypto_period_secs_from_emsg");d.ga=b.fa("html5_defer_slicing");d.Xb=g.Q(b.experiments,"html5_buffer_health_to_defer_slice_processing"); +b.fa("html5_media_common_config_killswitch")||(d.B=c.maxReadAheadMediaTimeMs/1E3||d.B,e=b.schedule,e.u.o()===e.policy.w?d.U=10:d.U=c.minReadAheadMediaTimeMs/1E3||d.U,d.ac=c.readAheadGrowthRateMs/1E3||d.ac);uh&&(d.V=41943040);d.da=!bu();g.$y(b)||!bu()?(e=b.experiments,d.C=8388608,d.G=524288,d.Yh=5,d.za=2097152,d.ba=1048576,d.WC=1.5,d.sy=!1,d.I=4587520,il()&&(d.I=786432),d.o*=1.1,d.u*=1.1,d.Ta=!0,d.V=d.C,d.Aa=d.G,d.Uc=g.P(e,"persist_disable_player_preload_on_tv")||g.P(e,"persist_disable_player_preload_on_tv_for_living_room")|| +!1):b.o&&(d.o*=1.3,d.u*=1.3);g.Dt&&dl("crkey")&&(e="CHROMECAST/ANCHOVY"==b.deviceParams.cmodel,d.C=20971520,d.G=1572864,e&&(d.I=812500,d.P=1E3,d.Jv=5,d.ba=2097152));!b.fa("html5_disable_firefox_init_skipping")&&g.hu&&(d.Ta=!0);b.supportsGaplessAudio()||(d.bn=!1);Jy&&(d.Mh=!0);if(qB(c)){d.en=!0;d.zv=!0;if("ULTRALOW"==c.latencyClass||"LOW"==c.latencyClass&&!b.fa("html5_disable_low_pipeline"))d.nn=2,d.Nn=4;d.gg=c.defraggedFromSubfragments;c.Mb&&(d.Qa=!0);g.GB(c)&&(d.R=!1);d.Qk=g.lz(b)}c.isAd()&&(d.Ca= +0,d.qc=0);sB(c)&&(d.aa=!0);d.ma=b.fa("html5_enable_subsegment_readahead_v3")||b.fa("html5_ultra_low_latency_subsegment_readahead")&&"ULTRALOW"==c.latencyClass;d.oa=c.xg;d.hn=d.oa&&(/^rq[a-f]/.test(c.clientPlaybackNonce)||SB(c));pl()&&/(K\d{3}|KS\d{3}|KU\d{3})/.test(b.deviceParams.cmodel)&&!b.fa("html5_disable_move_pssh_to_moov")&&Nx(c.ia)&&(d.Ta=!1);Nx(c.ia)&&(d.rd=!1);if(c.va){e=by(c.ia);var f=g.Q(b.experiments,"html5_live_abr_head_miss_fraction"),k=g.Q(b.experiments,"html5_live_abr_repredict_fraction"); +f&&e&&(d.Ic=Math.min(e*f,d.Ic));k&&e&&(d.P=Math.min(1E3*e*k,d.P))}f=0;b.fa("html5_live_use_alternate_bandwidth_window_sizes")&&(f=b.schedule.policy.o,c.va&&(f=g.Q(b.experiments,"ULTRALOW"==c.latencyClass?"html5_live_ultra_low_latency_bandwidth_window":c.isLowLatencyLiveStream?"html5_live_low_latency_bandwidth_window":"html5_live_normal_latency_bandwidth_window")||f));e=b.schedule;e.P.o=qB(c)?.5:0;if(!e.policy.u&&f&&(e=e.u,f=Math.round(f*e.resolution),f!==e.u)){k=Array(f);var l=Math.min(f,e.A?e.u: +e.valueIndex),m=e.valueIndex-l;0>m&&(m+=e.u);for(var n=0;na.T.endSeconds&&isFinite(b)&&(a.removeCueRange(a.ba),a.ba=null);ba.G.getDuration()&&Zt(a.G,c)):Zt(a.G,d);var e=a.w,f=a.G;e.U&&(CF(e),e.U=!1);BF(e);if(!$t(f)){var k=e.u.o.info.mimeType+e.o.dn,l=e.A.o.info.mimeType,m=new Ut("fakesb"==l?new Lt:f.w.addSourceBuffer(l),bt(l),!1),n=new Ut("fakesb"==k?new Lt:f.w.addSourceBuffer(k), +bt(k),!0);f.o=m;f.u=n;g.B(f,m);g.B(f,n)}hE(e.u,f.u);hE(e.A,f.o);e.w=f;e.resume();Jr(f.o,e.wa,e);Jr(f.u,e.wa,e);e.o.kn&&1E-4>=Math.random()&&e.Dc("toff",""+f.o.supports(1),!0);e.Hf();a.S("mediasourceattached");a.qd.stop()}}catch(p){g.Uq(p),a.Ki(new Os("fmt.unplayable",!0,{msi:"1",ename:p.name}))}})}; +eK=function(a){a.w?Lf(a.w.seek(a.getCurrentTime()-a.Bb()),function(){}):$J(a)}; +Bka=function(a){return 403==a.details.rc?(a=a.errorCode,"net.badstatus"==a||"manifest.net.retryexhausted"==a):!1}; +iK=function(a){return a.Ta||"yt"!=a.A.V?!1:a.T.se?25>a.T.Jf:!a.T.Jf}; +jK=function(a){a.Ta||(a.Ta=!0,a.S("signatureexpired"))}; +lK=function(a,b){try{window.location.reload(!0);a.B.onError("qoe.restart",Ps({detail:"pr."+b}));return}catch(c){}XJ(a,"tvhtml5_retire_old_players")&&g.$y(a.A)&&kK(a)}; +mK=function(a){return"net.retryexhausted"==a.errorCode||"net.badstatus"==a.errorCode&&!!a.details.fmt_unav}; +Cka=function(a,b){if(a.o&&("fmt.unplayable"==b.errorCode||"html5.invalidstate"==b.errorCode)){var c=a.o.Ye();b.details.merr=c?c.toString():"0";b.details.msg=a.o.bk()}}; +gK=function(a,b,c){var d=g.Q(a.A.experiments,"html5_error_cooldown_in_ms")||3E4;if(a.nb+d>(0,g.H)())return!a.T.se&&(a.A.ga+=1,10a-.3)}; +sK=function(a){window.clearInterval(a.Xb);a.oa.stop();a.T.se=!0;a.A.se=!0;a.A.ga=0;rK(a);g.V(a.u,8)&&tJ(a,LC(a.u,65));var b=a.B;if(b.u){var c=b.u;if(!c.w){g.P(c.o.o.experiments,"disable_embedpage_playback_logging")||16623!=c.o.videoData.Jp||g.Go(Error("Playback for EmbedPage"));var d=GH(c,"playback");c.I=[10+c.o.videoData.Lj,10,10,40+c.o.videoData.Rl-c.o.videoData.Lj,40];var e=c.u;window.clearInterval(e.G);e.G=NaN;e.G=Io((0,g.x)(e.update,e),100);e.F=g.WG(e.u);e.B=ZG(e.u);d.u=FH(c,!0);d.send();c.o.videoData.wp&& +(d=c.o.o,e=c.o.videoData,e={html5:"1",video_id:e.videoId,cpn:e.clientPlaybackNonce,ei:e.eventId,ptk:e.wp,oid:e.oB,ptchn:e.nB,pltype:e.pB,content_v:e.ri()},d=g.yd(d.G+"ptracking",e),JH(c,d));c.o.videoData.ll&&(c.F("playback"),c.A||MH(c));c.o.videoData.Me||LH(c);c.w=!0;c=c.u;c.o=c.u.u();c.F=g.WG(c.u);!(0==c.w&&5>c.o)&&2b.w&&(b.w=c,b.B.start()),b.A=c,b.P=c);a.pc.Ua();a.S("playbackstarted");g.Vp()&&((a=g.w("yt.scheduler.instance.clearPriorityThreshold"))? +a():Xp(0))}; +rK=function(a){var b=a.getCurrentTime(),c=a.T;!LA("pbs",a.I.timerName)&&MA.measure&&MA.getEntriesByName&&(MA.getEntriesByName("mark_nr")[0]?NA("mark_nr"):NA());c.videoId&&a.I.info("docid",c.videoId);c.eventId&&a.I.info("ei",c.eventId);c.clientPlaybackNonce&&a.I.info("cpn",c.clientPlaybackNonce);0=k.u&&ef.B||(0,g.H)()-f.G=c.o.videoData.Me&&(c.w&&c.o.videoData.Me&& +(d=GH(c,"delayplay"),d.Ea=!0,d.send(),c.R=!0),LH(c))),a.T.va&&(0,g.H)()>a.Xf+6283&&(!a.isAtLiveHead()||a.T.ia&&$x(a.T.ia)||(c=a.B,c.o&&(c=c.o,e=c.o.A(),d=g.WG(c.o),kH(c,d,e),e=e.C,isNaN(e)||g.gH(c,d,"e2el",[e.toFixed(3)]))),g.lz(a.A)&&a.Ra("rawlat","l."+HI(a.ha,"rawlivelatency").toFixed(3)),a.Xf=(0,g.H)()),a.T.Ba&&ht(a.T.Ba)&&(c=vJ(a))&&c.videoHeight!=a.Jc&&(a.Jc=c.videoHeight,XJ(a,"html5_log_hls_video_height_change_as_format_change")&&a.T.me&&"auto"==a.T.me.og.ya().quality&&a.T.Gg)))for(c=g.q(a.T.Gg), +d=c.next();!d.done;d=c.next())if(d=d.value,d.getHeight()==a.Jc&&"auto"!=d.og.ya().quality){IJ(a,"a",d.ge());break}Kja(a.U,a.P,a.o,a.M.isBackground())&&YJ(a);c=a.U;d=a.T.Ba;0>=g.Q(c.o.experiments,"hfr_dropped_framerate_fallback_threshold")||!(d&&d.ya()&&32aH(c,8)||g.bH(c,1024))&& +a.oa.stop();!g.bH(c,8)||a.T.se||g.V(c.state,1024)||a.oa.start();g.V(c.state,8)&&0>aH(c,16)&&!g.V(c.state,32)&&!g.V(c.state,2)&&a.playVideo();g.V(c.state,2)&&HB(a.T)&&(e=a.getCurrentTime(),a.T.lengthSeconds!=e&&(a.T.lengthSeconds=e,sJ(a)),nK(a,!0));g.bH(c,2)&&(a.Au(!0),tK(a));g.bH(c,128)&&tK(a);a.T.ia&&a.T.va&&!a.Rg&&(0>aH(c,8)?(e=a.T.ia,e.A&&e.A.stop()):g.bH(c,8)&&a.T.ia.resume());e=a.C;e.P.A=c.state;if(f=e.o)f=8==c.Jh.o&&PC(c.state)&&g.QC(c.state)&&e.V.A;if(f){f=e.o.getCurrentTime();var k=e.o.Dd(); +var l=lI(e,"manifestless_post_live_ufph")||lI(e,"manifestless_post_live")?Ot(k,Math.max(f-3.5,0)):Ot(k,f-3.5);0<=l&&f>k.end(l)-1.1&&l+1k.start(l+1)-k.end(l)&&(l=k.start(l+1)+.2,.2>Math.abs(e.Aa-l)||(e.S("ctmp","seekover","b."+Nt(k,"_")+";cmt."+f),e.Aa=l,e.seekTo(l,{Fl:!0})))}e=a.B;if(g.bH(c,1024)||g.bH(c,2048)||g.bH(c,512)||g.bH(c,4))e.w&&(f=e.w,0<=f.A||(f.w=-1,f.B.stop())),e.o&&(f=e.o,f.o.fa("html5_qoe_user_intent_match_health")&&!f.A&&(f.B=-1));e.u&&(f=e.u,f.ea()||(g.V(c.state,2)? +(f.B="paused",g.bH(c,2)&&f.w&&IH(f).send()):g.V(c.state,8)?(f.B="playing",f.w&&isNaN(f.C)&&FH(f,!1)):f.B="paused",f.A&&g.V(c.state,128)&&(f.F("error-100"),g.Jo(f.A))));if(e.o){f=e.o;k=c.state;l=g.WG(f.o);var m=Oja(f,c.state);if(m!=f.w){if(!(l=f.R&&(f.o.F(),f.u.qoealert=["1"],f.aa=!0)}"B"!=m||"PL"!=f.w&&"PB"!=f.w||(f.M=!0);f.C=l}"B"==m&&"PL"== +f.w||f.o.videoData.xg?lH(f,l):jH(f,l);"PL"===m&&f.Ka.Ua();g.gH(f,l,"vps",[m]);f.w=m;f.da=l;f.C=l;f.I=!0}m=k.u;g.V(k,128)&&m&&nH(f,l,m.errorCode,m.LB);(g.V(k,2)||g.V(k,128))&&f.uk(l);f.o.fa("html5_qoe_user_intent_match_health")?k.eb()&&!f.A&&(0<=f.B&&(f.u.user_intent=[f.B.toString()]),f.A=!0):g.V(k,8)&&f.o.videoData.Zi&&!f.A&&(f.u.user_intent=[l.toString()],f.A=!0);mH(f)}e.w&&(e=e.w,eH(e),e.o=c.state,0<=e.A&&g.bH(c,16)&&e.M++,c.state.isError()&&e.C());if(d&&!a.ea())try{for(var p=g.q(a.Yb),t=p.next();!t.done;t= +p.next()){var u=t.value,z=a.R;c=u;if(z.started&&(z.u(),g.V(c.Jh,16))){c=z;var C=mF(c.o,Math.max(c.A-2E3,0));!isNaN(C)&&0x7ffffffffffff>C&&c.B.start()}a.S("statechange",u)}}finally{a.Yb.length=0}}}; +uK=function(a,b){g.V(a.u,128)||(tJ(a,MC(a.u,1028,9)),a.Ra("dompaused",b),a.S("onDompaused"))}; +BJ=function(a){if(!a.o||!a.T.xa)return!1;var b=null;a.T.xa.o?(b=fK(a),a.w.resume()):(nJ(a),a.T.me&&(b=a.T.me.em()));var c=b;var d=a.o.Uo();b=!1;d&&null!==c&&c.o===d.o||(a.I.tick("vta"),OA("vta"),0d&&(d=-(d+1));g.se(a,b,d);b.setAttribute("data-layer",c)}; +g.jL=function(a){var b=a.N();if(!b.nb)return!1;var c=a.getVideoData();if(!c||3==a.getPresentingPlayerType())return!1;var d=!c.isLiveDefaultBroadcast||g.P(b.experiments,"allow_poltergust_autoplay");d=c.va&&(!g.P(b.experiments,"allow_live_autoplay")||!d);var e=c.va&&g.P(b.experiments,"allow_live_autoplay_on_mweb"),f=!!a.getPlaylist();g.P(b.experiments,"player_allow_autonav_after_playlist")&&(f=(a=a.getPlaylist())&&a.hasNext());return!c.ypcPreview&&(!d||e)&&!g.$a(c.Rc,"ypc")&&!f}; +g.kL=function(a,b,c,d){a.N().Z&&Ika(a.app.oa,b,c,d)}; +g.lL=function(a,b,c){a.N().Z&&Jka(a.app.oa,b,c)}; +g.mL=function(a,b,c){a.N().Z&&(a.app.oa.o.has(b),c&&(b.visualElement=g.Wr(c)))}; +g.nL=function(a,b){a.N().Z&&a.app.oa.click(b)}; +g.oL=function(a,b,c){if(a.N().Z&&(a=a.app.oa,a.o.has(b),c?a.u.add(b):a.u["delete"](b),c&&!a.A.has(b))){c=g.ds();var d=b.visualElement;c&&d&&g.us(c,d);a.A.add(b)}}; +g.pL=function(a,b){return a.N().Z?a.app.oa.o.has(b):!1}; +g.sL=function(a,b){if(a.app.getPresentingPlayerType()==b){var c=a.app,d=g.W(c,b);d&&(d!=c.w?qL(c,c.w):rL(c))}}; +Kka=function(a){if(!a.fa("html5_inline_video_quality_survey"))return!1;var b=g.W(a.app);if(!b)return!1;var c=b.getVideoData();if(!c.Ba||!c.Ba.video||1080>c.Ba.video.fc||c.ay)return!1;var d=/^qsa/.test(c.clientPlaybackNonce),e="r";0<=c.Ba.id.indexOf(";")&&(d=/^[a-p]/.test(c.clientPlaybackNonce),e="x");a.fa("html5_inline_video_quality_survey_always")&&(d=!0,e="a");return d?(b.Ra("iqss",e,!0),!0):!1}; +tL=function(a,b){document.requestStorageAccess().then(a,b)}; +uL=function(a){if(a){var b=[],c;for(c in a)Lka.has(c)||b.push(c);b.length&&(b.sort(),g.Uq(new Sq("Unknown house brand player vars:",b)))}}; +g.vL=function(a){g.O.call(this);this.loaded=!1;this.player=a}; +g.wL=function(a,b){return jt(a.info.mimeType)?b?ct(a.info)===b:!0:!1}; +g.xL=function(a,b){if(null!=a.ia&&g.lz(b.N())&&!a.ia.u&&null!=a.ia.o.rawcc)return!0;if(!a.Ef())return!1;var c=!!a.ia&&a.ia.u&&Object.values(a.ia.o).some(function(e){return g.wL(e,"386")}),d=!!a.ia&&!a.ia.u&&rga(a.ia); +return c||d}; +yL=function(a,b){g.A.call(this);this.F=b;this.u=new Map;this.w={};this.A={};this.C=null;this.o=a;this.B=g.P(a.N().experiments,"web_player_defer_modules")}; +g.zL=function(a){return a.u.get("captions")}; +Nka=function(a,b){switch(b){case "ad":return AL(a);case "annotations_module":var c=a.o.N();if(Vy(c))c=!1;else{var d=a.o.getVideoData();c=d.ny||"3"==c.controlsType?!1:c.I.isEmpty()&&"annotation-editor"!=c.playerStyle&&"live-dashboard"!=c.playerStyle?!!d.be||!!g.KB(d)||!!g.LB(d):!0}return c;case "attribution":return c=a.o.N(),g.P(c.experiments,"web_player_show_music_in_this_video")&&"desktop-polymer"==c.playerStyle;case "creatorendscreen":return c=a.o.N(),"3"==c.controlsType?c=!1:"creator-endscreen-editor"== +c.playerStyle?c=!0:(c=a.o.getVideoData(),c=!!c&&(!!g.IB(c)||!!g.JB(c))),c;case "embed":return g.Ly(a.o.N());case "endscreen":return g.BL(a);case "fresca":return a.o.getVideoData().Sn;case "heartbeat":return a.o.getVideoData().Vm;case "kids":return bz(a.o.N());case "remote":return a.o.N().ac;case "miniplayer":return a.o.N().showMiniplayerUiWhenMinimized;case "music":return g.Uy(a.o.N());case "captions":return"lb3"==a.o.N().playerStyle?c=!1:(c=a.o.getVideoData(),c=!!c.Wk||!!c.captionTracks.length|| +g.xL(c,a.o)),c;case "unplugged":return g.az(a.o.N());case "ux":return a.o.N().za;case "visualizer":return g.CL(a);case "webgl":return Mka(a);case "ypc":return a.Fm();case "ypc_clickwrap":return c=a.o.getVideoData(),c.Kk&&!c.Cs;case "yto":return!!a.o.getVideoData().Rc.includes("yto");default:return g.Tq(Error("Module descriptor "+b+" does not match")),!1}}; +DL=function(a){a.B&&(a.sd("endscreen"),a.qr(),a.sd("creatorendscreen",void 0,!0))}; +g.BL=function(a){var b=a.o.N();if(g.rz(b)||b.B||!b.Aa&&!b.Ta)return!1;var c=a.o.getPresentingPlayerType();if(2==c)return!1;if(3==c)return g.P(b.experiments,"desktop_enable_autoplay");a=a.o.getVideoData();if(!a)return!1;c=!a.isLiveDefaultBroadcast||g.P(b.experiments,"allow_poltergust_autoplay");c=a.va&&(!g.P(b.experiments,"allow_live_autoplay")||!c);b=a.va&&g.P(b.experiments,"allow_live_autoplay_on_mweb");return!c||b}; +g.VK=function(a){return a.u.get("webgl")}; +Mka=function(a){var b=a.o.getVideoData(),c=a.o.N().experiments,d=g.kl(),e=g.P(c,"enable_spherical_kabuki");a=g.pz(a.o.N());if(b.tg())return d||e||a||g.P(c,"html5_enable_spherical");if(b.yg())return a||d||e||g.P(c,"html5_enable_spherical");if(b.zg())return a||d||g.P(c,"html5_enable_spherical3d");if(b.Oj())return a||g.P(c,"html5_enable_anaglyph3d")||!1;d=b.Ba&&b.Ba.video&&$s(b.Ba.video);return a&&!g.yB(b)&&!b.isVisualizerEligible&&!d&&(g.P(c,"enable_webgl_noop")||g.P(c,"html5_enable_bicubicsharp")|| +g.P(c,"html5_enable_smartsharp"))}; +EL=function(a){g.P(a.o.N().experiments,"web_player_ux_module_wait")&&a.u.get("ux")&&g.fL(a.o,"ux")}; +Oka=function(a){EL(a);a.sd("ux",void 0,!0)}; +AL=function(a){if(a=a.o.getVideoData(1).getPlayerResponse())if(a=a.adPlacements)for(var b=0;bMath.random()){var u=new Sq("Unable to load player module",b+".js from "+d+" on "+(document.location&&document.location.origin)+".");g.Tq(u)}nf(p);t&&t()},k.onerror); +k.onreadystatechange=g.Qa(function(t){switch(k.readyState){case "loaded":case "complete":nf(n,this)}t&&t()},k.onreadystatechange); +f&&((e=a.o.N().qd)&&k.setAttribute("nonce",e),$c(k,gh(d)),e=document.getElementsByTagName("HEAD")[0]||document.body,e.insertBefore(k,e.firstChild),g.Ge(a,function(){k.parentNode&&k.parentNode.removeChild(k);g.KL[b]=null;"annotations_module"==b&&(g.KL.creatorendscreen=null)}))}}; +g.ML=function(a){g.vC.call(this);this.o=a;this.u={}}; +NL=function(){this.o=[];this.u=[];this.w=[]}; +PL=function(a,b,c){c=g.oe(c?"AUDIO":"VIDEO");g.Ra(c,Pka);g.Ep(c,"loadeddata",(0,g.x)(c.u,c));Sy&&6<=UB&&g.Ep(c,"webkitbeginfullscreen",(0,g.x)(c.play,c));a.u.push(c);b?a.w.push(c):OL(a,c);return c}; +OL=function(a,b){g.$a(a.u,b)&&!g.$a(a.o,b)&&(b.src||b.load(),g.db(a.w,b)||a.o.push(b))}; +Qka=function(){this.u=200;this.o=12}; +Rka=function(a){var b=new Qka;b.u=g.Q(a.experiments,"html5_gapless_ended_transition_buffer_ms");b.o=g.Q(a.experiments,"html5_gapless_max_played_ranges");return b}; +g.QL=function(a,b,c,d){d=void 0===d?!1:d;g.vC.call(this);this.o=a;this.u=b;this.A=c;this.G=d}; +Ska=function(a,b,c,d){var e=c.getVideoData(),f=b.getVideoData();if(c.getPlayerState().isError())return"player-error";if(uI(b.C)>d/1E3+1)return"in-the-past";if(f.va&&!isFinite(d))return"live-infinite";if(a.o&&((b=b.o)&&b.isView()&&(b=b.o),b&&b.Dj().length>a.o&&g.yB(e)))return"played-ranges";if(!e.xa)return null;if(!e.xa.o||!f.xa.o)return"non-dash";if(e.xa.videoInfos[0].containerType!=f.xa.videoInfos[0].containerType)return"container";if(g.yB(f)&&g.yB(e))return"content-protection";a=f.xa.o[0].audio; +e=e.xa.o[0].audio;return a.sampleRate==e.sampleRate||g.Dt?(a.o||2)!=(e.o||2)?"channel-count":null:"sample-rate"}; +SL=function(a,b,c,d){g.A.call(this);var e=this;this.R=a;this.o=b;this.u=c;this.B=this.A=null;this.F=d-1E3*b.Bb();this.G=-1;this.I=!1;this.C=new WC;this.C.then(void 0,function(){}); +this.P=new g.I(function(){return RL(e,"timeout")},1E4); +g.B(this,this.P);this.M=isFinite(d);this.w={status:0,error:null}}; +Tka=function(a){var b,c,d,e,f,k;return g.Ba(function(l){if(1==l.o){if(a.ea())return l["return"](Promise.reject(Error(a.w.error||"disposed")));a.P.start();return g.ta(l,a.C,2)}b=a.o.o;if(b.Bf())return RL(a,"ended_in_finishTransition"),l["return"](Promise.reject(Error(a.w.error)));if(!a.B||!Yt(a.B))return RL(a,"next_mse_closed"),l["return"](Promise.reject(Error(a.w.error)));if(a.u.G!=a.B)return RL(a,"next_mse_mismatch"),l["return"](Promise.reject(Error(a.w.error)));c=TL(a);d=c.dA;e=c.cA;OJ(a.o,!1,!0); +f=UL(b,d,e,!a.u.getVideoData().isAd());PJ(a.u,f);a.M&&(a.u.seekTo(a.u.getCurrentTime()+.001,{Fl:!0,Qu:3}),f.play());k=b.Za();k.cpn=a.o.getVideoData().clientPlaybackNonce;k.st=""+d;k.et=""+e;a.u.Ra("gapless",Ps(k));a.o.Ra("gaplessTo",a.u.getVideoData().clientPlaybackNonce);g.uf(function(){!a.u.getVideoData().se&&g.OC(a.u.getPlayerState())&&sK(a.u)}); +VL(a,6);a.dispose();return l["return"](Promise.resolve())})}; +YL=function(a){if(a.u.getVideoData().xa){hK(a.u,a.B);VL(a,3);WL(a);var b=XL(a),c=b.fC;b=b.CO;c.subscribe("updateend",a.hk,a);b.subscribe("updateend",a.hk,a);a.hk(c);a.hk(b)}}; +WL=function(a){a.o.unsubscribe("internalvideodatachange",a.ci,a);a.u.unsubscribe("internalvideodatachange",a.ci,a);a.o.unsubscribe("mediasourceattached",a.ci,a);a.u.unsubscribe("statechange",a.Ez,a)}; +UL=function(a,b,c,d){return new g.QL(a.isView()?a.o:a,b,c,d)}; +VL=function(a,b){b<=a.w.status||(a.w={status:b,error:null},5==b&&a.C.resolve(void 0))}; +RL=function(a,b){if(!a.ea()&&!a.isFinished()){var c=4<=a.w.status&&"player-reload-after-handoff"!==b;a.w={status:Infinity,error:b};if(a.o&&a.u){var d=a.u.getVideoData().clientPlaybackNonce;a.o.Ra("gaplessError","cpn."+d+";msg."+b);d=a.o;d.T.Df=!1;c&&dK(d);d.w&&(c=d.w,c.o.Z=!1,c.w&&SF(c))}a.C.reject(void 0);a.dispose()}}; +TL=function(a){var b=a.o.o;b=b.isView()?b.u:0;var c=a.o.getVideoData().va?Infinity:vK(a.o,!0);c=Math.min(a.F/1E3,c)+b;var d=a.M?100:0;a=c-uI(a.u.C)+d;return{vE:b,dA:a,uE:c,cA:Infinity}}; +XL=function(a){return{fC:a.A.o.o,CO:a.A.u.o}}; +ZL=function(a){g.A.call(this);var b=this;this.w=a;this.C=this.u=this.o=null;this.G=!1;this.B=null;this.I=Rka(this.w.N());this.A=null;this.F=function(){return g.uf(function(){return Uka(b)})}}; +Vka=function(a,b,c,d){d=void 0===d?0:d;a.o&&$L(a);a.B=new WC;a.o=b;var e=c,f=a.w.kb(),k=f.getVideoData().va?Infinity:1E3*vK(f,!0);e>k&&(e=k-a.I.u,a.G=!0);f.getCurrentTime()>=e/1E3?a.F():(a.u=f,a.w.addEventListener(g.lC("vqueued"),a.F),e=isFinite(e)||e/1E3>a.u.getDuration()?e:0x8000000000000,a.C=new g.iC(e,0x8000000000000,{namespace:"vqueued"}),a.u.addCueRange(a.C));f=d/=1E3;e=b.getVideoData().ia;if(d&&e&&a.u){k=d;var l=0;b.getVideoData().va&&(f=Math.min(c/1E3,vK(a.u,!0)),l=Math.max(0,f-a.u.getCurrentTime()), +k=Math.min(d,vK(b)+l));f=Cga(e,k)||d;f!=d&&a.o.Ra("qvaln","st."+d+";at."+f+";rm."+(l+";ct."+k))}b=f;a.o.getVideoData().Zi=!0;a.o.getVideoData().Df=!0;zJ(a.o,!0);d="";a.u&&(d=g.WG(a.u.B.A),e=a.u.getVideoData().clientPlaybackNonce,d="crt."+(1E3*d).toFixed()+";cpn."+e);a.o.Ra("queued",d);0!=b&&a.o.seekTo(b+.01,{Fl:!0,Qu:3});a.A=new SL(a.I,a.w.kb(),a.o,c);c=a.A;Infinity!=c.w.status&&(VL(c,1),c.o.subscribe("internalvideodatachange",c.ci,c),c.u.subscribe("internalvideodatachange",c.ci,c),c.o.subscribe("mediasourceattached", +c.ci,c),c.u.subscribe("statechange",c.Ez,c),c.o.subscribe("newelementrequired",c.LA,c),c.ci());return a.B}; +Uka=function(a){var b,c,d;return g.Ba(function(e){switch(e.o){case 1:if(a.ea()||!a.B||!a.o)return e["return"]();a.G&&hJ(a.w.kb(),!0,!1);b=null;if(!a.A){e.o=2;break}e.B=3;return g.ta(e,Tka(a.A),5);case 5:ua(e,2);break;case 3:b=c=va(e);case 2:aM(a.w.app,a.o);var f=a.o.getPlayerType();g.bM(a.w.app,f);a.w.playVideo();b&&(f=a.o,f.Ra("newelem",b.message),dK(f));d=a.B;$L(a);return e["return"](d.resolve(void 0))}})}; +$L=function(a){a.u&&(a.w.removeEventListener(g.lC("vqueued"),a.F),a.u.removeCueRange(a.C),a.u=null,a.C=null);if(a.A){if(!a.A.isFinished()){var b=a.A;Infinity!=b.w.status&&RL(b,"Canceled")}a.A=null}a.B=null;a.o=null;a.G=!1}; +eM=function(a,b){g.A.call(this);var c=this;this.data=[];this.w=a||NaN;this.u=b||null;this.o=new g.I(function(){cM(c);dM(c)}); +g.B(this,this.o)}; +cM=function(a){var b=(0,g.N)();a.data.forEach(function(c){c.expiree&&(k+="0"));if(0f&&(k+="0");k+=f+":";10>c&&(k+="0");d=k+c}return 0<=a?d:"-"+d}; +g.iM=function(a){return(!("button"in a)||"number"!==typeof a.button||0===a.button)&&!("shiftKey"in a&&a.shiftKey)&&!("altKey"in a&&a.altKey)&&!("metaKey"in a&&a.metaKey)&&!("ctrlKey"in a&&a.ctrlKey)}; +g.jM=function(a,b){return oC(b)?(b.fetch=0,new g.nC(a,b)):new g.aB(a,b)}; +kM=function(a){g.A.call(this);this.u=null;for(var b=[],c=0;100>=c;c++)b.push(c/100);b={threshold:b};(this.o=window.IntersectionObserver?new IntersectionObserver((0,g.x)(this.w,this),b):null)&&this.o.observe(a)}; +Wka=function(a,b){Bo(a,"version",b)}; +nM=function(a){var b=a.N();g.R.call(this,{D:"div",Y:["html5-video-player"],O:{tabindex:"-1",id:a.Rb?a.Rb.rootElementId:a.za.attrs.id},J:[{D:"div",H:g.lM.VIDEO_CONTAINER,O:{"data-layer":"0"}}]});b.transparentBackground&&this.km("ytp-transparent");"0"==b.controlsType&&this.km("ytp-hide-controls");b.fa("web_wn_macro_markers")&&g.J(this.element,"ytp-exp-marker-tooltip");b.fa("html5_player_bottom_linear_gradient")&&g.J(this.element,"ytp-linear-gradient-bottom-experiment");Wka(this.element,mM(a));this.app= +a;this.A=this.o[g.lM.VIDEO_CONTAINER];this.w=new g.ph(0,0,0,0);this.u=null;this.G=new g.ph(0,0,0,0);this.M=this.V=this.U=NaN;this.C=this.da=!1;this.I=NaN;this.R=!1;this.F=null;this.addEventListener=(0,g.x)(this.element.addEventListener,this.element);this.removeEventListener=(0,g.x)(this.element.removeEventListener,this.element);this.dispatchEvent=function(){}; +this.ba=(0,g.x)(function(){this.element.focus()},this); +hz(b)&&"blazer"!=b.playerStyle&&window.matchMedia&&(this.aa="desktop-polymer"==b.playerStyle?[{query:window.matchMedia("(max-width: 656px)"),size:new g.Sd(426,240)},{query:window.matchMedia("(max-width: 856px)"),size:new g.Sd(640,360)},{query:window.matchMedia("(max-width: 999px)"),size:new g.Sd(854,480)},{query:window.matchMedia("(min-width: 1720px) and (min-height: 980px)"),size:new g.Sd(1280,720)},{query:window.matchMedia("(min-width: 1294px) and (min-height: 630px)"),size:new g.Sd(854,480)},{query:window.matchMedia("(min-width: 1000px)"), +size:new g.Sd(640,360)}]:[{query:window.matchMedia("(max-width: 656px)"),size:new g.Sd(426,240)},{query:window.matchMedia("(min-width: 1720px) and (min-height: 980px)"),size:new g.Sd(1280,720)},{query:window.matchMedia("(min-width: 1294px) and (min-height: 630px)"),size:new g.Sd(854,480)},{query:window.matchMedia("(min-width: 657px)"),size:new g.Sd(640,360)}]);this.Z=b.useFastSizingOnWatchDefault;this.B=new g.Sd(NaN,NaN);Xka(this);this.L(a.u,"onMutedAutoplayChange",this.dJ)}; +Xka=function(a){var b=a.app.u,c=(0,g.x)(a.PF,a),d=(0,g.x)(a.QF,a),e=(0,g.x)(a.cJ,a),f=(0,g.x)(a.AF,a);b.addEventListener("initializingmode",c);b.addEventListener("videoplayerreset",d);b.addEventListener("videodatachange",e);b.addEventListener("presentingplayerstatechange",f);g.Ge(a,function(){b.removeEventListener("initializingmode",c);b.removeEventListener("videoplayerreset",d);b.removeEventListener("videodatachange",e);b.removeEventListener("presentingplayerstatechange",f)})}; +oM=function(a){a.u&&(a.u.removeEventListener("focus",a.ba),g.te(a.u),a.u=null)}; +qM=function(a){var b=g.P(a.app.N().experiments,"html5_aspect_from_adaptive_format"),c=g.W(a.app);if(c=c?c.getVideoData():null){if(c.yg()||c.zg()||c.tg())return 16/9;if(b&&c.lo()&&c.xa.o)return b=c.xa.videoInfos[0].video,pM(b.width,b.height)}return(a=a.u)?pM(a.videoWidth,a.videoHeight):b?16/9:NaN}; +rM=function(a,b,c,d){var e=c,f=pM(b.width,b.height);a.da?e=cf?k={width:b.width,height:b.width/e,aspectRatio:e}:ee?k.width=k.height*c:cMath.abs(sM*b-a)||1>Math.abs(sM/a-b)?sM:a/b}; +tM=function(a){if(1==a.app.getAppState())return!1;if(6==a.app.getAppState())return!0;var b=g.W(a.app);if(!b||EJ(b))return!1;var c=g.PK(a.app.u);a=!g.V(c,2)||!g.P(a.app.N().experiments,"html5_leanback_gapless_elem_display_killswitch")&&b&&b.getVideoData().Df;b=g.V(c,1024);return c&&a&&!b&&!c.isCued()}; +uM=function(a){var b="3"==a.app.N().controlsType&&!a.C&&tM(a)&&!a.app.Qa||!1;a.u.controls=b;a.u.tabIndex=b?0:-1;b?a.u.removeEventListener("focus",a.ba):g.P(a.app.N().experiments,"disable_focus_redirect")||a.u.addEventListener("focus",a.ba)}; +vM=function(a){var b=a.getPlayerSize(),c=1,d=!1,e=rM(a,b,a.getVideoAspectRatio()),f=ml();if(tM(a)){var k=qM(a);var l=isNaN(k)||g.wu||MG&&g.oz;nl&&!g.Kd(601)?k=e.aspectRatio:l=l||"3"==a.app.N().controlsType;l?l=new g.ph(0,0,b.width,b.height):(c=e.aspectRatio/k,l=new g.ph((b.width-e.width/c)/2,(b.height-e.height)/2,e.width/c,e.height),1==c&&g.oz&&(k=l.width-b.height*k,0c):c&&d&&(a.u=new g.I(a.R,d,a),g.B(a,a.u),g.ye(g.ce("ytp-paid-content-overlay-text",a.element),c))}; +tN=function(a,b){a.u&&g.V(b,8)&&a.F&&(a.F=!1,a.Qb(),a.u.start())}; +g.vN=function(a){g.R.call(this,{D:"div",H:"ytp-gradient-bottom"});this.w=g.oe("CANVAS");this.w.width=1;this.u=this.w.getContext("2d");this.A=NaN;this.B=g.Uy(a.N());g.uN(this,g.QK(a).getPlayerSize().height)}; +g.uN=function(a,b){if(a.u){var c=Math.floor(b*(a.B?1:.4));c=Math.max(c,47);var d=c+2;if(a.A!=d){a.A=d;a.w.height=d;a.u.clearRect(0,0,1,d);var e=a.u.createLinearGradient(0,2,0,2+c);if(a.B)e.addColorStop(.133,"rgba(0, 0, 0, 0.2)"),e.addColorStop(.44,"rgba(0, 0, 0, 0.243867)"),e.addColorStop(1,"rgba(0, 0, 0, 0.8)");else{var f=c-42;e.addColorStop(0,"rgba(0, 0, 0, 0)");e.addColorStop(f/c,"rgba(0, 0, 0, 0.3)");e.addColorStop(1,"rgba(0, 0, 0, 0.68)")}a.u.fillStyle=e;a.u.fillRect(0,2,1,c);a.element.style.height= +d+"px";a.element.style.backgroundImage="url("+a.w.toDataURL()+")"}}}; +g.wN=function(a,b,c,d){d=void 0===d?!1:d;g.Ru.call(this,b);this.Z=a;this.da=d;this.I=null;this.G=new g.Gr(this);g.B(this,this.G);this.U=new g.lN(this,c,!0,void 0,void 0,(0,g.x)(this.OE,this));g.B(this,this.U);this.u=null}; +xN=function(a){a.u&&(document.activeElement&&g.xe(a.element,document.activeElement)&&(Be(a.u),a.u.focus()),a.u.removeAttribute("aria-expanded"),a.u=null);g.Ir(a.G);a.I=null}; +yN=function(a){return a.Ha()&&4!==a.U.state}; +zN=function(a){var b={D:"div",H:"ytp-multicam-menu",O:{role:"dialog"},J:[{D:"div",H:"ytp-multicam-menu-header",J:[{D:"div",H:"ytp-multicam-menu-title",J:["Changer l'angle de la cam\u00e9ra",{D:"button",Y:["ytp-multicam-menu-close","ytp-button"],O:{"aria-label":"Fermer"},J:[g.GM()]}]}]},{D:"div",H:"ytp-multicam-menu-items"}]};g.wN.call(this,a,b,250);this.B=new g.Gr(this);g.B(this,this.B);this.L(this.o["ytp-multicam-menu-close"],"click",this.gb);this.w=a;this.C=this.o["ytp-multicam-menu-items"];this.A= +[];this.hide()}; +CN=function(a,b,c){g.R.call(this,{D:"button",Y:["ytp-multicam-button","ytp-button"],O:{title:"Changer l'angle de la cam\u00e9ra","aria-haspopup":"true","data-preview":"{{preview}}","data-tooltip-text":"{{text}}"},J:[g.X?{D:"div",Y:["ytp-icon","ytp-icon-switch-camera"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,O:{d:"M 26,10 22.83,10 21,8 15,8 13.17,10 10,10 c -1.1,0 -2,.9 -2,2 l 0,12 c 0,1.1 .9,2 2,2 l 16,0 c 1.1,0 2,-0.9 2,-2 l 0,-12 c 0,-1.1 -0.9,-2 -2,-2 l 0,0 z m -5,11.5 0,-2.5 -6,0 0,2.5 -3.5,-3.5 3.5,-3.5 0,2.5 6,0 0,-2.5 3.5,3.5 -3.5,3.5 0,0 z", +fill:"#fff"}}]}]});this.C=a;this.A=!1;this.u=b.fb();AN(this.u);this.B=new g.I(this.G,400,this);g.B(this,this.B);this.ka("click",(0,g.x)(c.hf,c,this.element,!1));this.L(a,"presentingplayerstatechange",g.Qa(this.w,!1));this.L(a,"videodatachange",this.F);this.w(!0);g.Ge(this,g.BN(this.u,this.element))}; +DN=function(a,b){var c=void 0===c?!0:c;var d=g.L("VALID_SESSION_TEMPDATA_DOMAINS",[]),e=g.od(window.location.href);e&&d.push(e);e=g.od(a);if(g.$a(d,e)||!e&&cc(a,"/"))if(g.xo("autoescape_tempdata_url")&&(d=document.createElement("a"),g.Yc(d,a),a=d.href),a&&(d=pd(a),e=d.indexOf("#"),d=0>e?d:d.substr(0,e)))if(c&&!b.csn&&(b.itct||b.ved)&&(b=Object.assign({csn:g.ds()},b)),f){var f=parseInt(f,10);isFinite(f)&&0=f&&(p-=1/k);n-=2/k;a=a.style;a.width=n+"px";a.height=p+"px";e||(d=(d-p)/2,c=(c-n)/2,a.marginTop=Math.floor(d)+"px",a.marginBottom=Math.ceil(d)+"px",a.marginLeft=Math.floor(c)+"px",a.marginRight=Math.ceil(c)+"px");a.background="url("+b.url+") "+t+"px "+u+"px/"+l+"px "+m+"px"}; +g.VO=function(a){g.R.call(this,{D:"div",H:"ytp-storyboard-framepreview",J:[{D:"div",H:"ytp-storyboard-framepreview-img"}]});this.api=a;this.C=this.o["ytp-storyboard-framepreview-img"];this.w=null;this.A=NaN;this.events=new g.Gr(this);this.u=new g.lN(this,100);g.B(this,this.events);g.B(this,this.u);this.L(this.api,"presentingplayerstatechange",this.F)}; +WO=function(a,b){var c=!!a.w;a.w=b;a.w?(c||(a.events.L(a.api,"videodatachange",function(){WO(a,a.api.ue())}),a.events.L(a.api,"progresssync",a.G),a.events.L(a.api,"appresize",a.B)),a.A=NaN,XO(a),a.u.show(200)):(c&&g.Ir(a.events),a.u.hide(),a.u.stop())}; +XO=function(a){var b=a.w,c=a.api.getCurrentTime(),d=g.QK(a.api).getPlayerSize(),e=SA(b,d.width);c=XA(b,e,c);c!==a.A&&(a.A=c,UA(b,c,d.width),b=b.ti(c,d.width),UO(a.C,b,d.width,d.height))}; +YO=function(a,b){g.R.call(this,{D:"button",Y:["ytp-fullerscreen-edu-button","ytp-button"],J:[{D:"div",Y:["ytp-fullerscreen-edu-text"],W:"Faites d\u00e9filer la page pour afficher plus de d\u00e9tails"},{D:"div",Y:["ytp-fullerscreen-edu-chevron"],J:[g.X?{D:"div",Y:["ytp-icon","ytp-icon-chevron-down"]}:{D:"svg",O:{height:"100%",viewBox:"0 0 24 24",width:"100%"},J:[{D:"path",O:{d:"M7.41,8.59L12,13.17l4.59-4.58L18,10l-6,6l-6-6L7.41,8.59z",fill:"#fff"}}]}]}]});this.u=a;this.C=b;this.A=new g.lN(this,250, +void 0,100);this.B=this.w=!1;g.kL(a,this.element,this,61214);this.C=b;g.B(this,this.A);this.L(a,"fullscreentoggled",this.sa);this.L(a,"presentingplayerstatechange",this.sa);this.ka("click",this.onClick);this.sa()}; +g.ZO=function(a,b){g.R.call(this,{D:"button",Y:["ytp-fullscreen-button","ytp-button"],O:{title:"{{title}}"},W:"{{icon}}"});this.K=a;this.u=b;this.message=null;this.w=g.BN(this.u.fb(),this.element);this.A=new g.I(this.fE,2E3,this);g.B(this,this.A);this.L(a,"fullscreentoggled",this.jz);this.L(a,"presentingplayerstatechange",this.sa);this.ka("click",this.onClick);if(Cr()){var c=g.QK(this.K);this.L(c,efa(),this.Zt);this.L(c,Fr(document),this.OH)}a.N().da||this.disable();this.sa();this.jz(a.isFullscreen())}; +$O=function(a,b){g.R.call(this,{D:"button",Y:["ytp-miniplayer-button","ytp-button"],O:{title:"{{title}}","data-tooltip-target-id":"ytp-miniplayer-button"},J:[RM()]});this.K=a;this.visible=!1;this.ka("click",this.onClick);this.L(a,"fullscreentoggled",this.sa);this.la("title",g.MN(a,"Lecteur r\u00e9duit","i"));g.Ge(this,g.BN(b.fb(),this.element));g.kL(a,this.element,this,62946);this.sa()}; +aP=function(a,b){g.R.call(this,{D:"button",Y:["ytp-mute-button","ytp-button"],O:a.N().R?{title:"{{title}}","aria-label":"{{label}}"}:{"aria-disabled":"true","aria-haspopup":"true"},W:"{{icon}}"});this.K=a;this.u=null;this.C=this.I=this.F=this.R=NaN;this.U=this.G=null;this.B=[];this.A=[];this.visible=!1;this.w=null;var c=this.K.N();this.la("icon",$M());this.tooltip=b.fb();c.F||(this.u=new g.Mu({D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"defs",J:[{D:"clipPath",O:{id:"ytp-svg-volume-animation-mask"}, +J:[{D:"path",O:{d:"m 14.35,-0.14 -5.86,5.86 20.73,20.78 5.86,-5.91 z"}},{D:"path",O:{d:"M 7.07,6.87 -1.11,15.33 19.61,36.11 27.80,27.60 z"}},{D:"path",H:"ytp-svg-volume-animation-mover",O:{d:"M 9.09,5.20 6.47,7.88 26.82,28.77 29.66,25.99 z"}}]},{D:"clipPath",O:{id:"ytp-svg-volume-animation-slash-mask"},J:[{D:"path",H:"ytp-svg-volume-animation-mover",O:{d:"m -11.45,-15.55 -4.44,4.51 20.45,20.94 4.55,-4.66 z"}}]}]},{D:"path",Na:!0,Y:["ytp-svg-fill","ytp-svg-volume-animation-speaker"],O:{"clip-path":"url(#ytp-svg-volume-animation-mask)", +d:"M8,21 L12,21 L17,26 L17,10 L12,15 L8,15 L8,21 Z M19,14 L19,22 C20.48,21.32 21.5,19.77 21.5,18 C21.5,16.26 20.48,14.74 19,14 Z",fill:"#fff"}},{D:"path",Na:!0,Y:["ytp-svg-fill","ytp-svg-volume-animation-hider"],O:{"clip-path":"url(#ytp-svg-volume-animation-slash-mask)",d:"M 9.25,9 7.98,10.27 24.71,27 l 1.27,-1.27 Z",fill:"#fff"}}]}),g.B(this,this.u),this.G=this.u.o["ytp-svg-volume-animation-speaker"],this.U=this.G.getAttribute("d"),this.B=g.be("ytp-svg-volume-animation-mover",this.u.element),this.A= +g.be("ytp-svg-volume-animation-hider",this.u.element));this.V=new LO;g.B(this,this.V);this.M=new LO;g.B(this,this.M);this.ka("click",this.PL);this.L(a,"appresize",this.kz);this.L(a,"onVolumeChange",this.PH);var d=null;c.R?g.Ge(this,g.BN(b.fb(),this.element)):(d="Votre navigateur ne prend pas en charge les changements de volume. $BEGIN_LINKEn savoir plus$END_LINK".split(/\$(BEGIN|END)_LINK/),d=new g.wN(a,{D:"span",Y:["ytp-popup","ytp-generic-popup"],O:{tabindex:"0"},J:[d[0],{D:"a",O:{href:"https://support.google.com/youtube/?p=noaudio", +target:c.C},W:d[2]},d[4]]},100,!0),g.B(this,d),d.hide(),d.subscribe("show",(0,g.x)(b.nl,b,d)),g.iL(a,d.element,4));this.message=d;g.kL(a,this.element,this,28662);this.kz(g.QK(a).getPlayerSize());this.setVolume(a.getVolume(),a.isMuted())}; +bP=function(a,b){a.R=b;var c=a.U;b&&(c+=PO(dla,ela,b));a.G.setAttribute("d",c)}; +cP=function(a,b){a.I=b;for(var c=20*b,d=0;dl)a.u[c].width=n;else{a.u[c].width=0;var p= +a,t=c,u=p.u[t-1];void 0!==u&&0a.ga&&(a.ga=m/f),d=!0)}c++}}return d}; +g.tP=function(a){sP(a);var b=a.api.getCurrentTime();(ba.clipEnd)&&a.Dp()}; +sP=function(a){if(a.B){var b=a.api.getProgressState(),c=new hP(b.seekableStart,b.seekableEnd),d=jP(c,b.loaded,0);b=jP(c,b.current,0);var e=a.w.u!==c.u||a.w.o!==c.o;a.w=c;uP(a,b,d);e&&vP(a);wP(a)}}; +xP=function(a,b,c){return c>=a.u.length?!1:Math.abs(b-a.u[c].startTime/1E3)/a.w.o*(a.B-(a.A?3:2)*a.R).2*(a.A?60:40)){var k=c*(a.w.getLength()/60),l=d*(a.w.getLength()/60);for(k=Math.ceil(k);k=f;c--)g.te(e[c]);a.element.style.height=a.M+(a.A?8:5)+"px";a.S("height-change",a.M);a.ac.style.height=a.M+(a.A?20:13)+"px";e=g.q(Object.keys(a.V));for(f=e.next();!f.done;f=e.next())AP(a,f.value);BP(a);uP(a,a.F,a.da)}; +zP=function(a){var b=a.za.x,c=a.B*a.Z;b=g.Md(b,0,a.B);a.rb.update(b,a.B,-a.U,-(c-a.U-a.B));return a.rb}; +uP=function(a,b,c){a.F=b;a.da=c;var d=zP(a),e=a.w.o,f=iP(a.w,a.F),k=g.gM("$PLAY_PROGRESS sur $DURATION",{PLAY_PROGRESS:g.hM(f,!0),DURATION:g.hM(e,!0)});if(a.api.N().fa("web_wn_macro_markers")){var l=CP(a,1E3*f);k=(l=a.u[l].title)?l+" "+k:k}a.update({ariamin:Math.floor(a.w.u),ariamax:Math.floor(e),arianow:Math.floor(f),arianowtext:k});e=a.clipStart;f=a.clipEnd;a.I&&2!==a.api.getPresentingPlayerType()&&(e=a.I.startTimeMs/1E3,f=a.I.endTimeMs/1E3);e=jP(a.w,e,0);k=jP(a.w,f,1);f=g.Md(b,e,k);c=g.Md(c,e, +k);k=b*d.o+d.w;if(a.api.N().fa("web_wn_macro_markers")){k=b*a.w.o*1E3;l=-1;for(var m=g.q(a.u),n=m.next();!n.done;n=m.next())n=n.value,k>n.startTime&&0l?0:l)+d.w}g.sh(a.qc,"transform","translateX("+k+"px)");a.api.N().fa("web_wn_macro_markers")?(DP(a,d,e,f,"PLAY_PROGRESS"),DP(a,d,e,c,"LOAD_PROGRESS")):(EP(a,a.u[0].B,d,e,f),EP(a,a.u[0].A,d,e,c))}; +DP=function(a,b,c,d,e){var f=a.u.length;b=b.o-a.R*(a.A?3:2);var k=c*b;b*=d;d=FP(a,k);c=FP(a,b);k=Math.max(k-GP(a,d),0);for(var l=d;l=a.u.length)return a.B;for(var c=0,d=0;dl.width)b-=l.width,b-=a.A?3:2,f++;else break;b=c-(f===e?e-1:f)*(a.A?3:2)}c=g.q(a.u);for(e=c.next();!e.done;e=c.next()){e=e.value;if(b>e.width)b-=e.width;else break;d++}return d===a.u.length?d-1:d}; +CP=function(a,b){for(var c=0,d=g.q(a.u),e=d.next();!(e.done||e.value.startTime>b);e=d.next())c++;return 0===c?c:c-1}; +EP=function(a,b,c,d,e,f){b.style.left=Math.max(d*c.o+c.w,0)+"px";HP(a,b,g.Md((e-d)*c.o+c.w,0,c.width),c.width,void 0===f?!1:f)}; +g.IP=function(a,b,c,d){a.Xb=b;a.B=c;a.A=d;vP(a);a.api.N().fa("web_wn_macro_markers")&&1===a.u.length&&(a.u[0].width=c||0)}; +BP=function(a){var b=!!a.I&&2!==a.api.getPresentingPlayerType(),c=a.clipStart,d=a.clipEnd,e=!0,f=!0;b&&a.I?(c=a.I.startTimeMs/1E3,d=a.I.endTimeMs/1E3):(e=c>a.w.u,f=0a.F),e++;g.K(a.ac,"ytp-scrubber-button-hover",d===c&&1a.F)}; +AP=function(a,b){var c=a.V[b],d=a.Aa[b],e=zP(a),f=jP(a.w,c.start/1E3,0),k=cia(c,a.A)/e.width;var l=jP(a.w,c.end/1E3,1);k!==Number.POSITIVE_INFINITY&&(f=g.Md(f,0,l-k));l=Math.min(l,f+k);c.color&&(d.style.background=c.color);EP(a,d,e,f,l,!0)}; +JP=function(a,b){var c=b.getId();a.V[c]===b&&(g.te(a.Aa[c]),delete a.V[c],delete a.Aa[c])}; +KP=function(a,b){b?a.G||(a.element.removeAttribute("aria-disabled"),a.G=new g.Mr(a.Rb,!0),a.G.subscribe("hovermove",a.rM,a),a.G.subscribe("hoverend",a.qM,a),a.G.subscribe("dragstart",a.pM,a),a.G.subscribe("dragmove",a.tM,a),a.G.subscribe("dragend",a.sM,a),a.yb=a.ka("keydown",a.SH)):a.G&&(a.element.setAttribute("aria-disabled","true"),a.bb(a.yb),a.G.cancel(),a.G.dispose(),a.G=null)}; +g.LP=function(a){var b=2*a.B*g.iz();return 1E3*a.w.getLength()/a.api.getPlaybackRate()/b}; +MP=function(a,b,c){g.R.call(this,{D:"button",H:"ytp-button",O:{title:"Regarder sur un t\u00e9l\u00e9viseur","aria-haspopup":"true"},W:"{{icon}}"});this.K=a;this.w=c;this.u=null;this.L(a,"onMdxReceiversChange",this.sa);this.L(a,"presentingplayerstatechange",this.sa);this.L(a,"appresize",this.sa);this.sa();this.ka("click",this.A,this);g.Ge(this,g.BN(b.fb(),this.element))}; +NP=function(a,b){g.R.call(this,{D:"button",Y:["ytp-subtitles-button","ytp-button"],O:{"aria-pressed":"{{pressed}}",title:g.MN(a,"Sous-titres","c")},J:[XM()]});this.K=a;this.L(a,"videodatachange",this.sa);this.L(a,"appresize",this.sa);this.L(a,"onApiChange",this.sa);this.L(a,"onCaptionsTrackListChanged",this.sa);this.L(a,"captionschanged",this.sa);this.sa();this.ka("click",this.onClick);g.Ge(this,g.BN(b.fb(),this.element))}; +g.OP=function(a,b,c){c=void 0===c?350:c;g.R.call(this,{D:"div",Y:["ytp-time-display","notranslate"],J:[{D:"span",H:"ytp-time-current",W:"{{currenttime}}"},{D:"span",H:"ytp-time-separator",W:" / "},{D:"span",H:"ytp-time-duration",W:"{{duration}}"}]});this.api=a;this.F=c;this.liveBadge=new g.R({D:"button",Y:["ytp-live-badge","ytp-button"],O:{disabled:"true"},W:"{{content}}"});this.u=null;this.w=!1;this.C=null;this.isPremiere=!1;this.B=this.A=null;this.liveBadge.qb("En direct");g.B(this,this.liveBadge); +this.liveBadge.ca(this.element);this.tooltip=b.fb();this.ka("click",this.onClick);this.L(a,"presentingplayerstatechange",this.Fh);this.L(a,"appresize",this.Fh);this.L(a,"videodatachange",this.XH);(a=a.getVideoData())&&this.updateVideoData(a);this.Fh()}; +RP=function(a,b,c){g.R.call(this,{D:"div",H:"ytp-volume-panel",O:{role:"slider","aria-valuemin":"0","aria-valuemax":"100","aria-valuenow":"{{valuenow}}","aria-valuetext":"{{valuetext}}",tabindex:"0"},J:[{D:"div",H:"ytp-volume-slider",J:[{D:"div",H:"ytp-volume-slider-handle"}]}]});var d=this;this.api=a;this.w=b;this.G=c;this.I=!1;this.U=this.volume=0;this.M=null;this.B=this.u=this.A=!1;this.w=b;this.G=c;this.C=b.kc();this.R=this.o["ytp-volume-slider"];this.V=this.o["ytp-volume-slider-handle"];this.F= +new g.Mr(this.R,!0);g.B(this,this.F);this.F.subscribe("dragstart",this.hN,this);this.F.subscribe("dragmove",this.aI,this);this.F.subscribe("dragend",this.gN,this);this.L(a,"onVolumeChange",this.cI);this.L(a,"appresize",this.nz);this.L(a,"fullscreentoggled",this.YH);this.L(a,"onShowControls",this.Bw);this.L(a,"onHideControls",this.Bw);this.L(this.element,"keydown",this.bI);this.L(this.element,"focus",function(){PP(d,d.u,d.A,!0,d.w.Oi())}); +this.L(this.element,"blur",function(){PP(d,d.u,d.A,!1,d.w.Oi())}); +this.nz(g.QK(a).getPlayerSize());QP(this,a.getVolume(),a.isMuted())}; +QP=function(a,b,c){var d=Math.floor(b),e=d+"% volume"+(c?" son d\u00e9sactiv\u00e9":"");c=c?0:b/100;a.la("valuenow",d);a.la("valuetext",e);a.V.style.left=(a.C?60:40)*c+"px";a.volume=b}; +PP=function(a,b,c,d,e){var f=a.u||a.A||a.B||a.I;a.u=b;a.A=c;a.B=d;a.I=e;b=a.u||a.A||a.B||a.I;f!==b&&(b?a.M=a.L(a.element,"wheel",a.ZH):(a.bb(a.M),a.M=null),g.K(a.G,"ytp-volume-slider-active",b))}; +g.SP=function(a,b){var c=a.N(),d=g.fz(c);0===d.indexOf("www.")&&(d=d.substring(4));var e=["ytp-youtube-button","ytp-button","yt-uix-sessionlink"],f=g.Uy(c);f&&e.push("ytp-youtube-music-button");g.R.call(this,{D:"a",Y:e,O:{href:"{{url}}",target:c.C,title:g.gM("Regarder sur $WEBSITE",{WEBSITE:d}),"data-sessionlink":"feature=player-button"},J:[f?g.X?{D:"div",Y:["ytp-icon","ytp-icon-youtube-music-logo"]}:{D:"svg",O:{viewBox:"0 0 77 20"},J:[{D:"g",O:{fill:"none"},J:[{D:"path",O:{d:"M27.71 3.30a3.53 3.53 0 0 0-2.49-2.49c-2.19-.59-11.00-.59-11.00-.59s-8.81 0-11.00.59A3.53 3.53 0 0 0 .71 3.30c-.59 2.20-.59 6.8-.59 6.8s0 4.59.59 6.8a3.53 3.53 0 0 0 2.49 2.49c2.19.59 11.00.59 11.00.59s8.81 0 11.00-.59a3.53 3.53 0 0 0 2.49-2.49c.59-2.20.59-6.8.59-6.8s-.00-4.59-.59-6.8z", +fill:"red"}},{D:"path",O:{d:"M11.39 14.34l7.32-4.23-7.32-4.24zM40.69 7.88c-.50 2.56-.88 5.69-1.08 6.98h-.14c-.16-1.33-.54-4.44-1.06-6.97l-1.29-6.28h-3.92v16.95h2.43V4.60l.24 1.30 2.47 12.66h2.43L43.21 5.91l.26-1.31v13.97h2.43V1.62h-3.96L40.7 7.88zm11.80 8.14c-.22.46-.70.78-1.19.78-.56 0-.78-.44-.78-1.53V6.19h-2.78v9.25c0 2.28.74 3.33 2.39 3.33 1.12 0 2.03-.50 2.66-1.71h.06l.24 1.51h2.17V6.19h-2.78v9.84h.00zm8.15-4.94c-.90-.66-1.47-1.11-1.47-2.08 0-.68.32-1.07 1.08-1.07.78 0 1.04.54 1.06 2.40l2.33-.1c.18-3.01-.80-4.26-3.36-4.26-2.37 0-3.54 1.07-3.54 3.27 0 2 .96 2.91 2.53 4.1 1.35 1.05 2.13 1.63 2.13 2.48 0 .64-.40 1.09-1.10 1.09-.82 0-1.31-.78-1.18-2.16l-2.35.04c-.36 2.56.66 4.06 3.40 4.06 2.39 0 3.64-1.11 3.64-3.33.00-2.02-1.00-2.82-3.18-4.44zm4.71-4.88h2.66v12.38h-2.66zm1.35-4.88c-1.02 0-1.51.38-1.51 1.71 0 1.37.48 1.71 1.51 1.71 1.04 0 1.51-.34 1.51-1.71 0-1.27-.46-1.71-1.51-1.71zm10.25 12.80l-2.43-.12c0 2.18-.24 2.88-1.06 2.88s-.96-.78-.96-3.35V11.12c0-2.48.16-3.27.98-3.27.76 0 .96.74.96 3.05l2.41-.16c.16-1.92-.08-3.23-.82-3.98-.54-.54-1.37-.80-2.51-.80-2.7 0-3.80 1.45-3.80 5.53v1.73c0 4.20.94 5.55 3.70 5.55 1.17 0 1.97-.24 2.51-.76.78-.73 1.08-1.98 1.02-3.90z", +fill:"#fff"}}]}]}:g.X?{D:"div",Y:["ytp-icon","ytp-icon-logo"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 67 36",width:"100%"},J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"M 45.09 10 L 45.09 25.82 L 47.16 25.82 L 47.41 24.76 L 47.47 24.76 C 47.66 25.14 47.94 25.44 48.33 25.66 C 48.72 25.88 49.16 25.99 49.63 25.99 C 50.48 25.99 51.1 25.60 51.5 24.82 C 51.9 24.04 52.09 22.82 52.09 21.16 L 52.09 19.40 C 52.12 18.13 52.05 17.15 51.90 16.44 C 51.75 15.74 51.50 15.23 51.16 14.91 C 50.82 14.59 50.34 14.44 49.75 14.44 C 49.29 14.44 48.87 14.57 48.47 14.83 C 48.27 14.96 48.09 15.11 47.93 15.29 C 47.78 15.46 47.64 15.65 47.53 15.86 L 47.51 15.86 L 47.51 10 L 45.09 10 z M 8.10 10.56 L 10.96 20.86 L 10.96 25.82 L 13.42 25.82 L 13.42 20.86 L 16.32 10.56 L 13.83 10.56 L 12.78 15.25 C 12.49 16.62 12.31 17.59 12.23 18.17 L 12.16 18.17 C 12.04 17.35 11.84 16.38 11.59 15.23 L 10.59 10.56 L 8.10 10.56 z M 30.10 10.56 L 30.10 12.58 L 32.59 12.58 L 32.59 25.82 L 35.06 25.82 L 35.06 12.58 L 37.55 12.58 L 37.55 10.56 L 30.10 10.56 z M 19.21 14.46 C 18.37 14.46 17.69 14.63 17.17 14.96 C 16.65 15.29 16.27 15.82 16.03 16.55 C 15.79 17.28 15.67 18.23 15.67 19.43 L 15.67 21.06 C 15.67 22.24 15.79 23.19 16 23.91 C 16.21 24.62 16.57 25.15 17.07 25.49 C 17.58 25.83 18.27 26 19.15 26 C 20.02 26 20.69 25.83 21.19 25.5 C 21.69 25.17 22.06 24.63 22.28 23.91 C 22.51 23.19 22.63 22.25 22.63 21.06 L 22.63 19.43 C 22.63 18.23 22.50 17.28 22.27 16.56 C 22.04 15.84 21.68 15.31 21.18 14.97 C 20.68 14.63 20.03 14.46 19.21 14.46 z M 56.64 14.47 C 55.39 14.47 54.51 14.84 53.99 15.61 C 53.48 16.38 53.22 17.60 53.22 19.27 L 53.22 21.23 C 53.22 22.85 53.47 24.05 53.97 24.83 C 54.34 25.40 54.92 25.77 55.71 25.91 C 55.97 25.96 56.26 25.99 56.57 25.99 C 57.60 25.99 58.40 25.74 58.96 25.23 C 59.53 24.72 59.81 23.94 59.81 22.91 C 59.81 22.74 59.79 22.61 59.78 22.51 L 57.63 22.39 C 57.62 23.06 57.54 23.54 57.40 23.83 C 57.26 24.12 57.01 24.27 56.63 24.27 C 56.35 24.27 56.13 24.18 56.00 24.02 C 55.87 23.86 55.79 23.61 55.75 23.25 C 55.71 22.89 55.68 22.36 55.68 21.64 L 55.68 21.08 L 59.86 21.08 L 59.86 19.16 C 59.86 17.99 59.77 17.08 59.58 16.41 C 59.39 15.75 59.07 15.25 58.61 14.93 C 58.15 14.62 57.50 14.47 56.64 14.47 z M 23.92 14.67 L 23.92 23.00 C 23.92 24.03 24.11 24.79 24.46 25.27 C 24.82 25.76 25.35 26.00 26.09 26.00 C 27.16 26.00 27.97 25.49 28.5 24.46 L 28.55 24.46 L 28.76 25.82 L 30.73 25.82 L 30.73 14.67 L 28.23 14.67 L 28.23 23.52 C 28.13 23.73 27.97 23.90 27.77 24.03 C 27.57 24.16 27.37 24.24 27.15 24.24 C 26.89 24.24 26.70 24.12 26.59 23.91 C 26.48 23.70 26.43 23.35 26.43 22.85 L 26.43 14.67 L 23.92 14.67 z M 36.80 14.67 L 36.80 23.00 C 36.80 24.03 36.98 24.79 37.33 25.27 C 37.60 25.64 37.97 25.87 38.45 25.96 C 38.61 25.99 38.78 26.00 38.97 26.00 C 40.04 26.00 40.83 25.49 41.36 24.46 L 41.41 24.46 L 41.64 25.82 L 43.59 25.82 L 43.59 14.67 L 41.09 14.67 L 41.09 23.52 C 40.99 23.73 40.85 23.90 40.65 24.03 C 40.45 24.16 40.23 24.24 40.01 24.24 C 39.75 24.24 39.58 24.12 39.47 23.91 C 39.36 23.70 39.31 23.35 39.31 22.85 L 39.31 14.67 L 36.80 14.67 z M 56.61 16.15 C 56.88 16.15 57.08 16.23 57.21 16.38 C 57.33 16.53 57.42 16.79 57.47 17.16 C 57.52 17.53 57.53 18.06 57.53 18.78 L 57.53 19.58 L 55.69 19.58 L 55.69 18.78 C 55.69 18.05 55.71 17.52 55.75 17.16 C 55.79 16.81 55.87 16.55 56.00 16.39 C 56.13 16.23 56.32 16.15 56.61 16.15 z M 19.15 16.19 C 19.50 16.19 19.75 16.38 19.89 16.75 C 20.03 17.12 20.09 17.7 20.09 18.5 L 20.09 21.97 C 20.09 22.79 20.03 23.39 19.89 23.75 C 19.75 24.11 19.51 24.29 19.15 24.30 C 18.80 24.30 18.54 24.11 18.41 23.75 C 18.28 23.39 18.22 22.79 18.22 21.97 L 18.22 18.5 C 18.22 17.7 18.28 17.12 18.42 16.75 C 18.56 16.38 18.81 16.19 19.15 16.19 z M 48.63 16.22 C 48.88 16.22 49.08 16.31 49.22 16.51 C 49.36 16.71 49.45 17.05 49.50 17.52 C 49.55 17.99 49.58 18.68 49.58 19.55 L 49.58 21 L 49.59 21 C 49.59 21.81 49.57 22.45 49.5 22.91 C 49.43 23.37 49.32 23.70 49.16 23.89 C 49.00 24.08 48.78 24.17 48.51 24.17 C 48.30 24.17 48.11 24.12 47.94 24.02 C 47.76 23.92 47.62 23.78 47.51 23.58 L 47.51 17.25 C 47.59 16.95 47.75 16.70 47.96 16.50 C 48.17 16.31 48.39 16.22 48.63 16.22 z "}}]}]}); +this.api=a;this.visible=!1;g.kL(a,this.element,this,28666);this.ka("click",this.onClick);this.L(a,"videodatachange",this.u);this.L(a,"onLoopRangeChange",this.u);this.u();g.Ge(this,g.BN(b.fb(),this.element))}; +TP=function(a,b,c){g.Gr.call(this);var d=this,e=a.N();this.u=a;this.A=b;this.oa=NaN;this.ma=null;this.ba=c;this.ba.subscribe("autohideupdate",this.Qz,this);c=!g.PK(a).isCued();if(this.u.N().fa("html5_player_bottom_linear_gradient")||!g.Uy(e)&&!g.P(a.N().experiments,"html5_player_dynamic_bottom_gradient"))var f=new g.R({D:"div",H:"ytp-gradient-bottom"});else this.wa=f=new g.vN(a);g.B(this,f);g.iL(a,f.element,8);this.ha=new g.lN(f,250,c,100);g.B(this,this.ha);this.w=new g.R({D:"div",H:"ytp-chrome-bottom", +J:[{D:"div",H:"ytp-chrome-controls"}]});g.B(this,this.w);g.iL(a,this.w.element,8);this.aa=new g.lN(this.w,250,c,100);g.B(this,this.aa);this.R=this.w.element.children[0];this.o=new JO(a);g.Ge(this.o,function(){a.P==d.o&&(a.P=null)}); +g.B(this,this.o);a.P=this.o;g.iL(a,this.o.element,6);this.o.subscribe("show",this.YO,this);this.o.subscribe("show",(0,g.x)(b.Iu,b,this.o));this.B=new g.pP(a,b);g.B(this,this.B);this.B.ca(this.w.element,0);c=new g.VO(a);g.B(this,c);g.iL(a,c.element,4);c=new g.Mu({D:"div",H:"ytp-left-controls"});g.B(this,c);c.ca(this.R);f=new g.ON(a,b,!1);g.B(this,f);f.ca(c.element);e.M||(f=new g.fP(a,b),g.B(this,f),f.ca(c.element));f=new g.ON(a,b,!0);g.B(this,f);f.ca(c.element);var k=new g.R({D:"span"});g.B(this,k); +k.ca(c.element);if(!e.wa&&(this.F=new aP(a,b),g.B(this,this.F),this.F.ca(k.element),e.R)){f=new RP(a,b,this.w.element);g.B(this,f);f.ca(k.element);k=new g.Mr(k.element);g.B(this,k);var l=(0,g.x)(f.dC,f,!0);k.subscribe("hoverstart",l);k=new g.Mr(c.element);g.B(this,k);f=(0,g.x)(f.dC,f,!1);k.subscribe("hoverend",f)}this.da=new g.OP(a,b);g.B(this,this.da);this.da.ca(c.element);c=new g.Mu({D:"div",H:"ytp-right-controls"});g.B(this,c);c.ca(this.R);g.P(a.N().experiments,"web_wn_macro_markers")&&(this.V= +new TO(a,b,this.B),g.B(this,this.V),this.V.ca(this.R));this.M=null;g.P(e.experiments,"external_fullscreen_with_edu")&&e.externalFullscreen&&hz(e)&&(this.M=new YO(a,b),g.B(this,this.M),this.M.ca(c.element));f=new NP(a,b);g.B(this,f);f.ca(c.element);f=new TN(a,b,this.o);g.B(this,f);ala(this.o,f);f.ca(c.element);f=new zN(a);g.B(this,f);g.iL(a,f.element,5);f.subscribe("show",(0,g.x)(b.oi,b,f));f=new CN(a,b,f);g.B(this,f);f.ca(c.element);f=a.getVideoData();if(e.Rg||f.lc&&"1"==e.controlsType)this.G=new g.SP(a, +b),g.B(this,this.G),this.G.ca(c.element);e.showMiniplayerButton&&!g.P(a.N().experiments,"web_player_pip")&&(this.C=new $O(a,b),g.B(this,this.C),this.C.ca(c.element));this.U=new dP(a,b);g.B(this,this.U);this.U.ca(c.element);f.Ju||this.U.hide();e.qc||(f=new RO(a,b),g.B(this,f),f.ca(c.element));e.ac&&(f=new MP(a,b,this.o),g.B(this,f),f.ca(c.element));e.Xf&&(e=new SO(a,b),g.B(this,e),e.ca(c.element));this.ga=new g.ZO(a,b);g.B(this,this.ga);this.ga.ca(c.element);this.I=new g.rn(this.qJ,null,this);g.B(this, +this.I);this.P=null;this.L(a,"appresize",this.Pt);this.L(a,"fullscreentoggled",this.Pt);this.L(a,"presentingplayerstatechange",this.Qt);this.L(a,"videodatachange",this.rJ);this.Pt()}; +UP=function(a,b){g.PK(a.u).isCued()||b?b&&(a.aa.hide(),a.ha.hide(),a.F&&a.F.Xa(!1),a.G&&a.G.Xa(!1),a.C&&a.C.Xa(!1),a.A.fb().rf(a.ua())):b||(a.aa.show(),a.ha.show(),a.F&&a.F.Xa(!0),a.G&&a.G.Xa(!0),a.C&&a.C.Xa(!0),a.Qz())}; +WP=function(a){var b=g.QK(a.u).getPlayerSize().width;return Math.max(b-2*VP(a),100)}; +VP=function(a){var b=a.A.kc();return 12*(a.u.getVideoData().lc?0:b?2:1)}; +g.XP=function(a){g.R.call(this,{D:"div",Y:["ytp-error"],O:{role:"alert"},J:[{D:"div",H:"ytp-error-content",J:[{D:"div",H:"ytp-error-icon-container",J:[g.JM()]},{D:"div",H:"ytp-error-content-wrap",J:[{D:"div",H:"ytp-error-content-wrap-reason",W:"{{content}}"},{D:"div",H:"ytp-error-content-wrap-subreason",W:"{{subreason}}"}]}]}]});this.api=a;this.keys=[]}; +g.YP=function(a){a=a.split(fla);for(var b=[],c=0;c1+b&&a.api.toggleFullscreen()}; +ila=function(){var a=el()&&67<=bl();return!dl("tizen")&&!Jy&&!a&&!0}; +mQ=function(a,b){g.Ru.call(this,{D:"div",H:"ytp-ad-persistent-progress-bar-container",J:[{D:"div",H:"ytp-ad-persistent-progress-bar"}]});this.A=a;this.w=b;g.B(this,this.w);this.F=this.o["ytp-ad-persistent-progress-bar"];this.u=-1;this.L(a,"presentingplayerstatechange",this.C);this.hide();this.C()}; +nQ=function(a,b){b=void 0===b?2:b;g.O.call(this);this.o=a;this.u=new g.Gr(this);g.B(this,this.u);this.B=kla;this.A=null;this.u.L(this.o,"presentingplayerstatechange",this.tJ);this.A=this.u.L(this.o,"progresssync",this.Sz);this.w=b;1===this.w&&this.Sz()}; +g.oQ=function(a){g.R.call(this,{D:"div",J:[{D:"div",H:"ytp-bezel-text-wrapper",J:[{D:"div",H:"ytp-bezel-text",W:"{{title}}"}]},{D:"div",H:"ytp-bezel",O:{role:"status","aria-label":"{{label}}"},J:[{D:"div",H:"ytp-bezel-icon",W:"{{icon}}"}]}]});this.A=new g.I(this.show,10,this);g.B(this,this.A);this.u=new g.I(this.hide,500,this);g.B(this,this.u);this.w=a;this.hide()}; +g.qQ=function(a,b){if(b)g.V(g.PK(a.w),64)||pQ(a,SM(),"Lire");else{var c=a.w.getVideoData();c.va&&!c.allowLiveDvr?pQ(a,WM(),"Arr\u00eater la lecture en direct"):pQ(a,QM(),"Pause")}}; +rQ=function(a,b,c){if(0>=b){c=$M();b="son d\u00e9sactiv\u00e9";var d=0}else c=c?ZM():YM(),d=Math.floor(b),b=d+"volume";pQ(a,c,b,d+"%")}; +sQ=function(a,b){var c=b?g.X?{D:"div",Y:["ytp-icon","ytp-icon-fast-rewind"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"M 17,24 V 12 l -8.5,6 8.5,6 z m .5,-6 8.5,6 V 12 l -8.5,6 z"}}]}:g.X?{D:"div",Y:["ytp-icon","ytp-icon-fast-forward"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"M 10,24 18.5,18 10,12 V 24 z M 19,12 V 24 L 27.5,18 19,12 z"}}]},d=a.w.getPlaybackRate(), +e=g.gM("Vitesse\u00a0: $RATE",{RATE:String(d)});pQ(a,c,e,d+"x")}; +pQ=function(a,b,c,d){d=void 0===d?"":d;a.la("label",void 0===c?"":c);a.la("icon",b);a.u.Pe();a.A.start();a.la("title",d);g.K(a.element,"ytp-bezel-text-hide",!d)}; +uQ=function(a,b,c){g.R.call(this,{D:"button",Y:["ytp-button","ytp-cards-button"],O:{"aria-label":"Afficher les fiches","aria-owns":"iv-drawer","aria-haspopup":"true","data-tooltip-opaque":String(g.Ly(a.N()))},J:[{D:"span",H:"ytp-cards-button-icon-default",J:[{D:"div",H:"ytp-cards-button-icon",J:[g.X?{D:"div",Y:["ytp-icon","ytp-icon-info-card"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"M18,8 C12.47,8 8,12.47 8,18 C8,23.52 12.47,28 18,28 C23.52,28 28,23.52 28,18 C28,12.47 23.52,8 18,8 L18,8 Z M17,16 L19,16 L19,24 L17,24 L17,16 Z M17,12 L19,12 L19,14 L17,14 L17,12 Z"}}]}]}, +{D:"div",H:"ytp-cards-button-title",W:"Informations"}]},{D:"span",H:"ytp-cards-button-icon-shopping",J:[{D:"div",H:"ytp-cards-button-icon",J:[g.X?{D:"div",Y:["ytp-icon","ytp-icon-shopping-card"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",H:"ytp-svg-shadow",O:{d:"M 27.99,18 A 9.99,9.99 0 1 1 8.00,18 9.99,9.99 0 1 1 27.99,18 z"}},{D:"path",H:"ytp-svg-fill",O:{d:"M 18,8 C 12.47,8 8,12.47 8,18 8,23.52 12.47,28 18,28 23.52,28 28,23.52 28,18 28,12.47 23.52,8 18,8 z m -4.68,4 4.53,0 c .35,0 .70,.14 .93,.37 l 5.84,5.84 c .23,.23 .37,.58 .37,.93 0,.35 -0.13,.67 -0.37,.90 L 20.06,24.62 C 19.82,24.86 19.51,25 19.15,25 c -0.35,0 -0.70,-0.14 -0.93,-0.37 L 12.37,18.78 C 12.13,18.54 12,18.20 12,17.84 L 12,13.31 C 12,12.59 12.59,12 13.31,12 z m .96,1.31 c -0.53,0 -0.96,.42 -0.96,.96 0,.53 .42,.96 .96,.96 .53,0 .96,-0.42 .96,-0.96 0,-0.53 -0.42,-0.96 -0.96,-0.96 z", +"fill-opacity":"1"}},{D:"path",H:"ytp-svg-shadow-fill",O:{d:"M 24.61,18.22 18.76,12.37 C 18.53,12.14 18.20,12 17.85,12 H 13.30 C 12.58,12 12,12.58 12,13.30 V 17.85 c 0,.35 .14,.68 .38,.92 l 5.84,5.85 c .23,.23 .55,.37 .91,.37 .35,0 .68,-0.14 .91,-0.38 L 24.61,20.06 C 24.85,19.83 25,19.50 25,19.15 25,18.79 24.85,18.46 24.61,18.22 z M 14.27,15.25 c -0.53,0 -0.97,-0.43 -0.97,-0.97 0,-0.53 .43,-0.97 .97,-0.97 .53,0 .97,.43 .97,.97 0,.53 -0.43,.97 -0.97,.97 z",fill:"#000","fill-opacity":"0.15"}}]}]},{D:"div", +H:"ytp-cards-button-title",W:"Shopping"}]}]});this.K=a;this.B=b;this.A=c;this.u=null;this.w=new g.lN(this,250,!0,100);g.B(this,this.w);g.K(this.A,"ytp-show-cards-title",g.Ly(a.N()));this.hide();this.ka("click",this.onClicked);this.ka("mouseover",this.C);tQ(this,!0)}; +tQ=function(a,b){b?a.u=g.BN(a.B.fb(),a.element):(a.u=a.u,a.u(),a.u=null)}; +vQ=function(a,b,c){g.R.call(this,{D:"div",H:"ytp-cards-teaser",J:[{D:"div",H:"ytp-cards-teaser-box"},{D:"div",H:"ytp-cards-teaser-text",J:[{D:"span",H:"ytp-cards-teaser-label",W:"{{text}}"}]}]});var d=this;this.w=a;this.U=b;this.F=new g.lN(this,250,!1,250);g.B(this,this.F);this.C=c;this.u=null;this.M=new g.I(this.NL,300,this);g.B(this,this.M);this.I=new g.I(this.KL,2E3,this);g.B(this,this.I);this.G=[];this.A=null;this.R=new g.I(function(){d.element.style.margin=0},250); +g.B(this,this.R);this.B=null;this.L(c.element,"mouseover",this.HA);this.L(c.element,"mouseout",this.GA);this.L(a,"cardsteasershow",this.nN);this.L(a,"cardsteaserhide",this.jm);this.L(a,"cardstatechange",this.HC);this.L(a,"presentingplayerstatechange",this.HC);this.L(a,"appresize",this.Kt);this.L(a,"onShowControls",this.Kt);this.L(a,"onHideControls",this.hE);this.ka("click",this.MO);this.ka("mouseenter",this.aJ)}; +lla=function(a,b){a.la("text",b.teaserText);a.element.setAttribute("dir",g.Ln(b.teaserText));a.F.show();a.A=new g.I(function(){g.J(this.w.getRootNode(),"ytp-cards-teaser-shown");this.Kt()},0,a); +a.A.start();tQ(a.C,!1);a.u=new g.I(a.jm,580+b.durationMs,a);a.u.start();a.G.push(a.ka("mouseover",a.HA,a));a.G.push(a.ka("mouseout",a.GA,a))}; +wQ=function(a,b,c){return b?a.G+"subscription_ajax":c?"/subscription_service":""}; +g.yQ=function(a,b,c,d,e,f,k,l,m,n,p,t,u){u=void 0===u?null:u;f&&(a=a.charAt(0)+a.substring(1).toLowerCase(),c=c.charAt(0)+c.substring(1).toLowerCase());if("0"===b||"-1"===b)b=null;if("0"===d||"-1"===d)d=null;var z=t.N();if(p){c={href:p,"aria-label":"S'abonner \u00e0 la cha\u00eene"};if(g.Ry(z)||g.Ty(z))c.target=z.C;g.R.call(this,{D:"div",Y:["ytp-button","ytp-sb"],J:[{D:"a",H:"ytp-sb-subscribe",O:c,J:[{D:"div",H:"ytp-sb-text",J:[{D:"div",H:"ytp-sb-icon"},a]},b?{D:"div",H:"ytp-sb-count",W:b}:""]}]}); +f&&g.J(this.element,"ytp-sb-classic")}else{p=z.ha&&g.Ry(z)&&!g.P(z.experiments,"subscribe_tooltip_killswitch");g.R.call(this,{D:"div",Y:["ytp-button","ytp-sb"],J:[{D:"div",H:"ytp-sb-subscribe",O:p?{title:g.gM("S'abonner en tant que\u00a0$USER_NAME",{USER_NAME:z.ha}),"aria-label":"S'abonner \u00e0 la cha\u00eene","data-tooltip-image":sz(z),"data-tooltip-opaque":String(g.Ly(z)),tabindex:"0",role:"button"}:{"aria-label":"S'abonner \u00e0 la cha\u00eene"},J:[{D:"div",H:"ytp-sb-text",J:[{D:"div",H:"ytp-sb-icon"}, +a]},b?{D:"div",H:"ytp-sb-count",W:b}:""]},{D:"div",H:"ytp-sb-unsubscribe",O:p?{title:g.gM("Abonn\u00e9 en tant que $USER_NAME",{USER_NAME:z.ha}),"aria-label":"Se d\u00e9sabonner de la cha\u00eene","data-tooltip-image":sz(z),"data-tooltip-opaque":String(g.Ly(z)),tabindex:"0",role:"button"}:{"aria-label":"Se d\u00e9sabonner de la cha\u00eene"},J:[{D:"div",H:"ytp-sb-text",J:[{D:"div",H:"ytp-sb-icon"},c]},d?{D:"div",H:"ytp-sb-count",W:d}:""]}]});var C=this;this.u=k;this.A=u;var D=this.o["ytp-sb-subscribe"], +E=this.o["ytp-sb-unsubscribe"];f&&g.J(this.element,"ytp-sb-classic");if(e){l&&g.J(this.element,"ytp-sb-subscribed");var F=function(){var fa=C.u;if(m||n){var oa=t.N();var kc={c:fa};if(g.P(oa.experiments,"embeds_botguard_with_subscribe_killswitch"))kc="";else{var Rc;$q.o&&(Rc=Ms(kc));kc=Rc||""}g.P(oa.experiments,"web_player_innertube_subscription_update")?(oa=t.getVideoData(),IK(xQ(t.app),oa.subscribeCommand)):g.Eq(wQ(oa,!!m,!!n),m?{method:"POST",Zd:{action_create_subscription_to_channel:1,c:fa},sb:{feature:m, +silo_name:null,r2b:kc},withCredentials:!0}:n?{method:"POST",Zd:{action_subscribe:1},sb:{channel_ids:fa,itct:n}}:{});t.na("SUBSCRIBE",fa)}E.focus();E.removeAttribute("aria-hidden");D.setAttribute("aria-hidden",!0)},G=function(){var fa=C.u; +if(m||n){var oa=t.N();g.P(oa.experiments,"web_player_innertube_subscription_update")?(oa=t.getVideoData(),IK(xQ(t.app),oa.unsubscribeCommand)):g.Eq(wQ(oa,!!m,!!n),m?{method:"POST",Zd:{action_remove_subscriptions:1},sb:{c:fa,silo_name:null,feature:m},withCredentials:!0}:n?{method:"POST",Zd:{action_unsubscribe:1},sb:{channel_ids:fa,itct:n}}:{});t.na("UNSUBSCRIBE",fa)}D.focus();D.removeAttribute("aria-hidden");E.setAttribute("aria-hidden",!0)}; +this.L(D,"click",F);this.L(E,"click",G);this.L(D,"keypress",function(fa){13==fa.keyCode&&F(fa)}); +this.L(E,"keypress",function(fa){13==fa.keyCode&&G(fa)}); +this.L(t,"SUBSCRIBE",this.B);this.L(t,"UNSUBSCRIBE",this.C);this.A&&p&&(this.w=this.A.fb(),AN(this.w),g.Ge(this,g.BN(this.w,D)),g.Ge(this,g.BN(this.w,E)))}else g.J(D,"ytp-sb-disabled"),g.J(E,"ytp-sb-disabled")}}; +g.AQ=function(a,b,c){b=zQ(null,b,c);if(b=window.open(b,"loginPopup","width=800,height=600,resizable=yes,scrollbars=yes",!0))c=g.Oo("LOGGED_IN",function(d){g.Po(g.L("LOGGED_IN_PUBSUB_KEY",void 0));to("LOGGED_IN",!0);a(d)}),to("LOGGED_IN_PUBSUB_KEY",c),b.moveTo((screen.width-800)/2,(screen.height-600)/2)}; +zQ=function(a,b,c){var d="/signin?context=popup";c&&(d=document.location.protocol+"//"+c+d);c=document.location.protocol+"//"+document.domain+"/post_login";a&&(c=xd(c,"mode",a));a=xd(d,"next",c);b&&(a=xd(a,"feature",b));return a}; +CQ=function(a,b){g.R.call(this,{D:"button",Y:[BQ.BUTTON,BQ.TITLE_NOTIFICATIONS],O:{"aria-pressed":"{{pressed}}","aria-label":"{{label}}"},J:[{D:"div",H:BQ.TITLE_NOTIFICATIONS_ON,O:{title:"Ne plus recevoir de notifications pour chaque vid\u00e9o mise en ligne","aria-label":"Envoi de notifications aux abonn\u00e9s"},J:[g.PM()]},{D:"div",H:BQ.TITLE_NOTIFICATIONS_OFF,O:{title:"Recevoir une notification pour chaque vid\u00e9o mise en ligne","aria-label":"Envoi de notifications aux abonn\u00e9s"},J:[g.X? +{D:"div",Y:["ytp-icon","ytp-icon-notifications-inactive"]}:{D:"svg",O:{fill:"#fff",height:"24px",viewBox:"0 0 24 24",width:"24px"},J:[{D:"path",O:{d:"M18 11c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2v-5zm-6 11c.14 0 .27-.01.4-.04.65-.14 1.18-.58 1.44-1.18.1-.24.15-.5.15-.78h-4c.01 1.1.9 2 2.01 2z"}}]}]}]});this.api=a;this.channelId=b;this.u=!1;g.kL(a,this.element,this,36927);this.ka("click",this.onClick,this);this.la("pressed",!1); +this.la("label","Recevoir une notification pour chaque vid\u00e9o mise en ligne")}; +DQ=function(a,b){a.u=b;a.element.classList.toggle(BQ.NOTIFICATIONS_ENABLED,a.u);g.Eq("/subscription_ajax?action_update_subscription_preferences=1",{method:"POST",sb:{channel_id:a.channelId,receive_all_updates:!a.u}})}; +EQ=function(a,b){var c=a.N();g.R.call(this,{D:"div",H:"ytp-title-channel",J:[{D:"div",H:"ytp-title-beacon"},{D:"a",H:"ytp-title-channel-logo",O:{href:"{{channelLink}}",target:c.C,"aria-label":"{{channelLogoLabel}}"}},{D:"div",H:"ytp-title-expanded-overlay",J:[{D:"div",H:"ytp-title-expanded-heading",J:[{D:"h2",H:"ytp-title-expanded-title",J:[{D:"a",W:"{{expandedTitle}}",O:{href:"{{channelTitleLink}}",target:c.C,tabIndex:"{{channelTitleFocusable}}"}}]},{D:"h3",H:"ytp-title-expanded-subtitle",W:"{{expandedSubtitle}}"}]}]}]}); +this.u=a;this.ba=b;this.w=this.o["ytp-title-channel"];this.B=this.o["ytp-title-channel-logo"];this.U=this.o["ytp-title-expanded-overlay"];this.F=this.C=this.A=null;this.V=g.Ly(c);g.kL(a,this.B,this,36925);this.V&&mla(this);this.L(a,"videodatachange",this.M);this.L(a,"videoplayerreset",this.M);this.M()}; +mla=function(a){var b=a.u.N(),c=a.u.getVideoData();if(!b.aa){var d=b.Nc?null:zQ(),e=new g.yQ("S'abonner",null,"Abonn\u00e9",null,!0,!1,c.Ng,c.subscribed,"channel_avatar",null,d,a.u,a.ba);a.A=e;g.B(a,e);e.ca(a.U);g.kL(a.u,e.element,a,36926);e.hide();a.L(e.element,"click",function(){g.nL(a.u,e.element)}); +var f=new CQ(a.u,c.Ng);a.C=f;g.B(a,f);f.ca(a.U);f.hide();a.L(a.u,"SUBSCRIBE",function(){c.zk&&f.show()}); +a.L(a.u,"UNSUBSCRIBE",function(){c.zk&&(f.hide(),DQ(f,!1))})}a.la("channelTitleFocusable","-1"); +b.o?a.L(a.B,"click",function(k){FQ(a)&&(k.preventDefault(),GQ(a)?a.G():a.I());g.nL(a.u,a.B)}):(a.L(a.w,"mouseenter",a.I),a.L(a.w,"mouseleave",a.G),a.L(a.w,"focusin",a.I),a.L(a.w,"focusout",function(k){a.w.contains(k.relatedTarget)||a.G()}),a.L(a.B,"click",function(){g.nL(a.u,a.B)})); +a.F=new g.I(function(){GQ(a)&&(a.A&&(a.A.hide(),g.oL(a.u,a.A.element,!1)),a.C&&(a.C.hide(),g.oL(a.u,a.C.element,!1)),a.w.classList.remove("ytp-title-expanded"),a.w.classList.add("ytp-title-show-collapsed"))},500); +g.B(a,a.F);a.L(a.w,HQ,function(){IQ(a)}); +a.L(a.u,"onHideControls",a.R);a.L(a.u,"appresize",a.R);a.L(a.u,"fullscreentoggled",a.R)}; +IQ=function(a){a.w.classList.remove("ytp-title-show-collapsed");a.w.classList.remove("ytp-title-show-expanded")}; +FQ=function(a){var b=a.u.getPlayerSize();return a.V&&524<=b.width}; +GQ=function(a){return a.w.classList.contains("ytp-title-expanded")}; +JQ=function(a){g.R.call(this,{D:"div",H:"ytp-doubletap-ui",J:[{D:"div",H:"ytp-doubletap-static-circle",J:[{D:"div",H:"ytp-doubletap-ripple"}]},{D:"div",H:"ytp-doubletap-overlay-a11y"},{D:"div",H:"ytp-doubletap-seek-info-container",J:[{D:"div",H:"ytp-doubletap-arrows-container",J:[{D:"span",H:"ytp-doubletap-base-arrow"},{D:"span",H:"ytp-doubletap-base-arrow"},{D:"span",H:"ytp-doubletap-base-arrow"}]},{D:"div",H:"ytp-doubletap-tooltip",J:[{D:"div",H:"ytp-doubletap-tooltip-label",W:"{{seekTime}}"}]}]}]}); +this.w=a;this.A=new g.I(this.show,10,this);g.B(this,this.A);this.u=new g.I(this.hide,700,this);g.B(this,this.u);this.hide()}; +KQ=function(a,b,c){var d={};b&&(d.v=b);c&&(d.list=c);a={name:a,locale:void 0,feature:void 0};for(var e in d)a[e]=d[e];d=g.yd("/sharing_services",a);g.cr(d)}; +LQ=function(a){var b=g.Uu({"aria-haspopup":"true"});g.Tu.call(this,b,a);this.ka("keydown",this.u)}; +MQ=function(a,b){a.element.setAttribute("aria-haspopup",String(b))}; +PQ=function(a,b,c,d){g.WN.call(this,a);this.u=a;this.U=c;this.Z=d;this.F=new g.gO("Lire en boucle",7);g.B(this,this.F);g.XN(this,this.F,!0);this.F.ka("click",this.vL,this);g.kL(a,this.F.element,this.F,28661);this.C=new LQ(6);g.B(this,this.C);g.XN(this,this.C,!0);this.C.ka("click",this.fL,this);g.kL(a,this.C.element,this.C,28659);this.B=new LQ(5);g.B(this,this.B);g.XN(this,this.B,!0);this.B.ka("click",this.eL,this);g.kL(a,this.B.element,this.B,28660);this.A=new LQ(4);g.B(this,this.A);g.XN(this,this.A, +!0);this.A.ka("click",this.dL,this);g.kL(a,this.A.element,this.A,28658);this.R=new LQ(3);g.B(this,this.R);g.XN(this,this.R,!0);this.R.ka("click",this.cL,this);this.V=new g.Tu(g.Uu({href:"{{href}}",target:a.N().C},void 0,!0),2,"R\u00e9soudre les probl\u00e8mes de lecture");g.B(this,this.V);g.XN(this,this.V,!0);this.V.ka("click",this.GM,this);b=new g.Tu(g.Uu(),1,"Statistiques avanc\u00e9es");g.B(this,b);g.XN(this,b,!0);b.ka("click",this.eN,this);this.M=new g.Ru({D:"div",Y:["ytp-copytext","ytp-no-contextmenu"], +O:{draggable:"false",tabindex:"1"},W:"{{text}}"});g.B(this,this.M);this.M.ka("click",this.KK,this);this.ga=new VN(a,this.M);g.B(this,this.ga);this.I=null;c=document.queryCommandSupported&&document.queryCommandSupported("copy");g.Dt&&g.Kd(43)&&(c=!0);g.hu&&!g.Kd(41)&&(c=!1);c&&(this.I=new g.R({D:"textarea",H:"ytp-html5-clipboard",O:{readonly:""}}),g.B(this,this.I),this.I.ca(this.element));Vu(this.F,g.X?{D:"div",Y:["ytp-icon","ytp-icon-repeat"]}:{D:"svg",O:{fill:"none",height:"24",viewBox:"0 0 24 24", +width:"24"},J:[{D:"path",O:{d:"M7 7H17V10L21 6L17 2V5H5V11H7V7ZM17 17H7V14L3 18L7 22V19H19V13H17V17Z",fill:"white"}}]});Vu(this.R,g.X?{D:"div",Y:["ytp-icon","ytp-icon-bug-report"]}:{D:"svg",O:{height:"24",viewBox:"0 0 24 24",width:"24"},J:[{D:"path",O:{"clip-rule":"evenodd",d:"M20 10V8H17.19C16.74 7.22 16.12 6.54 15.37 6.04L17 4.41L15.59 3L13.42 5.17C13.39 5.16 13.37 5.16 13.34 5.16C13.18 5.12 13.02 5.1 12.85 5.07C12.79 5.06 12.74 5.05 12.68 5.04C12.46 5.02 12.23 5 12 5C11.51 5 11.03 5.07 10.58 5.18L10.6 5.17L8.41 3L7 4.41L8.62 6.04H8.63C7.88 6.54 7.26 7.22 6.81 8H4V10H6.09C6.03 10.33 6 10.66 6 11V12H4V14H6V15C6 15.34 6.04 15.67 6.09 16H4V18H6.81C7.85 19.79 9.78 21 12 21C14.22 21 16.15 19.79 17.19 18H20V16H17.91C17.96 15.67 18 15.34 18 15V14H20V12H18V11C18 10.66 17.96 10.33 17.91 10H20ZM16 15C16 17.21 14.21 19 12 19C9.79 19 8 17.21 8 15V11C8 8.79 9.79 7 12 7C14.21 7 16 8.79 16 11V15ZM10 14H14V16H10V14ZM10 10H14V12H10V10Z", +fill:"white","fill-rule":"evenodd"}}]});Vu(this.V,g.X?{D:"div",Y:["ytp-icon","ytp-icon-help-outline"]}:{D:"svg",O:{fill:"none",height:"24",viewBox:"0 0 24 24",width:"24"},J:[{D:"path",O:{"clip-rule":"evenodd",d:"M2 12C2 6.48 6.48 2 12 2C17.52 2 22 6.48 22 12C22 17.52 17.52 22 12 22C6.48 22 2 17.52 2 12ZM13 16V18H11V16H13ZM12 20C7.59 20 4 16.41 4 12C4 7.59 7.59 4 12 4C16.41 4 20 7.59 20 12C20 16.41 16.41 20 12 20ZM8 10C8 7.79 9.79 6 12 6C14.21 6 16 7.79 16 10C16 11.28 15.21 11.97 14.44 12.64C13.71 13.28 13 13.90 13 15H11C11 13.17 11.94 12.45 12.77 11.82C13.42 11.32 14 10.87 14 10C14 8.9 13.1 8 12 8C10.9 8 10 8.9 10 10H8Z", +fill:"white","fill-rule":"evenodd"}}]});Vu(b,KM());this.L(a,"loopchange",this.EA);this.L(a,"videodatachange",this.eJ);NQ(this);OQ(this,this.u.getVideoData())}; +QQ=function(a,b){if(a.I){var c=a.I.element;c.value=b;c.select();try{var d=document.execCommand("copy")}catch(e){}}d?a.U.gb():(a.M.qb(b,"text"),g.dO(a.U,a.ga),LN(a.M.element),a.I&&(a.I=null,NQ(a)));return d}; +OQ=function(a,b){var c=a.u.N(),d=2==a.u.getPresentingPlayerType(),e=!d||b.isListed;e=!c.P&&!!b.videoId&&e;"play"!==c.playerStyle?c="https://support.google.com/youtube/?p=report_playback":(c={contact_type:"playbackissue",html5:1,ei:b.eventId,v:b.videoId,p:"movies_playback"},b.Ba&&(c.fmt=ct(b.Ba)),b.clientPlaybackNonce&&(c.cpn=b.clientPlaybackNonce),b.De&&(c.partnerid=b.De),c=g.yd("//support.google.com/googleplay/",c));g.Qu(a.A,e&&b.allowEmbed);g.Qu(a.C,e);g.Qu(a.B,e&&!b.va);a.V.qb(c,"href");g.Qu(a.F, +!b.va&&!d)}; +NQ=function(a){var b=!!a.I;g.Su(a.R,b?"Copier les informations de d\u00e9bogage":"Obtenir les informations de d\u00e9bogage");MQ(a.R,!b);g.Su(a.A,b?"Copier le code d'int\u00e9gration":"Obtenir le code d'int\u00e9gration");MQ(a.A,!b);g.Su(a.C,b?"Copier l'URL de la vid\u00e9o":"Obtenir l'URL de la vid\u00e9o");MQ(a.C,!b);g.Su(a.B,b?"Copier l'URL de la vid\u00e9o \u00e0 partir de cette s\u00e9quence":"Obtenir l'URL de la vid\u00e9o au minutage actuel");MQ(a.B,!b);Vu(a.A,b?HM():null);Vu(a.C,b?MM():null); +Vu(a.B,b?MM():null)}; +g.RQ=function(){g.Gr.apply(this,arguments)}; +g.TQ=function(a,b,c){g.$N.call(this,a);this.K=a;this.aa=b;this.V=c;this.B=new g.RQ(this);this.A=null;g.B(this,this.B);g.kL(a,this.element,this,28656);g.J(this.element,"ytp-contextmenu");SQ(this);this.hide()}; +SQ=function(a){g.Ir(a.B);"gvn"!==a.K.N().playerStyle&&a.B.L(g.QK(a.K),"contextmenu",a.JK)}; +UQ=function(a){a.K.isFullscreen()?g.iL(a.K,a.element,9):a.ca(document.body)}; +g.VQ=function(a,b,c,d,e,f){g.Gr.call(this);this.o=a;this.F=c;this.B=d;this.u=e;this.C=f;this.A=new g.I(g.Qa(this.kC,!1),1E3,this);g.B(this,this.A);this.w="";a=g.Qa(this.Fu,!1);this.L(b,"mousedown",a);this.L(c.element,"mousedown",a);this.L(b,"keydown",this.Qx);this.L(c.element,"keydown",this.Qx);this.L(b,"keyup",this.Rx);this.L(c.element,"keyup",this.Rx)}; +WQ=function(a,b,c,d){var e=g.zL(g.KK(a.o));if(e&&e.loaded){e=a.o.getSubtitlesUserSettings();for(var f,k=0;kd;e++){var f=c[e];a:switch(f.img||f.iconId){case "facebook":var k=g.X?{D:"div",Y:["ytp-icon","ytp-icon-share-facebook"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 38 38",width:"100%"},J:[{D:"rect",O:{fill:"#fff",height:"34",width:"34",x:"2",y:"2"}},{D:"path",O:{d:"M 34.2,0 3.8,0 C 1.70,0 .01,1.70 .01,3.8 L 0,34.2 C 0,36.29 1.70,38 3.8,38 l 30.4,0 C 36.29,38 38,36.29 38,34.2 L 38,3.8 C 38,1.70 36.29,0 34.2,0 l 0,0 z m -1.9,3.8 0,5.7 -3.8,0 c -1.04,0 -1.9,.84 -1.9,1.9 l 0,3.8 5.7,0 0,5.7 -5.7,0 0,13.3 -5.7,0 0,-13.3 -3.8,0 0,-5.7 3.8,0 0,-4.75 c 0,-3.67 2.97,-6.65 6.65,-6.65 l 4.75,0 z", +fill:"#39579b"}}]};break a;case "twitter":k=g.X?{D:"div",Y:["ytp-icon","ytp-icon-share-twitter"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 38 38",width:"100%"},J:[{D:"rect",O:{fill:"#fff",height:"34",width:"34",x:"2",y:"2"}},{D:"path",O:{d:"M 34.2,0 3.8,0 C 1.70,0 .01,1.70 .01,3.8 L 0,34.2 C 0,36.29 1.70,38 3.8,38 l 30.4,0 C 36.29,38 38,36.29 38,34.2 L 38,3.8 C 38,1.70 36.29,0 34.2,0 l 0,0 z M 29.84,13.92 C 29.72,22.70 24.12,28.71 15.74,29.08 12.28,29.24 9.78,28.12 7.6,26.75 c 2.55,.40 5.71,-0.60 7.41,-2.06 -2.50,-0.24 -3.98,-1.52 -4.68,-3.56 .72,.12 1.48,.09 2.17,-0.05 -2.26,-0.76 -3.86,-2.15 -3.95,-5.07 .63,.28 1.29,.56 2.17,.60 C 9.03,15.64 7.79,12.13 9.21,9.80 c 2.50,2.75 5.52,4.99 10.47,5.30 -1.24,-5.31 5.81,-8.19 8.74,-4.62 1.24,-0.23 2.26,-0.71 3.23,-1.22 -0.39,1.23 -1.17,2.09 -2.11,2.79 1.03,-0.14 1.95,-0.38 2.73,-0.77 -0.47,.99 -1.53,1.9 -2.45,2.66 l 0,0 z", +fill:"#01abf0"}}]};break a;default:k=null}k&&(k=new g.R({D:"a",Y:["ytp-share-panel-service-button","ytp-button"],O:{href:f.url,target:"_blank",title:f.sname||f.serviceName},J:[k]}),k.ka("click",g.Qa(a.bN,f.url)),g.Ge(k,g.BN(a.A,k.element)),a.B.push(k),d++)}c=b.more||b.moreLink;d=new g.R({D:"a",Y:["ytp-share-panel-service-button","ytp-button"],J:[{D:"span",H:"ytp-share-panel-service-button-more",J:[g.X?{D:"div",Y:["ytp-icon","ytp-icon-share-more"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 38 38", +width:"100%"},J:[{D:"rect",O:{fill:"#fff",height:"34",width:"34",x:"2",y:"2"}},{D:"path",O:{d:"M 34.2,0 3.8,0 C 1.70,0 .01,1.70 .01,3.8 L 0,34.2 C 0,36.29 1.70,38 3.8,38 l 30.4,0 C 36.29,38 38,36.29 38,34.2 L 38,3.8 C 38,1.70 36.29,0 34.2,0 Z m -5.7,21.85 c 1.57,0 2.85,-1.27 2.85,-2.85 0,-1.57 -1.27,-2.85 -2.85,-2.85 -1.57,0 -2.85,1.27 -2.85,2.85 0,1.57 1.27,2.85 2.85,2.85 z m -9.5,0 c 1.57,0 2.85,-1.27 2.85,-2.85 0,-1.57 -1.27,-2.85 -2.85,-2.85 -1.57,0 -2.85,1.27 -2.85,2.85 0,1.57 1.27,2.85 2.85,2.85 z m -9.5,0 c 1.57,0 2.85,-1.27 2.85,-2.85 0,-1.57 -1.27,-2.85 -2.85,-2.85 -1.57,0 -2.85,1.27 -2.85,2.85 0,1.57 1.27,2.85 2.85,2.85 z", +fill:"#4e4e4f","fill-rule":"evenodd"}}]}]}],O:{href:c,target:"_blank",title:"Plus"}});d.ka("click",(0,g.x)(a.HL,a,c));g.Ge(d,g.BN(a.A,d.element));a.B.push(d);a.la("buttons",a.B)}}; +cR=function(a){for(var b=g.q(a.B),c=b.next();!c.done;c=b.next())c=c.value,g.Nu(c),g.He(c);a.B=[]}; +g.eR=function(a,b,c,d){d=void 0===d?240:d;var e=a.N();g.R.call(this,{D:"button",Y:["ytp-button","ytp-share-button"],O:{title:"Partager","aria-haspopup":"true","aria-owns":c.element.id,"data-tooltip-opaque":String(g.Ly(e))},J:[{D:"div",H:"ytp-share-icon",W:"{{icon}}"},{D:"div",H:"ytp-share-title",W:"Partager"}]});this.u=a;this.B=b;this.I=c;this.F=d;this.w=!1;this.C=b.fb();g.kL(a,this.element,this,28664);this.ka("click",this.G);this.L(a,"videodatachange",this.A);this.L(a,"videoplayerreset",this.A); +this.L(a,"appresize",this.A);this.L(a,"presentingplayerstatechange",this.A);this.A();g.K(this.element,"ytp-show-share-title",g.Ly(e)&&!g.Uy(e));g.Ge(this,g.BN(this.C,this.element))}; +gR=function(a){g.wN.call(this,a,{D:"button",Y:["ytp-skip-intro-button","ytp-popup","ytp-button"],J:[{D:"div",H:"ytp-skip-intro-button-text",W:"Passer l'intro"}]},100);var b=this;this.w=a;this.F=!1;this.C=new g.I(function(){return b.hide()},5E3); +g.B(this,this.C);this.A=this.B=NaN;this.V=function(){return b.show()}; +this.R=function(){return b.hide()}; +this.M=this.aa.bind(this);this.L(this.w,"videodatachange",function(c,d){if("dataloaded"==c)if(b.B=d.gy,b.A=d.fy,isNaN(b.B)||isNaN(b.A))b.F&&(g.fR(b.w.app,"intro",void 0),b.w.removeEventListener(g.lC("intro"),b.V),b.w.removeEventListener("crx_intro",b.R),b.w.removeEventListener("onShowControls",b.M),b.hide(),b.F=!1);else{b.w.addEventListener(g.lC("intro"),b.V);b.w.addEventListener("crx_intro",b.R);b.w.addEventListener("onShowControls",b.M);var e=new g.iC(b.B,b.A,{priority:7,namespace:"intro"});g.eL(b.w, +[e]);b.F=!0}}); +this.L(this.element,"click",function(){b.w.seekTo(b.A/1E3)}); +this.hide()}; +g.hR=function(a,b){var c=g.QK(a).getPlayerSize();g.R.call(this,{D:"div",J:[{D:"div",H:"ytp-tooltip-text-wrapper",J:[{D:"div",H:"ytp-tooltip-image"},{D:"div",H:"ytp-tooltip-title",W:"{{title}}"},{D:"span",H:"ytp-tooltip-text",W:"{{text}}"}]},{D:"div",H:"ytp-tooltip-bg",J:[{D:"div",H:"ytp-tooltip-duration",W:"{{duration}}"}]}]});this.U=a;this.wa=b;this.R=a.N();this.oa=this.R.o;this.I=this.o["ytp-tooltip-bg"];this.za=this.o["ytp-tooltip-image"];this.Aa=this.o["ytp-tooltip-text"];this.title=this.o["ytp-tooltip-title"]; +this.Z=(0,g.x)(this.JL,this);this.F=(0,g.x)(this.ML,this);this.aa=(0,g.x)(this.zf,this);this.u=null;this.M=new g.lN(this,100);g.B(this,this.M);this.w=null;this.ba=!1;this.A=null;this.C=NaN;this.G="";this.ga=c.width;this.V=!0;this.B=1;this.da=new g.I(this.mG,250,this);g.B(this,this.da);this.ma=new g.I(this.zf,5E3,this);g.B(this,this.ma);Hy&&(c=this.o["ytp-tooltip-text"],c.setAttribute("role","text"),c.setAttribute("aria-live","polite"))}; +AN=function(a){a.element.setAttribute("aria-live","polite")}; +kR=function(a,b,c,d,e,f,k,l){if(!a.oa){3==a.w&&a.zf();1!=a.w&&(An(a.element,"ytp-tooltip ytp-bottom"),a.w=1,a.V&&a.M.show(),a.A&&a.A.dispose(),a.A=a.U.ue(),a.A&&a.A.subscribe("l",a.BA,a));a.update({text:d,title:k?k:""});g.P(a.U.N().experiments,"web_wn_macro_markers")&&g.K(a.Aa,"ytp-tooltip-text-no-title",1===a.w&&!k);g.K(a.element,"ytp-text-detail",!!e);d=-1;a.A&&(d=SA(a.A,160*a.B),g.P(a.R.experiments,"web_l3_storyboard")&&4==a.A.levels.length&&(d=a.A.levels.length-1),d=XA(a.A,d,c));iR(a,d);if(l)switch(c= +g.Nh(a.element).width,l){case 1:a.title.style.right="0";a.title.style.textAlign="left";break;case 2:a.title.style.right=c+"px";a.title.style.textAlign="right";break;case 3:a.title.style.right=c/2+"px",a.title.style.textAlign="center"}jR(a,!!e,b,f)}}; +g.lR=function(a){1==a.w&&a.zf()}; +g.BN=function(a,b){if(a.oa)return g.Ia;b.addEventListener("mouseover",a.F);g.P(a.R.experiments,"show_tooltip_on_tab_killswitch")||b.addEventListener("focus",a.F);var c=b.getAttribute("title");c&&!b.hasAttribute("aria-label")&&b.setAttribute("aria-label",c);return(0,g.x)(function(){this.u==b&&this.zf();b.removeEventListener("mouseover",this.F);g.P(this.R.experiments,"show_tooltip_on_tab_killswitch")||b.removeEventListener("focus",this.F)},a)}; +nR=function(a,b,c){if(a.w)if(3==a.w)a.zf();else return;mR(a,b,3,c)}; +mR=function(a,b,c,d){if(b&&!b.hasAttribute)a=new Sq("showElementTooltip_ called with non-element.",b.toString()),g.Tq(a);else{isNaN(a.C)||(a.C=NaN,a.I.style.background="");a.u=b;a.ba=!!d;d?a.G=d:(a.G=b.getAttribute("title"),b.removeAttribute("title"));An(a.element,"ytp-tooltip");if(d=b.getAttribute("data-tooltip-image"))a.za.style.backgroundImage="url("+d+")";g.K(a.element,"ytp-tooltip-image-enabled",!!d);b=b.getAttribute("data-tooltip-opaque");g.K(a.element,"ytp-tooltip-opaque",!!b);a.w=c;a.U.addEventListener("appresize", +a.aa);a.V&&(oR(a),a.M.show(0))}}; +oR=function(a){var b;a.u&&(b=a.u.getAttribute("data-tooltip-text"));if(b&&!a.ba){a.la("text",b);var c=a.u.getAttribute("data-duration");a.update({title:a.G,duration:c});var d=a.u.getAttribute("data-preview"),e=160*a.B,f=90*a.B,k=160*a.B,l=90*a.B;a.I.style.width=e+"px";a.I.style.height=f+"px";a.I.style.backgroundImage=d?"url("+d+")":"";a.I.style.backgroundPosition=(e-k)/2+"px "+(f-l)/2+"px";a.I.style.backgroundSize=k+"px "+l+"px";g.Cn(a.element,["ytp-text-detail","ytp-preview"]);g.K(a.element,"ytp-has-duration", +!!c)}else a.la("text",a.G),g.En(a.element,["ytp-text-detail","ytp-preview","ytp-has-duration"]);jR(a,!!b)}; +jR=function(a,b,c,d){a.element.style.maxWidth=b?"":Math.min(a.ga,300*a.B)+"px";a.wa.qk(a.element,a.u,c,1==a.w,d);a.element.style.top?g.J(a.element,"ytp-bottom"):a.element.style.bottom&&g.J(a.element,"ytp-top");3==a.w&&a.ma.start()}; +SN=function(a){a.u&&!a.ba&&a.u.hasAttribute("title")&&(a.G=a.u.getAttribute("title"),a.u.removeAttribute("title"),a.V&&oR(a))}; +iR=function(a,b){g.K(a.element,"ytp-preview",0<=b);if(!(0>b||b==a.C)){a.C=b;var c=160*a.B,d=160*a.B,e=a.A.ti(a.C,c);UO(a.I,e,c,d,!0);a.da.start()}}; +pR=function(a){g.R.call(this,{D:"button",Y:["ytp-button","ytp-back-button"],J:[{D:"div",H:"ytp-arrow-back-icon",J:[g.X?{D:"div",Y:["ytp-icon","ytp-icon-arrow-back"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 -12 36 36",width:"100%"},J:[{D:"path",O:{d:"M0 0h24v24H0z",fill:"none"}},{D:"path",Na:!0,O:{d:"M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z",fill:"#fff"}}]}]}]});this.K=a;g.Qu(this,a.N().showBackButton);this.ka("click",this.onClick)}; +qR=function(a,b){g.R.call(this,{D:"button",Y:["ytp-button","ytp-copylink-button"],O:{title:"{{title-attr}}","data-tooltip-opaque":String(g.Ly(a.N()))},J:[{D:"div",H:"ytp-copylink-icon",W:"{{icon}}"},{D:"div",H:"ytp-copylink-title",W:"Copier le lien",O:{"aria-hidden":"true"}}]});var c=this;this.api=a;this.u=b;this.visible=!1;this.tooltip=this.u.fb();var d=a.N();AN(this.tooltip);g.K(this.element,"ytp-show-copylink-title",g.Ly(d)&&!g.Uy(d));g.kL(a,this.element,this,86570);this.ka("click",this.onClick); +this.L(a,"videodatachange",this.sa);this.L(a,"videoplayerreset",this.sa);this.L(a,"appresize",this.sa);this.sa();g.Ge(this,function(){return g.BN(c.tooltip,c.element)})}; +nla=function(a){a.la("icon",AM());nR(a.tooltip,a.element,"Lien copi\u00e9 dans le presse-papiers");var b=a.ka("mouseleave",function(){a.bb(b);a.sa();a.tooltip.rf()})}; +rR=function(a,b,c){g.R.call(this,{D:"button",Y:["ytp-button","ytp-overflow-button"],O:{title:"Plus","aria-haspopup":"true","aria-owns":c.element.id},J:[{D:"div",H:"ytp-overflow-icon",J:[g.X?{D:"div",Y:["ytp-icon","ytp-icon-more-vert"]}:{D:"svg",O:{height:"100%",viewBox:"-5 -5 36 36",width:"100%"},J:[{D:"path",O:{d:"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z",fill:"#fff"}}]}]}]});var d=this;this.K= +a;this.u=b;this.visible=!1;this.tooltip=this.u.fb();g.kL(a,this.element,this,16499);this.L(a,"appresize",this.sa);this.L(a,"fullscreentoggled",this.sa);this.L(a,"presentingplayerstatechange",this.sa);this.sa();g.Ge(this,g.BN(this.tooltip,this.element));this.ka("click",function(){g.nL(a,d.element);c.hf(d.element,!1)})}; +sR=function(a,b){g.wN.call(this,a,{D:"div",H:"ytp-overflow-panel",O:{id:Lu(),role:"dialog"},J:[{D:"div",H:"ytp-overflow-panel-content",J:[{D:"div",H:"ytp-overflow-panel-action-buttons",W:"{{buttons}}"}]},{D:"button",Y:["ytp-overflow-panel-close","ytp-button"],O:{title:"Fermer"},J:[g.GM()]}]},250);var c=this;this.K=a;this.actionButtons=[];this.tooltip=b.fb();this.w=this.o["ytp-overflow-panel-content"];this.closeButton=this.o["ytp-overflow-panel-close"];this.L(this.closeButton,"click",this.gb);g.Ge(this, +function(){return g.BN(c.tooltip,c.closeButton)}); +this.ka("click",this.dM);this.L(a,"videoplayerreset",this.hide);this.L(a,"fullscreentoggled",this.QH);this.hide()}; +tR=function(a,b){a.actionButtons.includes(b)||(a.actionButtons.push(b),a.la("buttons",a.actionButtons))}; +uR=function(a,b){for(var c=g.q(a.actionButtons),d=c.next();!d.done;d=c.next())d.value.Xa(b)}; +vR=function(a,b){g.R.call(this,{D:"button",Y:["ytp-replay-button","ytp-button"],O:{title:"Revoir"},J:[g.UM()]});this.K=a;this.L(a,"presentingplayerstatechange",this.u);this.ka("click",this.onClick,this);var c=g.PK(a);g.Qu(this,g.V(c,2));g.BN(b.fb(),this.element)}; +xR=function(a){g.R.call(this,{D:"div",H:wR.TITLE,J:[{D:"div",H:wR.TEXT,J:[{D:"a",Y:[wR.LINK,wR.SESSIONLINK],O:{target:a.N().C,href:"{{url}}","data-sessionlink":"feature=player-title"},W:"{{title}}"},{D:"div",H:wR.SUBTEXT,J:[{D:"a",H:wR.CHANNEL_NAME,O:{href:"{{channelLink}}",target:"_blank"},W:"{{channelName}}"}]}]}]});this.api=a;this.u=null;this.link=this.o[wR.LINK];g.kL(a,this.element,this,23851);this.L(a,"videodatachange",this.sa);this.L(a,"videoplayerreset",this.sa);this.sa()}; +yR=function(a){a.la("channelLink","");a.la("channelName","")}; +zR=function(){}; +BR=function(a,b){var c={commandMetadata:{webCommandMetadata:{apiUrl:"/youtubei/v1/browse/edit_playlist",url:"/service_ajax",sendPost:!0}},playlistEditEndpoint:{playlistId:"WL",actions:b}},d={list_id:"WL"};AR||(GK({lr:{playlistEditEndpoint:fN,subscribeEndpoint:dN,unsubscribeEndpoint:eN,modifyChannelNotificationPreferenceEndpoint:zR}},iN(),bN(),Rea),AR=FK.o);c=IK(AR,c);Jf(c.then(function(e){if(e&&"STATUS_SUCCEEDED"===e.status){if(a.onSuccess)a.onSuccess({},d)}else if(a.onError)a.onError({},d)}),function(){a.Fc&& +a.Fc({},d)})}; +ola=function(a,b,c){g.xo("web_classic_playlist_one_platform_update")?BR(a,[{addedVideoId:a.videoIds,action:"ACTION_ADD_VIDEO"}]):CR("add_to_watch_later_list",a,b,c)}; +pla=function(a,b,c){g.xo("web_classic_playlist_one_platform_update")?BR(a,[{removedVideoId:a.videoIds,action:"ACTION_REMOVE_VIDEO_BY_VIDEO_ID"}]):CR("delete_from_watch_later_list",a,b,c)}; +CR=function(a,b,c,d){g.Eq(c?c+"playlist_video_ajax?action_"+a+"=1":"/playlist_video_ajax?action_"+a+"=1",{method:"POST",Zd:{feature:b.feature||null,authuser:b.Nc||null,pageid:b.pageId||null},sb:{video_ids:b.videoIds||null,source_playlist_id:b.sourcePlaylistId||null,full_list_id:b.fullListId||null,delete_from_playlists:b.PT||null,add_to_playlists:b.sT||null,plid:g.L("PLAYBACK_ID")||null},context:b.context,onError:b.onError,onSuccess:function(e,f){b.onSuccess.call(this,e,f)}, +Fc:b.Fc,withCredentials:!!d})}; +g.ER=function(a,b){g.R.call(this,{D:"button",Y:["ytp-watch-later-button","ytp-button"],O:{title:"{{title}}","data-tooltip-image":"{{image}}","data-tooltip-opaque":String(g.Ly(a.N()))},J:[{D:"div",H:"ytp-watch-later-icon",W:"{{icon}}"},{D:"div",H:"ytp-watch-later-title",W:"\u00c0 regarder plus tard"}]});this.K=a;this.A=b;this.icon=null;this.visible=this.w=this.u=!1;this.tooltip=b.fb();AN(this.tooltip);g.kL(a,this.element,this,28665);this.ka("click",this.onClick,this);this.L(a,"videoplayerreset",this.JM); +this.L(a,"appresize",this.Zo);this.L(a,"videodatachange",this.Zo);this.L(a,"presentingplayerstatechange",this.Zo);this.Zo();var c=this.K.N(),d=g.Es("yt-player-watch-later-pending");c.u&&d?(jy(),DR(this,d.videoId)):this.sa(2);g.K(this.element,"ytp-show-watch-later-title",g.Ly(c));g.Ge(this,g.BN(b.fb(),this.element))}; +FR=function(a,b){g.AQ(function(){jy({videoId:b});window.location.reload()},"wl_button",g.ez(a.K.N()))}; +DR=function(a,b){if(!a.w)if(a.w=!0,a.sa(4),g.P(a.K.N().experiments,"web_player_innertube_playlist_update")){var c=a.K.getVideoData();c=a.u?c.removeFromWatchLaterCommand:c.addToWatchLaterCommand;var d=xQ(a.K.app),e=a.u?a.lB.bind(a):a.kB.bind(a);IK(d,c).then(e,a.GN.bind(a))}else c=a.K.N(),(a.u?pla:ola)({videoIds:b,Nc:c.Nc,pageId:c.pageId,onError:a.FN,onSuccess:a.u?a.lB:a.kB,context:a},c.G,!0)}; +GR=function(a,b){a.sa(5,b);a.K.N().w&&a.K.na("WATCH_LATER_ERROR",b)}; +HR=function(a,b){var c=a.K.N(),d=a.A.Rd()&&g.Ly(c);!c.F||2!==b&&3!==b||(b=d?3:2);if(b!==a.icon){switch(b){case 4:var e=KN();break;case 1:e=AM();break;case 2:e=g.X?{D:"div",Y:["ytp-icon","ytp-icon-watch-later"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"M18,8 C12.47,8 8,12.47 8,18 C8,23.52 12.47,28 18,28 C23.52,28 28,23.52 28,18 C28,12.47 23.52,8 18,8 L18,8 Z M16,19.02 L16,12.00 L18,12.00 L18,17.86 L23.10,20.81 L22.10,22.54 L16,19.02 Z"}}]}; +break;case 3:e={D:"div",Y:["ytp-icon","ytp-icon-watch-later-large"]};break;case 5:e=g.P(c.experiments,"watch_later_iconchange_killswitch")?g.X?{D:"div",Y:["ytp-icon","ytp-icon-alert"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"M21,7.91 L19.60,20.91 L16.39,20.91 L15,7.91 L21,7.91 Z M18,27.91 C16.61,27.91 15.5,26.79 15.5,25.41 C15.5,24.03 16.61,22.91 18,22.91 C19.38,22.91 20.5,24.03 20.5,25.41 C20.5,26.79 19.38,27.91 18,27.91 Z"}}]}: +g.X?{D:"div",Y:["ytp-icon","ytp-icon-warning"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,O:{d:"M7,27.5h22L18,8.5L7,27.5z M19,24.5h-2v-2h2V24.5z M19,20.5h-2V16.5h2V20.5z",fill:"#fff"}}]}}a.la("icon",e);a.icon=b}}; +IR=function(a){g.eQ.call(this,a);var b=this,c=g.QK(a),d=a.N(),e=a.getVideoData();this.ga=g.Ly(d);this.Rb=48;this.yb=69;this.ga&&(g.J(a.getRootNode(),"ytp-embed"),g.J(a.getRootNode(),"ytp-embed-playlist"),this.Rb=60,this.yb=89);this.wf=e&&e.wf;this.oa=null;this.U=[];this.V=new g.oQ(a);g.B(this,this.V);g.iL(a,this.V.element,4);this.Yb=new JQ(a);g.B(this,this.Yb);g.iL(a,this.Yb.element,4);e=new g.R({D:"div",H:"ytp-gradient-top"});g.B(this,e);g.iL(a,e.element,1);this.Ic=new g.lN(e,250,!0,100);g.B(this, +this.Ic);this.A=new g.R({D:"div",H:"ytp-chrome-top"});g.B(this,this.A);g.iL(a,this.A.element,1);this.Hc=new g.lN(this.A,250,!0,100);g.B(this,this.Hc);this.Ca=[];this.M=new g.hR(a,this);g.B(this,this.M);g.iL(a,this.M.element,4);e=new ZQ(a);g.B(this,e);g.iL(a,e.element,5);e.subscribe("show",(0,g.x)(this.oi,this,e));this.Ca.push(e);this.za=new $Q(a,this,e);g.B(this,this.za);d.showBackButton&&(this.od=new pR(a),g.B(this,this.od),this.od.ca(this.A.element));this.ga||this.za.ca(this.A.element);this.rb= +new EQ(a,this);this.rb.ca(this.A.element);g.B(this,this.rb);this.qc=new xR(a,this);g.B(this,this.qc);this.qc.ca(this.A.element);e=new g.Mu({D:"div",H:"ytp-chrome-top-buttons"});g.B(this,e);e.ca(this.A.element);this.ha=e;this.I=new g.ER(a,this);g.B(this,this.I);this.I.ca(e.element);var f=new g.bR(a,this);g.B(this,f);g.iL(a,f.element,5);f.subscribe("show",(0,g.x)(this.oi,this,f));this.Ca.push(f);this.G=new g.eR(a,this,f);g.B(this,this.G);this.G.ca(e.element);this.F=new qR(a,this);g.B(this,this.F);this.F.ca(e.element); +d.en&&(f=new gR(a),g.B(this,f),g.iL(a,f.element,4));this.ga&&this.za.ca(e.element);this.ma=new uQ(a,this,this.A.element);g.B(this,this.ma);this.ma.ca(e.element);f=new vQ(a,this,this.ma);g.B(this,f);f.ca(e.element);this.w=new sR(a,this);g.B(this,this.w);g.iL(a,this.w.element,5);this.w.subscribe("show",function(){b.oi(b.w,yN(b.w))}); +this.Ca.push(this.w);this.Ma=new rR(a,this,this.w);g.B(this,this.Ma);this.Ma.ca(e.element);(this.o="1"==d.controlsType?new TP(a,this,this.u):null)&&g.B(this,this.o);"3"==d.controlsType&&(e=new vR(a,this),g.B(this,e),g.iL(a,e.element,8));this.P=new g.TQ(a,this,this.V);g.B(this,this.P);this.P.subscribe("show",this.FC,this);this.nb=!1;e=new mQ(a,new nQ(a));g.B(this,e);g.iL(a,e.element,4);this.Ka=new g.R({D:"div",O:{tabindex:"0"}});this.Ka.ka("focus",this.ME,this);g.B(this,this.Ka);this.Ia=new g.R({D:"div", +O:{tabindex:"0"}});this.Ia.ka("focus",this.NE,this);g.B(this,this.Ia);(this.aa=d.Wa?null:new g.VQ(a,c,this.P,this.u,this.V,(0,g.x)(this.jg,this)))&&g.B(this,this.aa);this.R.push(this.V.element);this.Aa=null;this.L(a,"fullscreentoggled",this.bJ);this.L(a,"offlineslatestatechange",this.XL,this);this.L(a,"cardstatechange",this.oe,this)}; +JR=function(a){var b=a.api.N(),c=g.V(g.PK(a.api),128);return b.u&&c&&!a.api.isFullscreen()}; +KR=function(a,b,c){b=c?b.lastElementChild:b.firstElementChild;for(var d=null;b;){if("none"!=xh(b,"display")&&"true"!=b.getAttribute("aria-hidden")){var e=void 0;0<=b.tabIndex?e=b:e=KR(a,b,c);e&&(d?c?e.tabIndex>d.tabIndex&&(d=e):e.tabIndexe)return"";var k=1E3*f.Ab();if(dk)return"";k=null;for(var l=g.q(a.o),m=l.next();!m.done;m=l.next()){m=m.value;if(d>=m.Jb&&dm.Jb||e===m.Jb)return"";d===m.Nb&&(k=m)}l="childplayback_"+qla++;m={Pb:OR(c,!0),Fe:Infinity,target:null};var n=b.raw_player_response;if(!n&&!g.P(a.G.experiments,"web_player_parse_ad_response_killswitch")){var p=b.player_response;p&&(n=JSON.parse(p))}b={Eb:l,playerVars:b, +playerType:2,durationMs:c,Jb:d,Nb:e,Ne:m,playerResponse:n};a.o=a.o.concat(b).sort(function(t,u){return t.Jb-u.Jb}); +k?rla(k,{Pb:OR(k.durationMs,!0),Fe:Infinity,target:b}):(d={Pb:OR(d,!1),Fe:d,target:b},a.C.set(d.Pb,d),f.addCueRange(d.Pb));return l}; +OR=function(a,b){return new g.iC(Math.max(0,a-5E3),b?0x8000000000000:a-1,{namespace:"childplayback",priority:7})}; +rla=function(a,b){a.Ne=b}; +PR=function(a,b){for(var c=0,d=g.q(a.o),e=d.next();!e.done;e=d.next()){e=e.value;var f=e.Jb/1E3+c,k=f+e.durationMs/1E3;if(f>b)break;if(k>b)return{ji:e,Ui:b-f};c=k-e.Nb/1E3}return{ji:null,Ui:b-c}}; +MR=function(a,b){var c=a.A||a.api.kb().getPlayerState();QR(a,!0);var d=PR(a,b).Ui;a.u.seekTo(d);d=a.api.kb();var e=d.getPlayerState();g.OC(c)&&!g.OC(e)?d.playVideo():g.V(c,4)&&!g.V(e,4)&&d.pauseVideo()}; +QR=function(a,b){a.F=NaN;a.B.stop();a.w&&b&&cK(a.w);a.A=null;a.w=null}; +SR=function(a,b,c){b=void 0===b?-1:b;c=void 0===c?Infinity:c;for(var d=b,e=c,f=g.q(a.C),k=f.next();!k.done;k=f.next()){var l=g.q(k.value);k=l.next().value;l=l.next().value;l.Fe>=d&&l.target&&l.target.Nb<=e&&(a.u.removeCueRange(k),a.C["delete"](k))}d=b;e=c;f=[];k=g.q(a.o);for(l=k.next();!l.done;l=k.next())l=l.value,(l.Jbe)&&f.push(l);a.o=f;d=PR(a,b/1E3);b=d.ji;d=d.Ui;b&&(d*=1E3,RR(b,d,b.Jb+d));PR(a,c/1E3)}; +RR=function(a,b,c){a.durationMs=b;a.Nb=c;b={Pb:OR(b,!0),Fe:b,target:null};a.Ne=b}; +gja=function(a,b,c){a=PR(a,b).ji;var d=Number(c.split(";")[0]);return a&&a.playerResponse&&a.playerResponse.streamingData&&(c=a.playerResponse.streamingData.adaptiveFormats)&&(c=c.find(function(e){return e.itag===d}))&&c.url?c.url:null}; +UR=function(a,b,c){g.A.call(this);var d=this;this.api=a;this.B=b;this.u=c;this.C=new Map;this.o=[];this.w=this.G=null;this.M=NaN;this.F=this.A=null;this.P=new g.I(function(){TR(d,d.M)}); +this.I=[];this.R=new g.I(function(){var e=d.I.pop();if(e){var f=e.Eb,k=e.playerVars;e=e.playerType;k.prefer_gapless=!0;d.api.preloadVideoByPlayerVars(k,e,NaN,"",f);d.I.length&&d.R.Ua(4500)}}); +this.events=new g.Gr(this);c.getPlayerType();g.B(this,this.P);g.B(this,this.R);g.B(this,this.events);this.events.L(this.api,g.lC("childplayback"),this.LH);this.events.L(this.api,"onQueuedVideoLoaded",this.xM);this.events.L(this.api,"presentingplayerstatechange",this.MH)}; +ula=function(a,b,c,d,e){var f=a.u;e=void 0===e?d+c:e;if(d>e)return VR(a,"e.enterAfterReturn enterTimeMs="+d+" is greater than parentReturnTimeMs="+e),"";var k=1E3*f.Ab();if(dk)return VR(a,"e.returnAfterDuration parentReturnTimeMs="+e+" is greater than parentDurationMs="+k),"";k=null;for(var l=g.q(a.o),m=l.next();!m.done;m=l.next()){m=m.value;if(d>=m.Jb&&dm.Jb)return VR(a,"e.overlappingReturn"),"";if(e===m.Jb)return VR(a,"e.outOfOrder"),"";d===m.Nb&&(k=m)}l="childplayback_"+tla++;m={Pb:WR(c,!0),Fe:Infinity,target:null};var n={Eb:l,playerVars:b,playerType:2,durationMs:c,Jb:d,Nb:e,Ne:m};a.o=a.o.concat(n).sort(function(u,z){return u.Jb-z.Jb}); +k?YR(a,k,{Pb:WR(k.durationMs,!0),Fe:a.B.fa("timeline_manager_transition_killswitch")?Infinity:k.Ne.Fe,target:n}):(b={Pb:WR(d,!1),Fe:d,target:n},a.C.set(b.Pb,b),f.addCueRange(b.Pb));b=g.P(a.B.experiments,"html5_gapless_preloading");if(a.u===a.api.kb()&&(f=1E3*f.getCurrentTime(),f>=n.Jb&&fb)break;if(k>b)return{ji:e,Ui:b-f};c=k-e.Nb/1E3}return{ji:null,Ui:b-c}}; +TR=function(a,b){var c=a.F||a.api.kb().getPlayerState();fS(a,!0);if(g.P(a.B.experiments,"html5_playbacktimeline_seektoinf_killswitch")||isFinite(b))var d=b;else d=a.u.C,d=d.u?XH(d.u):Infinity;var e=eS(a,d);d=e.ji;e=e.Ui;var f=d&&!bS(a,d)||!d&&a.u!==a.api.kb(),k=1E3*e;k=a.w&&a.w.start<=k&&k<=a.w.end;!f&&k||cS(a);d?ZR(a,d,e,c):gS(a,e,c)}; +gS=function(a,b,c){var d=a.u;if(d!==a.api.kb()){var e=d.getPlayerType();g.bM(a.api.app,e)}d.seekTo(b);hS(a,c)}; +ZR=function(a,b,c,d){var e=bS(a,b);if(!e){g.bM(a.api.app,b.playerType);b.playerVars.prefer_gapless=!0;var f=new g.aB(a.B,b.playerVars);f.Eb=b.Eb;iS(a.api.app,f,b.playerType,void 0)}f=a.api.kb();e||f.addCueRange(b.Ne.Pb);f.seekTo(c);hS(a,d)}; +hS=function(a,b){var c=a.api.kb(),d=c.getPlayerState();g.OC(b)&&!g.OC(d)?c.playVideo():g.V(b,4)&&!g.V(d,4)&&c.pauseVideo()}; +fS=function(a,b){a.M=NaN;a.P.stop();a.A&&b&&cK(a.A);a.F=null;a.A=null}; +bS=function(a,b){var c=a.api.kb();return!!c&&c.getVideoData().Eb===b.Eb}; +kS=function(a,b,c){b=void 0===b?-1:b;c=void 0===c?Infinity:c;for(var d=b,e=c,f=g.q(a.C),k=f.next();!k.done;k=f.next()){var l=g.q(k.value);k=l.next().value;l=l.next().value;l.Fe>=d&&l.target&&l.target.Nb<=e&&(a.u.removeCueRange(k),a.C["delete"](k))}d=b;e=c;f=[];k=g.q(a.o);for(l=k.next();!l.done;l=k.next())if(l=l.value,l.Jb>=d&&l.Nb<=e){var m=a;m.G===l&&cS(m);bS(m,l)&&g.sL(m.api,l.playerType)}else f.push(l);a.o=f;d=eS(a,b/1E3);b=d.ji;d=d.Ui;b&&(d*=1E3,jS(a,b,d,b.Nb===b.Jb+b.durationMs?b.Jb+d:b.Nb)); +eS(a,c/1E3)}; +jS=function(a,b,c,d){b.durationMs=c;b.Nb=d;d={Pb:WR(c,!0),Fe:c,target:null};YR(a,b,d);bS(a,b)&&1E3*a.api.kb().getCurrentTime()>c&&(b=dS(a,b)/1E3,c=a.api.kb().getPlayerState(),gS(a,b,c))}; +VR=function(a,b){a.u.Ra("timelineerror",b)}; +xla=function(a){a&&"web"!==a&&wla.includes(a)}; +lS=function(a,b,c){this.api=a;this.player=b;this.player.subscribe("localmediacomplete",this.o,this);this.u=c}; +nS=function(a,b){ut(b,2);var c=yla(a,{videoId:b,download_media:!0,download_media_in_bg:!0,start:Infinity});c.subscribe("dataloaded",function(){return void mS(c)}); +uJ(a.player,c,a.u);zJ(a.player,!1)}; +yla=function(a,b){return new g.aB(a.player.N(),b)}; +mS=function(a){if((a=a.getPlayerResponse())&&a.videoDetails&&a.videoDetails.videoId){var b=a.videoDetails;a={videoId:a.videoDetails.videoId,title:b.title,lengthSeconds:b.lengthSeconds,thumbnail:b.thumbnail,viewCount:b.viewCount,author:b.author};wfa(a.videoId,a)}}; +oS=function(a){var b=/codecs="([^"]*)"/.exec(a.mimeType);return b&&b[1]?b[1]+" ("+ct(a)+")":ct(a)}; +Ala=function(a,b){if(g.gl())return null;var c=zla();if(!c)return g.TK(a,"html5.webaudio",{name:"null context"}),null;if("string"===typeof c)return g.TK(a,"html5.webaudio",{name:c}),null;if(!c.createMediaElementSource)return g.TK(a,"html5.webaudio",{name:"missing createMediaElementSource"}),null;if("suspended"===c.state){var d=function(e){"suspended"===c.state&&g.OC(e.state)&&c.resume().then(function(){a.removeEventListener("presentingplayerstatechange",d);pS=!1},null)}; +pS||(a.addEventListener("presentingplayerstatechange",d),pS=!0)}return new SC(c,b)}; +qS=function(a,b,c,d,e){g.R.call(this,{D:"div",H:"ytp-horizonchart"});this.F=b;this.sampleCount=c;this.B=d;this.C=e;this.index=0;this.heightPx=-1;this.A=this.w=null;this.u=Math.round(a/c);this.element.style.width=this.u*this.sampleCount+"px";this.element.style.height=this.F+"em"}; +rS=function(a,b){if(-1===a.heightPx){var c=null;try{c=g.oe("CANVAS"),a.w=c.getContext("2d")}catch(e){}if(a.w){var d=a.u*a.sampleCount;a.A=c;a.A.width=d;a.A.style.width=d+"px";a.element.appendChild(a.A)}else for(a.sampleCount=Math.floor(a.sampleCount/4),a.u*=4,c=0;c=c&&b<=d}; +CS=function(a,b){var c=a.u.getAvailablePlaybackRates();b=parseFloat(b.toFixed(2));var d=c[0];c=c[c.length-1];b<=d||(b>=c?d=c:(d=Math.floor(100*b+.001)%5,d=0==d?b:Math.floor(100*(b-.01*d)+.001)/100));return d}; +eT=function(a,b){var c=g.W(a,b);return c?a.Mb(c)?(c=OS(a,c),oK(c)-c.getCurrentTime()+a.getCurrentTime(b)):oK(c):0}; +fT=function(a,b,c){if(a.Mb(c)){c=c.getVideoData();if(a.U){a=a.U;for(var d=g.q(a.o),e=d.next();!e.done;e=d.next())if(e=e.value,c.Eb===e.Eb){b+=e.Jb/1E3;break}d=b;a=g.q(a.o);for(e=a.next();!e.done;e=a.next()){e=e.value;if(c.Eb===e.Eb)break;var f=e.Jb/1E3;if(fe?f=!0:1=k||g.P(a.o.N().experiments,"stop_use_time_since_last_ad_service")?0:Math.ceil(k);var n=a.u,p=g.QK(a.o).getPlayerSize().height,t=g.QK(a.o).getPlayerSize().width,u=e&&e.context||"",z=nT(a.o.app)?1E3*nT(a.o.app):0,C=a.o.N().od;C=C?C.join(","):"";e=e?a.w:1;var D=a.o.getVideoData(1).clientPlaybackNonce,E=b.match(/[&\?]token=(\w*)/);E=null!=E&&2<= +E.length?E[1]:"";var F=b.match(/[&\?]video_id=(\w*)/);F=null!=F&&2<=F.length?F[1]:"";var G=b.match(/[&\?]mt=(\d*)/);G=null!=G&&2<=G.length?Number(G[1]):0;G=isNaN(G)?0:G;var fa=g.ez(a.o.N()),oa=new Nla;oa.clientName=a.o.N().vg.Mj.toString();oa.host=fa;oa.o=void 0;var kc=Rla.includes(fa)?void 0:Nq("PREF"),Rc=EK(),tb=qq(b);b=Sla(b,"X-YouTube-Ad-Signals");c=tb||b?jq(vq(c)):void 0;return{adBreakRequest:{videoId:F,adBlock:n,params:E,breakIndex:e,breakLengthMs:m.toString(),breakPositionMs:f.toString(),clientPlaybackNonce:D, +driftFromHeadMs:z.toString(),liveTargetingParams:u,topLevelDomain:fa,isProxyAdTagRequest:!1,context:Rc,adSignalsInfo:c},adsCookie:l,clientInfo:oa,lact:d,mediaTimeMs:G,timeSinceLastAdSeconds:k,vis:a.o.getVisibilityState(),playerHeightPixels:p,playerWidthPixels:t,ytRemote:C,prefCookie:kc}}; +MT=function(a,b,c){this.w=a;this.td=null;this.u=b;this.o=0;this.daiEnabled=void 0===c?!1:c;this.visible=!0}; +NT=function(a,b,c,d,e){g.iC.call(this,b.start,b.end,{id:d,namespace:"ad",priority:e,visible:c});this.u=a.kind||"AD_PLACEMENT_KIND_UNKNOWN";this.o=!1;this.w=null}; +OT=function(a){return"AD_PLACEMENT_KIND_START"==a.u}; +PT=function(a){return"AD_PLACEMENT_KIND_MILLISECONDS"==a.u}; +Tla=function(a){return a.end-a.start}; +QT=function(a,b,c){c=void 0===c?!1:c;switch(a.kind){case "AD_PLACEMENT_KIND_START":return new Qn(-0x8000000000000,-0x8000000000000);case "AD_PLACEMENT_KIND_END":return c?new Qn(Math.max(0,b.w-b.o),0x7ffffffffffff):new Qn(0x7ffffffffffff,0x8000000000000);case "AD_PLACEMENT_KIND_MILLISECONDS":var d=a.adTimeOffset;a=parseInt(d.offsetStartMilliseconds,10);d=parseInt(d.offsetEndMilliseconds,10);-1===d&&(d=b.w);if(c&&(d=a,a=Math.max(0,a-b.o),a==d))break;return new Qn(a,d);case "AD_PLACEMENT_KIND_CUE_POINT_TRIGGERED":return a= +b.td,d=1E3*a.startSecs,c?d=d)throw Error("Timed out while waiting for GPT services");return Vf(200).then(function(){return c(d-1)})}}; +a.o=Df().then(function(){return c(b)})}return a.o}; +nU=function(a,b,c){var d=Vf(5E3).then(function(){throw Error("Timed out while waiting for GPT set companion");}),e=new zf(function(f,k){var l=kU(); +if(l){var m=lU(l);if(m&&0!=m.length){var n={};n.slotId=m[0].slotId;n.adContent="
";n.adWidth=b;n.adHeight=c;n.friendlyIframeRendering=!1;n.onAdContentSet=function(p){if(void 0!==p.firstElementChild)var t=p.firstElementChild;else for(t=p.firstChild;t&&1!=t.nodeType;)t=t.nextSibling;t||(t=g.oe("div"),p.appendChild(t));a&&t.appendChild(a);f()}; +(l=l.googleSetCompanionAdContents)?l([n]):k(Error("Missing googleSetCompanionAdContents API"))}else k(Error("No slots registered with GPT services"))}else k(Error("Failed to find GPT services"))}); +return Hf([e,d])}; +mU=function(){var a=kU();if(!a)return!1;a=lU(a);return Array.isArray(a)&&0!=a.length?null!=$d(document,"google_companion_ad_div"):!1}; +kU=function(){var a=ke();return g.w("googletag.cmd",a)?a:null}; +lU=function(a){a=void 0!==a.googleGetCompanionAdSlots?Fo(a.googleGetCompanionAdSlots)():void 0;return void 0!==a&&0a.o||ka.o||(!c||f>c.maxBitrate?c=e:c&&f==c.maxBitrate&&kc.maxBitrate&&(c=e));return c}; +rU=function(a,b){this.o=a;this.u=b.length;this.adBreakLengthSeconds=b.reduce(function(e,f){return e+f},0); +for(var c=0,d=a+1;d=a.u}; +wU=function(){qU.apply(this,arguments)}; +xU=function(){this.o=[];this.w=null;this.u=0}; +yU=function(a,b){b&&a.o.push(b)}; +zU=function(a){if(!a)return[];var b=[];a=g.q(a);for(var c=a.next();!c.done;c=a.next())if(c=c.value,c.loggingUrls){c=g.q(c.loggingUrls);for(var d=c.next();!d.done;d=c.next())b.push({baseUrl:d.value.baseUrl})}return b}; +AU=function(a){if(!a)return[];var b=[];a.forEach(function(c){c.command.loggingUrls.forEach(function(d){b.push({baseUrl:d.baseUrl,offsetMilliseconds:c.adVideoOffset.milliseconds})})}); +return b}; +BU=function(a){return a&&a.adVideoOffset&&a.adVideoOffset.percent||0}; +CU=function(a){return"AD_VIDEO_PROGRESS_KIND_PERCENT"==a.adVideoOffset.kind}; +fma=function(a){a=a.playbackCommands;if(!a)return{};var b={};b.impression=zU(a.impressionCommands)||[];b.error=zU(a.errorCommands)||[];b.mute=zU(a.muteCommands)||[];b.unmute=zU(a.unmuteCommands)||[];b.pause=zU(a.pauseCommands)||[];b.rewind=zU(a.rewindCommands)||[];b.resume=zU(a.resumeCommands)||[];b.skip=zU(a.skipCommands)||[];b.close=zU(a.closeCommands)||[];b.clickthrough=zU(a.clickthroughCommands)||[];b.fullscreen=zU(a.fullscreenCommands)||[];b.active_view_viewable=zU(a.activeViewViewableCommands)|| +[];b.active_view_measurable=zU(a.activeViewMeasurableCommands)||[];b.active_view_fully_viewable_audible_half_duration=zU(a.activeViewFullyViewableAudibleHalfDurationCommands)||[];b.end_fullscreen=zU(a.endFullscreenCommands)||[];b.channel_clickthrough=zU(a.channelClickthroughCommands)||[];b.abandon=zU(a.abandonCommands)||[];b.progress=AU(a.progressCommands.filter(function(c){return"AD_VIDEO_PROGRESS_KIND_MILLISECONDS"==c.adVideoOffset.kind})); +b.start=AU(a.progressCommands.filter(function(c){return CU(c)&&Pd(BU(c),0)})); +b.first_quartile=AU(a.progressCommands.filter(function(c){return CU(c)&&Pd(BU(c),.25)})); +b.midpoint=AU(a.progressCommands.filter(function(c){return CU(c)&&Pd(BU(c),.5)})); +b.third_quartile=AU(a.progressCommands.filter(function(c){return CU(c)&&Pd(BU(c),.75)})); +b.complete=AU(a.progressCommands.filter(function(c){return CU(c)&&Pd(BU(c),1)})); +return b}; +DU=function(a){qU.call(this,a,fma(a));this.u=a.questions?a.questions.reduce(function(b,c){var d=c.instreamSurveyAdSingleSelectQuestionRenderer||c.instreamSurveyAdMultiSelectQuestionRenderer;return d?b+(d.surveyAdQuestionCommon.durationMilliseconds||0)/1E3:b},0):0}; +EU=function(a,b,c,d){this.id=b;this.P=a.placementStartPings||[];this.I=a.placementEndPings||[];this.u=d.td;b=a.config&&a.config.adPlacementConfig;if(!b)throw Error("Malformed AdPlacementRenderer: missing AdPlacementConfig");var e=a.renderer&&a.renderer.adBreakServiceRenderer&&a.renderer.adBreakServiceRenderer||{};this.w=(this.C=e.getAdBreakUrl||"")?0:2;d.o=parseInt(e.prefetchMilliseconds,10)||0;d.visible=!b.hideCueRangeMarker;var f=QT(b,d);if(null==f)d=new NT(b,new Qn(-1,-1),!1,"adcuerange:invalid", +2),d.o=!0,d=[null,d];else{e=":"+(po.getInstance().o++).toString(36);var k=d.daiEnabled||d.td;f=new NT(b,f,d.visible&&!k,"adcuerange:"+e,2);k=null;if(d.td||0=c*a.A.yv||d)&&iV(a,"first_quartile");(b>=c*a.A.Mv||d)&&iV(a,"midpoint");(b>=c*a.A.Rv||d)&&iV(a,"third_quartile")}; +hV=function(a,b,c,d){if(null==a.B){if(cd||d>c)return;iV(a,b)}; +eV=function(a,b,c){if(0f.A&&f.Zc()}}; +UV=function(a,b){ST.call(this,"ads-engagement-panel",a,b)}; +VV=function(a,b,c,d,e){Y.call(this,a,b,c,d,e)}; +WV=function(a,b,c,d,e){Y.call(this,a,b,c,d,e)}; +XV=function(a,b){ST.call(this,"invideo-overlay",a,b)}; +YV=function(a,b){ST.call(this,"invideo-overlay-as-cta",a,b)}; +ZV=function(a,b,c,d,e){Y.call(this,a,b,c,d,e);this.u=b}; +$V=function(a,b){ST.call(this,"persisting-overlay",a,b)}; +aW=function(a,b,c,d,e){Y.call(this,a,b,c,d,e);this.u=b}; +bW=function(a){return a?g.T(a):null}; +cW=function(a){if(!a)return[];a=a.loggingUrls;if(!a)return[];a=a.map(function(b){return b.baseUrl}); +return 0===a.length?[]:a}; +sma=function(a){return a.cancelRenderer&&a.cancelRenderer.buttonRenderer?(a=a.cancelRenderer.buttonRenderer.serviceEndpoint)&&a.muteAdEndpoint?a:null:null}; +dW=function(a){var b={};b.baseUrl=a;return{loggingUrls:[b],pingingEndpoint:{hack:!0}}}; +eW=function(a,b,c,d,e,f){this.u=a;this.w=b;this.o=IU(d);if(f)for(a=g.q(Object.keys(f)),b=a.next();!b.done;b=a.next())b=b.value,this.o[b]=f[b];this.A=c;this.C=d;this.B=e}; +gW=function(a,b,c){b.isSkippable=!0;b.skipTime=c.skipOffsetMilliseconds?Math.floor(c.skipOffsetMilliseconds/1E3):0;if(c.skippableRenderer)switch(Object.keys(c.skippableRenderer)[0]){case "skipButtonRenderer":var d=c.skippableRenderer.skipButtonRenderer;b.skip=function(){var e=d.adRendererCommands&&d.adRendererCommands.clickCommand;e?fW(a,e):a.A.nh()}; +b.skipShown=function(){fW(a,d.adRendererCommands&&d.adRendererCommands.impressionCommand)}}}; +hW=function(a,b,c){if(c.button&&c.button.buttonRenderer&&(!c.button.buttonRenderer.command||!c.button.buttonRenderer.command.adInfoDialogChoiceEndpoint)&&c.button.buttonRenderer.serviceEndpoint&&c.button.buttonRenderer.serviceEndpoint.adInfoDialogEndpoint){var d=c.button.buttonRenderer.serviceEndpoint.adInfoDialogEndpoint.dialog;d&&d.adInfoDialogRenderer&&(tma(a,b,d.adInfoDialogRenderer),b.whyThisAdInfo.menuTitle=bW(c.hoverText)||"",d.adInfoDialogRenderer.muteAdRenderer&&(c=d.adInfoDialogRenderer.muteAdRenderer.buttonRenderer)&& +uma(a,b,c))}}; +fW=function(a,b){if(b){var c=iW(a);Array.isArray(b)?b.forEach(function(d){return a.u.executeCommand(d,c)}):a.u.executeCommand(b,c)}}; +tma=function(a,b,c){var d=bW(c.confirmLabel)||"",e=bW(c.title)||"",f=c.adReasons?c.adReasons.map(function(k){return bW(k)||""}):[]; +b.whyThisAdInfo={closeButton:d,menuTitle:"",targetingReasonHeader:e,targetingReasons:f,adSettingsLink:null,cancelButton:null,continueButton:null,controlText:null};b.whyThisAdClicked=function(){fW(a,c.impressionEndpoints)}; +b.whyThisAdClosed=function(){fW(a,c.confirmServiceEndpoint)}}; +uma=function(a,b,c){if(c.navigationEndpoint&&c.navigationEndpoint.adFeedbackEndpoint&&c.navigationEndpoint.adFeedbackEndpoint.content){var d=c.navigationEndpoint.adFeedbackEndpoint.content.adFeedbackRenderer;if(d){var e={goneText:"",questionText:"",undoText:"",hoverText:bW(c.text)||"",surveyOptions:[]};b.muteAdInfo=e;c=cW(c.navigationEndpoint);var f=dW(c[1]),k=[dW(c[0])];(c=sma(d))&&k.push(c);var l=!1;b.muteAdClicked=function(){l=!0;fW(a,f)}; +b.muteAd=function(){l||fW(a,f);l=!1;fW(a,k)}; +vma(b,d)}}}; +vma=function(a,b){a.muteAdInfo.goneText=bW(b.title)||"";a.muteAdInfo.questionText=bW(b.reasonsTitle)||"";b.undoRenderer&&(a.muteAdInfo.undoText=bW(b.undoRenderer.buttonRenderer.text)||"");for(var c=a.muteAdInfo.surveyOptions,d=g.q(b.reasons||[]),e=d.next();!e.done;e=d.next()){var f=e.value;e=bW(f.reason)||"";f=cW(f.endpoint);c.push({label:e,url:f[0]})}}; +iW=function(a){if(g.P(a.C.N().experiments,"dynamic_command_macro_resolution_on_tvhtml5_killswitch"))return a.w;for(var b={},c=g.q(Object.keys(a.o)),d=c.next();!d.done;d=c.next())d=d.value,b[d]=a.o[d].toString();return Object.assign(b,a.w)}; +jW=function(){return{adNextParams:"",adSystem:0,attributionInfo:null,clickThroughUrl:"",executeCommand:function(){}, +instreamAdPlayerOverlayRenderer:null,instreamSurveyAdRenderer:null,isBumper:!1,isPostroll:!1,isSkippable:!1,muteAdInfo:null,skipTime:0,videoId:"",videoUrl:"",whyThisAdInfo:null,muteAd:function(){}, +muteAdClicked:function(){}, +sendAdsPing:function(){}, +skip:function(){}, +skipShown:function(){}, +whyThisAdClicked:function(){}, +whyThisAdClosed:function(){}, +daiEnabled:!1}}; +wma=function(a,b,c,d,e,f,k){this.o=c;this.u=new eW(a,b,d,e,f);this.w=k}; +xma=function(a,b,c){var d=jW();d.instreamAdPlayerOverlayRenderer=b;c&&(d.adNextParams=c);d.executeCommand=function(e){fW(a.u,e)}; +if(b.skipOrPreviewRenderer)switch(Object.keys(b.skipOrPreviewRenderer)[0]){case "skipAdRenderer":gW(a.u,d,b.skipOrPreviewRenderer.skipAdRenderer)}if(b.adInfoRenderer)switch(Object.keys(b.adInfoRenderer)[0]){case "adHoverTextButtonRenderer":hW(a.u,d,b.adInfoRenderer.adHoverTextButtonRenderer)}d.isBumper=vU(a.o)&&!d.isSkippable;d.isPostroll=a.o.isPostroll;a.o.isSkippable();b=a.o.B;c=a.o.getVideoUrl();b?d.videoId=b:c&&(d.videoUrl=c);if(b=(b=a.o.C)&&b.urlEndpoint)d.clickThroughUrl=b.url||"";d.sendAdsPing= +function(e){a.u.sendAdsPing(e)}; +d.daiEnabled=a.w;return d}; +kW=function(a,b){ST.call(this,"pla-shelf",a,b)}; +lW=function(a,b,c,d,e){Y.call(this,a,b,OU(c,{TRIGGER_TYPE:"YOUTUBE_SHELF_SHOW"}),d,e);this.u=b}; +mW=function(a,b){ST.call(this,"shopping-companion",a,b)}; +nW=function(a,b,c,d,e){Y.call(this,a,b,c,d,e)}; +zma=function(a,b,c,d,e,f){this.o=new eW(a,b,c,d,e,yma(f))}; +Bma=function(a,b){var c=jW();c.instreamSurveyAdRenderer=b;c.executeCommand=function(e){fW(a.o,e)}; +var d=Ama(b);if(d.skipOrPreviewRenderer)switch(Object.keys(d.skipOrPreviewRenderer)[0]){case "skipAdRenderer":gW(a.o,c,d.skipOrPreviewRenderer.skipAdRenderer)}if(d.adInfoRenderer)switch(Object.keys(d.adInfoRenderer)[0]){case "adHoverTextButtonRenderer":hW(a.o,c,d.adInfoRenderer.adHoverTextButtonRenderer)}c.sendAdsPing=function(e){a.o.sendAdsPing(e)}; +return c}; +Ama=function(a){var b={};if(!a.questions||0===a.questions.length)return b;a=(a.questions[0].instreamSurveyAdSingleSelectQuestionRenderer||a.questions[0].instreamSurveyAdMultiSelectQuestionRenderer).surveyAdQuestionCommon;return(a=a.instreamAdPlayerOverlay&&a.instreamAdPlayerOverlay.instreamSurveyAdPlayerOverlayRenderer)?a:b}; +yma=function(a){var b={};b.SURVEY_LOCAL_TIME_EPOCH_S=HU(function(){var c=new Date;return""+(Math.round(c.valueOf()/1E3)+-60*c.getTimezoneOffset())}); +b.SURVEY_ELAPSED_MS=HU(a);return b}; +qW=function(a,b,c){g.O.call(this,!0);var d=this;this.C=b;this.B=c;this.u=a;this.Ga=new g.Tf(200);this.Ga.ka("tick",function(){var e=Date.now(),f=e-d.A;d.A=e;d.o+=f;d.o>=d.u&&(d.o=d.u,d.Ga.stop());e=d.o/1E3;d.B&&oW(d.B,e);pW(d,{current:e,duration:d.u/1E3})}); +g.B(this,this.Ga);this.o=0;this.w=null;g.Ge(this,function(){d.w=null}); +this.A=0}; +pW=function(a,b){a.C.na("onAdPlaybackProgress",b);a.w=b}; +rW=function(a){ST.call(this,"survey",a)}; +Cma=function(a,b,c){var d=b.N();return g.P(b.N().experiments,"enable_external_player_ad_playback_progress_html5")&&g.$y(d)?new qW(1E3*a.u,b,c):null}; +sW=function(a,b,c,d,e,f,k){Y.call(this,a,b,c,d,e,1);var l=this;this.B=b;this.A=new g.Gr;g.B(this,this.A);this.A.L(this.K,"resize",function(){450>g.QK(l.K).getPlayerSize().width&&(g.Ir(l.A),l.Ac())}); +this.P=f;this.C=0;this.I=k(this,function(){return""+(Date.now()-l.C)}); +if(this.u=Cma(b,a,f))g.B(this,this.u),this.A.L(a,"onAdPlaybackProgress",function(m){m.current===m.duration&&(m=l.B.o,(m=m.questions&&m.questions[0])?(m=(m=m.instreamSurveyAdMultiSelectQuestionRenderer||m.instreamSurveyAdSingleSelectQuestionRenderer)&&m.surveyAdQuestionCommon,fW(l.I.o,m&&m.timeoutCommands)):g.Tq(Error("Expected a survey question in InstreamSurveyAdRenderer.")))})}; +tW=function(a,b){ST.call(this,"survey-interstitial",a,b)}; +uW=function(a,b,c,d,e){Y.call(this,a,b,c,d,e,1);this.u=b}; +vW=function(a){ST.call(this,"ad-text-interstitial",a)}; +wW=function(a,b,c,d,e,f){Y.call(this,a,b,c,d,e);this.A=b;this.u=b.o.durationMilliseconds||0;this.Ga=null;this.B=f}; +xW=function(a,b){g.A.call(this);this.A=Math.max(0,a);this.w=this.u=0;this.B=b;this.o=null}; +yW=function(a){a.o&&(a.o.stop(),a.o.dispose(),a.o=null)}; +zW=function(){ST.call(this,"ad-attribution-bar");this.adPodPositionInfoString=null;this.adPodPosition=0;this.adPodLength=1;this.adBreakLengthSeconds=0;this.adBadgeText=null;this.adBreakRemainingLengthSeconds=0;this.adVideoId=this.adBreakEndSeconds=null}; +AW=function(a){a=void 0===a?null:a;ST.call(this,"ad-channel-thumbnail");this.channelIconThumbnailUrl=a}; +BW=function(a){a=void 0===a?null:a;ST.call(this,"ad-title");this.videoTitle=a}; +CW=function(a){a=void 0===a?null:a;ST.call(this,"advertiser-name");this.channelName=a}; +DW=function(a){ST.call(this,"player-overlay",a)}; +EW=function(a){ST.call(this,"skip-button",a)}; +FW=function(a){ST.call(this,"visit-advertiser",a);var b={};var c=a.text;a=a.navigationEndpoint;null!=c&&null!=c.runs&&null!=a?(b.runs=[g.Pb(c.runs[0])],b.runs[0].navigationEndpoint=a):(b={text:"Consulter le site de l'annonceur"},a&&(b.navigationEndpoint=a),b={runs:[b]});this.visitAdvertiserLabel=b}; +GW=function(a,b,c,d,e,f,k,l,m,n,p){Y.call(this,a,b,c,d,e,1);var t=this;this.R=n;this.u=b;this.B=k;this.Z=new g.Gr(this);g.B(this,this.Z);this.I=new g.I(function(){t.Wb("load_timeout")},g.P(a.N().experiments,"use_variable_load_timeout")?g.Q(a.N().experiments,"variable_load_timeout_ms"):1E4); +g.B(this,this.I);this.A=null;g.P(a.N().experiments,"enable_bulleit_buffer_timer")&&(this.A=new xW(g.P(a.N().experiments,"use_variable_buffer_timeout")?g.Q(a.N().experiments,"variable_buffer_timeout_ms"):15E3,function(){t.Wb("buffer_timeout")}),g.B(this,this.A)); +this.ga=!g.P(a.N().experiments,"bulleit_unstarted_event_killswitch");this.M=!1;this.da=m(this);this.ha=f;this.P=l;this.C=p;this.U=this.aa=!1}; +JW=function(a,b){HW(a)&&a.U&&(a.U=!1,Dma(a.R,IW(a),b))}; +HW=function(a){return null!==a.R&&(KW(a.C)||LW(a.C)||MW(a.C)||NW(a.C))}; +OW=function(a){return(a=a.K.getVideoData(2))?a.clientPlaybackNonce:""}; +IW=function(a){if(a=a.u.o.elementId)return a;g.Tq(Error("No elementId on VideoAd InstreamVideoAdRenderer"));return""}; +PW=function(a){var b=new zW;b.adBadgeText="Annonce";var c=a.u.A;1=a.o.length||a.o[b]>c?null:a.o[b]}; +Fma=function(a){this.u=new VW;this.o=new UW(a.tE)}; +XW=function(){qU.apply(this,arguments)}; +Gma=function(a,b,c){this.w=a;this.o=b;this.u=c;this.A=a.getCurrentTime()}; +Ima=function(a,b){var c=void 0===c?Date.now():c;if(a.u)for(var d=g.q(b),e=d.next();!e.done;e=d.next()){e=e.value;var f=c,k=a.o;YW({cuepointTrigger:{type:"CUEPOINT_TYPE_AD",event:Hma(e.event),cuepointId:e.identifier,totalCueDurationMs:1E3*e.durationSecs,playheadTimeMs:e.o,cueStartTimeMs:1E3*e.startSecs,cuepointReceivedTimeMs:f,contentCpn:k}});"unknown"===e.event&&ZW("DAI_ERROR_TYPE_CUEPOINT_WITH_INVALID_EVENT",a.o);e=e.startSecs+e.o/1E3;e>a.A&&a.w.getCurrentTime()>e&&ZW("DAI_ERROR_TYPE_LATE_CUEPOINT", +a.o)}}; +Jma=function(a,b,c){a.u&&YW({daiStateTrigger:{totalCueDurationMs:b,filledAdsDurationMs:c,contentCpn:a.o}})}; +$W=function(a,b){a.u&&YW({driftRecoveryInfo:{contentCpn:a.o,cueIdentifier:b.cueIdentifier||void 0,driftRecoveryMs:b.driftRecoveryMs.toString(),breakDurationMs:Math.round(b.Ay-b.qB).toString(),driftFromHeadMs:Math.round(1E3*nT(a.w.app)).toString()}})}; +Kma=function(a,b){a.u&&YW({adTrimmingInfo:{contentCpn:a.o,cueIdentifier:b.cueIdentifier||void 0,adMediaInfo:b.aE}})}; +ZW=function(a,b){YW({daiStateTrigger:{errorType:a,contentCpn:b}})}; +YW=function(a){g.Rq("adsClientStateChange",a)}; +Hma=function(a){switch(a){case "unknown":return"CUEPOINT_EVENT_UNKNOWN";case "start":return"CUEPOINT_EVENT_START";case "continue":return"CUEPOINT_EVENT_CONTINUE";case "stop":return"CUEPOINT_EVENT_STOP";case "predictStart":return"CUEPOINT_EVENT_PREDICT_START"}}; +aX=function(a){this.u=a;this.Z=(a=!g.P(this.u.N().experiments,"html5_ad_csi_tracker_initialization_killswitch"))?this.u.N().deviceParams.c:g.L("INNERTUBE_CLIENT_NAME",void 0);this.aa=a?this.u.N().deviceParams.cver:g.L("INNERTUBE_CLIENT_VERSION",void 0);this.V=a?this.u.N().deviceParams.cbrand:"";this.ba=a?this.u.N().deviceParams.cmodel:"";this.P="AD_PLACEMENT_KIND_UNKNOWN";this.B=this.I=this.C=this.F=null;this.o="unknown_type";this.M=!0;this.R=this.w=this.G=!1;this.U="vod";this.A=null}; +bX=function(a){a.F=null;a.C=null;a.I=null;a.B=null;a.A=null;a.P="AD_PLACEMENT_KIND_UNKNOWN";a.o="unknown_type";a.G=!1;a.w=!1}; +cX=function(a){a.w=!1;FA("ad_to_video",["pbresume"],void 0)}; +Lma=function(a){switch(a){case "AD_PLACEMENT_KIND_START":return"1";case "AD_PLACEMENT_KIND_MILLISECONDS":case "AD_PLACEMENT_KIND_COMMAND_TRIGGERED":case "AD_PLACEMENT_KIND_CUE_POINT_TRIGGERED":return"2";case "AD_PLACEMENT_KIND_END":return"3";default:return"unknown"}}; +dX=function(a){this.o=a}; +eX=function(a){a=[a,a.w].filter(function(d){return!!d}); +for(var b=g.q(a),c=b.next();!c.done;c=b.next())c.value.o=!0;return a}; +gX=function(a,b){var c=a.o;g.uf(function(){return fX(c,b,1)})}; +hX=function(a,b,c,d,e,f,k,l){g.O.call(this);this.xc=a;this.K=b;this.o=d;this.B=this.o.o instanceof qU?this.o.o:null;this.u=null;this.M=!1;this.F=c;this.P=(a=b.getVideoData(1))&&a.va||!1;this.U=0;this.V=!1;this.ba=g.P(b.N().experiments,"abort_ad_on_browser_autoplay_blocked");this.Le=e;this.vj=f;this.Sg=k;this.R=!1;this.daiEnabled=l}; +iX=function(a){if(WU(a.K)){var b=a.K.getVideoData(2);(b=a.o.G[b.Eb]||null)?(!a.u||a.u&&a.u.F!==b)&&a.dc(b):a.hp()}else 1===a.K.getPresentingPlayerType()&&a.u&&a.hp()}; +jX=function(a){(a=a.baseUrl)&&g.cr(a,void 0,cn(a))}; +kX=function(a,b){var c=a.F,d=a.o.xb().u,e=a.fx(),f=a.hx();var k=a.isLiveStream()?"live":"vod";bX(c);var l=c.u.getVideoData(1),m=c.u.getVideoData(2);l&&(c.F=l.clientPlaybackNonce,c.I=l.videoId);m&&(c.C=m.clientPlaybackNonce,c.B=m.videoId,c.A=m.adFormat);c.P=d;0>=f?bX(c):(c.o=c.M?b?"unknown_type":"video_to_ad":b?"ad_to_video":"ad_to_ad",c.U=k,c.R=e+1==f,c.G=!0,c.G&&(GA("c",c.Z,c.o),GA("cver",c.aa,c.o),g.P(c.u.N().experiments,"html5_ad_csi_tracker_initialization_killswitch")||(GA("cbrand",c.V,c.o),GA("cmodel", +c.ba,c.o)),GA("yt_pt","html5",c.o),GA("yt_pre","2",c.o),GA("yt_abt",Lma(c.P),c.o),c.F&&GA("cpn",c.F,c.o),c.I&&GA("docid",c.I,c.o),c.C&&GA("ad_cpn",c.C,c.o),c.B&&GA("ad_docid",c.B,c.o),GA("yt_vst",c.U,c.o),c.A&&GA("ad_at",c.A,c.o)))}; +mX=function(a,b){b=void 0===b?!1:b;lX(a.xc,a.o.xb(),a);b||ur("ADS_CLIENT_EVENT_TYPE_ADPLACEMENT_SCHEDULED");a.daiEnabled&&!a.o.F&&(Mma(a,a.ix()),a.o.F=!0)}; +Mma=function(a,b){for(var c=nX(a),d=a.o.xb().start,e=[],f=g.q(b),k=f.next();!k.done;k=f.next()){k=k.value;if(c<=d)break;var l=oX(k);e.push({externalVideoId:k.B,originalMediaDurationMs:(1E3*k.u).toString(),trimmedMediaDurationMs:(parseInt(k.o.trimmedMaxNonSkippableAdDurationMs,10)||0).toString()});l=d+l;var m=Math.min(l,c);k.A.w=c;if(!Nma(a,k,d,m)||l!==m)break;d=l}c=b.reduce(function(n,p){return n+oX(p)},0); +Jma(a.Le,Tla(a.o.xb()),c);Kma(a.Le,{cueIdentifier:a.o.u&&a.o.u.identifier,aE:e})}; +oX=function(a){var b=1E3*a.u;return 0c.width||b.height>c.height}; +uZ=function(a,b,c){var d=g.Pb(a.macros),e=g.Nh(b);d.AW={toString:function(){return e.width.toString()}}; +d.AH={toString:function(){return e.height.toString()}}; +var f=g.Ih(c,b).floor();d.I_X={toString:function(){return f.x.toString()}}; +d.NX={toString:function(){return f.x.toString()}}; +d.I_Y={toString:function(){return f.y.toString()}}; +d.NY={toString:function(){return f.y.toString()}}; +d.NM={toString:function(){return a.M.toString()}}; +a.I.forEach(function(k){return a.ra.executeCommand(k,d)}); +a.api.pauseVideo()}; +doa=function(a,b){var c=a.api.getRootNode();g.K(c,"ytp-ad-overlay-open",b);g.K(c,"ytp-ad-overlay-closed",!b)}; +yZ=function(a,b,c){WY.call(this,a,b,{D:"div",H:"ytp-ad-message-overlay",J:[{D:"div",H:"ytp-ad-message-slot"}]},"ad-message",c);var d=this;this.V=-1;this.aa=this.o["ytp-ad-message-slot"];this.A=new g.Ru({D:"span",H:"ytp-ad-message-container"});this.A.ca(this.aa);g.B(this,this.A);this.w=new $Y(this.api,this.ra,"ytp-ad-message-text");g.B(this,this.w);this.w.ca(this.A.element);this.I=new g.lN(this.A,400,!1,100,function(){return d.hide()}); +g.B(this,this.I);this.C=0;this.M=!1;this.hide()}; +eoa=function(a,b){var c=a.api.getRootNode();g.K(c,"ytp-ad-overlay-open",b);g.K(c,"ytp-ad-overlay-closed",!b)}; +zZ=function(a,b,c){WY.call(this,a,b,{D:"div",H:"ytp-ad-skip-ad-slot"},"skip-ad",c);this.I=!1;this.C=0;this.A=this.w=null;this.hide()}; +AZ=function(a,b){if(!a.I)if(a.I=!0,a.w&&(b?a.w.M.hide():a.w.hide()),b){var c=a.A;c.ma.show();c.show()}else a.A.show()}; +BZ=function(a,b,c){Z.call(this,a,b,{D:"div",H:"ytp-ad-persisting-overlay",J:[{D:"div",H:"ytp-ad-persisting-overlay-skip"}]},"persisting-overlay");this.w=this.o["ytp-ad-persisting-overlay-skip"];this.u=c;g.B(this,this.u);this.hide()}; +CZ=function(a,b,c){WY.call(this,a,b,{D:"span",H:"ytp-ad-duration-remaining"},"ad-duration-remaining",c);this.w=null;this.hide()}; +DZ=function(a,b){$Y.call(this,a,b,"ytp-video-ad-top-bar-title","ad-title")}; +EZ=function(a,b,c){WY.call(this,a,b,{D:"div",Y:["ytp-flyout-cta","ytp-flyout-cta-inactive"],J:[{D:"div",H:"ytp-flyout-cta-icon-container"},{D:"div",H:"ytp-flyout-cta-body",J:[{D:"div",H:"ytp-flyout-cta-text-container",J:[{D:"div",H:"ytp-flyout-cta-headline-container"},{D:"div",H:"ytp-flyout-cta-description-container"}]},{D:"div",H:"ytp-flyout-cta-action-button-container"}]}]},"flyout-cta",c);this.I=new TY(this.api,this.ra,"ytp-flyout-cta-icon");g.B(this,this.I);this.I.ca(this.o["ytp-flyout-cta-icon-container"]); +this.C=new $Y(this.api,this.ra,"ytp-flyout-cta-headline");g.B(this,this.C);this.C.ca(this.o["ytp-flyout-cta-headline-container"]);this.A=new $Y(this.api,this.ra,"ytp-flyout-cta-description");g.B(this,this.A);this.A.ca(this.o["ytp-flyout-cta-description-container"]);this.w=new VY(this.api,this.ra,["ytp-flyout-cta-action-button"]);g.B(this,this.w);this.w.ca(this.o["ytp-flyout-cta-action-button-container"]);this.M=null;this.V=0;this.hide()}; +FZ=function(a,b,c,d){c=void 0===c?[]:c;d=void 0===d?"toggle-button":d;var e=RT("ytp-ad-toggle-button-input");Z.call(this,a,b,{D:"div",Y:["ytp-ad-toggle-button"].concat(c),J:[{D:"label",H:"ytp-ad-toggle-button-label",O:{"for":e},J:[{D:"span",H:"ytp-ad-toggle-button-icon",O:{role:"button","aria-label":"{{tooltipText}}"},J:[{D:"span",H:"ytp-ad-toggle-button-untoggled-icon",W:"{{untoggledIconTemplateSpec}}"},{D:"span",H:"ytp-ad-toggle-button-toggled-icon",W:"{{toggledIconTemplateSpec}}"}]},{D:"input", +H:"ytp-ad-toggle-button-input",O:{id:e,type:"checkbox"}},{D:"span",H:"ytp-ad-toggle-button-text",W:"{{buttonText}}"},{D:"span",H:"ytp-ad-toggle-button-tooltip",W:"{{tooltipText}}"}]}]},d);this.A=this.o["ytp-ad-toggle-button"];this.u=this.o["ytp-ad-toggle-button-input"];this.M=this.o["ytp-ad-toggle-button-icon"];this.C=this.o["ytp-ad-toggle-button-untoggled-icon"];this.B=this.o["ytp-ad-toggle-button-toggled-icon"];this.Z=this.o["ytp-ad-toggle-button-text"];this.w=null;this.I=!1;this.V=null;this.hide()}; +GZ=function(a){a.I&&(a.isToggled()?(g.Oh(a.C,!1),g.Oh(a.B,!0)):(g.Oh(a.C,!0),g.Oh(a.B,!1)))}; +foa=function(a,b){var c=null;a.w&&(c=(b?[a.w.defaultServiceEndpoint,a.w.defaultNavigationEndpoint]:[a.w.toggledServiceEndpoint]).filter(function(d){return null!=d})); +return c||[]}; +HZ=function(a,b,c){Z.call(this,a,b,{D:"div",H:"ytp-ad-instream-user-sentiment-container"},"instream-user-sentiment",void 0===c?null:c);var d=this;this.u=null;this.A=new FZ(this.api,this.ra,["ytp-ad-instream-user-sentiment-like-button"]);g.B(this,this.A);this.A.ca(this.element);this.w=new FZ(this.api,this.ra,["ytp-ad-instream-user-sentiment-dislike-button"]);g.B(this,this.w);this.w.ca(this.element);this.B=new g.lN(this,400,!1,500,function(){return d.hide()}); +g.B(this,this.B);this.C=null;this.hide()}; +goa=function(a,b){a.A.init(RT("toggle-button"),a.u.likeButton.toggleButtonRenderer,b);a.w.init(RT("toggle-button"),a.u.dislikeButton.toggleButtonRenderer,b);a.C=a.L(a.element,"change",a.Uz)}; +IZ=function(a,b){VY.call(this,a,b,["ytp-ad-visit-advertiser-button"],"visit-advertiser");this.A=null}; +JZ=function(a,b,c){c=void 0===c?!1:c;Z.call(this,a,b,{D:"span",H:"ytp-ad-simple-ad-badge"},"simple-ad-badge");this.u=c;this.hide()}; +KZ=function(a,b,c){Z.call(this,a,b,{D:"div",H:"ytp-ad-player-overlay",J:[{D:"div",H:"ytp-ad-player-overlay-flyout-cta"},{D:"div",H:"ytp-ad-player-overlay-instream-info"},{D:"div",H:"ytp-ad-player-overlay-skip-or-preview"},{D:"div",H:"ytp-ad-player-overlay-progress-bar"},{D:"div",H:"ytp-ad-player-overlay-instream-user-sentiment"}]},"player-overlay");this.C=this.o["ytp-ad-player-overlay-flyout-cta"];this.w=this.o["ytp-ad-player-overlay-instream-info"];this.A=null;if(hoa(this)){a=g.ne("div");g.J(a,"ytp-ad-player-overlay-top-bar-gradients"); +b=this.w;b.parentNode&&b.parentNode.insertBefore(a,b);if((b=this.api.getVideoData(2))&&b.isListed&&b.title){var d=new DZ(this.api,this.ra);d.ca(a);d.init(RT("ad-title"),{text:b.title},this.macros);g.B(this,d)}this.A=a}this.B=this.o["ytp-ad-player-overlay-skip-or-preview"];this.M=this.o["ytp-ad-player-overlay-progress-bar"];this.I=this.o["ytp-ad-player-overlay-instream-user-sentiment"];this.u=c;g.B(this,this.u);this.hide()}; +hoa=function(a){a=a.api.N();return mz(a)&&a.o}; +LZ=function(a,b){Z.call(this,a,b,{D:"div",H:"ytp-ad-survey-answer"},"survey-answer");this.w=this.o["ytp-ad-survey-answer"];this.u=null;this.A="";this.hide()}; +MZ=function(a,b){Z.call(this,a,b,{D:"div",H:"ytp-ad-survey-none-of-the-above"},"survey-none-of-the-above");this.w=this.o["ytp-ad-survey-none-of-the-above"];this.u=null;this.hide()}; +NZ=function(a,b){VY.call(this,a,b,["ytp-ad-survey-submit-button"],"survey-submit")}; +OZ=function(a,b,c){Z.call(this,a,b,{D:"div",H:"ytp-ad-survey-player-overlay",J:[{D:"div",H:"ytp-ad-survey-player-overlay-instream-info"},{D:"div",H:"ytp-ad-survey-player-overlay-skip-preview-submit",J:[{D:"div",H:"ytp-ad-survey-player-overlay-skip-or-preview"},{D:"div",H:"ytp-ad-survey-player-overlay-submit"}]},{D:"div",H:"ytp-ad-survey-player-overlay-instream-user-sentiment"}]},"survey-player-overlay");this.C=this.o["ytp-ad-survey-player-overlay-instream-info"];this.w={};this.I=this.o["ytp-ad-survey-player-overlay-skip-or-preview"]; +this.u=null;this.M=this.o["ytp-ad-survey-player-overlay-submit"];this.A=null;this.B=c;g.B(this,this.B);this.hide()}; +PZ=function(a,b,c){Z.call(this,a,b,{D:"div",H:"ytp-ad-survey-question",J:[{D:"div",Y:["ytp-ad-survey-question-text","ytp-ad-survey-question-foreground"]},{D:"div",Y:["ytp-ad-survey-answers","ytp-ad-survey-question-foreground"]},{D:"div",Y:["ytp-ad-survey-question-player-overlay","ytp-ad-survey-question-foreground"]},{D:"div",H:"ytp-ad-survey-question-background"}]},c);this.question=this.o["ytp-ad-survey-question"];this.aa=this.o["ytp-ad-survey-question-background"];this.V=this.o["ytp-ad-survey-question-text"]; +this.answers=this.o["ytp-ad-survey-answers"];this.M=this.o["ytp-ad-survey-question-player-overlay"];this.C=null;this.A=[];this.u=null;this.B=(0,g.H)()}; +ioa=function(a,b,c){var d=new LZ(a.api,a.ra);d.ca(a.answers);d.init(RT("survey-answer"),b,c);a.A.push(d)}; +koa=function(a,b){if(b){var c=b.background;c&&c.instreamSurveyAdBackgroundImageRenderer&&(c=(c=c.instreamSurveyAdBackgroundImageRenderer.image)&&SY(c)||"",g.ec(c)?g.Go(Error("Found ThumbnailDetails without valid image URL")):g.sh(a.aa,"backgroundImage","url("+c+")"));joa(a,b)}else g.M(Error("addCommonComponents() needs to be called before starting countdown."))}; +joa=function(a,b){if(null==b.durationMilliseconds||void 0==b.durationMilliseconds||0==b.durationMilliseconds)g.M(Error("durationMilliseconds unset or 0 for SurveyAdQuestionCommon: "+JSON.stringify(b)));else{a.B=(0,g.H)();a.u=new fZ(b.durationMilliseconds,a.ra);g.B(a,a.u);if(b.timeoutCommands){var c=b.timeoutCommands;a.u.subscribe("a",function(){c.forEach(function(e){return a.ra.executeCommand(e,a.macros)})})}if(a.u&&b.instreamAdPlayerOverlay&&b.instreamAdPlayerOverlay.instreamSurveyAdPlayerOverlayRenderer)try{var d= +new OZ(a.api,a.ra,a.u); +d.ca(a.M);d.init(RT("survey-player-overlay"),b.instreamAdPlayerOverlay.instreamSurveyAdPlayerOverlayRenderer,a.macros);a.C=d;g.B(a,d);a.PB()}catch(e){g.M(Error("ISAPOR had an error when initializing. Error: "+(e+" SurveyAdQuestionCommon: "+JSON.stringify(b))))}else g.M(Error("ISAPOR was not present in renderer. SurveyAdQuestionCommon: "+JSON.stringify(b)));a.u&&b.durationMilliseconds&&0document.documentMode)d=new zc;else{var e=document;"function"===typeof HTMLTemplateElement&&(e=g.oe("TEMPLATE").content.ownerDocument);e=e.implementation.createHTMLDocument("").createElement("DIV");e.style.cssText=d;d=dea(e.style)}c=Gaa(d,Fc({"background-image":'url("'+c+'")'}));a.style.cssText=Ac(c)}}; +roa=function(a){var b=g.ce("html5-video-player");b&&g.K(b,"ytp-ad-display-override",a)}; +VZ=function(a,b){Z.call(this,a,b,{D:"div",H:"iv-website-companion",J:[{D:"div",H:"iv-website-companion-block",J:[{D:"div",H:"iv-website-companion-icon"},{D:"div",H:"iv-website-companion-text",J:[{D:"div",H:"iv-website-companion-desc",J:[{D:"span",Y:["yt-badge","yt-badge-ad"],W:"{{adBadgeText}}"}]}]}]}]},"action-companion");this.Z=this.o["iv-website-companion"];this.A=new TY(this.api,this.ra,"iv-website-companion-banner");g.B(this,this.A);this.A.ca(this.Z,0);this.ga=new TY(this.api,this.ra);g.B(this, +this.A);this.ga.ca(this.o["iv-website-companion-icon"]);this.M=new $Y(this.api,this.ra,"iv-website-companion-header");g.B(this,this.M);this.M.ca(this.o["iv-website-companion-text"],0);this.C=new $Y(this.api,this.ra,"iv-website-companion-domain");g.B(this,this.C);this.C.ca(this.o["iv-website-companion-desc"]);this.w=new VY(this.api,this.ra,["iv-website-companion-action","yt-uix-button-size-default","yt-uix-button-primary"]);g.B(this,this.w);this.w.ca(this.o["iv-website-companion-block"]);this.B=new WX(this.api, +this.ra);g.B(this,this.B);this.B.ca(this.Z,0);this.V=null;this.aa=[];this.I=new g.Gr;g.B(this,this.I);this.ma=new iU(3E4);this.u=null;this.hide()}; +WZ=function(){g.R.call(this,{D:"div",H:"ad-carousel",J:[{D:"div",H:"ad-carousel-clip",J:[{D:"ul",Y:["ad-carousel-list","ad-carousel-list-animation"]}]}]});var a=this.o["ad-carousel"];this.B=new g.R({D:"button",Y:["ad-carousel-nav-button","ad-carousel-nav-prev"],O:{type:"button",onclick:"return false;"},J:[{D:"span",Y:["ad-carousel-prev-icon","yt-uix-tooltip","yt-sprite"],O:{"data-tooltip-text":"Prev",title:"Prev"}}]});g.B(this,this.B);this.B.ka("click",this.G,this);this.B.ca(a);this.A=new g.R({D:"button", +Y:["ad-carousel-nav-button","ad-carousel-nav-next"],O:{type:"button",onclick:"return false;"},J:[{D:"span",Y:["ad-carousel-next-icon","yt-uix-tooltip","yt-sprite"],O:{"data-tooltip-text":"Next",title:"Next"}}]});g.B(this,this.A);this.A.ka("click",this.F,this);this.A.ca(a);this.C=this.o["ad-carousel-list"];this.w=0;this.u=[]}; +YZ=function(a){a.C&&g.sh(a.C,"left",(2>a.u.length?0:-a.w*a.u[1].element.clientWidth)+"px");g.Qu(a.B,0a.u.length?1:Math.round((a.element.clientWidth-a.u[0].element.clientWidth)/a.u[1].element.clientWidth)+1}; +ZZ=function(){NX.call(this,!0);this.o=new WZ}; +$Z=function(){NX.call(this,!1);this.u=new g.R({D:"div",H:"iv-btp-card",J:[{D:"a",H:"iv-btp-card-content",J:[{D:"div",W:"{{cards}}"}]}]});g.B(this,this.u);var a={D:"div",H:"iv-btp-card-merchant",J:[{D:"span",H:"iv-btp-card-merchant-text",W:"{{merchant}}"}]};this.A=new g.Mu({D:"div",Y:["iv-btp-small-card","yt-uix-hovercard-target"],O:{"data-position":"bottomright","data-orientation":"vertical"},J:[{D:"div",Y:["iv-btp-card-image","yt-uix-hovercard-anchor"],W:"{{image}}"},{D:"div",H:"iv-btp-card-info", +J:[{D:"span",H:"iv-btp-card-action",W:"{{price}}"},a]},{D:"div",Y:["yt-uix-hovercard-content","iv-btp-hovercard"],W:"{{hovercard}}"}]});g.B(this,this.A);this.o=new g.Mu({D:"div",H:"iv-btp-large-card",J:[{D:"div",H:"iv-btp-card-image",J:[{D:"span"},{D:"div",H:"iv-btp-card-image-aligned",W:"{{image}}"}]},{D:"div",H:"iv-btp-card-info",J:[{D:"div",H:"iv-btp-card-text-box",J:[{D:"div",H:"iv-btp-card-text-valign",J:[{D:"div",Y:["yt-ui-ellipsis","yt-ui-ellipsis-4","iv-btp-card-headline"],W:"{{headline}}"}]}]}, +{D:"span",H:"iv-btp-card-action",W:"{{price}}"},a,{D:"div",W:"{{review}}"}]}]});g.B(this,this.o);this.w=new g.Mu({D:"div",H:"iv-btp-hovercard-text-box",J:[{D:"a",J:[{D:"div",Y:["yt-ui-ellipsis","yt-ui-ellipsis-4","iv-btp-hovercard-headline"],W:"{{headline}}"}]},{D:"div",H:"iv-btp-hovercard-info",J:[{D:"span",H:"iv-btp-hovercard-action",W:"{{price}}"},a]},{D:"div",W:"{{review}}"}]});g.B(this,this.w);this.B=new g.Mu({D:"div",H:"iv-btp-card-review",J:[{D:"div",H:"iv-btp-card-rating",J:[{D:"span",H:"iv-btp-card-rating-bg", +J:[{D:"span",H:"iv-btp-card-rating-fg"}]}]},{D:"span",H:"iv-btp-card-reviews",W:"{{reviewText}}"}]});g.B(this,this.B);this.A.la("hovercard",this.w);this.u.la("cards",[this.A,this.o]);soa(this)}; +soa=function(a){a.u.ka("click",function(){a.dispatchEvent({type:"offerclick"})}); +for(var b=g.q((a.u.element||document).getElementsByTagName("A")),c=b.next();!c.done;c=b.next())a.u.L(c.value,"click",function(){a.dispatchEvent({type:"offernavclick"})})}; +a_=function(a,b,c){c=c?MX(c):null;a.la(b,c)}; +b_=function(a,b){OX.call(this,a,b,function(){return new toa.Cq}); +this.u=null;uoa(this)}; +uoa=function(a){for(var b=g.q(Object.values(voa)),c=b.next();!c.done;c=b.next())a.view.addEventListener(c.value,function(d){return a.onClick(d)})}; +c_=function(){g.A.call(this);this.w=this.A=this.u=this.B=this.o=null}; +xoa=function(a,b){return woa(a).then(function(c){c&&g.Ma(c.promotionShelfShow)&&c.promotionShelfShow(b)})}; +yoa=function(a){woa(a).then(function(b){b&&g.Ma(b.promotionShelfClear)&&b.promotionShelfClear()})}; +zoa=function(){return g.w("yt.www.watch.ads")}; +woa=function(a){if(a.ea())throw Error("Object is disposed");if(!a.o){var b=zoa();a.o=b?Df(b):(new zf(function(c){a.B=qea(c)})).then(zoa)}return a.o}; +d_=function(){NX.call(this,!0);this.o=new g.R({D:"div",H:"iv-btp-companion",J:[{D:"div",H:"iv-btp-block-clicks"},{D:"div",H:"iv-btp-attribution",J:[{D:"span",H:"iv-btp-title",W:"{{shopText}}"},{D:"div",H:"ad-info-container",J:[{D:"span",H:"iv-btp-sponsored",W:"{{sponsoredText}}"},{D:"button",H:"ad-info-icon"}]}]}]});g.B(this,this.o);this.w=this.o.o["iv-btp-block-clicks"];this.u=new c_;g.B(this,this.u);this.A=xoa(this.u,this.o.element);Aoa(this)}; +Aoa=function(a){a.o.ka("click",function(b){g.xe(a.o.o["ad-info-icon"],b.target)&&a.dispatchEvent({type:"adinfoclick"})})}; +f_=function(a,b){OX.call(this,a,b,function(){return new e_.HD}); +this.M=new g.Gr(this);g.B(this,this.M);this.F=[];this.u=null;this.w=new e_.yq;g.B(this,this.w);this.view.append(this.w);this.C=new e_.gD(a,b,new zX(this.view.o.o["ad-info-icon"]));g.B(this,this.C);this.view.append(this.C.view);Boa(this)}; +Boa=function(a){a.M.L(a.o,"appresize",a.U);a.M.L(a.view,"adinfoclick",function(b){return a.onClick(b)})}; +Coa=function(a){var b=a.view;g.Oh(b.w,!0);Hf([a.u,Vf(1E3)]).then(function(){g.Oh(b.w,!1)})}; +g_=function(){NX.call(this,!0);var a=this;this.A=this.u=0;this.o=new g.R({D:"div",H:"iv-cards-slider",J:[{D:"div",H:"iv-cards-slider-body",J:[{D:"ul",H:"iv-cards-slider-list"}]},{D:"button",Y:["iv-cards-slider-button","iv-cards-slider-prev"],O:{type:"button",onclick:";return false;"},J:[{D:"span",Y:["iv-cards-slider-prev-icon","yt-sprite"]}]},{D:"button",Y:["iv-cards-slider-button","iv-cards-slider-next"],O:{type:"button",onclick:";return false;"},J:[{D:"span",Y:["iv-cards-slider-next-icon","yt-sprite"]}]}]}); +this.F=g.ce("iv-cards-slider-list",this.o.element);if(this.w=g.ce("iv-cards-slider-prev",this.o.element))this.o.L(this.w,"click",function(){a.dispatchEvent({type:"prevbuttonclick"})}),g.Oh(this.w,!1); +(this.B=g.ce("iv-cards-slider-next",this.o.element))&&this.o.L(this.B,"click",function(){a.dispatchEvent({type:"nextbuttonclick"})}); +g.B(this,this.o)}; +h_=function(a){a.F.style.left=125*-a.u+"px";a.w&&g.Oh(a.w,0Math.random();this.eventCount=0}; +Moa=function(a){var b;return(null===(b=Loa.get(a))||void 0===b?void 0:b.Tp)||"ADS_CLIENT_EVENT_TYPE_UNSPECIFIED"}; +z_=function(a,b,c){y_(a,b,void 0,void 0,c)}; +A_=function(a,b,c,d){y_(a,b,void 0,void 0,c,d?d:void 0)}; +Noa=function(a,b,c,d){g.P(a.Kb.K.N().experiments,"html5_control_flow_include_trigger_logging_in_tmp_logs")&&y_(a,"ADS_CLIENT_EVENT_TYPE_TRIGGER_ACTIVATED",void 0,void 0,b,d?d:void 0,c)}; +C_=function(a,b,c,d,e,f,k,l){a=a.o||Ooa(a.Kb);return{adClientDataEntry:{slotData:B_(a,{slotId:b,ab:c,wb:d,ld:e,Jg:[],Ig:[],Ja:new u_([])}),layoutData:Poa(a,{layoutId:f,layoutType:k,wb:l,Ae:[],We:[],Ve:[],jf:new Map,Ja:new u_([]),rh:{}})}}}; +y_=function(a,b,c,d,e,f,k){if(g.P(a.Kb.K.N().experiments,"html5_enable_ads_client_monitoring_log")&&!g.P(a.Kb.K.N().experiments,"html5_disable_client_tmp_logs")&&"ADS_CLIENT_EVENT_TYPE_UNSPECIFIED"!==b){var l=a.o||Ooa(a.Kb);b={eventType:b,eventOrder:++a.eventCount};var m=g.Q(a.Kb.K.N().experiments,"html5_experiment_id_label");m=0=e||0>=c||g.V(b,16)||g.V(b,32)||(C0(c,.25*e,d)&&w0(a.o,"first_quartile"),C0(c,.5*e,d)&&w0(a.o,"midpoint"),C0(c,.75*e,d)&&w0(a.o,"third_quartile"))}; +C0=function(a,b,c){return a=a?null:a}; +I0=function(a,b,c,d,e,f,k,l){E0.call(this,a,b,"opportunity_type_live_stream_break_signal",c);var m=this;this.hd=d;this.u=e;this.vf=f;this.ob=k;this.w=l;this.o=null;d.addListener(this);g.Ge(this,function(){d.removeListener(m)}); +f.addListener(this);g.Ge(this,function(){f.removeListener(m)})}; +Zpa=function(a,b,c){var d=a.ob.K.getCurrentTime(1,!1);d=Xpa(c,d);a.w.schedule({contentCpn:b.contentCpn,JE:new Qn(1E3*d.start,1E3*d.end),aO:null,execute:function(){return Ypa(a,b,c)}})}; +Ypa=function(a,b,c){var d=b.contentCpn,e=b.adPlacementRenderer.renderer.adBreakServiceRenderer.getAdBreakUrl,f=b.Yk;return mh(a,function l(){var m=this,n,p;return Aa(l,function(t){if(1==t.o)return g.ta(t,m.u.fetch({bP:e,mi:c,rE:$pa(c)}),2);n=t.u;2<=n.length&&r_("Unexpected "+n.length+" ad placement renderers");n.length||r_("Expected ad placement renderer");p={Tg:n,Pq:n,contentCpn:d,Yk:f,so:!0,daiEnabled:!0};F0(m,p);t.o=0})})}; +Xpa=function(a,b){var c=a.startSecs+a.durationSecs;return a.startSecs<=b?new Qn(a.startSecs-4,c):new Qn(Math.floor(b+Math.random()*Math.max(0,a.startSecs-b-10)),c)}; +$pa=function(a){var b=1E3*a.startSecs;return new g.iC(b,b+1E3*a.durationSecs)}; +J0=function(a,b){g.A.call(this);var c=this;this.Ke=a;this.o=new Map;b.addListener(this);g.Ge(this,function(){b.removeListener(c)})}; +K0=function(a,b,c,d,e){E0.call(this,a,c,"opportunity_type_player_bytes_media_layout_entered",e);this.o=b;this.Kb=d;this.Nj=!0}; +L0=function(a,b){this.Sa=a;this.Zk=b}; +M0=function(){g.A.apply(this,arguments);this.Nj=!0;this.o=new Map}; +Mpa=function(a,b){this.Fb=a;this.slot=b}; +aqa=function(){}; +N0=function(a,b){this.o=a;this.u=b;this.triggerType="trigger_type_layout_id_entered"}; +O0=function(a,b){this.o=a;this.B=b;this.triggerType="trigger_type_layout_id_exited"}; +P0=function(a,b){this.o=a;this.B=b;this.ab="slot_type_player_bytes";this.layoutType="layout_type_media";this.triggerType="trigger_type_on_different_layout_id_entered"}; +Q0=function(a){this.o=Tr();this.w=a;this.triggerType="trigger_type_slot_id_entered"}; +R0=function(a){this.o=Tr();this.B=a;this.triggerType="trigger_type_slot_id_exited"}; +S0=function(a){this.o=Tr();this.A=a;this.triggerType="trigger_type_slot_id_scheduled"}; +T0=function(a,b,c,d){this.category=a;this.trigger=b;this.slot=c;this.layout=d}; +U0=function(a){g.A.call(this);this.o=a;this.Nj=!0;this.u=new Map;this.B=new Set;this.A=new Set;this.C=new Set;this.w=new Set}; +bqa=function(a,b){this.o=a;this.layoutId=b;this.triggerType="trigger_type_close_requested"}; +V0=function(){g.A.call(this);this.o=new Map}; +cqa=function(a,b){this.o=a;this.u=b;this.triggerType="trigger_type_before_content_video_id_started"}; +W0=function(a,b){g.A.call(this);var c=this;this.w=a;this.o=new Map;b.addListener(this);g.Ge(this,function(){b.removeListener(c)})}; +dqa=function(a,b){for(var c=[],d=g.q(a.values()),e=d.next();!e.done;e=d.next())e=e.value,e.trigger.u===b&&c.push(e);return c}; +X0=function(a){this.o=Tr();this.visible=a;this.triggerType="trigger_type_after_content_video_id_ended"}; +Y0=function(a,b,c){this.o=a;this.u=b;this.visible=c;this.triggerType="trigger_type_media_time_range"}; +Z0=function(a,b){this.o=a;this.u=b;this.triggerType="trigger_type_not_in_media_time_range"}; +$0=function(a,b){g.A.call(this);this.u=a;this.Ke=b;this.o=new Map}; +a1=function(a,b,c,d,e,f,k,l,m){a.o.set(c.o,{bundle:new T0(b,c,d,e),Kw:f});a.Ke.addCueRange(f,k,l,m,a)}; +eqa=function(a,b){for(var c=g.q(a.o.entries()),d=c.next();!d.done;d=c.next()){var e=g.q(d.value);d=e.next().value;e=e.next().value;if(b===e.Kw)return d}return""}; +fqa=function(){this.o=Tr();this.triggerType="TRIGGER_TYPE_LIVE_STREAM_BREAK_ENDED"}; +gqa=function(){this.o=Tr();this.triggerType="TRIGGER_TYPE_LIVE_STREAM_BREAK_STARTED"}; +b1=function(a,b){var c;g.A.call(this);var d=this;this.A=a;this.u=new Map;this.w=new Map;this.o=null;b.addListener(this);g.Ge(this,function(){b.removeListener(d)}); +this.o=(null===(c=b.bl)||void 0===c?void 0:c.slotId)||null}; +hqa=function(a,b){for(var c=[],d=g.q(a.values()),e=d.next();!e.done;e=d.next())e=e.value,e.slot.slotId===b&&c.push(e);return c}; +c1=function(a){this.o=Tr();this.layoutId=a;this.triggerType="trigger_type_on_layout_self_exit_requested"}; +d1=function(a,b){this.o=a;this.slotId=b;this.triggerType="trigger_type_on_element_self_enter_requested"}; +e1=function(a){g.A.call(this);this.A=a;this.Nj=!0;this.w=new Map;this.u=this.o=null}; +iqa=function(a,b){for(var c=[],d=g.q(a.w.values()),e=d.next();!e.done;e=d.next())e=e.value,e.trigger instanceof c1&&e.trigger.layoutId===b&&Koa(e.category)&&c.push(e);c.length&&L_(a.A(),c)}; +f1=function(a,b){this.o=a;this.contentVideoId=b;this.triggerType="trigger_type_on_new_playback_after_content_video_id"}; +g1=function(a,b){g.A.call(this);var c=this;this.u=a;this.hd=b;this.o=new Map;b.addListener(this);g.Ge(this,function(){b.removeListener(c)})}; +h1=function(a){this.o=Tr();this.durationMs=45E3;this.layoutId=a;this.triggerType="trigger_type_time_relative_to_layout_enter"}; +i1=function(a){g.A.call(this);this.A=a;this.Nj=!0;this.u=new Map;this.o=new Map;this.w=new Map}; +jqa=function(a){g.A.call(this);this.A=new U0(a.Uh);g.B(this,this.A);this.o=new e1(a.Uh);g.B(this,this.o);this.w=new b1(a.Uh,a.hd);g.B(this,this.w);this.F=new g1(a.Uh,a.hd);g.B(this,this.F);this.C=new W0(a.Uh,a.lE);g.B(this,this.C);this.u=new $0(a.Uh,a.Ke);g.B(this,this.u);this.G=new i1(a.Uh);g.B(this,this.G);this.B=new V0(a.Uh);g.B(this,this.B)}; +kqa=function(){}; +j1=function(a,b,c,d,e,f,k){var l=Tr(),m={layoutId:l,layoutType:a,wb:"core"},n=new Map;f?(0===f.length&&r_("Companion Ad Renderer with no impression Pings"),n.set("impression",f)):r_("Companion Ad Renderer without impression Pings field");return{layoutId:l,layoutType:a,jf:n,Ae:[new c1(l),new P0(Tr(),d)],We:[],Ve:[],wb:"core",Ja:new u_([b,new f0(c),new e0(e)]),rh:k(m)}}; +k1=function(a,b,c,d,e,f){var k={layoutId:a,layoutType:b,wb:"core"};return{layoutId:a,layoutType:b,jf:new Map,Ae:f?[f]:[],We:[new bqa(Tr(),a)],Ve:[],wb:"core",Ja:new u_([new b0(c),new e0(d)]),rh:e(k)}}; +Upa=function(a,b,c,d,e,f){b.every(function(m){return t_(m,[],["layout_type_media"])})||r_("Unexpect subLayout type for DAI composite layout"); +var k=Tr(),l={layoutId:k,layoutType:"layout_type_composite_player_bytes",wb:"core"};return{layoutId:k,layoutType:"layout_type_composite_player_bytes",jf:d,Ae:[new fqa],We:[],Ve:[],wb:"core",Ja:new u_([new n0(a),new k0(b),new e0(c),new q0(e)]),rh:f(l)}}; +lqa=function(a,b,c){var d=Tr();b=[new N0(Tr(),b)];var e={slotId:d,ab:"slot_type_in_player",wb:"core",ld:b};return{slotId:d,ab:"slot_type_in_player",ld:b,Jg:[new Q0(d)],Ig:[new f1(Tr(),a),new R0(d)],wb:"core",Ja:new u_([new r0(c(e))])}}; +nqa=function(a,b,c){var d=mqa(a,b);if(d){var e=d instanceof Y0?new Z0(Tr(),d.u):null;a=Tr();d=[d];if(c=c({slotId:a,ab:"slot_type_in_player",wb:"core",ld:d},e))return{slotId:a,ab:"slot_type_in_player",ld:d,Jg:[new Q0(a)],Ig:[new f1(Tr(),b),new R0(a)],wb:"core",Ja:new u_([new r0(c)])}}}; +pqa=function(a,b,c,d){var e=Tr();return oqa(e,a,new N0(Tr(),c),b,d)}; +qqa=function(a,b,c,d){return oqa(b,a,new d1(Tr(),b),c,d)}; +rqa=function(a,b){var c=Tr(),d=[new gqa],e={slotId:c,ab:"slot_type_player_bytes",wb:"core",ld:d};return{slotId:c,ab:"slot_type_player_bytes",ld:d,Jg:[new S0(c)],Ig:[new f1(Tr(),a)],wb:"core",Ja:new u_([new r0(b(e))])}}; +sqa=function(a,b,c){var d=Tr();if(a=mqa(a,b)){a=[a];var e={slotId:d,ab:"slot_type_forecasting",wb:"core",ld:a};return{slotId:d,ab:"slot_type_forecasting",ld:a,Jg:[new Q0(d)],Ig:[new R0(d),new f1(Tr(),b)],wb:"core",Ja:new u_([new r0(c(e))])}}}; +mqa=function(a,b){var c,d,e=!a.hideCueRangeMarker;switch(a.kind){case "AD_PLACEMENT_KIND_START":return new cqa(Tr(),b);case "AD_PLACEMENT_KIND_MILLISECONDS":if(null===(c=a.adTimeOffset)||void 0===c||!c.offsetStartMilliseconds){r_("AD_PLACEMENT_KIND_MILLISECONDS missing start milliseconds.");break}if(null===(d=a.adTimeOffset)||void 0===d||!d.offsetEndMilliseconds){r_("AD_PLACEMENT_KIND_MILLISECONDS missing end milliseconds.");break}var f=Number(a.adTimeOffset.offsetStartMilliseconds),k=Number(a.adTimeOffset.offsetEndMilliseconds); +if(isNaN(f)||isNaN(k)||f>=k){r_("AD_PLACEMENT_KIND_MILLISECONDS endMs needs to be > startMs.");break}return new Y0(Tr(),new Qn(f,k),e);case "AD_PLACEMENT_KIND_END":return new X0(e);default:r_("Cannot construct entry trigger from AdPlacementKind: "+(a.kind+"."))}}; +oqa=function(a,b,c,d,e){c=[c];var f={slotId:a,ab:b,wb:"core",ld:c};return{slotId:a,ab:b,ld:c,Jg:[new Q0(a)],Ig:[new f1(Tr(),d),new R0(a)],wb:"core",Ja:new u_([new r0(e(f))])}}; +tqa=function(){this.o=new Map}; +l1=function(a,b,c){g.A.call(this);this.w=a;this.Ag=b;this.Sa=c;this.o=this.u=null;this.Ag.addListener(this)}; +uqa=function(a){g.A.call(this);this.o=new l1(a.IE,a.kG,a.Sa);g.B(this,this.o)}; +vqa=function(a,b,c){this.Mq=a;this.o=b;this.Kb=c}; +wqa=function(a,b,c){var d=null;try{d=JSON.parse(a.response)}catch(f){return a.response&&(b=a.response,b.startsWith("GIF89")||(f.params=b.substr(0,256),g.Uq(f))),[]}if(!d)return[];a=d;g.P(c.K.N().experiments,"html5_enable_visual_element_logging_for_deferred_ads")&&a&&a.trackingParams&&uX(sX(),a.trackingParams);if(a.adThrottled)return[];c=a.playerAds;if(!c||!c.length)return[];c=c.map(function(f){return f.adPlacementRenderer}).filter(function(f){return!(!f||!f.renderer)}); +if(!c.length)return[];if(0>16,a>>8&255,a&255]}; +Oqa=function(){if(!g.he)return!1;try{return new ActiveXObject("MSXML2.DOMDocument"),!0}catch(a){return!1}}; +g.B1=function(a){if("undefined"!=typeof DOMParser){var b=new DOMParser;fh();a=Vc(a,null);return b.parseFromString(g.Qc(a),"application/xml")}if(Pqa){b=new ActiveXObject("MSXML2.DOMDocument");b.resolveExternals=!1;b.validateOnParse=!1;try{b.setProperty("ProhibitDTD",!0),b.setProperty("MaxXMLSize",2048),b.setProperty("MaxElementDepth",256)}catch(c){}b.loadXML(a);return b}throw Error("Your browser does not support loading xml documents");}; +g.C1=function(a){g.A.call(this);this.u=a;this.o={}}; +Qqa=function(a,b,c,d,e,f){if(Array.isArray(c))for(var k=0;k=f}}); +ma("Array.prototype.find",function(a){return a?a:function(b,c){return Ca(this,b,c).PC}}); +ma("String.prototype.startsWith",function(a){return a?a:function(b,c){var d=Da(this,b,"startsWith");b+="";for(var e=d.length,f=b.length,k=Math.max(0,Math.min(c|0,d.length)),l=0;l=f}}); +ma("String.prototype.repeat",function(a){return a?a:function(b){var c=Da(this,null,"repeat");if(0>b||1342177279>>=1)c+=c;return d}}); +ma("WeakMap",function(a){function b(m){this.o=(l+=Math.random()+1).toString();if(m){m=g.q(m);for(var n;!(n=m.next()).done;)n=n.value,this.set(n[0],n[1])}} +function c(){} +function d(m){var n=typeof m;return"object"===n&&null!==m||"function"===n} +function e(m){if(!Ea(m,k)){var n=new c;la(m,k,{value:n})}} +function f(m){var n=Object[m];n&&(Object[m]=function(p){if(p instanceof c)return p;e(p);return n(p)})} +if(function(){if(!a||!Object.seal)return!1;try{var m=Object.seal({}),n=Object.seal({}),p=new a([[m,2],[n,3]]);if(2!=p.get(m)||3!=p.get(n))return!1;p["delete"](m);p.set(n,4);return!p.has(m)&&4==p.get(n)}catch(t){return!1}}())return a; +var k="$jscomp_hidden_"+Math.random();f("freeze");f("preventExtensions");f("seal");var l=0;b.prototype.set=function(m,n){if(!d(m))throw Error("Invalid WeakMap key");e(m);if(!Ea(m,k))throw Error("WeakMap key fail: "+m);m[k][this.o]=n;return this}; +b.prototype.get=function(m){return d(m)&&Ea(m,k)?m[k][this.o]:void 0}; +b.prototype.has=function(m){return d(m)&&Ea(m,k)&&Ea(m[k],this.o)}; +b.prototype["delete"]=function(m){return d(m)&&Ea(m,k)&&Ea(m[k],this.o)?delete m[k][this.o]:!1}; +return b}); +ma("Map",function(a){function b(){var l={};return l.previous=l.next=l.head=l} +function c(l,m){var n=l.o;return pa(function(){if(n){for(;n.head!=l.o;)n=n.previous;for(;n.next!=n.head;)return n=n.next,{done:!1,value:m(n)};n=null}return{done:!0,value:void 0}})} +function d(l,m){var n=m&&typeof m;"object"==n||"function"==n?f.has(m)?n=f.get(m):(n=""+ ++k,f.set(m,n)):n="p_"+m;var p=l.u[n];if(p&&Ea(l.u,n))for(var t=0;tb?-c:c}}); +ma("Array.prototype.fill",function(a){return a?a:function(b,c,d){var e=this.length||0;0>c&&(c=Math.max(0,e+c));if(null==d||d>e)d=e;d=Number(d);0>d&&(d=Math.max(0,e+d));for(c=Number(c||0);cf&&(f=Math.max(f+e,0));f>>0);eaa=0;g.H=Date.now||function(){return+new Date};g.Sa(Ta,Error);Ta.prototype.name="CustomError";var Xd;g.Sa(Ua,Ta);Ua.prototype.name="AssertionError";var Za,kj;Za=Array.prototype.indexOf?function(a,b){return Array.prototype.indexOf.call(a,b,void 0)}:function(a,b){if("string"===typeof a)return"string"!==typeof b||1!=b.length?-1:a.indexOf(b,0); +for(var c=0;cc&&(c=Math.max(0,a.length+c));if("string"===typeof a)return"string"!==typeof b||1!=b.length?-1:a.lastIndexOf(b,c);for(;0<=c;c--)if(c in a&&a[c]===b)return c;return-1}; +g.y=Array.prototype.forEach?function(a,b,c){Array.prototype.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,e="string"===typeof a?a.split(""):a,f=0;f/g,ic=/"/g,jc=/'/g,lc=/\x00/g,yaa=/[\x00&<>"']/;g.tc.prototype.ug=!0;g.tc.prototype.xe=function(){return this.u.toString()}; +g.tc.prototype.ts=!0;g.tc.prototype.o=function(){return 1}; +var Aaa=/^(?:audio\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-matroska|x-wav|wav|webm)|font\/\w+|image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|text\/csv|video\/(?:mpeg|mp4|ogg|webm|quicktime|x-matroska))(?:;\w+=(?:\w+|"[\w;,= ]+"))*$/i,zaa=/^data:(.*);base64,[a-z0-9+\/]+=*$/i,vc=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i,sc={},rc={};zc.prototype.ug=!0;var yc={};zc.prototype.xe=function(){return this.o}; +var Ec=Bc(""),Caa=/^[-,."'%_!# a-zA-Z0-9\[\]]+$/,Hc=RegExp("\\b(url\\([ \t\n]*)('[ -&(-\\[\\]-~]*'|\"[ !#-\\[\\]-~]*\"|[!#-&*-\\[\\]-~]*)([ \t\n]*\\))","g"),Gc=RegExp("\\b(calc|cubic-bezier|fit-content|hsl|hsla|linear-gradient|matrix|minmax|repeat|rgb|rgba|(rotate|scale|translate)(X|Y|Z|3d)?)\\([-+*/0-9a-z.%\\[\\], ]+\\)","g"),Daa=/\/\*/;a:{var $qa=g.v.navigator;if($qa){var ara=$qa.userAgent;if(ara){g.Ic=ara;break a}}g.Ic=""};Pc.prototype.ts=!0;Pc.prototype.o=function(){return this.w}; +Pc.prototype.ug=!0;Pc.prototype.xe=function(){return this.u.toString()}; +var bra=/^[a-zA-Z0-9-]+$/,cra={action:!0,cite:!0,data:!0,formaction:!0,href:!0,manifest:!0,poster:!0,src:!0},dra={APPLET:!0,BASE:!0,EMBED:!0,IFRAME:!0,LINK:!0,MATH:!0,META:!0,OBJECT:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0},Oc={},I1=new Pc;I1.u=g.v.trustedTypes&&g.v.trustedTypes.emptyHTML?g.v.trustedTypes.emptyHTML:"";I1.w=0;var Uc=I1;var Kaa=yb(function(){var a=document.createElement("div"),b=document.createElement("div");b.appendChild(document.createElement("div"));a.appendChild(b);b=a.firstChild.firstChild;a.innerHTML=g.Qc(Uc);return!b.parentElement});var Laa=String.prototype.repeat?function(a,b){return a.repeat(b)}:function(a,b){return Array(b+1).join(a)};var md=/^(?:([^:/?#.]+):)?(?:\/\/(?:([^\\/?#]*)@)?([^\\/?#]*?)(?::([0-9]+))?(?=[\\/?#]|$))?([^?#]+)?(?:\?([^#]*))?(?:#([\s\S]*))?$/,Bd=/#|$/,Naa=/[?&]($|#)/;Gd[" "]=g.Ia;var uh,MG,yT,era,fra,gra,Hy,Jy,J1;g.vh=Jc("Opera");g.he=Jc("Trident")||Jc("MSIE");g.wu=Jc("Edge");g.nz=g.wu||g.he;uh=Jc("Gecko")&&!(nc(g.Ic,"WebKit")&&!Jc("Edge"))&&!(Jc("Trident")||Jc("MSIE"))&&!Jc("Edge");g.je=nc(g.Ic,"WebKit")&&!Jc("Edge");MG=Jc("Macintosh");yT=Jc("Windows");g.Iy=Jc("Android");era=Ed();fra=Jc("iPad");gra=Jc("iPod");Hy=Fd();Jy=nc(g.Ic,"KaiOS"); +a:{var K1="",L1=function(){var a=g.Ic;if(uh)return/rv:([^\);]+)(\)|;)/.exec(a);if(g.wu)return/Edge\/([\d\.]+)/.exec(a);if(g.he)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);if(g.je)return/WebKit\/(\S+)/.exec(a);if(g.vh)return/(?:Version)[ \/]?(\S+)/.exec(a)}(); +L1&&(K1=L1?L1[1]:"");if(g.he){var M1=Id();if(null!=M1&&M1>parseFloat(K1)){J1=String(M1);break a}}J1=K1}var Jd=J1,Paa={},N1;if(g.v.document&&g.he){var hra=Id();N1=hra?hra:parseInt(Jd,10)||void 0}else N1=void 0;var Raa=N1;try{(new self.OffscreenCanvas(0,0)).getContext("2d")}catch(a){}var Saa=!g.he||g.Ld(9),Uaa=!uh&&!g.he||g.he&&g.Ld(9)||uh&&g.Kd("1.9.1");g.he&&g.Kd("9");var Vaa=g.he||g.vh||g.je;g.Qd.prototype.clone=function(){return new g.Qd(this.x,this.y)}; +g.Qd.prototype.ceil=function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);return this}; +g.Qd.prototype.floor=function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);return this}; +g.Qd.prototype.round=function(){this.x=Math.round(this.x);this.y=Math.round(this.y);return this};g.h=g.Sd.prototype;g.h.clone=function(){return new g.Sd(this.width,this.height)}; +g.h.aspectRatio=function(){return this.width/this.height}; +g.h.isEmpty=function(){return!Ud(this)}; +g.h.ceil=function(){this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this}; +g.h.floor=function(){this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this}; +g.h.round=function(){this.width=Math.round(this.width);this.height=Math.round(this.height);return this};var de={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"};g.h=Vd.prototype;g.h.ua=function(a){return $d(this.o,a)}; +g.h.getElementsByTagName=function(a,b){return(b||this.o).getElementsByTagName(String(a))}; +g.h.createElement=function(a){return le(this.o,a)}; +g.h.appendChild=g.qe;g.h.append=function(a,b){me(Wd(a),a,arguments,1)}; +g.h.canHaveChildren=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}; +g.h.removeNode=g.te;g.h.contains=g.xe;g.h=Ee.prototype;g.h.wO=function(a,b){for(var c=[],d=1;d=a.keyCode)a.keyCode=-1}catch(b){}};var Me="closure_listenable_"+(1E6*Math.random()|0),Yaa=0;Pe.prototype.add=function(a,b,c,d,e){var f=a.toString();a=this.listeners[f];a||(a=this.listeners[f]=[],this.o++);var k=Re(a,b,d,e);-1>>0);g.Sa(g.gf,g.A);g.gf.prototype[Me]=!0;g.h=g.gf.prototype;g.h.addEventListener=function(a,b,c,d){Te(this,a,b,c,d)}; +g.h.removeEventListener=function(a,b,c,d){af(this,a,b,c,d)}; +g.h.dispatchEvent=function(a){var b=this.aa;if(b){var c=[];for(var d=1;b;b=b.aa)c.push(b),++d}b=this.ga;d=a.type||a;if("string"===typeof a)a=new g.Je(a,b);else if(a instanceof g.Je)a.target=a.target||b;else{var e=a;a=new g.Je(d,b);g.Sb(a,e)}e=!0;if(c)for(var f=c.length-1;!a.o&&0<=f;f--){var k=a.currentTarget=c[f];e=hf(k,d,!0,a)&&e}a.o||(k=a.currentTarget=b,e=hf(k,d,!0,a)&&e,a.o||(e=hf(k,d,!1,a)&&e));if(c)for(f=0;!a.o&&f=this.C&&this.F())};var Sy,TB;g.hu=Kc();Sy=Ed()||Jc("iPod");TB=Jc("iPad");g.Ky=g.Nc();g.Dt=Lc();g.oz=Mc()&&!Fd();var $f={},fg=null;var zg=0,Ag=0;var ig=[];hg.prototype.clone=function(){return jg(this.u,this.A,this.w-this.A)}; +hg.prototype.clear=function(){this.u=null;this.o=this.w=this.A=0;this.B=!1}; +hg.prototype.reset=function(){this.o=this.A};mg.prototype.reset=function(){this.o.reset();this.u=this.w=-1};rg.prototype.length=function(){return this.o.length}; +rg.prototype.end=function(){var a=this.o;this.o=[];return a};ug.prototype.reset=function(){this.w=[];this.o.end();this.u=0};var Jg="function"==typeof Uint8Array,Kg=[];Ig.prototype.toString=function(){return this.Fd.toString()}; +Ig.prototype.clone=function(){return new this.constructor(Xg(this.Fd))};var Ij;Ij=["av.key","js","unreleased"].slice(-1)[0];var Rh=document,hi=window;g.h=Yg.prototype;g.h.isEnabled=function(){return navigator.cookieEnabled}; +g.h.set=function(a,b,c){var d=!1;if("object"===typeof c){var e=c.ST;d=c.sO||!1;var f=c.domain||void 0;var k=c.path||void 0;var l=c.Dy}if(/[;=\s]/.test(a))throw Error('Invalid cookie name "'+a+'"');if(/[;\r\n]/.test(b))throw Error('Invalid cookie value "'+b+'"');void 0===l&&(l=-1);c=f?";domain="+f:"";k=k?";path="+k:"";d=d?";secure":"";l=0>l?"":0==l?";expires="+(new Date(1970,1,1)).toUTCString():";expires="+(new Date((0,g.H)()+1E3*l)).toUTCString();this.o.cookie=a+"="+b+c+k+l+d+(null!=e?";samesite="+ +e:"")}; +g.h.get=function(a,b){for(var c=a+"=",d=(this.o.cookie||"").split(";"),e=0,f;eb&&(b+=12);a:{switch(b){case 1:var d=0!=c%4||0==c%100&&0!=c%400?28:29;break a;case 5:case 8:case 10:case 3:d=30;break a}d=31}d=Math.min(d,this.getDate());this.date.setDate(1);this.date.setFullYear(c);this.date.setMonth(b);this.date.setDate(d)}a.days&&(a=new Date((new Date(this.getFullYear(),this.getMonth(),this.getDate(),12)).getTime()+864E5*a.days),this.date.setDate(1),this.date.setFullYear(a.getFullYear()), +this.date.setMonth(a.getMonth()),this.date.setDate(a.getDate()),dh(this,a.getDate()))}; +g.h.toString=function(){return[this.getFullYear(),g.ed(this.getMonth()+1,2),g.ed(this.getDate(),2)].join("")+""}; +g.h.valueOf=function(){return this.date.valueOf()};var fh=g.Ia;var vba=/https?:\/\/[^\/]+/,tba={FP:"allow-forms",GP:"allow-modals",HP:"allow-orientation-lock",IP:"allow-pointer-lock",JP:"allow-popups",KP:"allow-popups-to-escape-sandbox",LP:"allow-presentation",MP:"allow-same-origin",NP:"allow-scripts",OP:"allow-top-navigation",PP:"allow-top-navigation-by-user-activation"},yba=yb(function(){return uba()});var Pba={oS:1,hT:2,OR:3};g.h=nh.prototype;g.h.Yc=function(){return this.right-this.left}; +g.h.getHeight=function(){return this.bottom-this.top}; +g.h.clone=function(){return new nh(this.top,this.right,this.bottom,this.left)}; +g.h.contains=function(a){return this&&a?a instanceof nh?a.left>=this.left&&a.right<=this.right&&a.top>=this.top&&a.bottom<=this.bottom:a.x>=this.left&&a.x<=this.right&&a.y>=this.top&&a.y<=this.bottom:!1}; +g.h.ceil=function(){this.top=Math.ceil(this.top);this.right=Math.ceil(this.right);this.bottom=Math.ceil(this.bottom);this.left=Math.ceil(this.left);return this}; +g.h.floor=function(){this.top=Math.floor(this.top);this.right=Math.floor(this.right);this.bottom=Math.floor(this.bottom);this.left=Math.floor(this.left);return this}; +g.h.round=function(){this.top=Math.round(this.top);this.right=Math.round(this.right);this.bottom=Math.round(this.bottom);this.left=Math.round(this.left);return this};g.h=g.ph.prototype;g.h.clone=function(){return new g.ph(this.left,this.top,this.width,this.height)}; +g.h.contains=function(a){return a instanceof g.Qd?a.x>=this.left&&a.x<=this.left+this.width&&a.y>=this.top&&a.y<=this.top+this.height:this.left<=a.left&&this.left+this.width>=a.left+a.width&&this.top<=a.top&&this.top+this.height>=a.top+a.height}; +g.h.ceil=function(){this.left=Math.ceil(this.left);this.top=Math.ceil(this.top);this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this}; +g.h.floor=function(){this.left=Math.floor(this.left);this.top=Math.floor(this.top);this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this}; +g.h.round=function(){this.left=Math.round(this.left);this.top=Math.round(this.top);this.width=Math.round(this.width);this.height=Math.round(this.height);return this};var th={};var Ph=!!window.google_async_iframe_id,Qh=Ph&&window.parent||window;Xb(g.Yb("//fonts.googleapis.com/css"));var kca={NONE:0,DQ:1};Vh.prototype.isVisible=function(){return this.Ci?.3<=this.vb:.5<=this.vb};var Ci={lv:0,NQ:1},Qba={lv:0,nR:1,oR:2},lca={lv:0,AQ:1,HQ:2,wS:3},Oba={NONE:0,xR:1,UQ:2};Wh.prototype.getValue=function(){return this.u}; +g.r(Xh,Wh);Xh.prototype.setValue=function(a){if(null!==this.u||!g.Jb(this.w,a))return!1;this.u=a;return!0}; +g.r(Yh,Wh);Yh.prototype.setValue=function(a){if(null!==this.u||"number"!==typeof a)return!1;this.u=a;return!0}; +g.r(Zh,Wh);Zh.prototype.setValue=function(a){if(null!==this.u||"string"!==typeof a)return!1;this.u=a;return!0};$h.prototype.disable=function(){this.u=!1}; +$h.prototype.enable=function(){this.u=!0}; +$h.prototype.isEnabled=function(){return this.u}; +$h.prototype.reset=function(){this.o={};this.u=!0;this.w={}};g.Zj=!g.he&&!Mc();ei.prototype.now=function(){return 0}; +ei.prototype.u=function(){return 0}; +ei.prototype.w=function(){return 0}; +ei.prototype.o=function(){return 0};g.r(gi,ei);gi.prototype.now=function(){return fi()&&hi.performance.now?hi.performance.now():ei.prototype.now.call(this)}; +gi.prototype.u=function(){return fi()&&hi.performance.memory?hi.performance.memory.totalJSHeapSize||0:ei.prototype.u.call(this)}; +gi.prototype.w=function(){return fi()&&hi.performance.memory?hi.performance.memory.usedJSHeapSize||0:ei.prototype.w.call(this)}; +gi.prototype.o=function(){return fi()&&hi.performance.memory?hi.performance.memory.jsHeapSizeLimit||0:ei.prototype.o.call(this)};ji.prototype.isVisible=function(){return 1===ii(Rh)};var Fba=/^https?:\/\/(\w|-)+\.cdn\.ampproject\.(net|org)(\?|\/|$)/;ni.prototype.jc=function(a,b,c,d){a=a+"//"+b+c;var e=Hba(this)-c.length-d.length;if(0>e)return"";this.o.sort(function(p,t){return p-t}); +c=null;b="";for(var f=0;f=n.length){e-=n.length;a+=n;b=this.w;break}this.A&&(b=e,n[b-1]==this.w&&--b,a+=n.substr(0,b),b=this.w,e=0);c=null==c?k:c}}f="";null!=c&&(f=b+"trn="+c);return a+f+d};vi.prototype.setInterval=function(a,b){return hi.setInterval(a,b)}; +vi.prototype.clearInterval=function(a){hi.clearInterval(a)}; +vi.prototype.setTimeout=function(a,b){return hi.setTimeout(a,b)}; +vi.prototype.clearTimeout=function(a){hi.clearTimeout(a)}; +Ja(vi);zi.prototype.getContext=function(){if(!this.o){if(!hi)throw Error("Context has not been set and window is undefined.");this.o=vi.getInstance()}return this.o}; +Ja(zi);g.Sa(Ai,Ig);Di.prototype.iu=function(a){if("string"===typeof a&&0!=a.length){var b=this.Ya;if(b.u){a=a.split("&");for(var c=a.length-1;0<=c;c--){var d=a[c].split("="),e=d[0];d=1=this.F?a:this;b!==this.o?(this.B=this.o.B,vj(this)):this.B!==this.o.B&&(this.B=this.o.B,vj(this))}; +g.h.oh=function(a){if(a.u===this.o){var b;if(!(b=this.Z)){b=this.w;var c=this.G;if(c=a&&(void 0===c||!c||b.volume==a.volume)&&b.w==a.w)b=b.o,c=a.o,c=b==c?!0:b&&c?b.top==c.top&&b.right==c.right&&b.bottom==c.bottom&&b.left==c.left:!1;b=!c}this.w=a;b&&Aj(this)}}; +g.h.Mf=function(){return this.G}; +g.h.dispose=function(){this.ub=!0}; +g.h.ea=function(){return this.ub};g.h=Bj.prototype;g.h.Zs=function(){return!0}; +g.h.Zl=function(){}; +g.h.tn=function(){if(this.element){var a=this.element,b=this.u.o.Bd;try{try{var c=hj(a.getBoundingClientRect())}catch(n){c=new nh(0,0,0,0)}var d=c.right-c.left,e=c.bottom-c.top,f=Gh(a,b),k=f.x,l=f.y;var m=new nh(Math.round(l),Math.round(k+d),Math.round(l+e),Math.round(k))}catch(n){m=mra.clone()}this.o=m}}; +g.h.nw=function(){this.B=this.u.w.o}; +g.h.dg=function(){this.tn();this.A=new sj(this.u.w,this.element,this.o,this.A.B,this.A.o,this.A.A,Zi(),this.A.w)}; +g.h.dispose=function(){if(!this.ea()){var a=this.u;g.db(a.A,this);a.G&&this.Mf()&&zj(a);this.Zl();this.ub=!0}}; +g.h.ea=function(){return this.ub}; +g.h.fh=function(){return this.u.fh()}; +g.h.qg=function(){return this.u.qg()}; +g.h.zj=function(){return this.u.zj()}; +g.h.El=function(){return this.u.El()}; +g.h.Hj=function(){}; +g.h.oh=function(){this.dg()}; +g.h.Mf=function(){return this.P};g.h=Cj.prototype;g.h.qg=function(){return this.o.qg()}; +g.h.zj=function(){return this.o.zj()}; +g.h.El=function(){return this.o.El()}; +g.h.create=function(a,b,c){var d=null;this.o&&(d=this.Oo(a,b,c),xj(this.o,d));return d}; +g.h.Hy=function(){return this.Tl()}; +g.h.Tl=function(){return!1}; +g.h.init=function(a){return this.o.initialize()?(xj(this.o,this),this.A=a,!0):!1}; +g.h.Hj=function(a){0==a.qg()&&this.A(a.zj(),this)}; +g.h.oh=function(){}; +g.h.Mf=function(){return!1}; +g.h.dispose=function(){this.ub=!0}; +g.h.ea=function(){return this.ub}; +g.h.fh=function(){return{}};Fj.prototype.add=function(a,b,c){++this.w;var d=this.w/4096;this.o.push(cca(new Dj(a,b,c),d));this.u=!0;return this};Jj.prototype.toString=function(){var a="//pagead2.googlesyndication.com//pagead/gen_204",b=Hj(this.o);0=k;k=!(0=k)||c;this.o[e].update(f&&l,d,!f||k)}};Xj.prototype.update=function(a,b,c,d){this.F=-1!=this.F?Math.min(this.F,b.vb):b.vb;this.M=Math.max(this.M,b.vb);this.R=-1!=this.R?Math.min(this.R,b.Wd):b.Wd;this.V=Math.max(this.V,b.Wd);this.ma.update(b.Wd,c.Wd,b.o,a,d);this.u.update(b.vb,c.vb,b.o,a,d);c=d||c.Ci!=b.Ci?c.isVisible()&&b.isVisible():c.isVisible();b=!b.isVisible()||b.o;this.aa.update(c,a,b)}; +Xj.prototype.Ei=function(){return this.aa.w>=this.ga};var jca=new nh(0,0,0,0);g.r(ak,g.A);g.h=ak.prototype;g.h.X=function(){this.Nd.o&&(this.li.Tt&&(bh(this.Nd.o,"mouseover",this.li.Tt),this.li.Tt=null),this.li.St&&(bh(this.Nd.o,"mouseout",this.li.St),this.li.St=null));this.Km&&this.Km.dispose();this.Ib&&this.Ib.dispose();delete this.Ko;delete this.Rs;delete this.EC;delete this.Nd.Ah;delete this.Nd.o;delete this.li;delete this.Km;delete this.Ib;delete this.Ya;g.A.prototype.X.call(this)}; +g.h.ih=function(){return this.Ib?this.Ib.o:this.position}; +g.h.iu=function(a){Di.getInstance().iu(a)}; +g.h.Mf=function(){return!1}; +g.h.Zn=function(){return new Xj}; +g.h.Pd=function(){return this.Ko}; +g.h.zx=function(a){return dk(this,a,1E4)}; +g.h.sa=function(a,b,c,d,e,f,k){this.Rj||(this.In&&(a=this.Vq(a,c,e,k),d=d&&this.ie.vb>=(this.Ci()?.3:.5),this.Zu(f,a,d),this.Nl=b,0b?0:c}; +g.h.Vr=function(a){return this.Gx(a,1E4)}; +g.h.mr=function(a){return 0===this.opacity&&1===ci(this.Ya,"opac")?0:a}; +g.h.Ci=function(){return!1}; +g.h.Np=function(){return!1}; +g.h.xf=function(){return 0}; +g.h.Ei=function(){return this.Ko.Ei()};var fk="StopIteration"in g.v?g.v.StopIteration:{message:"StopIteration",stack:""};ek.prototype.next=function(){throw fk;}; +ek.prototype.Zf=function(){return this};g.r(ik,Vh);mk.prototype.getValue=function(){return this.u}; +mk.prototype.update=function(a,b){32<=a||(this.o&1<=a.bottom||a.left>=a.right?new nh(0,0,0,0):a;a=this.u.w;var c=0,d=0,e=0;0<(this.o.bottom-this.o.top)*(this.o.right-this.o.left)&&(this.jy(b)?b=new nh(0,0,0,0):(c=lj.getInstance().A,e=new nh(0,c.height,c.width,0),c=qj(b, +this.o),d=qj(b,lj.getInstance().o),e=qj(b,e)));b=b.top>=b.bottom||b.left>=b.right?new nh(0,0,0,0):oh(b,-this.o.left,-this.o.top);oj()||(d=c=0);this.A=new sj(a,this.element,this.o,b,c,d,this.timestamp,e)}; +sk.prototype.getName=function(){return this.u.getName()};var nra=new nh(0,0,0,0);g.r(tk,sk);g.h=tk.prototype;g.h.Zs=function(){this.w();return!0}; +g.h.oh=function(){sk.prototype.dg.call(this)}; +g.h.ow=function(){}; +g.h.tn=function(){}; +g.h.dg=function(){this.w();sk.prototype.dg.call(this)}; +g.h.Hj=function(a){a=a.isActive();a!==this.F&&(a?this.w():(lj.getInstance().o=new nh(0,0,0,0),this.o=new nh(0,0,0,0),this.B=new nh(0,0,0,0),this.timestamp=-1));this.F=a};var Q1={},Aca=(Q1.firstquartile=0,Q1.midpoint=1,Q1.thirdquartile=2,Q1.complete=3,Q1);g.r(uk,ak);g.h=uk.prototype;g.h.Mf=function(){return!0}; +g.h.zx=function(a){return dk(this,a,Math.max(1E4,this.w/3))}; +g.h.Vr=function(a){return 2==this.Cc?0:ak.prototype.Gx.call(this,a,Math.max(1E4,this.w/3))}; +g.h.sa=function(a,b,c,d,e,f,k){var l=this,m=this.P(this)||{};g.Sb(m,e);this.w=m.duration||this.w;this.G=m.isVpaid||this.G;this.Z=m.isYouTube||this.Z;e=wca(this,b);1===yk(this)&&(f=e);ak.prototype.sa.call(this,a,b,c,d,m,f,k);this.Gi&&this.Gi.o&&(0,g.y)(this.C,function(n){n.o||(n.o=rk(n,l))})}; +g.h.Zu=function(a,b,c){ak.prototype.Zu.call(this,a,b,c);xk(this).update(a,b,this.ie,c);this.ga=jk(this.ie)&&jk(b);-1==this.V&&this.da&&(this.V=this.Pd().w.o);this.yc.w=0;a=this.Ei();b.isVisible()&&kk(this.yc,"vs");a&&kk(this.yc,"vw");jj(b.volume)&&kk(this.yc,"am");jk(b)&&kk(this.yc,"a");this.Kj&&kk(this.yc,"f");-1!=b.u&&(kk(this.yc,"bm"),1==b.u&&kk(this.yc,"b"));jk(b)&&b.isVisible()&&kk(this.yc,"avs");this.ga&&a&&kk(this.yc,"avw");0this.o.F&&(this.o=this,vj(this)),this.F=a);return 2==a}; +Ja(sl);Ja(tl);ul.prototype.Gy=function(){xl(this,Sk(),!1)}; +ul.prototype.A=function(){var a=oj(),b=Zi();a?(aj||(bj=b,(0,g.y)(Rk.o,function(c){var d=c.Pd();d.Z=ok(d,b,1!=c.Cc)})),aj=!0):(this.F=zl(this,b),aj=!1,Gk=b,(0,g.y)(Rk.o,function(c){c.In&&(c.Pd().G=b)})); +xl(this,Sk(),!a)}; +Ja(ul);var vl=ul.getInstance();var Al=null,hm="",gm=!1;var R1=Gl([void 0,1,2,3,4,8,16]),S1=Gl([void 0,4,8,16]),pra={sv:"sv",cb:"cb",e:"e",nas:"nas",msg:"msg","if":"if",sdk:"sdk",p:"p",p0:Fl("p0",S1),p1:Fl("p1",S1),p2:Fl("p2",S1),p3:Fl("p3",S1),tos:"tos",mtos:"mtos",mtos1:El("mtos1",[0,2,4],!1,S1),mtos2:El("mtos2",[0,2,4],!1,S1),mtos3:El("mtos3",[0,2,4],!1,S1),mcvt:"mcvt",ps:"ps",scs:"scs",bs:"bs",vht:"vht",mut:"mut",a:"a",a0:Fl("a0",S1),a1:Fl("a1",S1),a2:Fl("a2",S1),a3:Fl("a3",S1),ft:"ft",dft:"dft",at:"at",dat:"dat",as:"as",vpt:"vpt",gmm:"gmm",std:"std", +efpf:"efpf",swf:"swf",nio:"nio",px:"px",nnut:"nnut",vmer:"vmer",vmmk:"vmmk",vmiec:"vmiec",nmt:"nmt",tcm:"tcm",bt:"bt",pst:"pst",vpaid:"vpaid",dur:"dur",vmtime:"vmtime",dtos:"dtos",dtoss:"dtoss",dvs:"dvs",dfvs:"dfvs",dvpt:"dvpt",fmf:"fmf",vds:"vds",is:"is",i0:"i0",i1:"i1",i2:"i2",i3:"i3",ic:"ic",cs:"cs",c:"c",c0:Fl("c0",S1),c1:Fl("c1",S1),c2:Fl("c2",S1),c3:Fl("c3",S1),mc:"mc",nc:"nc",mv:"mv",nv:"nv",qmt:Fl("qmtos",R1),qnc:Fl("qnc",R1),qmv:Fl("qmv",R1),qnv:Fl("qnv",R1),raf:"raf",rafc:"rafc",lte:"lte", +ces:"ces",tth:"tth",femt:"femt",femvt:"femvt",emc:"emc",emuc:"emuc",emb:"emb",avms:"avms",nvat:"nvat",qi:"qi",psm:"psm",psv:"psv",psfv:"psfv",psa:"psa",pnk:"pnk",pnc:"pnc",pnmm:"pnmm",pns:"pns",ptlt:"ptlt",pngs:"pings",veid:"veid",ssb:"ssb",ss0:Fl("ss0",S1),ss1:Fl("ss1",S1),ss2:Fl("ss2",S1),ss3:Fl("ss3",S1),dc_rfl:"urlsigs",obd:"obd",omidp:"omidp",omidr:"omidr",omidv:"omidv",omida:"omida",omids:"omids",omidpv:"omidpv",omidam:"omidam",omidct:"omidct",omidia:"omidia"},qra={c:Bl("c"),at:"at",atos:El("atos", +[0,2,4]),ta:function(a,b){return function(c){if(void 0===c[a])return b}}("tth","1"), +a:"a",dur:"dur",p:"p",tos:Dl(),j:"dom",mtos:El("mtos",[0,2,4]),gmm:"gmm",gdr:"gdr",ss:Bl("ss"),vsv:wb("w2"),t:"t"},rra={atos:"atos",amtos:"amtos",avt:El("atos",[2]),davs:"davs",dafvs:"dafvs",dav:"dav",ss:Bl("ss"),t:"t"},sra={a:"a",tos:Dl(),at:"at",c:Bl("c"),mtos:El("mtos",[0,2,4]),dur:"dur",fs:"fs",p:"p",vpt:"vpt",vsv:wb("ias_w2"),dom:"dom",gmm:"gmm",gdr:"gdr",t:"t"},tra={tos:Dl(),at:"at",c:Bl("c"),mtos:El("mtos",[0,2,4]),p:"p",vpt:"vpt",vsv:wb("dv_w4"),gmm:"gmm",gdr:"gdr",dom:"dom",t:"t",mv:"mv", +qmpt:El("qmtos",[0,2,4]),qvs:function(a,b){return function(c){var d=c[a];if("number"===typeof d)return(0,g.Cc)(b,function(e){return 0=e?1:0})}}("qnc",[1, +.5,0]),qmv:"qmv",qa:"qas",a:"a"};var Yca={PQ:"visible",UP:"audible",US:"time",VS:"timetype"},Ll={visible:function(a){return/^(100|[0-9]{1,2})$/.test(a)}, +audible:function(a){return"0"==a||"1"==a}, +timetype:function(a){return"mtos"==a||"tos"==a}, +time:function(a){return/^(100|[0-9]{1,2})%$/.test(a)||/^([0-9])+ms$/.test(a)}};g.r(Ml,pk);Ml.prototype.getId=function(){return this.F}; +Ml.prototype.B=function(){return!0}; +Ml.prototype.w=function(a){var b=a.Pd(),c=a.getDuration();return kj(this.C,function(d){if(void 0!=d.o)var e=$ca(d,b);else b:{switch(d.B){case "mtos":e=d.u?b.B.w:b.w.o;break b;case "tos":e=d.u?b.B.o:b.w.o;break b}e=0}0==e?d=!1:(d=-1!=d.w?d.w:void 0!==c&&0=d);return d})};g.r(Nl,pk);Nl.prototype.w=function(a){var b=Sj(a.Pd().o,1);return zk(a,b)};g.r(Ol,pk);Ol.prototype.w=function(a){return a.Pd().Ei()};g.r(Rl,ada);Rl.prototype.o=function(a){var b=new Pl;b.o=Ql(a,pra);b.w=Ql(a,rra);return b};g.r(Sl,tk);Sl.prototype.w=function(){var a=g.w("ima.admob.getViewability"),b=ci(this.Ya,"queryid");g.Ma(a)&&b&&a(b)}; +Sl.prototype.getName=function(){return"gsv"};g.r(Tl,Cj);Tl.prototype.getName=function(){return"gsv"}; +Tl.prototype.Tl=function(){var a=lj.getInstance();Di.getInstance();return a.u&&!1}; +Tl.prototype.Oo=function(a,b,c){return new Sl(this.o,b,c)};g.r(Ul,tk);Ul.prototype.w=function(){var a=this,b=g.w("ima.bridge.getNativeViewability"),c=ci(this.Ya,"queryid");g.Ma(b)&&c&&b(c,function(d){g.Mb(d)&&a.C++;var e=d.opt_nativeViewVisibleBounds||{},f=d.opt_nativeViewHidden;a.o=ij(d.opt_nativeViewBounds||{});var k=a.u.w;k.o=f?nra.clone():ij(e);a.timestamp=d.opt_nativeTime||-1;lj.getInstance().o=k.o;d=d.opt_nativeVolume;void 0!==d&&(k.volume=d)})}; +Ul.prototype.getName=function(){return"nis"};g.r(Vl,Cj);Vl.prototype.getName=function(){return"nis"}; +Vl.prototype.Tl=function(){var a=lj.getInstance();Di.getInstance();return a.u&&!1}; +Vl.prototype.Oo=function(a,b,c){return new Ul(this.o,b,c)};g.r(Wl,uj);g.h=Wl.prototype;g.h.Wo=function(){return null!=this.u.af}; +g.h.sx=function(){var a={};this.V&&(a.mraid=this.V);this.R&&(a.mlc=1);a.mtop=this.u.GO;this.C&&(a.mse=this.C);this.ba&&(a.msc=1);a.mcp=this.u.compatibility;return a}; +g.h.Qh=function(a,b){for(var c=[],d=1;dthis.w?this.u:2*this.u)-this.w);a[0]=128;for(var b=1;bb;++b)for(var d=0;32>d;d+=8)a[c++]=this.o[b]>>>d&255;return a};g.r(ym,Rl);ym.prototype.o=function(a){var b=Rl.prototype.o.call(this,a);var c=rm=(0,g.H)();var d=sm(5);c=(um?!d:d)?c|2:c&-3;d=sm(2);c=(vm?!d:d)?c|8:c&-9;c={s1:(c>>>0).toString(16)};this.u||(this.u=qda());b.B=this.u;b.C=Ql(a,qra,c,"h",zm("kArwaWEsTs"));b.A=Ql(a,sra,{},"h",zm("b96YPMzfnx"));b.u=Ql(a,tra,{},"h",zm("yb8Wev6QDg"));return b};Am.prototype.o=function(){return g.w(this.u)};g.r(Bm,Am);Bm.prototype.o=function(a){if(!a.pk)return Am.prototype.o.call(this,a);var b=this.A[a.pk];if(b)return function(c,d,e){b.u(c,d,e)}; +Yi(393,Error());return null};g.r(Cm,dm);g.h=Cm.prototype;g.h.co=function(a,b){var c=this,d=Vk.getInstance();if(null!=d.o)switch(d.o.getName()){case "nis":var e=vda(this,a,b);break;case "gsv":e=uda(this,a,b);break;case "exc":e=wda(this,a)}e||(b.opt_overlayAdElement?e=void 0:b.opt_adElement&&(e=jda(this,a,b.opt_adElement,b.opt_osdId)));e&&1==e.xf()&&(e.P==g.Ia&&(e.P=function(f){return c.Yy(f)}),tda(this,e,b)); +return e}; +g.h.Yy=function(a){a.u=0;a.U=0;if("h"==a.A||"n"==a.A){var b;Di.getInstance();if(a.pk&&Fm(this)){var c=this.G[a.pk];c?b=function(e){return c.o(e)}:null!==c&&Yi(379,Error())}else b=g.w("ima.common.getVideoMetadata"); +if(g.Ma(b))try{var d=b(a.jd)}catch(e){a.u|=4}else a.u|=2}else if("b"==a.A)if(b=g.w("ytads.bulleit.getVideoMetadata"),g.Ma(b))try{d=b(a.jd)}catch(e){a.u|=4}else a.u|=2;else if("ml"==a.A)if(b=g.w("ima.common.getVideoMetadata"),g.Ma(b))try{d=b(a.jd)}catch(e){a.u|=4}else a.u|=2;else a.u|=1;a.u||(void 0===d?a.u|=8:null===d?a.u|=16:g.Mb(d)?a.u|=32:null!=d.errorCode&&(a.U=d.errorCode,a.u|=64));null==d&&(d={});kda(d,a);jj(d.volume)&&jj(void 0)&&(d.volume*=NaN);return d}; +g.h.Iw=function(){if(Fm(this))return new Bm("ima.common.triggerExternalActivityEvent",this.w,this.G);var a=xda(this);return null!=a?new Am(a,this.w):null}; +g.h.uu=function(a){!a.o&&a.Rj&&km(this,a,"overlay_unmeasurable_impression")&&(a.o=!0)}; +g.h.SB=function(a){a.gC&&(a.Ei()?km(this,a,"overlay_viewable_end_of_session_impression"):km(this,a,"overlay_unviewable_impression"),a.gC=!1)}; +g.h.Px=function(){}; +g.h.Bu=function(){}; +g.h.zm=function(a,b,c,d){a=dm.prototype.zm.call(this,a,b,c,d);this.B&&(b=this.C,null==a.B&&(a.B=new qca),b.o[a.jd]=a.B,a.B.B=ora);return a}; +g.h.il=function(a){a&&1==a.xf()&&this.B&&delete this.C.o[a.jd];return dm.prototype.il.call(this,a)}; +Ja(Cm);var Dm=new Pl;Dm.B="stopped";Dm.o="stopped";Dm.w="stopped";Dm.C="stopped";Dm.A="stopped";Dm.u="stopped";Object.freeze(Dm);var ura=Ti(193,Hm,nm);g.Ga("Goog_AdSense_Lidar_sendVastEvent",ura,void 0);var vra=Wi(194,function(a,b){b=void 0===b?{}:b;var c=Em(Cm.getInstance(),a,b);return Gm(c)}); +g.Ga("Goog_AdSense_Lidar_getViewability",vra,void 0);var wra=Ti(195,function(){return yi()},void 0); +g.Ga("Goog_AdSense_Lidar_getUrlSignalsArray",wra,void 0);var xra=Wi(196,function(){return g.Jk(yi())}); +g.Ga("Goog_AdSense_Lidar_getUrlSignalsList",xra,void 0);var Hea=(new Date).getTime();g.h=g.Mm.prototype;g.h.Ed=function(){Om(this);for(var a=[],b=0;b2*this.w&&Om(this),!0):!1}; +g.h.get=function(a,b){return Nm(this.u,a)?this.u[a]:b}; +g.h.set=function(a,b){Nm(this.u,a)||(this.w++,this.o.push(a),this.Vh++);this.u[a]=b}; +g.h.forEach=function(a,b){for(var c=this.te(),d=0;d=d.o.length)throw fk;var f=d.o[b++];return a?f:d.u[f]}; +return e};g.Pm.prototype.toString=function(){var a=[],b=this.B;b&&a.push(Wm(b,yra,!0),":");var c=this.o;if(c||"file"==b)a.push("//"),(b=this.G)&&a.push(Wm(b,yra,!0),"@"),a.push(bd(c).replace(/%25([0-9a-fA-F]{2})/g,"%$1")),c=this.A,null!=c&&a.push(":",String(c));if(c=this.u)this.o&&"/"!=c.charAt(0)&&a.push("/"),a.push(Wm(c,"/"==c.charAt(0)?zra:Ara,!0));(c=this.w.toString())&&a.push("?",c);(c=this.C)&&a.push("#",Wm(c,Bra));return a.join("")}; +g.Pm.prototype.resolve=function(a){var b=this.clone(),c=!!a.B;c?g.Qm(b,a.B):c=!!a.G;c?b.G=a.G:c=!!a.o;c?g.Rm(b,a.o):c=null!=a.A;var d=a.u;if(c)g.Sm(b,a.A);else if(c=!!a.u){if("/"!=d.charAt(0))if(this.o&&!this.u)d="/"+d;else{var e=b.u.lastIndexOf("/");-1!=e&&(d=b.u.substr(0,e+1)+d)}e=d;if(".."==e||"."==e)d="";else if(-1!=e.indexOf("./")||-1!=e.indexOf("/.")){d=cc(e,"/");e=e.split("/");for(var f=[],k=0;ka&&0===a%1&&this.u[a]!=b&&(this.u[a]=b,this.o=-1)}; +qn.prototype.get=function(a){return!!this.u[a]};g.Sa(g.rn,g.A);g.h=g.rn.prototype;g.h.start=function(){this.stop();this.A=!1;var a=sn(this),b=tn(this);a&&!b&&this.u.mozRequestAnimationFrame?(this.o=Te(this.u,"MozBeforePaint",this.w),this.u.mozRequestAnimationFrame(null),this.A=!0):this.o=a&&b?a.call(this.u,this.w):this.u.setTimeout(saa(this.w),20)}; +g.h.Ua=function(){this.isActive()||this.start()}; +g.h.stop=function(){if(this.isActive()){var a=sn(this),b=tn(this);a&&!b&&this.u.mozRequestAnimationFrame?bf(this.o):a&&b?b.call(this.u,this.o):this.u.clearTimeout(this.o)}this.o=null}; +g.h.Pe=function(){this.isActive()&&(this.stop(),this.Hx())}; +g.h.isActive=function(){return null!=this.o}; +g.h.Hx=function(){this.A&&this.o&&bf(this.o);this.o=null;this.C.call(this.B,(0,g.H)())}; +g.h.X=function(){this.stop();g.rn.Gb.X.call(this)};g.Sa(g.I,g.A);g.h=g.I.prototype;g.h.Al=0;g.h.X=function(){g.I.Gb.X.call(this);this.stop();delete this.o;delete this.u}; +g.h.start=function(a){this.stop();this.Al=g.Uf(this.w,void 0!==a?a:this.Ad)}; +g.h.Ua=function(a){this.isActive()||this.start(a)}; +g.h.stop=function(){this.isActive()&&g.v.clearTimeout(this.Al);this.Al=0}; +g.h.Pe=function(){this.isActive()&&g.un(this)}; +g.h.isActive=function(){return 0!=this.Al}; +g.h.Ix=function(){this.Al=0;this.o&&this.o.call(this.u)};(function(){for(var a=["ms","moz","webkit","o"],b,c=0;b=a[c]&&!g.v.requestAnimationFrame;++c)g.v.requestAnimationFrame=g.v[b+"RequestAnimationFrame"],g.v.cancelAnimationFrame=g.v[b+"CancelAnimationFrame"]||g.v[b+"CancelRequestAnimationFrame"];if(!g.v.requestAnimationFrame){var d=0;g.v.requestAnimationFrame=function(e){var f=(new Date).getTime(),k=Math.max(0,16-(f-d));d=f+k;return g.v.setTimeout(function(){e(f+k)},k)}; +g.v.cancelAnimationFrame||(g.v.cancelAnimationFrame=function(e){clearTimeout(e)})}})(); +var vn=[[],[]],wn=0,xn=!1,Uda=0;g.Sa(g.Fn,g.gf);g.h=g.Fn.prototype;g.h.eb=function(){return 1==this.o}; +g.h.mp=function(){this.re("begin")}; +g.h.pm=function(){this.re("end")}; +g.h.Fc=function(){this.re("finish")}; +g.h.re=function(a){this.dispatchEvent(a)};var Cra=yb(function(){if(g.he)return g.Kd("10.0");var a=g.oe("DIV"),b=g.je?"-webkit":uh?"-moz":g.he?"-ms":g.vh?"-o":null,c={transition:"opacity 1s linear"};b&&(c[b+"-transition"]="opacity 1s linear");b={style:c};if(!bra.test("div"))throw Error("");if("DIV"in dra)throw Error("");c=null;var d="";if(b)for(k in b){if(!bra.test(k))throw Error("");var e=b[k];if(null!=e){var f=k;if(e instanceof Wb)e=Xb(e);else if("style"==f.toLowerCase()){if(!g.Na(e))throw Error("");e instanceof zc||(e=Fc(e));e=Ac(e)}else{if(/^on/i.test(f))throw Error(""); +if(f.toLowerCase()in cra)if(e instanceof ac)e=bc(e).toString();else if(e instanceof g.tc)e=g.uc(e);else if("string"===typeof e)e=g.wc(e).xe();else throw Error("");}e.ug&&(e=e.xe());f=f+'="'+mc(String(e))+'"';d+=" "+f}}var k="":(c=Iaa(d),k+=">"+g.Qc(c).toString()+"",c=c.o());(b=b&&b.dir)&&(/^(ltr|rtl|auto)$/i.test(b)?c=0:c=null);b=Vc(k,c);g.Xc(a,b);return""!=g.wh(a.firstChild,"transition")});g.Sa(Gn,g.Fn);g.h=Gn.prototype;g.h.play=function(){if(this.eb())return!1;this.mp();this.re("play");this.startTime=(0,g.H)();this.o=1;if(Cra())return g.sh(this.w,this.G),this.B=g.Uf(this.RN,void 0,this),!0;this.Wr(!1);return!1}; +g.h.RN=function(){g.Nh(this.w);Xda(this.w,this.F);g.sh(this.w,this.A);this.B=g.Uf((0,g.x)(this.Wr,this,!1),1E3*this.C)}; +g.h.stop=function(){this.eb()&&this.Wr(!0)}; +g.h.Wr=function(a){g.sh(this.w,"transition","");g.v.clearTimeout(this.B);g.sh(this.w,this.A);this.endTime=(0,g.H)();this.o=0;a?this.re("stop"):this.Fc();this.pm()}; +g.h.X=function(){this.stop();Gn.Gb.X.call(this)}; +g.h.pause=function(){};var Yda={rgb:!0,rgba:!0,alpha:!0,rect:!0,image:!0,"linear-gradient":!0,"radial-gradient":!0,"repeating-linear-gradient":!0,"repeating-radial-gradient":!0,"cubic-bezier":!0,matrix:!0,perspective:!0,rotate:!0,rotate3d:!0,rotatex:!0,rotatey:!0,steps:!0,rotatez:!0,scale:!0,scale3d:!0,scalex:!0,scaley:!0,scalez:!0,skew:!0,skewx:!0,skewy:!0,translate:!0,translate3d:!0,translatex:!0,translatey:!0,translatez:!0};var bea=In("getPropertyValue"),cea=In("setProperty");var aea={"-webkit-border-horizontal-spacing":!0,"-webkit-border-vertical-spacing":!0};g.Mn.prototype.clone=function(){return new g.Mn(this.o,this.B,this.w,this.C,this.A,this.F,this.u,this.G)};g.On.prototype.u=0;g.On.prototype.reset=function(){this.o=this.w=this.A;this.u=0}; +g.On.prototype.getValue=function(){return this.w};Qn.prototype.clone=function(){return new Qn(this.start,this.end)}; +Qn.prototype.getLength=function(){return this.end-this.start};(function(){if(yT){var a=/Windows NT ([0-9.]+)/;return(a=a.exec(g.Ic))?a[1]:"0"}return MG?(a=/10[_.][0-9_.]+/,(a=a.exec(g.Ic))?a[0].replace(/_/g,"."):"10"):g.Iy?(a=/Android\s+([^\);]+)(\)|;)/,(a=a.exec(g.Ic))?a[1]:""):era||fra||gra?(a=/(?:iPhone|CPU)\s+OS\s+(\S+)/,(a=a.exec(g.Ic))?a[1].replace(/_/g,"."):""):""})();var iea=function(){if(g.hu)return Rn(/Firefox\/([0-9.]+)/);if(g.he||g.wu||g.vh)return Jd;if(g.Dt)return Fd()?Rn(/CriOS\/([0-9.]+)/):Rn(/Chrome\/([0-9.]+)/);if(g.oz&&!Fd())return Rn(/Version\/([0-9.]+)/);if(Sy||TB){var a=/Version\/(\S+).*Mobile\/(\S+)/.exec(g.Ic);if(a)return a[1]+"."+a[2]}else if(g.Ky)return(a=Rn(/Android\s+([0-9.]+)/))?a:Rn(/Version\/([0-9.]+)/);return""}();g.Sa(g.Tn,g.A);g.h=g.Tn.prototype;g.h.subscribe=function(a,b,c){var d=this.u[a];d||(d=this.u[a]=[]);var e=this.B;this.o[e]=a;this.o[e+1]=b;this.o[e+2]=c;this.B=e+3;d.push(e);return e}; +g.h.unsubscribe=function(a,b,c){if(a=this.u[a]){var d=this.o;if(a=g.Xa(a,function(e){return d[e+1]==b&&d[e+2]==c}))return this.Ai(a)}return!1}; +g.h.Ai=function(a){var b=this.o[a];if(b){var c=this.u[b];0!=this.A?(this.w.push(a),this.o[a+1]=g.Ia):(c&&g.db(c,a),delete this.o[a],delete this.o[a+1],delete this.o[a+2])}return!!b}; +g.h.S=function(a,b){var c=this.u[a];if(c){for(var d=Array(arguments.length-1),e=1,f=arguments.length;e=c.length)throw fk;var e=c.key(b++);if(a)return e;e=c.getItem(e);if("string"!==typeof e)throw"Storage mechanism: Invalid value was encountered";return e}; +return d}; +g.h.clear=function(){this.o.clear()}; +g.h.key=function(a){return this.o.key(a)};g.Sa(co,bo);g.Sa(eo,bo);g.Sa(go,ao);var lea={".":".2E","!":".21","~":".7E","*":".2A","'":".27","(":".28",")":".29","%":"."},fo=null;g.h=go.prototype;g.h.isAvailable=function(){return!!this.o}; +g.h.set=function(a,b){this.o.setAttribute(ho(a),b);io(this)}; +g.h.get=function(a){a=this.o.getAttribute(ho(a));if("string"!==typeof a&&null!==a)throw"Storage mechanism: Invalid value was encountered";return a}; +g.h.remove=function(a){this.o.removeAttribute(ho(a));io(this)}; +g.h.Zf=function(a){var b=0,c=this.o.XMLDocument.documentElement.attributes,d=new ek;d.next=function(){if(b>=c.length)throw fk;var e=c[b++];if(a)return decodeURIComponent(e.nodeName.replace(/\./g,"%")).substr(1);e=e.nodeValue;if("string"!==typeof e)throw"Storage mechanism: Invalid value was encountered";return e}; +return d}; +g.h.clear=function(){for(var a=this.o.XMLDocument.documentElement,b=a.attributes.length;0=b)){if(1==b)bb(a);else{a[0]=a.pop();a=0;b=this.o;for(var d=b.length,e=b[a];a>1;){var f=2*a+1,k=2*a+2;f=ke.o)break;b[a]=b[f];a=f}b[a]=e}return c.getValue()}}; +g.h.Ed=function(){for(var a=this.o,b=[],c=a.length,d=0;dc;c++)b+=this.u[c]||0;3<=b&&this.I();this.A=d}this.B=a;this.C=this.o;this.w=(this.w+1)%4}}; +Qp.prototype.X=function(){window.clearInterval(this.P);g.Fp(this.G)};g.r(Up,Fea);Up.prototype.start=function(){var a=g.w("yt.scheduler.instance.start");a&&a()}; +Up.prototype.pause=function(){var a=g.w("yt.scheduler.instance.pause");a&&a()}; +Ja(Up);Up.getInstance();var aq={};var cq=g.w("ytLoggingGelSequenceIdObj_")||{};g.Ga("ytLoggingGelSequenceIdObj_",cq,void 0);var tq=new function(){var a=window.document;this.o=window;this.u=a}; +g.Ga("yt.ads_.signals_.getAdSignalsString",function(a){return jq(vq(a))},void 0);(0,g.H)();var wq=void 0!==XMLHttpRequest?function(){return new XMLHttpRequest}:void 0!==ActiveXObject?function(){return new ActiveXObject("Microsoft.XMLHTTP")}:null;var zq={Authorization:"AUTHORIZATION","X-Goog-Visitor-Id":"SANDBOXED_VISITOR_ID","X-YouTube-Client-Name":"INNERTUBE_CONTEXT_CLIENT_NAME","X-YouTube-Client-Version":"INNERTUBE_CONTEXT_CLIENT_VERSION","X-YouTube-Device":"DEVICE","X-Youtube-Identity-Token":"ID_TOKEN","X-YouTube-Page-CL":"PAGE_CL","X-YouTube-Page-Label":"PAGE_BUILD_LABEL","X-YouTube-Variants-Checksum":"VARIANTS_CHECKSUM"},Kea="app debugcss debugjs expflag force_ad_params force_viral_ad_response_params forced_experiments innertube_snapshots innertube_goldens internalcountrycode internalipoverride absolute_experiments conditional_experiments sbb sr_bns_address".split(" "), +Gq=!1,Sla=Aq;Pq.prototype.set=function(a,b,c,d){c=c||31104E3;this.remove(a);if(this.o)try{this.o.set(a,b,(0,g.H)()+1E3*c);return}catch(f){}var e="";if(d)try{e=escape(g.Jk(b))}catch(f){return}else e=escape(b);g.Mq(a,e,c,this.u)}; +Pq.prototype.get=function(a,b){var c=void 0,d=!this.o;if(!d)try{c=this.o.get(a)}catch(e){d=!0}if(d&&(c=Nq(a))&&(c=unescape(c),b))try{c=JSON.parse(c)}catch(e){this.remove(a),c=void 0}return c}; +Pq.prototype.remove=function(a){this.o&&this.o.remove(a);g.Oq(a,"/",this.u)};new Pq;g.Qq.prototype.isReady=function(){!this.o&&Jq()&&(this.o=Kq());return!!this.o};g.r(Sq,Error);var Xq=new Set,Vq=0;Yq.prototype.initialize=function(a,b,c,d,e,f){var k=this;f=void 0===f?!1:f;b?(this.wc=!0,g.To(b,function(){k.wc=!1;if(window.botguard)Zq(k,c,d,f);else{var l=Uo(b),m=document.getElementById(l);m&&(So(l),m.parentNode.removeChild(m));g.Uq(new Sq("Unable to load Botguard","from "+b))}},e)):a&&(eval(a),window.botguard?Zq(this,c,d,f):g.Uq(Error("Unable to load Botguard from JS")))}; +Yq.prototype.dispose=function(){this.o=null};var Uea=[],ar=!1;var fr={},Xea=0;g.r(gr,Ta);jr.prototype.then=function(a,b,c){return 1===this.u&&a?(a=a.call(c,this.o),xf(a)?a:lr(a)):2===this.u&&b?(a=b.call(c,this.o),xf(a)?a:kr(a)):this}; +jr.prototype.getValue=function(){return this.o}; +jr.prototype.$goog_Thenable=!0;g.r(nr,Ta);nr.prototype.name="BiscottiError";g.r(mr,Ta);mr.prototype.name="BiscottiMissingError";var pr={format:"RAW",method:"GET",timeout:5E3,withCredentials:!0},or=null;var Zea=g.xo("html5_disable_client_tmp_logs");var vr=g.w("ytglobal.prefsUserPrefsPrefs_")||{};g.Ga("ytglobal.prefsUserPrefsPrefs_",vr,void 0);g.h=wr.prototype;g.h.get=function(a,b){Ar(a);zr(a);var c=void 0!==vr[a]?vr[a].toString():null;return null!=c?c:b?b:""}; +g.h.set=function(a,b){Ar(a);zr(a);if(null==b)throw Error("ExpectedNotNull");vr[a]=b.toString()}; +g.h.remove=function(a){Ar(a);zr(a);delete vr[a]}; +g.h.save=function(){g.Mq(this.o,this.dump(),63072E3)}; +g.h.clear=function(){g.Nb(vr)}; +g.h.dump=function(){var a=[],b;for(b in vr)a.push(b+"="+encodeURIComponent(String(vr[b])));return a.join("&")}; +Ja(wr);var afa=new Map([["dark","USER_INTERFACE_THEME_DARK"],["light","USER_INTERFACE_THEME_LIGHT"]]),dfa={"/youtuberedoriginals":!0,"/originals":!0},cfa=["/fashion","/channel/UCrpQ4p1Ql_hG8rKXIKM1MOQ","/channel/UCTApTkbpcqiLL39WUlne4ig","/channel/UCW5PCzG3KQvbOX4zc3KY0lQ"];g.r(g.Gr,g.A);g.Gr.prototype.L=function(a,b,c,d,e){c=Fo((0,g.x)(c,d||this.Md));c={target:a,name:b,Fb:c};var f;e&&Hra()&&(f={passive:!0});a.addEventListener(b,c.Fb,f);this.Z.push(c);return c}; +g.Gr.prototype.bb=function(a){for(var b=0;bthis.Un()?(this.o.appendWindowEnd=b,this.o.appendWindowStart=a):(this.o.appendWindowStart=a,this.o.appendWindowEnd=b)}; +g.h.Sr=function(){return this.C}; +g.h.Mp=function(a){aE?this.C=a:this.supports(1)&&(this.o.timestampOffset=a)}; +g.h.Bb=function(){return aE?this.C:this.supports(1)?this.o.timestampOffset:0}; +g.h.ud=function(a){if(void 0===a?0:a)return this.u||this.Sd()||(this.F=this.ud(!1),this.u=!0),this.F;try{return this.o.buffered}catch(b){return Mt([],[])}}; +g.h.Sd=function(){return this.o.updating}; +g.h.vi=function(){return this.w}; +g.h.Vn=function(){return this.P}; +g.h.Xu=function(a,b){this.I!=a&&(this.supports(4),this.o.changeType(b));this.I=a}; +g.h.Or=function(){return this.B}; +g.h.isView=function(){return!1}; +g.h.supports=function(a){switch(a){case 1:return void 0!=this.o.timestampOffset;case 0:return!!this.o.appendBuffer;case 2:return!!this.o.remove;case 3:return!(!this.o.addEventListener||!this.o.removeEventListener);case 4:return!!this.o.changeType;default:return!1}}; +g.h.Xq=function(){return!this.Sd()}; +g.h.isLocked=function(){return!1}; +g.h.Za=function(a){a.to=""+this.o.timestampOffset;a.up=""+ +this.Sd();a.aw=(this.o.appendWindowStart||0).toFixed(3)+"-"+(this.o.appendWindowEnd||Infinity).toFixed(3);try{a.bu=Nt(this.o.buffered)}catch(b){}return Ps(a)}; +g.h.X=function(){this.supports(3)&&(this.o.removeEventListener("updateend",this.A),this.o.removeEventListener("error",this.A));g.O.prototype.X.call(this)};g.r(Vt,g.O);g.h=Vt.prototype;g.h.appendBuffer=function(a,b,c){if(this.o.Un()!=this.C+this.u||this.o.Jr()!=this.B+this.u||this.o.Bb()!=this.A+this.u)this.o.supports(1),this.o.Cu(this.C+this.u,this.B+this.u),this.o.Mp(this.A+this.u);this.o.appendBuffer(a,b,c)}; +g.h.abort=function(){this.o.abort()}; +g.h.remove=function(a,b){this.o.remove(a+this.u,b+this.u)}; +g.h.Cu=function(a,b){this.C=a;this.B=b}; +g.h.Sr=function(){return this.A+this.u}; +g.h.Un=function(){return this.C}; +g.h.Jr=function(){return this.B}; +g.h.Mp=function(a){this.A=a}; +g.h.Bb=function(){return this.A}; +g.h.ud=function(a){a=this.o.ud(void 0===a?!1:a);return Tt(a,this.u,this.G)}; +g.h.Sd=function(){return this.o.Sd()}; +g.h.vi=function(){return this.o.vi()}; +g.h.Vn=function(){return this.o.Vn()}; +g.h.Xu=function(a,b){return this.o.Xu(a,b)}; +g.h.supports=function(a){return this.o.supports(a)}; +g.h.Or=function(){return this.o.Or()}; +g.h.isView=function(){return!0}; +g.h.Xq=function(){return this.o.Xq()?this.w:!1}; +g.h.isLocked=function(){return this.F&&!this.w}; +g.h.Za=function(a){return this.o.Za(a)+(";vw."+this.u+"-"+this.G)}; +g.h.X=function(){Kr(this.o,this.I);g.O.prototype.X.call(this)}; +g.h.isActive=function(){return this.w}; +g.h.setActive=function(a){this.w=a;this.F=this.F||this.w};Wt.prototype.dispose=function(){if(!this.ea){if(this.u)try{URL.revokeObjectURL(this.o)}catch(a){}this.w=!0}}; +Wt.prototype.ea=function(){return this.w}; +Wt.prototype.toString=function(){return"MediaResource {"+this.o+"}"};g.r(Xt,g.A);g.h=Xt.prototype;g.h.getDuration=function(){return this.w.duration}; +g.h.isView=function(){return this.C}; +g.h.Sd=function(){return!!(this.o&&this.o.Sd()||this.u&&this.u.Sd())}; +g.h.kN=function(){!this.ea()&&Yt(this)&&this.A&&(this.A(this),this.A=null)}; +g.h.jN=function(){this.dispose()};var Jra={cupcake:1.5,donut:1.6,eclair:2,froyo:2.2,gingerbread:2.3,honeycomb:3,"ice cream sandwich":4,jellybean:4.1,kitkat:4.4,lollipop:5.1,marshmallow:6,nougat:7.1},V1;a:{var W1=g.Ic;W1=W1.toLowerCase();if(-1!=W1.indexOf("android")){var Kra=W1.match(/android\s*(\d+(\.\d+)?)[^;|)]*[;)]/);if(Kra){var Lra=parseFloat(Kra[1]);if(100>Lra){V1=Lra;break a}}var Mra=W1.match("("+g.Gb(Jra).join("|")+")");V1=Mra?Jra[Mra[0]]:0}else V1=void 0}var Py=V1,Oy=0<=Py;eu.prototype.canPlayType=function(a,b){var c=a.canPlayType?a.canPlayType(b):!1;nl?c=c||Nra[b]:2.2==Py?c=c||Ora[b]:el()&&(c=c||Pra[b]);return!!c}; +eu.prototype.disableAv1=function(){this.G=!0}; +var Ora={'video/mp4; codecs="avc1.42001E, mp4a.40.2"':"maybe"},Pra={"application/x-mpegURL":"maybe"},Nra={"application/x-mpegURL":"maybe"};g.h=xu.prototype;g.h.ge=function(){return this.og}; +g.h.em=function(){return null}; +g.h.nx=function(){var a=this.em();return a?+g.mq(a.o).expire:NaN}; +g.h.zu=function(){}; +g.h.getHeight=function(){return this.og.ya().height};zu.prototype.isLocked=function(){return this.w&&!!this.u&&this.u==this.o}; +zu.prototype.A=function(a){return a.video?Gu(this,a.video.quality):!1}; +var UJ=Bu("auto","hd1080",!1,"l"),zG=Bu("auto","large",!1,"l"),Du=Bu("auto","auto",!1,"p");Bu("small","auto",!1,"p");var QS={BP:"ad",SP:"annotations_module",TP:"attribution",rQ:"creatorendscreen",EQ:"embed",IQ:"endscreen",TQ:"fresca",gR:"heartbeat",BR:"kids",KR:"remote",MR:"miniplayer",QR:"music",SUBTITLES:"captions",KD:"unplugged",eT:"ux",iT:"visualizer",jT:"webgl",oT:"ypc",pT:"ypc_clickwrap",qT:"yto",cT:""};var X1={},Qra=(X1["api.invalidparam"]=2,X1.auth=150,X1["drm.auth"]=150,X1["heartbeat.net"]=150,X1["heartbeat.servererror"]=150,X1["heartbeat.stop"]=150,X1["html5.unsupportedads"]=5,X1["fmt.noneavailable"]=5,X1["fmt.decode"]=5,X1["fmt.unplayable"]=5,X1["html5.missingapi"]=5,X1["html5.unsupportedlive"]=5,X1["drm.unavailable"]=5,X1);var sM=16/9,Rra=[.25,.5,.75,1,1.25,1.5,1.75,2],Sra=Rra.concat([3,4,5,6,7,8,9,10,15]);var Ku=1;g.r(g.Mu,g.A);g.h=g.Mu.prototype; +g.h.createElement=function(a,b){b=b||"svg"===a.D;var c=a.H,d=a.Y;if(b){var e=document.createElementNS("http://www.w3.org/2000/svg",a.D);g.nz&&(a.O||(a.O={}),a.O.focusable="false")}else e=g.oe(a.D);if(c){if(c=Ou(this,e,"class",c))Pu(this,e,"class",c),this.o[c]=e}else if(d){c=g.q(d);for(var f=c.next();!f.done;f=c.next())this.o[f.value]=e;Pu(this,e,"class",d.join(" "))}d=a.W;c=a.J;if(d)d=Ou(this,e,"child",d),void 0!==d&&e.appendChild(g.pe(d));else if(c)for(d=0,c=g.q(c),f=c.next();!f.done;f=c.next())if(f= +f.value)if("string"===typeof f)f=Ou(this,e,"child",f),null!=f&&e.appendChild(g.pe(f));else if(f.element)e.appendChild(f.element);else{var k=f;f=this.createElement(k,b);e.appendChild(f);k.Na&&(k=Lu(),f.id=k,f=document.createElementNS("http://www.w3.org/2000/svg","use"),f.setAttribute("class","ytp-svg-shadow"),f.setAttributeNS("http://www.w3.org/1999/xlink","href","#"+k),g.se(e,f,d++))}if(d=a.O)for(c=e,f=g.q(Object.keys(d)),k=f.next();!k.done;k=f.next()){k=k.value;var l=d[k];Pu(this,c,k,"string"=== +typeof l?Ou(this,c,k,l):l)}return e}; +g.h.ca=function(a,b){"number"===typeof b?g.se(a,this.element,b):a.appendChild(this.element)}; +g.h.update=function(a){for(var b=g.q(Object.keys(a)),c=b.next();!c.done;c=b.next())c=c.value,this.la(c,a[c])}; +g.h.la=function(a,b){var c=this.Qa["{{"+a+"}}"];c&&Pu(this,c[0],c[1],b)}; +g.h.X=function(){this.o={};this.Qa={};g.Nu(this);g.A.prototype.X.call(this)};g.r(g.R,g.Mu);g.h=g.R.prototype;g.h.qb=function(a,b){this.la(b||"content",a)}; +g.h.show=function(){this.ha||(g.sh(this.element,"display",""),this.ha=!0)}; +g.h.hide=function(){this.ha&&(g.sh(this.element,"display","none"),this.ha=!1)}; +g.h.Xa=function(a){this.P=a}; +g.h.Ha=function(){return this.ha}; +g.h.ka=function(a,b,c){return this.L(this.element,a,b,c)}; +g.h.L=function(a,b,c,d){c=(0,g.x)(c,d||this);d={target:a,type:b,listener:c};this.listeners.push(d);a.addEventListener(b,c);return d}; +g.h.bb=function(a){var b=this;this.listeners.forEach(function(c,d){if(c===a){var e=b.listeners.splice(d,1)[0];e.target.removeEventListener(e.type,e.listener)}})}; +g.h.focus=function(){Be(this.element);this.element.focus()}; +g.h.X=function(){for(;this.listeners.length;){var a=this.listeners.pop();a&&a.target.removeEventListener(a.type,a.listener)}g.Mu.prototype.X.call(this)};g.r(g.Ru,g.R);g.Ru.prototype.subscribe=function(a,b,c){return this.ba.subscribe(a,b,c)}; +g.Ru.prototype.unsubscribe=function(a,b,c){return this.ba.unsubscribe(a,b,c)}; +g.Ru.prototype.Eh=function(a){return this.ba.Eh(a)}; +g.Ru.prototype.S=function(a,b){for(var c=[],d=1;d=e.length?(b.append(e),a-=e.length):a?(b.append(new Uint8Array(e.buffer,e.byteOffset,a)),c.append(new Uint8Array(e.buffer,e.byteOffset+a,e.length-a)),a=0):c.append(e);return{mo:b,ij:c}}; +g.h.isFocused=function(a){return a>=this.w&&athis.info.Oa||4==this.info.type)return!0;var b=xw(this),c=b.getUint32(0,!1);b=b.getUint32(4,!1);a.infotype=this.info.type.toString();a.slicesize=c.toString();a.boxtype=b.toString();if(2==this.info.type)return c==this.info.Oa&&1936286840==b;if(3==this.info.type&&0==this.info.w)return 1836019558==b||1936286840== +b||1937013104==b||1718909296==b||1701671783==b||1936419184==b}else if(2==this.info.o.info.containerType){if(4>this.info.Oa||4==this.info.type)return!0;c=xw(this).getUint32(0,!1);a.ebm=c.toString();if(3==this.info.type&&0==this.info.w)return 524531317==c||440786851==c}return!0};var Kw={Ru:function(a,b){var c=a[0];a[0]=a[b%a.length];a[b%a.length]=c}, +qz:function(a){a.reverse()}, +OM:function(a,b){a.splice(0,b)}};var Kla=/^https?:\/\/([^.]*\.moatads\.com\/|e[0-9]+\.yt\.srs\.doubleverify\.com|pagead2\.googlesyndication\.com\/pagead\/gen_204\?id=yt3p&sr=1&|pm\.adsafeprotected\.com\/youtube|pm\.test-adsafeprotected\.com\/youtube|youtube[0-9]+\.moatpixel\.com\/)/,Pw=/^http:\/\/0\.[a-z0-9\-_]+\.[a-z0-9\-_]+\.l2gfe\.[a-z0-9_]+\.([a-z]{2}|i)\.borg\.google\.com(:[0-9]+)?\/|^https:\/\/([a-z]+\.)?[0-9a-f]{1,63}\.sslproxy\.corp\.google\.com\/|^https:\/\/([a-z]+\.)?[a-z0-9\-]{1,63}\.demos\.corp\.google\.com\/|^https:\/\/[0-9a-f]{1,63}\.proxy\.googleprod\.com\/|^https?:\/\/((?:uytfe\.corp|dev-uytfe\.corp|uytfe\.sandbox)\.google\.com\/|([-\w]*www[-\w]*\.|[-\w]*web[-\w]*\.|[-\w]*canary[-\w]*\.|[-\w]*dev[-\w]*\.|[-\w]{1,3}\.)+youtube(-nocookie|kids)?\.com\/|([A-Za-z0-9-]{1,63}\.)*(youtube\.googleapis\.com)(:[0-9]+)?\/|([a-z]+\.)?[a-z0-9\-]{1,63}\.([a-z]{3}|i)\.corp\.google\.com(:[0-9]+)?\/|([a-z]+\.)?[a-z0-9\-]{1,63}\.c\.googlers\.com(:[0-9]+)?\/|(docs|drive)\.google\.com\/(a\/[^/\\%]+\/|)|(tv|tv-green-qa|tv-release-qa)\.youtube\.com\/|[A-Za-z0-9-]+\.prod\.google\.com(:[0-9]+)?\/|m?web-ppg\.corp\.google\.com\/|play\.google\.com\/)/, +Lla=/^https?:\/\/(www\.google\.com\/pagead\/xsul|www\.youtube\.com\/pagead\/slav)/,$fa=/^https:\/\/([A-Za-z0-9-]{1,63}\.)+demos\.corp\.google\.com(\/(?!url\b)|$)|^https:\/\/([A-Za-z0-9-]{1,63}\.)+sslproxy\.corp\.google\.com(\/|$)|^https?:\/\/(([A-Za-z0-9-]{1,63}\.)*(corp\.google\.com|proxy\.googleprod\.com|c\.googlers\.com|docs\.google\.com|drive\.google\.com|prod\.google\.com|plus\.google\.com|currents\.google\.com|mail\.google\.com|youtube\.com|youtube\-nocookie\.com|youtubekids\.com)(:[0-9]+)?\/|([A-Za-z0-9-]{1,63}\.)*(sandbox\.google\.com)(:[0-9]+)?(\/(?!url\b)|$))/, +yja=/^https:\/\/([A-Za-z0-9-]{1,63}\.)+demos\.corp\.google\.com(\/(?!url\b)|$)|^https:\/\/([A-Za-z0-9-]{1,63}\.)+sslproxy\.corp\.google\.com(\/|$)|^https?:\/\/(([A-Za-z0-9-]{1,63}\.)*(corp\.google\.com|proxy\.googleprod\.com|c\.googlers\.com|borg\.google\.com|prod\.google\.com|youtube\.com|youtubekids\.com)(:[0-9]+)?\/|([A-Za-z0-9-]{1,63}\.)*(sandbox\.google\.com)(:[0-9]+)?(\/(?!url\b)|$))/,Yfa=/^((http(s)?):)?\/\/((((lh[3-6](-tt|-d[a-g,z])?\.((ggpht)|(googleusercontent)|(google)))|(([1-4]\.bp\.blogspot)|(bp[0-3]\.blogger))|(ccp-lh\.googleusercontent)|((((cp|ci|gp)[3-6])|(ap[1-2]))\.(ggpht|googleusercontent))|(gm[1-4]\.ggpht)|(play-(ti-)?lh\.googleusercontent)|(gz0\.googleusercontent)|(((yt[3-4])|(sp[1-3]))\.(ggpht|googleusercontent)))\.com)|(dp[3-6]\.googleusercontent\.cn)|(dp4\.googleusercontent\.com)|(photos\-image\-(dev|qa)(-auth)?\.corp\.google\.com)|((dev|dev2|dev3|qa|qa2|qa3|qa-red|qa-blue|canary)[-.]lighthouse\.sandbox\.google\.com\/image)|(image\-(dev|qa)\-lighthouse(-auth)?\.sandbox\.google\.com(\/image)?))\/|^https:\/\/([A-Za-z0-9-]{1,63}\.)+demos\.corp\.google\.com(\/(?!url\b)|$)|^https:\/\/([A-Za-z0-9-]{1,63}\.)+sslproxy\.corp\.google\.com(\/|$)|^https?:\/\/(([A-Za-z0-9-]{1,63}\.)*(corp\.google\.com|proxy\.googleprod\.com|c\.googlers\.com|borg\.google\.com|docs\.google\.com|drive\.google\.com|googleplex\.com|play\.google\.com|prod\.google\.com|plus\.google\.com|currents\.google\.com|video\.google\.com|youtube\.com|ytimg\.com|ytimg\.sandbox\.google\.com|chat\.google\.com)(:[0-9]+)?\/|([A-Za-z0-9-]{1,63}\.)*(sandbox\.google\.com)(:[0-9]+)?(\/(?!url\b)|$)|s2\.googleusercontent\.com\/s2\/favicons\?|yt[3-4]\.ggpht\.com\/)/, +Mla=/^https?.*#ocr$|^https?:\/\/(aksecure\.imrworldwide\.com\/|cdn\.imrworldwide\.com\/|secure\-..\.imrworldwide\.com\/)/,Zfa=/^https?:\/\/(googleads\.g\.doubleclick\.net\/(aclk|pagead\/conversion)|www\.google\.com\/(aclk|pagead\/conversion)|www\.googleadservices\.com\/(aclk|pagead\/(aclk|conversion))|www\.youtube\.com\/pagead\/conversion)/,Xfa=/^((http(s)?):)?\/\/((((lh[3-6](-tt|-d[a-g,z])?\.((ggpht)|(googleusercontent)|(google)))|(([1-4]\.bp\.blogspot)|(bp[0-3]\.blogger))|(ccp-lh\.googleusercontent)|((((cp|ci|gp)[3-6])|(ap[1-2]))\.(ggpht|googleusercontent))|(gm[1-4]\.ggpht)|(play-(ti-)?lh\.googleusercontent)|(gz0\.googleusercontent)|(((yt[3-4])|(sp[1-3]))\.(ggpht|googleusercontent)))\.com)|(dp[3-6]\.googleusercontent\.cn)|(dp4\.googleusercontent\.com)|(photos\-image\-(dev|qa)(-auth)?\.corp\.google\.com)|((dev|dev2|dev3|qa|qa2|qa3|qa-red|qa-blue|canary)[-.]lighthouse\.sandbox\.google\.com\/image)|(image\-(dev|qa)\-lighthouse(-auth)?\.sandbox\.google\.com(\/image)?))\/|^https:\/\/([A-Za-z0-9-]{1,63}\.)+demos\.corp\.google\.com(\/(?!url\b)|$)|^https:\/\/([A-Za-z0-9-]{1,63}\.)+sslproxy\.corp\.google\.com(\/|$)|^https?:\/\/(([A-Za-z0-9-]{1,63}\.)*(corp\.google\.com|proxy\.googleprod\.com|c\.googlers\.com|borg\.google\.com|docs\.google\.com|drive\.google\.com|googleplex\.com|googlevideo\.com|play\.google\.com|prod\.google\.com|lh3\.photos\.google\.com|plus\.google\.com|currents\.google\.com|mail\.google\.com|youtube\.com|xfx7\.com|yt\.akamaized\.net|chat\.google\.com)(:[0-9]+)?\/|([A-Za-z0-9-]{1,63}\.)*(sandbox\.google\.com)(:[0-9]+)?(\/(?!url\b)|$)|([A-Za-z0-9-]{1,63}\.)*c\.lh3(-d[a-gz]|-testonly)?\.(googleusercontent|photos\.google)\.com\/.*$)/, +Nga=/^https?:\/\/(([A-Za-z0-9-]{1,63}\.)*(imasdk\.googleapis\.com|2mdn\.net|googlesyndication\.com|corp\.google\.com|proxy\.googleprod\.com|c\.googlers\.com|borg\.google\.com|googleads\.g\.doubleclick\.net|prod\.google\.com|static\.doubleclick\.net|static\.googleadsserving\.cn|studioapi\.doubleclick\.net|youtube\.com|youtube\.googleapis\.com|youtube\-nocookie\.com|youtubekids\.com|ytimg\.com|ytimg\.sandbox\.google\.com)(:[0-9]+)?\/|lightbox-(demos|builder)\.appspot\.com\/|s[01](qa)?\.2mdn\.net\/ads\/richmedia\/studio\/mu\/templates\/tetris|www\.gstatic\.com\/doubleclick\/studio\/innovation\/h5\/layouts\/tetris|www\.gstatic\.com\/doubleclick\/studio\/innovation\/ytplayer)/, +Mga=/^https:\/\/([A-Za-z0-9-]{1,63}\.)*(crowdsource|datacompute)\.google\.com\/|^https:\/\/([A-Za-z0-9-]{1,63}\.)+demos\.corp\.google\.com(\/(?!url\b)|$)|^https:\/\/([A-Za-z0-9-]{1,63}\.)+sslproxy\.corp\.google\.com(\/|$)|^https:\/\/canvastester-3fd0b\.appspot\.com(\/|$)|^https:\/\/narrative-news-cast-receiver-d\.appspot\.com(\/|$)|^https:\/\/narrative-news-cast-receiver-f\.appspot\.com(\/|$)|^https:\/\/one\.google\.com\/storage\/management|^https:\/\/www\.gstatic\.com\/aog_howto|^https:\/\/www\.gstatic\.com\/narrative_cast_receiver\/news|^https?:\/\/(([A-Za-z0-9-]{1,63}\.)*(imasdk\.googleapis\.com|corp\.google\.com|proxy\.googleprod\.com|c\.googlers\.com|borg\.google\.com|docs\.google\.com|drive\.google\.com|googleads\.g\.doubleclick\.net|googleplex\.com|play\.google\.com|prod\.google\.com|photos\.google\.com|get\.google\.com|class\.photos\.google\.com|plus\.google\.com|currents\.google\.com|books\.googleusercontent\.com|play\-books\-autopush\-sandbox\.googleusercontent\.com|play\-books\-canary\-sandbox\.googleusercontent\.com|play\-books\-internal\-sandbox\.googleusercontent\.com|play\-books\-staging\-sandbox\.googleusercontent\.com|blogger\.com|mail\.google\.com|talkgadget\.google\.com|survey\.g\.doubleclick\.net|youtube\.com|youtube\.googleapis\.com|youtube\-nocookie\.com|youtubekids\.com|vevo\.com|jamboard\.google\.com|chat\.google\.com|meet\.google\.com|stadia\.google\.com)(:[0-9]+)?(\/|$)|([A-Za-z0-9-]{1,63}\.)*(sandbox\.google\.com)(:[0-9]+)?(\/(?!url\b)|$)|(www\.|encrypted\.)?google\.(cat|com(\.(a[fgiru]|b[dhnorz]|c[ouy]|do|e[cgt]|fj|g[hit]|hk|jm|kh|kw|l[bcy]|m[mtxy]|n[afgip]|om|p[aeghkry]|qa|s[abglv]|t[jnrw]|ua|uy|vc|vn))?|a[cdelmstz]|c[acdfghilmnvz]|b[aefgijsty]|ee|es|d[ejkmz]|g[aefglmpry]|f[imr]|i[emoqrst]|h[nrtu]|k[giz]|je|jo|m[degklnsuvw]|l[aiktuv]|n[eloru]|p[lnst]|s[cehikmnort]|r[osuw]|us|t[dgklmnot]|ws|vg|vu|co\.(ao|bw|ck|cr|i[dln]|jp|ke|kr|ls|ma|mz|nz|th|tz|u[gkz]|ve|vi|z[amw]))\/(search|webhp)\?|lightbox-(demos|builder)\.appspot\.com\/|s0\.2mdn\.net\/instream\/html5\/native\/|s[01](qa)?\.2mdn\.net\/ads\/richmedia\/studio\/mu\/templates\/tetris|www\.gstatic\.com\/doubleclick\/studio\/innovation\/h5\/layouts\/tetris)/, +Ura=/^(https\:\/\/play\.google\.com|https\:\/\/photos\.google\.com|https\:\/\/get\.google\.com|https\:\/\/class\.photos\.google\.com|https\:\/\/plus\.google\.com|https\:\/\/currents\.google\.com|https\:\/\/mail\.google\.com|https\:\/\/talkgadget\.google\.com|https\:\/\/jamboard\.google\.com|https\:\/\/chat\.google\.com|https\:\/\/stadia\.google\.com|https\:\/\/one\.google\.com)$|^http:\/\/[0-9]+\.[a-z0-9\-_]+\.[a-z0-9\-_]+\.[a-z0-9\-_]+\.([a-z]{2}|i)\.borg\.google\.com(:[0-9]+)?$|^https:\/\/((staging|stream|today)\.)?meet\.google\.com$|^https:\/\/([A-Za-z0-9-]{1,63}\.)*(crowdsource|datacompute)\.google\.com$|^https:\/\/([A-Za-z0-9-]{1,63}\.)*youtube\.com$|^https:\/\/([A-Za-z0-9-]{1,63}\.)+demos\.corp\.google\.com$|^https:\/\/([A-Za-z0-9-]{1,63}\.)+sandbox\.google\.com$|^https:\/\/([A-Za-z0-9-]{1,63}\.)+sslproxy\.corp\.google\.com$|^https:\/\/(books|play-books-(autopush|canary|internal|staging)-sandbox)\.googleusercontent\.com$|^https:\/\/(draft|www|(www\.)?daily\.alpha|(www\.)?weekly\.alpha|(www\.)?dev\.sandbox|(www\.)?autopush\.sandbox|(www\.)?restore\.sandbox)\.blogger\.com$|^https:\/\/[0-9a-f]{1,63}\.proxy\.googleprod\.com$|^https?:\/\/(((docs|m|sing|ss|sss|www)\.)?drive\.google\.com$|([A-Za-z0-9-]{1,63}\.)*c\.googlers\.com(:[0-9]+)?$|([A-Za-z0-9-]{1,63}\.)*corp\.google\.com(:[0-9]+)?$|([A-Za-z0-9-]{1,63}\.)*googleplex\.com(:[0-9]+)?$|(www\.|encrypted\.)google\.(cat|com(\.(a[fgiru]|b[dhnorz]|c[ouy]|do|e[cgt]|fj|g[hit]|hk|jm|kh|kw|l[bcy]|m[mtxy]|n[afgip]|om|p[aeghkry]|qa|s[abglv]|t[jnrw]|ua|uy|vc|vn))?|a[cdelmstz]|c[acdfghilmnvz]|b[aefgijsty]|ee|es|d[ejkmz]|g[aefglmpry]|f[imr]|i[emoqrst]|h[nrtu]|k[giz]|je|jo|m[degklnsuvw]|l[aiktuv]|n[eloru]|p[lnst]|s[cehikmnort]|r[osuw]|us|t[dgklmnot]|ws|vg|vu|co\.(ao|bw|ck|cr|i[dln]|jp|ke|kr|ls|ma|mz|nz|th|tz|u[gkz]|ve|vi|z[amw]))$|[A-Za-z0-9-]+\.prod\.google\.com(:[0-9]+)?$|docs\.google\.com$)/, +Vra=/^(https\:\/\/googleads\.g\.doubleclick\.net)$/;var Nw=!1;Xw.prototype.set=function(a,b){this.o[a]!==b&&(this.o[a]=b,this.url="")}; +Xw.prototype.get=function(a){Yw(this);return this.o[a]||null}; +Xw.prototype.jc=function(){this.url||(this.url=aga(this));return this.url}; +Xw.prototype.clone=function(){var a=new Xw(this.u);a.w=this.w;a.path=this.path;a.A=this.A;a.o=g.Pb(this.o);a.url=this.url;return a};fx.prototype.set=function(a,b){this.Ie.get(a);this.o[a]=b;this.url=""}; +fx.prototype.get=function(a){return this.o[a]||this.Ie.get(a)}; +fx.prototype.jc=function(){this.url||(this.url=dga(this));return this.url};lx.prototype.ee=function(){return bw(this.o[0])};g.h=qx.prototype;g.h.ce=function(){}; +g.h.Ll=function(){}; +g.h.cd=function(){return!!this.o&&this.index.Hb()}; +g.h.Cg=function(){}; +g.h.Vy=function(){return!1}; +g.h.Bj=function(){}; +g.h.Li=function(){}; +g.h.hh=function(){}; +g.h.pg=function(){}; +g.h.ho=function(){}; +g.h.Wy=function(a){return[a]}; +g.h.Ip=function(a){return[a]}; +g.h.xp=function(){}; +g.h.Wn=function(){};g.r(rx,qx);g.h=rx.prototype;g.h.ce=function(){return!1}; +g.h.Ll=function(){return!1}; +g.h.Vy=function(){return this.F}; +g.h.Bj=function(){if(this.F)return[];var a=new aw(1,this,this.initRange,"getMetadataRequestInfos");return[new lx([a],this.R)]}; +g.h.Li=function(){return null}; +g.h.hh=function(a){this.Cg(a);return this.Ni(a.A?a.u+1:a.u,!1)}; +g.h.pg=function(a,b){b=void 0===b?!1:b;var c=this.index.Re(a);b&&(c=Math.min(this.index.jb(),c+1));return this.Ni(c,!0)}; +g.h.ho=function(a){this.o=new Uint8Array(xw(a).buffer)}; +g.h.Cg=function(a){return 0==a.Oa?!0:this.index.jb()>a.u&&this.index.Qe()<=a.u+1}; +g.h.update=function(a,b,c){this.index.append(a);Yu(this.index,c);this.G=b}; +g.h.cd=function(){return this.F?!0:qx.prototype.cd.call(this)}; +g.h.Ni=function(a,b){var c=this.index.Rr(a),d=this.index.gd(a),e=this.index.getDuration(a),f;b?e=f=0:f=0c&&(this.segments=this.segments.slice(b))}}; +g.h.rl=function(a){if(!this.u)return g.Xu.prototype.rl.call(this,a);if(!this.segments.length)return null;var b=this.segments[this.segments.length-1];if(a=b.endTime)b=b.La+Math.floor((a-b.endTime)/this.o+1);else{b=qb(this.segments,function(d){return a=d.endTime?1:0}); +if(0<=b)return this.segments[b];var c=-(b+1);b=this.segments[c-1];c=this.segments[c];b=Math.floor((a-b.endTime)/((c.startTime-b.endTime)/(c.La-b.La-1))+1)+b.La}return this.mg(b)}; +g.h.mg=function(a){if(!this.u)return g.Xu.prototype.mg.call(this,a);if(!this.segments.length)return null;var b=wx(this,a);if(0<=b)return this.segments[b];var c=-(b+1);b=this.o;if(0==c)var d=Math.max(0,this.segments[0].startTime-(this.segments[0].La-a)*b);else c==this.segments.length?(d=this.segments[this.segments.length-1],d=d.endTime+(a-d.La-1)*b):(d=this.segments[c-1],c=this.segments[c],d=d.endTime+(c.startTime-d.endTime)/(c.La-d.La-1)*(a-d.La-1));return new Wu(a,d,b,0,"sq/"+a,void 0,void 0,!0)};g.r(yx,rx);g.h=yx.prototype;g.h.Ll=function(){return!0}; +g.h.cd=function(){return!0}; +g.h.Cg=function(a){if(a.C)return!1;if(this.U&&-1a.B;return!a.M||b&&c}return!0}; +g.h.Bj=function(){return[]}; +g.h.pg=function(a,b){if("number"===typeof a&&!isFinite(a)){var c=new aw(3,this,null,"mlLiveGetReqInfoStubForTime",-1,void 0,this.Ee,void 0,this.Ee*this.info.o);return new lx([c],"")}return rx.prototype.pg.call(this,a,b)}; +g.h.Ni=function(a,b){var c=void 0===c?!1:c;if(xx(this.index,a))return rx.prototype.Ni.call(this,a,b);var d=this.index.gd(a),e=b?0:this.Ee*this.info.o,f=!b;c=new aw(c?6:3,this,null,"mlLiveCreateReqInfoForSeg",a,d,void 0,void 0,e,a==this.index.jb()&&!this.G&&0a.u&&this.index.Qe()<=a.u+1}; +g.h.Wn=function(){return this.initRange&&this.indexRange?this.initRange.length+this.indexRange.length:0}; +g.h.xp=function(){return!1};g.h=g.Gx.prototype;g.h.bp=function(a){return this.u[a]}; +g.h.gd=function(a){return this.w[a]/this.B}; +g.h.bo=ba(0);g.h.qt=function(){return NaN}; +g.h.getDuration=function(a){a=this.mx(a);return 0<=a?a/this.B:-1}; +g.h.mx=function(a){return a+1=this.jb())return 0;for(var c=0,d=this.gd(a)+b,e=a;ethis.gd(e);e++)c=Math.max(c,(e+1=this.index.bp(c+1);)c++;return Jx(this,c,b,a.Oa).o}; +g.h.Cg=function(a){return this.cd()?!0:isNaN(this.F)?!1:a.range.end+1this.F&&(c=new Xv(c.start,this.F-1));c=[new aw(4,a.o,c,"getNextRequestInfoByLength")];return new lx(c)}4==a.type&&(c=this.Ip(a),a=c[c.length-1]);c=0;var d=a.range.start+a.w+a.Oa;3==a.type&&(c=a.u,d==a.range.end+1&&(c+=1));return Jx(this,c,d,b)}; +g.h.hh=function(){return null}; +g.h.pg=function(a,b){var c=this.index.Re(a);b&&(c=Math.min(this.index.jb(),c+1));return Jx(this,c,this.index.bp(c),0)}; +g.h.ce=function(){return!0}; +g.h.Ll=function(){return!1}; +g.h.Wn=function(){return this.indexRange.length+this.initRange.length}; +g.h.xp=function(){return this.indexRange&&this.initRange&&this.initRange.end+1==this.indexRange.start?!0:!1};g.r(Mx,g.O);g.h=Mx.prototype;g.h.yg=function(){return Cb(this.o,function(a){return a.info.video?2==a.info.video.projectionType:!1})}; +g.h.zg=function(){return Cb(this.o,function(a){return a.info.video?3==a.info.video.projectionType:!1})}; +g.h.tg=function(){return Cb(this.o,function(a){return a.info.video?4==a.info.video.projectionType:!1})}; +g.h.Oj=function(){return Cb(this.o,function(a){return a.info.video?1==a.info.video.stereoLayout:!1})}; +g.h.QN=function(a){var b=a.getElementsByTagName("Representation");if(0this.F&&this.oa;this.ba=parseInt(zx(a,Wx(this,"earliestMediaSequence")),10)|| +0;if(b=Date.parse(Cx(zx(a,Wx(this,"mpdResponseTime")))))this.G=((0,g.H)()-b)/1E3;this.isLive&&0>=a.getElementsByTagName("SegmentTimeline").length||(0,g.ti)(a.getElementsByTagName("Period"),this.QN,this);this.C=2;this.S("loaded");ay(this);return this}; +g.h.tF=function(a){this.R=a.Ji.status;this.C=3;this.S("loaderror");return Ef(a.Ji)}; +g.h.refresh=function(){if(1!=this.C&&!this.ea()){var a=g.yd(this.sourceUrl,{start_seq:Bga(this).toString()});Lf(Zx(this,a),function(){})}}; +g.h.resume=function(){ay(this)}; +g.h.sc=function(){var a=this.o,b=!1,c=NaN,d=NaN,e;for(e in a){var f=a[e],k=f.index;k.Hb()&&(f.w&&(b=!0),k=k.gh(),f.info.audio&&(isNaN(c)||k=this.u&&(this.A=!0);for(;c--;)this.values[this.valueIndex]=b,this.valueIndex=(this.valueIndex+1)%this.u;this.C=!0}; +py.prototype.o=function(){return this.F?(qy(this,this.B-this.F)+qy(this,this.B)+qy(this,this.B+this.F))/3:qy(this,this.B)};var Lga=/^([0-9\.]+):([0-9\.]+)$/;var Gy="area120-boutique blogger books docs duo google-live google-one play chat hangouts-meet photos-edu picasaweb gmail jamboard".split(" ");g.r(cz,g.A);g.h=cz.prototype;g.h.fa=function(a){return g.P(this.experiments,a)}; +g.h.Kd=function(a,b){b=void 0===b?!1:b;this.Ea=Dy(this.Ea,a.video_id);this.rb=Dy(this.rb,a.eventid);var c=[],d;for(d in Wra){var e=Wra[d],f=a[e];void 0!=f&&(f!=this.deviceParams[e]&&c.push(e),this.deviceParams[e]=f)}!b&&0'}; +g.h.supportsGaplessAudio=function(){return g.Dt&&!nl&&74<=bl()||g.hu&&g.Kd(68)?!0:!1}; +var Wra={cQ:"cbrand",dQ:"cbr",eQ:"cbrver",tR:"c",wR:"cver",vR:"ctheme",uR:"cplayer",NR:"cmodel",RR:"cnetwork",WR:"cos",XR:"cosver",dS:"cplatform"},Qga=["www.youtube-nocookie.com","youtube.googleapis.com"];vz.prototype.clone=function(a){return new vz(this.flavor,a,this.u,this.B)}; +vz.prototype.Za=function(){return{flavor:this.flavor,keySystem:this.o}}; +vz.prototype.ge=function(){switch(this.o){case "com.youtube.playready":return"PRY";case "com.microsoft.playready":return"PRM";case "com.widevine.alpha":return"WVA";case "com.youtube.widevine.l3":return"WVY";case "com.youtube.widevine.forcehdcp":return"WVYF";case "com.youtube.fairplay":return"FPY";case "com.apple.fps.1_0":return"FPA";default:return this.o}}; +var Z1={},Dz=(Z1.playready=["com.youtube.playready","com.microsoft.playready"],Z1.widevine=["com.youtube.widevine.forcehdcp","com.youtube.widevine.l3","com.widevine.alpha"],Z1);Ez.prototype.getAvailableAudioTracks=function(){return this.audioTracks};g.r(Iz,g.A);Iz.prototype.I=function(){(this.F=!this.F&&"widevine"==this.u[this.o[0]].flavor)||this.o.shift();Jz(this)}; +Iz.prototype.P=function(a,b){this.ea()||(a.keySystemAccess=b,aha(this,a),this.w.push(a),g.P(this.B,"html5_drm_fallback_to_playready_on_retry")||this.G?(this.o.shift(),Jz(this)):this.C(this.w))};g.r(Nz,xu);Nz.prototype.nx=function(){return this.w}; +Nz.prototype.em=function(){if(!this.o||this.o.ea()){var a=this.u;fha(a);var b=["#EXTM3U","#EXT-X-INDEPENDENT-SEGMENTS"],c={};a:if(a.o)var d=a.o;else{d="";for(var e=g.q(a.w),f=e.next();!f.done;f=e.next())if(f=f.value,f.tb){if(f.tb.getIsDefault()){d=f.tb.getId();break a}d||(d=f.tb.getId())}}e=g.q(a.w);for(f=e.next();!f.done;f=e.next())f=f.value,f.tb&&f.tb.getId()!==d||(c[f.itag]=f);d=g.q(a.u);for(e=d.next();!e.done;e=d.next())e=e.value,e.audioItag&&b.push(eha(a,c[e.audioItag],e));d=g.q(a.u);for(e=d.next();!e.done;e= +d.next())if(e=e.value,e.audioItag){f=a;var k=c[e.audioItag];b.push("#EXT-X-STREAM-INF:BANDWIDTH="+(e.bitrate+k.bitrate)+',CODECS="'+(e.codecs+","+k.codecs+'",RESOLUTION=')+(e.width+"x"+e.height+',AUDIO="')+(Lz(k,e)+'",CLOSED-CAPTIONS=NONE'));b.push(Kz(f,e.url,""))}a="data:application/x-mpegurl;charset=utf-8,"+encodeURIComponent(b.join("\n"));this.o=new Wt(a)}return this.o};g.r(Pz,xu);Pz.prototype.em=function(){return new Wt(this.o.jc())}; +Pz.prototype.zu=function(){this.o=bx(this.o)};g.r(Qz,xu);Qz.prototype.em=function(){return new Wt(this.o)};var Sz={iurl:"default.jpg",iurlmq:"mqdefault.jpg",iurlhq:"hqdefault.jpg",iurlsd:"sddefault.jpg",iurlpop1:"pop1.jpg",iurlpop2:"pop2.jpg",iurlhq720:"hq720.jpg",iurlmaxres:"maxresdefault.jpg"},Vz={120:"default.jpg",320:"mqdefault.jpg",480:"hqdefault.jpg",560:"pop1.jpg",640:"sddefault.jpg",854:"pop2.jpg",1280:"hq720.jpg"};var $1={},hC=($1.AD_MARKER="ytp-ad-progress",$1.CHAPTER_MARKER="ytp-chapter-marker",$1.TIME_MARKER="ytp-time-marker",$1);var a2={},mha=(a2.ALWAYS=1,a2.BY_REQUEST=3,a2),b2={},Eha=(b2.COLOR_PRIMARIES_BT709="bt709",b2.COLOR_PRIMARIES_BT2020="bt2020",b2),c2={},Fha=(c2.COLOR_TRANSFER_CHARACTERISTICS_BT709="bt709",c2.COLOR_TRANSFER_CHARACTERISTICS_BT2020_10="bt2020",c2.COLOR_TRANSFER_CHARACTERISTICS_SMPTEST2084="smpte2084",c2.COLOR_TRANSFER_CHARACTERISTICS_ARIB_STD_B67="arib-std-b67",c2),d2={},cA=(d2.FAIRPLAY="fairplay",d2.PLAYREADY="playready",d2.WIDEVINE="widevine",d2),e2={},Jha=(e2.MDE_STREAM_OPTIMIZATIONS_RENDERER_LATENCY_UNKNOWN= +"UNKNOWN",e2.MDE_STREAM_OPTIMIZATIONS_RENDERER_LATENCY_NORMAL="NORMAL",e2.MDE_STREAM_OPTIMIZATIONS_RENDERER_LATENCY_LOW="LOW",e2.MDE_STREAM_OPTIMIZATIONS_RENDERER_LATENCY_ULTRA_LOW="ULTRALOW",e2),f2={},Bha=(f2.UNKNOWN=0,f2.RECTANGULAR=1,f2.EQUIRECTANGULAR=2,f2.EQUIRECTANGULAR_THREED_TOP_BOTTOM=3,f2.MESH=4,f2),g2={},Dha=(g2.SPATIAL_AUDIO_TYPE_NONE=0,g2.SPATIAL_AUDIO_TYPE_AMBISONICS_5_1=1,g2.SPATIAL_AUDIO_TYPE_AMBISONICS_QUAD=2,g2.SPATIAL_AUDIO_TYPE_FOA_WITH_NON_DIEGETIC=3,g2),h2={},Cha=(h2.STEREO_LAYOUT_UNKNOWN= +0,h2.STEREO_LAYOUT_LEFT_RIGHT=1,h2.STEREO_LAYOUT_TOP_BOTTOM=2,h2),i2={},Aha=(i2.FORMAT_STREAM_TYPE_UNKNOWN=0,i2.FORMAT_STREAM_TYPE_OTF=3,i2);var j2;var Xra=g.Ic,Yra=Xra.match(/\((iPad|iPhone|iPod)( Simulator)?;/);if(!Yra||2>Yra.length)j2=void 0;else{var k2=Xra.match(/\((iPad|iPhone|iPod)( Simulator)?; (U; )?CPU (iPhone )?OS (\d+_\d)[_ ]/);j2=k2&&6==k2.length?Number(k2[5].replace("_",".")):0}var UB=j2,gQ=0<=UB;gQ&&0<=g.Ic.search("Safari")&&g.Ic.search("Version");g.r(fA,hs);g.r(gA,hs);var Mha=new is("aft-recorded",fA),QA=new is("timing-sent",gA);var l2=window,MA=l2.performance||l2.mozPerformance||l2.msPerformance||l2.webkitPerformance||new Lha;var pA=!1,Nha=(0,g.x)(MA.clearResourceTimings||MA.webkitClearResourceTimings||MA.mozClearResourceTimings||MA.msClearResourceTimings||MA.oClearResourceTimings||g.Ia,MA);var wA=g.w("ytLoggingLatencyUsageStats_")||{};g.Ga("ytLoggingLatencyUsageStats_",wA,void 0);uA.prototype.tick=function(a,b,c){xA(this,"tick_"+a+"_"+b)||g.Rq("latencyActionTicked",{tickName:a,clientActionNonce:b},{timestamp:c})}; +uA.prototype.info=function(a,b){var c=Object.keys(a).join("");xA(this,"info_"+c+"_"+b)||(a.clientActionNonce=b,g.Rq("latencyActionInfo",a))}; +uA.prototype.span=function(a,b){var c=Object.keys(a).join("");xA(this,"span_"+c+"_"+b)||(a.clientActionNonce=b,g.Rq("latencyActionSpan",a))};var m2={},DA=(m2.ad_to_ad="LATENCY_ACTION_AD_TO_AD",m2.ad_to_video="LATENCY_ACTION_AD_TO_VIDEO",m2.app_startup="LATENCY_ACTION_APP_STARTUP",m2["artist.analytics"]="LATENCY_ACTION_CREATOR_ARTIST_ANALYTICS",m2["artist.events"]="LATENCY_ACTION_CREATOR_ARTIST_CONCERTS",m2["artist.presskit"]="LATENCY_ACTION_CREATOR_ARTIST_PROFILE",m2.browse="LATENCY_ACTION_BROWSE",m2.channels="LATENCY_ACTION_CHANNELS",m2.creator_channel_dashboard="LATENCY_ACTION_CREATOR_CHANNEL_DASHBOARD",m2["channel.analytics"]="LATENCY_ACTION_CREATOR_CHANNEL_ANALYTICS", +m2["channel.comments"]="LATENCY_ACTION_CREATOR_CHANNEL_COMMENTS",m2["channel.copyright"]="LATENCY_ACTION_CREATOR_CHANNEL_COPYRIGHT",m2["channel.monetization"]="LATENCY_ACTION_CREATOR_CHANNEL_MONETIZATION",m2["channel.music"]="LATENCY_ACTION_CREATOR_CHANNEL_MUSIC",m2["channel.translations"]="LATENCY_ACTION_CREATOR_CHANNEL_TRANSLATIONS",m2["channel.videos"]="LATENCY_ACTION_CREATOR_CHANNEL_VIDEOS",m2["channel.live_streaming"]="LATENCY_ACTION_CREATOR_LIVE_STREAMING",m2.chips="LATENCY_ACTION_CHIPS",m2["dialog.copyright_strikes"]= +"LATENCY_ACTION_CREATOR_DIALOG_COPYRIGHT_STRIKES",m2["dialog.uploads"]="LATENCY_ACTION_CREATOR_DIALOG_UPLOADS",m2.embed="LATENCY_ACTION_EMBED",m2.home="LATENCY_ACTION_HOME",m2.library="LATENCY_ACTION_LIBRARY",m2.live="LATENCY_ACTION_LIVE",m2.onboarding="LATENCY_ACTION_KIDS_ONBOARDING",m2.parent_profile_settings="LATENCY_ACTION_KIDS_PARENT_PROFILE_SETTINGS",m2.parent_tools_collection="LATENCY_ACTION_PARENT_TOOLS_COLLECTION",m2.parent_tools_dashboard="LATENCY_ACTION_PARENT_TOOLS_DASHBOARD",m2.prebuffer= +"LATENCY_ACTION_PREBUFFER",m2.prefetch="LATENCY_ACTION_PREFETCH",m2.profile_settings="LATENCY_ACTION_KIDS_PROFILE_SETTINGS",m2.profile_switcher="LATENCY_ACTION_KIDS_PROFILE_SWITCHER",m2.results="LATENCY_ACTION_RESULTS",m2.search_ui="LATENCY_ACTION_SEARCH_UI",m2.search_zero_state="LATENCY_ACTION_SEARCH_ZERO_STATE",m2.secret_code="LATENCY_ACTION_KIDS_SECRET_CODE",m2.settings="LATENCY_ACTION_SETTINGS",m2.tenx="LATENCY_ACTION_TENX",m2.video_to_ad="LATENCY_ACTION_VIDEO_TO_AD",m2.watch="LATENCY_ACTION_WATCH", +m2.watch_it_again="LATENCY_ACTION_KIDS_WATCH_IT_AGAIN",m2["watch,watch7"]="LATENCY_ACTION_WATCH",m2["watch,watch7_html5"]="LATENCY_ACTION_WATCH",m2["watch,watch7ad"]="LATENCY_ACTION_WATCH",m2["watch,watch7ad_html5"]="LATENCY_ACTION_WATCH",m2.wn_comments="LATENCY_ACTION_LOAD_COMMENTS",m2.ww_rqs="LATENCY_ACTION_WHO_IS_WATCHING",m2["video.analytics"]="LATENCY_ACTION_CREATOR_VIDEO_ANALYTICS",m2["video.comments"]="LATENCY_ACTION_CREATOR_VIDEO_COMMENTS",m2["video.edit"]="LATENCY_ACTION_CREATOR_VIDEO_EDIT", +m2["video.translations"]="LATENCY_ACTION_CREATOR_VIDEO_TRANSLATIONS",m2["video.video_editor"]="LATENCY_ACTION_CREATOR_VIDEO_VIDEO_EDITOR",m2["video.video_editor_async"]="LATENCY_ACTION_CREATOR_VIDEO_VIDEO_EDITOR_ASYNC",m2["video.monetization"]="LATENCY_ACTION_CREATOR_VIDEO_MONETIZATION",m2.voice_assistant="LATENCY_ACTION_VOICE_ASSISTANT",m2.cast_load_by_entity_to_watch="LATENCY_ACTION_CAST_LOAD_BY_ENTITY_TO_WATCH",m2),n2={},IA=(n2.ad_allowed="adTypesAllowed",n2.yt_abt="adBreakType",n2.ad_cpn="adClientPlaybackNonce", +n2.ad_docid="adVideoId",n2.yt_ad_an="adNetworks",n2.ad_at="adType",n2.browse_id="browseId",n2.p="httpProtocol",n2.t="transportProtocol",n2.cpn="clientPlaybackNonce",n2.ccs="creatorInfo.creatorCanaryState",n2.cseg="creatorInfo.creatorSegment",n2.csn="clientScreenNonce",n2.docid="videoId",n2.GetHome_rid="requestIds",n2.GetSearch_rid="requestIds",n2.GetPlayer_rid="requestIds",n2.GetWatchNext_rid="requestIds",n2.GetBrowse_rid="requestIds",n2.GetLibrary_rid="requestIds",n2.is_continuation="isContinuation", +n2.is_nav="isNavigation",n2.b_p="kabukiInfo.browseParams",n2.is_prefetch="kabukiInfo.isPrefetch",n2.is_secondary_nav="kabukiInfo.isSecondaryNav",n2.prev_browse_id="kabukiInfo.prevBrowseId",n2.query_source="kabukiInfo.querySource",n2.voz_type="kabukiInfo.vozType",n2.yt_lt="loadType",n2.mver="creatorInfo.measurementVersion",n2.yt_ad="isMonetized",n2.nr="webInfo.navigationReason",n2.nrsu="navigationRequestedSameUrl",n2.ncnp="webInfo.nonPreloadedNodeCount",n2.pnt="performanceNavigationTiming",n2.prt= +"playbackRequiresTap",n2.plt="playerInfo.playbackType",n2.pis="playerInfo.playerInitializedState",n2.paused="playerInfo.isPausedOnLoad",n2.yt_pt="playerType",n2.fmt="playerInfo.itag",n2.yt_pl="watchInfo.isPlaylist",n2.yt_pre="playerInfo.preloadType",n2.yt_ad_pr="prerollAllowed",n2.pa="previousAction",n2.yt_red="isRedSubscriber",n2.rce="mwebInfo.responseContentEncoding",n2.scrh="screenHeight",n2.scrw="screenWidth",n2.st="serverTimeMs",n2.aq="tvInfo.appQuality",n2.br_trs="tvInfo.bedrockTriggerState", +n2.kebqat="kabukiInfo.earlyBrowseRequestInfo.abandonmentType",n2.kebqa="kabukiInfo.earlyBrowseRequestInfo.adopted",n2.label="tvInfo.label",n2.is_mdx="tvInfo.isMdx",n2.preloaded="tvInfo.isPreloaded",n2.upg_player_vis="playerInfo.visibilityState",n2.query="unpluggedInfo.query",n2.upg_chip_ids_string="unpluggedInfo.upgChipIdsString",n2.yt_vst="videoStreamType",n2.vph="viewportHeight",n2.vpw="viewportWidth",n2.yt_vis="isVisible",n2.rcl="mwebInfo.responseContentLength",n2.GetSettings_rid="requestIds", +n2.GetTrending_rid="requestIds",n2.GetMusicSearchSuggestions_rid="requestIds",n2.REQUEST_ID="requestIds",n2),Oha="isContinuation isNavigation kabukiInfo.earlyBrowseRequestInfo.adopted kabukiInfo.isPrefetch kabukiInfo.isSecondaryNav isMonetized navigationRequestedSameUrl performanceNavigationTiming playerInfo.isPausedOnLoad prerollAllowed isRedSubscriber tvInfo.isMdx tvInfo.isPreloaded isVisible watchInfo.isPlaylist playbackRequiresTap".split(" "),o2={},JA=(o2.ccs="CANARY_STATE_",o2.mver="MEASUREMENT_VERSION_", +o2.pis="PLAYER_INITIALIZED_STATE_",o2.yt_pt="LATENCY_PLAYER_",o2.pa="LATENCY_ACTION_",o2.yt_vst="VIDEO_STREAM_TYPE_",o2),Pha="all_vc ap c cver cbrand cmodel cplatform ctheme ei l_an l_mm plid srt yt_fss yt_li vpst vpni2 vpil2 icrc icrt pa GetAccountOverview_rid GetHistory_rid cmt d_vpct d_vpnfi d_vpni nsru pc pfa pfeh pftr pnc prerender psc rc start tcrt tcrc ssr vpr vps yt_abt yt_fn yt_fs yt_pft yt_pre yt_pt yt_pvis ytu_pvis yt_ref yt_sts tds".split(" ");if(g.xo("overwrite_polyfill_on_logging_lib_loaded")){var p2=window;p2.ytcsi&&(p2.ytcsi.info=GA,p2.ytcsi.tick=HA)};g.r(RA,g.O);RA.prototype.ti=function(a,b){for(var c=SA(this,b);0<=c;){var d=this.levels[c];if(d.Hb(Math.floor(a/(d.columns*d.rows)))&&(d=d.ti(a)))return d;c--}return this.levels[0].ti(a)}; +RA.prototype.I=function(a,b){null!==this.o&&(this.o=this.o.onload=null);var c=this.levels[a];c.loaded.add(b);TA(this);var d=c.columns*c.rows;var e=b*d;c=Math.min(e+d-1,c.Lr()-1);e=[e,c];this.S("l",e[0],e[1])}; +RA.prototype.X=function(){this.o&&(this.o=this.o.onload=null);g.O.prototype.X.call(this)};g.h=g.VA.prototype;g.h.Yc=function(){return this.width}; +g.h.getHeight=function(){return this.height}; +g.h.tx=ba(2);g.h.Lr=function(){return this.w}; +g.h.isDefault=function(){return-1!==this.A.indexOf("default")}; +g.h.Hb=function(a){return this.loaded.has(a)}; +g.h.jc=function(a){var b=this.B;b=b.replace("$N",this.A);b=b.replace("$L",this.level.toString());b=b.replace("$M",a.toString());this.signature&&(b=g.yd(b,{sigh:this.signature}));return Ww(b)}; +g.h.ti=function(a){a>=this.nt()&&this.cm();var b=Math.floor(a/(this.columns*this.rows)),c=this.columns*this.rows,d=a%c;a=d%this.columns;d=Math.floor(d/this.columns);var e=this.cm()+1-c*b;if(ek.getHeight())&&c.push(k)}return c}; +WA.prototype.B=function(a,b,c,d){return new g.VA(a,b,c,d)};g.r(YA,g.VA);g.h=YA.prototype;g.h.Lr=function(){return this.u.Cj()}; +g.h.Yo=function(a){var b=this.rows*this.columns*this.C,c=this.u,d=c.jb();a=c.Re(a);return a>d-b?-1:a}; +g.h.cm=function(){return this.u.jb()}; +g.h.nt=function(){return this.u.Qe()}; +g.h.iz=function(a){this.u=a};g.r(ZA,WA);ZA.prototype.u=function(a,b){return WA.prototype.u.call(this,"$N|"+a,b)}; +ZA.prototype.B=function(a,b,c){return new YA(a,b,c,this.isLive)};g.r(g.aB,g.O);g.h=g.aB.prototype;g.h.Kd=function(a,b){b?($A(this,a),EB(this)&&uB(this)):(a=a||{},dB(this,a),cB(this,a),this.S("dataupdated"))}; +g.h.N=function(){return this.Pa}; +g.h.fa=function(a){return g.P(this.Pa.experiments,a)}; +g.h.Qc=function(){return!this.va||this.allowLiveDvr}; +g.h.lo=function(){return!!(this.xa&&this.xa.videoInfos&&this.xa.videoInfos.length)}; +g.h.jG=function(a){for(var b=g.q(a),c=b.next();!c.done;c=b.next())switch(c=c.value,c.flavor){case "fairplay":c.Oe=this.Oe;c.Mn=this.Mn;c.Ln=this.Ln;break;case "widevine":c.Rm=this.Rm}this.rk=a;0=this.xa.videoInfos.length)&&(a=ht(this.xa.videoInfos[0]),a!=("fairplay"==this.uc.flavor)))for(b=g.q(this.rk),c=b.next();!c.done;c=b.next())if(c=c.value,a==("fairplay"==c.flavor)){this.uc=c;break}}; +g.h.Gu=function(a){this.Gg=a;this.Hu(new Ez((0,g.Cc)(this.Gg,function(b){return b.ge()})))}; +g.h.Wc=function(){var a={};this.Ba&&(a.fmt=ct(this.Ba),this.Vb&&ct(this.Vb)!=ct(this.Ba)&&(a.afmt=ct(this.Vb)));a.ei=this.eventId;a.list=this.playlistId;a.cpn=this.clientPlaybackNonce;this.videoId&&(a.v=this.videoId);this.fi&&(a.infringe=1);this.sh&&(a.splay=1);var b=BB(this);b&&(a.live=b);this.Lh&&(a.autoplay=1);this.Cp&&(a.sdetail=this.Cp);this.De&&(a.partnerid=this.De);this.osid&&(a.osid=this.osid);this.Zh&&(a.als=this.Zh);return a}; +g.h.ue=function(){var a=g.lz(this.Pa)||this.fa("web_l3_storyboard");if(!this.Ik)if(this.Da&&this.Da.storyboards){var b=this.Da.storyboards,c=b.playerStoryboardSpecRenderer;c&&c.spec?this.Ik=new WA(c.spec,this.lengthSeconds,void 0,!1,a):(b=b.playerLiveStoryboardSpecRenderer)&&b.spec&&this.ia&&(c=Eb(this.ia.o).index)&&(this.Ik=new ZA(b.spec,this.ia.isLive,c,a))}else this.Qp?this.Ik=new WA(this.Qp,this.lengthSeconds,void 0,!1,a):this.Do&&this.ia&&(b=Eb(this.ia.o).index)&&(this.Ik=new ZA(this.Do,this.ia.isLive, +b,a));return this.Ik}; +g.h.getStoryboardFormat=function(){if(this.Da&&this.Da.storyboards){var a=this.Da.storyboards;return(a=a.playerStoryboardSpecRenderer||a.playerLiveStoryboardSpecRenderer)&&a.spec||null}return this.Qp||this.Do}; +g.h.sc=function(){return this.ia&&!isNaN(this.ia.sc())?this.ia.sc():qB(this)?0:this.lengthSeconds}; +g.h.Ab=function(){return this.ia&&!isNaN(this.ia.Ab())?this.ia.Ab():0}; +g.h.getPlaylistSequenceForTime=function(a){if(this.ia&&this.Ba){var b=this.ia.o[this.Ba.id];if(!b)return null;var c=b.index.Re(a);b=b.index.gd(c);return{sequence:c,elapsed:Math.floor(1E3*(a-b))}}return null}; +g.h.isValid=function(){return!this.ea()&&!(!this.videoId&&!this.Ak)}; +g.h.Hb=function(){return EB(this)&&!this.di&&!this.Sj}; +g.h.tc=function(a){if(30==this.De)return(a=this.gf["default.jpg"])?a:this.videoId?g.yd("//docs.google.com/vt",{id:this.videoId,authuser:this.Nc,authkey:this.authKey}):"//docs.google.com/images/doclist/cleardot.gif";a||(a="hqdefault.jpg");var b=this.gf[a];return b||this.Pa.P||"pop1.jpg"==a||"pop2.jpg"==a||"sddefault.jpg"==a||"hq720.jpg"==a||"maxresdefault.jpg"==a?b:gz(this.Pa,this.videoId,a)}; +g.h.Ef=function(){return this.va||this.ze||this.yo||!(!this.liveUtcStartSeconds||!this.Ql)}; +g.h.Ml=function(){return!!this.ia&&(this.ia.Ml||!this.ze&&!this.va&&this.ia.w)}; +g.h.getAvailableAudioTracks=function(){return this.xa?0=c.Gg.length)c=!1;else{for(var d=g.q(c.Gg),e=d.next();!e.done;e=d.next()){e=e.value;if(!(e instanceof Nz)){c=!1;break a}var f=a.tb.getId();e.u&&(e.u.o=f,e.o=null)}c.Cm=a;c=!0}}c&&(b.S("internalaudioformatchange",b.T,!0),BJ(b)&&b.Ra("hlsaudio", +a.id))}}; +g.h.FE=function(){return this.getAvailableAudioTracks()}; +g.h.getAvailableAudioTracks=function(){return g.W(this.app,this.playerType).getAvailableAudioTracks()}; +g.h.getMaxPlaybackQuality=function(){var a=g.W(this.app,this.playerType);return a&&a.getVideoData().Ba?Fu(a.P?LG(a.U,a.P,SJ(a)):Du):"unknown"}; +g.h.getUserPlaybackQualityPreference=function(){var a=g.W(this.app,this.playerType);return a?a.getUserPlaybackQualityPreference():"auto"}; +g.h.getSubtitlesUserSettings=function(){var a=g.zL(this.app.A);return a?a.hF():null}; +g.h.resetSubtitlesUserSettings=function(){g.zL(this.app.A).oO()}; +g.h.setMinimized=function(a){this.app.setMinimized(a)}; +g.h.setGlobalCrop=function(a){this.app.G.setGlobalCrop(a)}; +g.h.getVisibilityState=function(){var a=this.app.N();a=this.app.I.o&&!g.P(a.experiments,"kevlar_miniplayer_disable_vis");return this.app.getVisibilityState(this.Mi(),this.isFullscreen()||Qy(this.app.N()),a,this.isInline(),this.app.I.B,this.app.I.A)}; +g.h.isMutedByMutedAutoplay=function(){return this.app.Qa}; +g.h.isInline=function(){return this.app.isInline()}; +g.h.setInternalSize=function(a,b){this.app.G.setInternalSize(new g.Sd(a,b))}; +g.h.Bb=function(){var a=g.W(this.app,void 0);return a?a.Bb():0}; +g.h.Mi=function(){var a=g.W(this.app,this.playerType);return!!a&&a.M.u}; +g.h.isFullscreen=function(){return this.app.isFullscreen()}; +g.h.setSafetyMode=function(a){this.app.N().enableSafetyMode=a}; +g.h.canPlayType=function(a){return this.app.canPlayType(a)}; +g.h.updatePlaylist=function(a){if(a){var b=this.getPlaylistId(),c=!1;if(b&&b!=a.list)if(this.fa("player_enable_playback_playlist_change"))c=!0;else return;void 0!==a.external_list&&this.app.setIsExternalPlaylist(a.external_list);var d=a.video;(b=this.app.getPlaylist())&&!c?this.isFullscreen()&&((c=d[b.index])&&c.encrypted_id!=b.ya().videoId||(a.index=b.index)):VS(this.app,{list:a.list,index:a.index,playlist_length:d.length});sC(this.app.getPlaylist(),a);this.na("onPlaylistUpdate")}else this.app.updatePlaylist()}; +g.h.updateVideoData=function(a,b){var c=g.W(this.app,this.playerType||1);c&&c.getVideoData().Kd(a,b)}; +g.h.updateEnvironmentData=function(a){this.app.N().Kd(a,!1)}; +g.h.sendVideoStatsEngageEvent=function(a){this.app.sendVideoStatsEngageEvent(a,this.playerType)}; +g.h.setCardsVisible=function(a,b,c){var d=g.XK(this.app.A);d&&d.Vl()&&d.setCardsVisible(a,b,c)}; +g.h.setInline=function(a){this.app.setInline(a)}; +g.h.isAtLiveHead=function(a){return this.app.isAtLiveHead(void 0,void 0===a?!0:a)}; +g.h.getVideoAspectRatio=function(){return this.app.G.getVideoAspectRatio()}; +g.h.getPreferredQuality=function(){var a=g.W(this.app);return a?a.getPreferredQuality():"unknown"}; +g.h.setPlaybackQualityRange=function(a,b){var c=g.W(this.app,this.playerType);if(c){var d=Bu(a,b||a,!0,"m");c.T.gq=d;if(c.P){var e=c.P;if(e.xa.o){var f=g.Xs[gy()];e=e.xa.videoInfos[0].ya().fc;f>e&&0!=e&&d.o==e||g.Ds("yt-player-quality",Fu(d),2592E3)}}WJ(c)}}; +g.h.onAdUxClicked=function(a){this.S("aduxclicked",a)}; +g.h.S=function(a,b){for(var c=1;c=this.start&&(aUB?.1:0,Pka=new uC;uC.prototype.o=null;uC.prototype.getDuration=function(){return this.duration||0}; +uC.prototype.getCurrentTime=function(){return this.currentTime||0}; +uC.prototype.u=function(){this.hasAttribute("controls")&&this.setAttribute("controls","true")};g.r(g.vC,g.A);g.h=g.vC.prototype;g.h.Gp=function(){}; +g.h.gj=ba(5);g.h.Uo=function(){return this.w}; +g.h.ak=function(a){var b="";a&&(xC(this,a),b=a.o);this.Xc()&&""==b||(b&&this.Xc()!=b&&this.Lp(b),uS||a&&a.u||this.load(),this.F||(this.addEventListener("volumechange",this.Cw),this.F=!0))}; +g.h.To=function(){var a=this.ua();a=window.MediaSource?new window.MediaSource:window.WebKitMediaSource?new window.WebKitMediaSource:new Jt(a);a=new Xt(a);this.ak(a.Sl);return a}; +g.h.playVideo=function(){this.Bf()&&this.seekTo(0);!this.Xc()&&this.w&&(g.M(Error("playVideo without src")),this.Lp(this.w.o),this.w.u||this.load());var a=this.play();!a&&wS&&gQ&&7<=UB&&g.Op(this,"playing",(0,g.x)(function(){g.Ho((0,g.x)(this.dx,this,this.getCurrentTime(),0),500)},this)); +return a}; +g.h.dx=function(a,b){this.Dh()||this.getCurrentTime()>a||10UB&&(a=Math.max(.1,a)),this.Kp(a))}; +g.h.stopVideo=function(){this.Xc()&&(vS&&nl&&0this.status&&!!this.u}; +g.h.Te=function(){if(this.I)return!!this.o.getLength();var a=this.policy.u;if(a&&this.G+a>Date.now())return!1;a=this.tl()||0;a=Math.max(16384,.125*a);this.P||(a=Math.max(a,16384));this.policy.nd&&tx(this)&&(a=1);return this.o.getLength()>=a}; +g.h.Ro=function(){this.Te();this.G=Date.now();this.P=!0;var a=this.o;this.o=new kw;return a}; +g.h.Ss=function(){this.Te();return this.o}; +g.h.ea=function(){return this.aborted}; +g.h.abort=function(){this.w&&this.w.cancel("Cancelling");this.A&&this.A.abort();this.aborted=!0}; +g.h.Up=function(){return!0}; +g.h.ru=function(){return this.C}; +g.h.Zj=function(){return this.errorMessage};g.h=rD.prototype;g.h.Ij=function(){return 2<=this.o.readyState}; +g.h.dd=function(a){try{return this.o.getResponseHeader(a)}catch(b){return g.M(b),""}}; +g.h.tl=function(){return+this.dd("content-length")}; +g.h.Qo=function(){return this.u}; +g.h.ko=function(){return 200<=this.status&&300>this.status&&!!this.response&&!!this.response.byteLength}; +g.h.Te=function(){return this.w&&!!this.response&&!!this.response.byteLength}; +g.h.Ro=function(){this.Te();var a=this.response;this.response=void 0;return new kw([new Uint8Array(a)])}; +g.h.Ss=function(){this.Te();return new kw([new Uint8Array(this.response)])}; +g.h.abort=function(){this.ea=!0;this.o.abort()}; +g.h.Up=function(){return!1}; +g.h.ru=function(){return!1}; +g.h.Zj=function(){return""};g.h=sD.prototype;g.h.jc=function(){return this.A?this.A.jc():""}; +g.h.start=function(a){AD(this,2);this.R=++sD.o;this.w?(this.M=gga(this.info,this.w.u,this.w.length),this.A=g.ox(this.info,this.u,this.Z,this.M)):(this.M=this.info.range,this.A=g.ox(this.info,this.u,this.Z));var b=!1;if(this.u.Ka&&2>this.info.u.u&&this.I){var c=this.A.get("aitags");if(c&&(nx(this.info)||this.info.ee())&&this.aa&&"auto"==gy()&&ky()){var d=cd(c).split(","),e=[];(0,g.y)(this.aa,function(f){g.$a(d,f)&&e.push(f)}); +0d.o&&4E12>a?a:(0,g.H)();iD(d,a,b);50>a-d.A&&jD(d)&&3!==cD(d)||gD(d,a,b,c);b=this.timing;b.u>b.oa&&dD(b,b.u)&&4>this.state?AD(this,4):FD(this)&&HD(this)&&AD(this,Math.max(3,this.state))}}; +g.h.KN=function(){if(!this.ea()&&this.o){if(!this.U&&this.o.Ij()&&this.o.dd("X-Walltime-Ms")){var a=parseInt(this.o.dd("X-Walltime-Ms"),10);this.U=((0,g.H)()-a)/1E3}this.o.Ij()&&this.o.dd("X-Restrict-Formats-Hint")&&this.u.Bv&&!ky()&&g.Ds("yt-player-headers-readable",!0,2592E3);if(a=parseInt(this.o.dd("X-Head-Seqnum"),10))this.ba=a}}; +g.h.eI=function(){var a=this.o;!this.ea()&&a&&(this.V.stop(),this.C=a.status,a=yia(this,a),7==a?BD(this):AD(this,a))}; +g.h.kO=function(){if(!this.ea()){var a=(0,g.H)(),b=!1;jD(this.timing)?(a=this.timing.I,mD(this.timing),this.timing.I-a>=.8*this.u.P?(this.F++,b=5<=this.F):this.F=0):(b=this.timing,b.Gf&&lD(b,(0,g.H)()),a-=b.P,this.u.qd&&01E3*this.u.Ic);this.F&&this.G&&this.G(this);b?ED(this,!1):this.V.start()}}; +g.h.ea=function(){return-1==this.state}; +g.h.dispose=function(){this.info.ee()&&6!=this.state&&(this.info.o[0].o.B=!1);AD(this,-1);this.G=null;this.V.dispose();this.u.pc||DD(this)}; +sD.DEBUG=!1;sD.o=0;var zD=-1;LD.prototype.skip=function(a){this.offset+=a};g.r(OD,g.O);OD.prototype.getDuration=function(){return this.w.index.gh()};gE.prototype.getDuration=function(){return this.o.index.gh()};HE.prototype.setPlaybackRate=function(a){this.w=Math.max(1,a)}; +HE.prototype.getPlaybackRate=function(){return this.w};g.r(ME,g.O);ME.prototype.seek=function(a){a!=this.A&&(this.C=0);this.A=a;var b=this.u.u,c=this.o.u,d=this.o.F,e=OE(this.u,a,this.u.F);d=OE(this.o,this.I.ha?a:e,d);a=Math.max(a,e,d);this.w=!0;this.B.u&&(NE(this.u,b),NE(this.o,c));return a}; +var Fia=2/24;SE.prototype.ya=function(){this.md("gv")}; +SE.prototype.md=function(a,b){this.B[a]=b?window.performance.timing.navigationStart+b:(0,g.N)()};g.r(TE,g.O);TE.prototype.G=function(a,b){var c=this.C.o.index.jb()<=b,d=this.F.u&&this.B.Qa;this.o={td:a,La:b};this.B.Qa&&this.A&&this.u&&(this.A=!1,"continue"!=a.event&&"stop"!=a.event||UE(this,this.u));this.u&&this.u.La==b&&(this.u=null);if(c||d)this.B.yb&&(a.startSecs+=isNaN(this.w)?0:this.w),c=this.F,c.M.push(a),c.S("cuepointsadded")};dF.prototype.send=function(){g.Eq(this.o,{format:"RAW",responseType:"arraybuffer",timeout:1E4,Fc:this.u,Ud:this.u,context:this});this.w=(0,g.N)()}; +dF.prototype.u=function(a){var b={rc:a.status,lb:a.response?a.response.byteLength:0,rt:(((0,g.N)()-this.w)/1E3).toFixed(3),shost:g.od(this.o),trigger:this.C};204==a.status||a.response?this.A&&this.A(Ps(b)):this.B(new Os("pathprobe.net",!1,b))};g.r(eF,g.O);g.r(oF,g.A);oF.prototype.reset=function(){this.started=!1;this.B.stop();this.o.o=[];this.w=[];this.u()}; +oF.prototype.u=function(){this.C=!0;if(!this.F){for(var a=3;this.C&&a;)this.C=!1,this.F=!0,Zia(this),this.F=!1,a--;this.G().eb()&&(a=mF(this.o,this.A),!isNaN(a)&&0x7ffffffffffff>a&&(a=(a-this.A)/this.R(),this.B.start(a)))}}; +oF.prototype.X=function(){this.w=[];this.o.o=[];g.A.prototype.X.call(this)};g.r(yF,g.O);g.h=yF.prototype; +g.h.initialize=function(a,b,c){a=a||0;this.S("videoformatchange",Oia(this.F));if(this.B.u){if(this.o.po){b=ux(this.o);for(var d in this.B.o)this.B.o[d].index.A=b}dja(this)}this.G&&fF(this.G,this.u.o);this.o.aa&&sx()&&this.Dc("streaming","ac."+!!window.AbortController,!0);d=isNaN(this.C)?0:this.C;this.C=this.B.u?d:a;c?(this.o.Uc?(this.nb=c,AF(this,c)):AF(this,!1),this.Ia.Ua()):(a=0==this.C,WF(this,this.u,this.u.o,a),WF(this,this.A,this.A.o,a),Lf(this.seek(this.C),function(){}),this.da.ya()); +(this.B.Hd||this.B.Bg)&&this.Dc("minMaxSq","minSq."+this.B.Hd+";maxSq"+this.B.Bg)}; +g.h.resume=function(){if(this.ba||this.ha)this.za=this.ha=this.ba=!1,this.Hf()}; +g.h.setAudioTrack=function(a){if(!this.ea()){var b=this.F;b.w=b.C.o[a.id];b.P=b.w;this.S("audioformatchange",new VC(b.P,b.B,"m"));this.S("reattachrequired")}}; +g.h.setPlaybackRate=function(a){a!=this.P.getPlaybackRate()&&this.P.setPlaybackRate(a)}; +g.h.IM=function(a){if(3!=a.state||!this.o.Xb||!(!this.w||this.ba||wE(a.info.o[0].o.info.video?this.u:this.A,this.C)>this.o.Xb)){var b=this.o.qd;if(!(!(b&&2<=a.state)||5<=a.state||a.F(0,g.N)()||OF(this,a,!1)}}}}}; +g.h.Hf=function(){FF(this);if(this.w&&Yt(this.w)&&!this.w.Sd()){var a=iE(this.u);a=this.o.gn&&a&&a.C;this.B.isLive&&!a?isNaN(this.M)?(this.M=this.C+3600,Zt(this.w,this.M)):this.M<=this.C+1800&&(this.M=Math.max(this.M+1800,this.C+3600),Zt(this.w,this.M)):this.w.isView()||(a=Math.max(this.A.getDuration(),this.u.getDuration()),(!isFinite(this.M)||this.M!=a)&&0=c||cthis.w&&(this.w=c,g.Mb(this.o)||(this.o={},this.A.stop(),this.u.stop())),this.o[b]=a,this.u.Ua())}}; +$F.prototype.B=function(){for(var a in this.o)this.S("rotated_need_key_info_ready",new JD(pja(this.o[a],this.w,a),"fairplay",!0));this.o={}};var t2={},$ra=(t2.DRM_TRACK_TYPE_AUDIO="AUDIO",t2.DRM_TRACK_TYPE_SD="SD",t2.DRM_TRACK_TYPE_HD="HD",t2.DRM_TRACK_TYPE_UHD1="UHD1",t2);g.r(dG,g.A);dG.prototype.B=function(a){this.ea()||(0!=a.status&&a.response?(HA("drm_net_r"),a=new Uint8Array(a.response),(a=cG(a))?this.w(a):this.o(this,"drm.net","t.p")):this.A(a))}; +dG.prototype.A=function(a){this.ea()||this.o(this,a.status?"drm.net.badstatus":"drm.net.connect","t.r;c."+a.status)}; +dG.prototype.F=function(a){if(!this.ea()){HA("drm_net_r");var b="LICENSE_STATUS_OK"==a.status?0:9999,c=null;if(a.license)try{c=g.eg(a.license)}catch(n){}if(0!=b||c){c=new bG(b,c);0!=b&&a.reason&&(c.errorMessage=a.reason);if(a.authorizedFormats){b={};for(var d=[],e={},f=g.q(a.authorizedFormats),k=f.next();!k.done;k=f.next())if(k=k.value,k.trackType&&k.keyId){var l=$ra[k.trackType];if(l){"HD"==l&&a.isHd720&&(l="HD720");b[l]||(d.push(l),b[l]=!0);var m=null;try{m=g.eg(k.keyId)}catch(n){}m&&(e[g.bg(m, +4)]=l)}}c.o=d;c.u=e}a.nextFairplayKeyId&&(c.nextFairplayKeyId=a.nextFairplayKeyId);a=c}else a=null;a?this.w(a):this.o(this,"drm.net","t.p;p.i")}}; +dG.prototype.C=function(a){this.ea()||(a=a.error,this.o(this,"drm.net.badstatus","t.r;p.i;c."+a.code+";s."+a.status))};g.r(eG,g.A);g.h=eG.prototype;g.h.kI=function(a){if(this.C){var b=a.messageType||"license-request";this.C.call(this.w,new Uint8Array(a.message),b)}}; +g.h.lI=function(){this.I&&this.I.call(this.w,this.o.keyStatuses)}; +g.h.lA=function(a,b){g.M(b);if(this.A){var c=a;b instanceof DOMException&&(c+=";n."+b.name+";m."+b.message);this.A.call(this.w,c)}}; +g.h.GK=function(){this.ea()||dl("xboxone")&&this.A&&this.A.call(this.w,"closed")}; +g.h.SA=function(a){this.C&&this.C.call(this.w,a.message,"license-request")}; +g.h.RA=function(a){if(this.A){if(this.u){var b=this.u.error.code;a=this.u.error.systemCode}else b=a.errorCode&&a.errorCode.code,a=a.systemCode;this.A.call(this.w,"t.prefixedKeyError;c."+b+";sc."+a)}}; +g.h.QA=function(){this.G&&this.G.call(this.w)}; +g.h.update=function(a){if(this.o)return this.o.update(a).then(null,Fo((0,g.x)(this.lA,this,"t.update")));this.u?this.u.update(a):this.F.addKey?this.F.addKey(this.M.o,a,this.P,this.sessionId):this.F.webkitAddKey(this.M.o,a,this.P,this.sessionId);return lr()}; +g.h.X=function(){this.o&&this.o.close();this.F=null;g.A.prototype.X.call(this)};g.r(gG,g.A);g.h=gG.prototype;g.h.createSession=function(a,b){var c=a.initData;if(this.o.keySystemAccess){b&&b("createsession");var d=this.C.createSession();"com.youtube.fairplay"==this.o.o&&(c=iG(c,this.o.Oe));b&&b("genreq");c=d.generateRequest(a.contentType,c);d=new eG(null,null,null,d,null);c.then(function(){b&&b("genreqsuccess")},Fo((0,g.x)(d.lA,d,"t.generateRequest"))); +return d}if(xz(this.o))return uja(this,c);if(Az(this.o))return tja(this,c);this.u.generateKeyRequest?this.u.generateKeyRequest(this.o.o,c):this.u.webkitGenerateKeyRequest(this.o.o,c);return this.A=new eG(this.u,this.o,c,null,null)}; +g.h.oI=function(a){var b=jG(this,a);b&&b.SA(a)}; +g.h.nI=function(a){var b=jG(this,a);b&&b.RA(a)}; +g.h.mI=function(a){var b=jG(this,a);b&&b.QA(a)}; +g.h.X=function(){g.A.prototype.X.call(this);delete this.u};var u2={},Bja=(u2.widevine="DRM_SYSTEM_WIDEVINE",u2.fairplay="DRM_SYSTEM_FAIRPLAY",u2.playready="DRM_SYSTEM_PLAYREADY",u2);g.r(lG,g.O);g.h=lG.prototype; +g.h.iI=function(a,b){if(!this.ea()){kG(this,"onkmtyp"+b);if(!g.P(this.w.experiments,"html5_provisioning_killswitch"))switch(b){case "license-request":case "license-renewal":case "license-release":break;case "individualization-request":Aja(this,a);return;default:this.S("ctmp","message_type","t."+b+";l."+a.byteLength)}this.P||(HA("drm_gk_f"),this.P=!0,this.S("newsession",this));if(yz(this.u)){var c=nG(a);if(!c)return;a=c}Bz(this.u)&&!this.T.useInnertubeDrmService()&&(a=Av(g.bg(a)));c=new dG(a,++this.U, +(0,g.x)(this.mL,this),(0,g.x)(this.lL,this));g.B(this,c);pG(this,c)}}; +g.h.gI=function(){this.ea()||(kG(this,"onkyadd"),this.F||(this.S("sessionready"),this.F=!0))}; +g.h.jI=function(a){var b=this;this.ea()||0>=a.size||(a.forEach(function(c,d){var e=yz(b.u)?d:c,f=new Uint8Array(yz(b.u)?c:d);yz(b.u)&&sG(f);var k=g.bg(f,4);sG(f);f=g.bg(f,4);b.o[k]?b.o[k].status=e:b.o[f]?b.o[f].status=e:b.o[k]={type:"",status:e}}),kG(this,"onkeystatuschange"),this.S("keystatuseschange",this))}; +g.h.hI=function(a){this.ea()||mG(this,"drm.keyerror",!0,a)}; +g.h.mL=function(a){var b=this;if(!this.ea())if(kG(this,"onlcsrsp"),0!=a.statusCode)mG(this,"drm.auth",!0,"t.f;c."+a.statusCode,a.errorMessage||void 0);else{HA("drm_kr_s");if(g.P(this.w.experiments,"outertube_streaming_data_always_use_staging_license_service")&&a.heartbeatParams&&a.heartbeatParams.url){var c=this.u.u.match(/(.*)youtube.com/g);c&&(a.heartbeatParams.url=c[0]+a.heartbeatParams.url)}a.heartbeatParams&&this.S("newlicense",a.heartbeatParams);a.o&&(this.C=a.o,this.M=kj(this.C,function(d){return d.includes("HDR")})); +a.u&&(this.o=Bb(a.u,function(d){return{type:d,status:"unknown"}})); +Az(this.u)&&(a.message=g.eg(Bv(a.message)));this.A&&(kG(this,"updtks"),this.A.update(a.message).then(function(){HA("drm_kr_f");if(!oG(b))if(kG(b,"ksApiUnsup"),zz(b.u)){var d=qG(b.C);480=Math.abs(e.value.cryptoPeriodIndex-c)){c=!0;break a}c=!1}c=!c}c?c=0:(c=a.o,c=1E3*Math.max(0,Math.random()*((isNaN(c)?120:c)-30)));this.o.push({time:b+c,info:a});this.u.Ua(c)};g.r(BG,g.O);g.h=BG.prototype;g.h.ua=function(){return this.P}; +g.h.pI=function(a){AG(this,"onecpt");EG(this,new Uint8Array(a.initData),a.initDataType)}; +g.h.TL=function(a){AG(this,"onndky");EG(this,a.initData,a.contentType)}; +g.h.yL=function(){var a=this;if(!this.ea())if(!g.P(this.u.experiments,"html5_drm_set_server_cert")||g.$y(this.u)&&!g.gl())HG(this);else{var b=sja(this.M);b?b.then(Fo(function(c){SB(a.T)&&a.S("ctmp","ssc",c)}),Fo(function(c){a.S("ctmp","ssce","n."+c.name+";m."+c.message)})).then(Fo(function(){return HG(a)})):HG(this)}}; +g.h.mK=function(a){if(!this.ea()){g.M(a);var b="t.a";a instanceof DOMException&&(b+=";n."+a.name+";m."+a.message);this.S("licenseerror","drm.unavailable",!0,b,"HTML5_NO_AVAILABLE_FORMATS_FALLBACK")}}; +g.h.Zv=function(a){this.A.push(a);DG(this)}; +g.h.MA=function(a){this.ea()||(AG(this,"onnelcswhb"),a&&!this.ga&&(this.ga=a,this.S("heartbeatparams",a)))}; +g.h.OA=function(){this.ea()||(AG(this,"newlcssn"),this.A.shift(),this.R=!1,DG(this))}; +g.h.dB=function(){if(xz(this.o)&&(AG(this,"onsnrdy"),this.ma--,0==this.ma)){var a=this.B;a.u.msSetMediaKeys(a.w)}}; +g.h.rz=function(a){this.ea()||(AG(this,"onksch"),GG(this,rG(a,this.aa)),this.S("keystatuseschange",a))}; +g.h.CA=function(){this.ea()||this.Z||!zz(this.o)||(AG(this,"onhdet"),this.U=UJ,this.S("hdproberequired"),this.S("qualitychange"))}; +g.h.pA=function(a,b){this.ea()||this.S("ctmp",a,b)}; +g.h.zA=function(a,b){this.ea()||this.S("fairplay_next_need_key_info",a,b)}; +g.h.sz=function(a,b,c,d){this.ea()||this.S("licenseerror",a,b,c,d)}; +g.h.X=function(){this.o.keySystemAccess&&this.P.setMediaKeys(null);this.P=null;this.A=[];for(var a=g.q(this.w.values),b=a.next();!b.done;b=a.next())b=b.value,b.unsubscribe("ctmp",this.pA,this),b.unsubscribe("hdentitled",this.CA,this),b.unsubscribe("keystatuseschange",this.rz,this),b.unsubscribe("licenseerror",this.sz,this),b.unsubscribe("newlicense",this.MA,this),b.unsubscribe("newsession",this.OA,this),b.unsubscribe("sessionready",this.dB,this),b.unsubscribe("fairplay_next_need_key_info",this.zA, +this),b.dispose();a=this.w;a.keys=[];a.values=[];this.ha&&(this.ha.dispose(),this.ha=null);g.O.prototype.X.call(this)}; +g.h.Za=function(){for(var a={systemInfo:this.o.Za(),sessions:[]},b=g.q(this.w.values),c=b.next();!c.done;c=b.next())a.sessions.push(c.value.Za());return a}; +g.h.ge=function(){return 0>=this.w.values.length?"no session":this.w.values[0].ge()+(this.F?"/KR":"")};g.r(JG,g.O);JG.prototype.setPlaybackRate=function(a){this.G=a};TG.prototype.isEmpty=function(){return this.endTime===this.startTime};UG.prototype.fa=function(a){return g.P(this.o.experiments,a)}; +var XG={other:1,none:2,wifi:3,cellular:7};g.r(cH,g.A);cH.prototype.onError=function(a){"player.fatalexception"!==a&&(a.match(asa)?this.U++:this.V++)}; +cH.prototype.C=function(){if(!(this.I||0>this.w)){eH(this);var a=g.WG(this.u)-this.w,b="PLAYER_PLAYBACK_STATE_UNKNOWN",c=this.o.u;this.o.isError()?b=c&&"auth"==c.errorCode?"PLAYER_PLAYBACK_STATE_UNKNOWN":"PLAYER_PLAYBACK_STATE_ERROR":g.V(this.o,2)?b="PLAYER_PLAYBACK_STATE_ENDED":g.V(this.o,64)?b="PLAYER_PLAYBACK_STATE_UNSTARTED":g.V(this.o,16)||g.V(this.o,32)?b="PLAYER_PLAYBACK_STATE_SEEKING":g.V(this.o,1)&&g.V(this.o,4)?b="PLAYER_PLAYBACK_STATE_PAUSED_BUFFERING":g.V(this.o,1)?b="PLAYER_PLAYBACK_STATE_BUFFERING": +g.V(this.o,4)?b="PLAYER_PLAYBACK_STATE_PAUSED":g.V(this.o,8)&&(b="PLAYER_PLAYBACK_STATE_PLAYING");var d=BB(this.u.videoData);c="LIVE_STREAM_MODE_UNKNOWN";"live"==d?c="LIVE_STREAM_MODE_LIVE":"dvr"==d&&(c="LIVE_STREAM_MODE_DVR");d=fH(this.u);var e=0>this.A?a:this.A-this.w;a=this.u.o.oa+36E5<(0,g.N)();b={started:0<=this.A,stateAtSend:b,joinLatencySecs:e,playTimeSecs:this.F,rebufferTimeSecs:this.G,seekCount:this.M,networkErrorCount:this.U,nonNetworkErrorCount:this.V,playerCanaryType:d,isAd:this.u.videoData.isAd(), +liveMode:c,hasDrm:!!g.yB(this.u.videoData),isGapless:this.u.videoData.Df};!a&&this.u.fa("html5_health_to_gel")&&g.Rq("html5PlayerHealthEvent",b);this.u.fa("html5_health_to_qoe")&&(b.muted=a,this.ba(Ps(b)));this.I=!0;this.dispose()}}; +cH.prototype.X=function(){this.I||this.C();g.A.prototype.X.call(this)}; +var asa=/\bnet\b/;g.yJ=yb(function(){var a="";try{var b=g.oe("CANVAS").getContext("webgl");b&&(b.getExtension("WEBGL_debug_renderer_info"),a=b.getParameter(37446),a=a.replace(/[ :]/g,"_"))}catch(c){}return a});g.r(hH,g.A);g.h=hH.prototype;g.h.DF=function(){var a=g.WG(this.o);jH(this,a)}; +g.h.uk=function(a){if(!this.ea()&&(a=0<=a?a:g.WG(this.o),-1<["PL","B","S"].indexOf(this.w)&&(!g.Mb(this.u)||a>=this.C+30)&&(g.gH(this,a,"vps",[this.w]),this.C=a),!g.Mb(this.u)))if(7E3==this.V&&g.Uq(Error("Sent over 7000 pings")),7E3<=this.V)this.u={};else{lH(this,a);var b=a,c=this.o.C(),d=c.droppedVideoFrames||0,e=c.totalVideoFrames||0,f=d-this.wa,k=e&&!this.Ca;if(d>c.totalVideoFrames||5E3b-this.F+2||uH(this,a,b))){var d=this.u.Wc();c=d.volume;var e=c!=this.R;d=d.muted;d!=this.M?(this.M=d,c=!0):(!e||0<=this.C||(this.R=c,this.C=b),c=b-this.C,0<=this.C&&2e;!(1this.o,e=iia(this.A);kI(this,this.ha,e,d,"qoe.slowseek",function(){},"timeout"); +e=e&&isFinite(this.o)&&0this.P&&f,!f,"qoe.longrebuffer",e,"decoder_freeze"),this.I=d);this.P=c;d=PC(this.A);f=g.QC(this.A);c=d&&f&&Pt(b.Dd(),c+5);kI(this,this.ba,c,d&&!f,"qoe.longrebuffer",e,"new_elem_nnr");kI(this,this.R,d&&f,d&&!f,"qoe.longrebuffer",function(){},"timeout"); +this.F.start()}}; +gI.prototype.reset=function(){this.o=this.u=this.w=0;this.C=!1}; +gI.prototype.Za=function(){var a={},b=(0,g.N)();this.w&&(a.wsd=(b-this.w).toFixed());this.u&&(a.wtd=(b-this.u).toFixed());this.o&&(a.wssd=(b-this.o).toFixed());return a};g.r(pI,g.O);g.h=pI.prototype;g.h.getCurrentTime=function(){return!isNaN(this.w)&&isFinite(this.w)?this.w:this.o&&zI(this)?this.o.getCurrentTime()+this.A:this.F||0}; +g.h.isAtLiveHead=function(a){if(!this.u)return!1;void 0==a&&(a=this.getCurrentTime());return YH(this.u,a)}; +g.h.seekTo=function(a,b){var c=void 0===b?{}:b,d=void 0===c.CC?!1:c.CC,e=void 0===c.DC?0:c.DC,f=void 0===c.Fl?!1:c.Fl;c=void 0===c.Qu?0:c.Qu;var k=a,l=!isFinite(k)||(this.u?YH(this.u,k):k>=this.sc())||!g.GB(this.T);l||this.S("ctmp","seeknotallowed",k+";"+this.sc());if(!l)return this.C&&(this.C=null,xI(this)),Df(this.getCurrentTime());if(a==this.w&&this.R)return this.G;this.R&&qI(this);this.G||(this.G=new WC);a&&!isFinite(a)&&sI(this,!1);k=a;(wI(this)&&!(this.o&&0b.w&&3!=b.u.getVisibilityState()&&dH(b)}a.o&&(a=a.o,a.o.fa("html5_qoe_user_intent_match_health")&&a.ga&&0>a.B&&a.o.o.Ma&&oH(a));g.Q(this.A.experiments,"html5_background_quality_cap")&&this.w&&YJ(this);this.A.gn&&!this.T.backgroundable&&this.o&&!this.M.u&&(this.M.isBackground()&&this.o.Uo()?(this.Ra("bgmobile","suspend"),g.LJ(this,!0)):this.M.isBackground()||BJ(this)&&this.Ra("bgmobile", +"resume"))}; +g.h.UL=function(a,b){this.NA(new JD(b,a))}; +g.h.NA=function(a){this.Aa.set(a.initData,a);this.F&&(FG(this.F,a),XJ(this,"html5_eme_loader_sync")||this.Aa.remove(a.initData))}; +g.h.FA=function(){g.wu&&this.da&&this.da.o&&this.F&&(Gja(this.F,this.da.o),this.da=null)}; +g.h.yN=function(a){this.T.OC=Bu("auto",a,!1,"u");YJ(this)}; +g.h.PG=function(a){IJ(this,a.reason,a.video.info,a.audio.info)}; +g.h.sL=function(a){GJ(this,a.reason,a.audio.info)}; +g.h.tL=function(a){this.S("localmediacomplete",a)}; +g.h.Ki=function(a){var b=this;Cka(this,a);if("fmt.unplayable"!=a.errorCode&&"fmt.unparseable"!=a.errorCode||!gK(this,a.errorCode,a.details)){var c=/^pp/.test(this.T.clientPlaybackNonce);if(Bka(a)){var d=18400;this.A.fa("ipp_signature_cipher_killswitch")||(d=g.L("STS",void 0)?g.L("STS",void 0):d);a.details.sts=""+d;if(iK(this)){g.V(this.u,4)||g.V(this.u,512)?(this.pd=!0,nJ(this)):(a.o&&(a.details.e=a.errorCode,a.errorCode="qoe.restart",a.o=!1),this.B.onError(a.errorCode,Ps(a.details)),jK(this));return}6048E5< +(0,g.N)()-this.A.oa&&lK(this,"signature")}if(XJ(this,"html5_disable_codec_on_platform_errors")){if(d=this.T.Ba,(mK(a)||"fmt.decode"===a.errorCode||"fmt.unplayable"===a.errorCode)&&d&&("1"==d.u||et(d))){a.details.e=a.errorCode;a.details.cfall=d.u;this.B.onError("qoe.restart",Ps(a.details));this.A.A.I.add(d.u);dK(this,!0);return}}else if(mK(a)&&this.T.xa&&this.T.xa.u){this.B.onError(a.errorCode,Ps(a.details));this.Ra("highrepfallback","1",!0);!XJ(this,"html5_hr_logging_killswitch")&&/^hr/.test(this.T.clientPlaybackNonce)&& +btoa&&this.Ra("afmts",btoa(this.T.adaptiveFormats),!0);aia(this.T);lJ(this);nJ(this);fK(this);this.playVideo();return}if(a.o){c=this.w?this.w.F.A:null;if(mK(a)&&c&&c.isLocked())var e="FORMAT_UNAVAILABLE";else if(!this.A.B&&"auth"==a.errorCode&&429==a.details.rc){e="TOO_MANY_REQUESTS";var f="6"}g.jJ(this,a.errorCode,e,Ps(a.details),f)}else this.B.onError(a.errorCode,Ps(a.details)),c&&"manifest.net.connect"==a.errorCode&&(a="https://www.youtube.com/generate_204?cpn="+this.T.clientPlaybackNonce+"&t="+ +(0,g.N)(),(new dF(a,"manifest",function(k){b.Yh=!0;b.Ra("pathprobe",k)},function(k){return b.B.onError(k.errorCode,Ps(k.details))})).send())}}; +g.h.pauseVideo=function(a){a=void 0===a?!1:a;if((g.V(this.u,64)||g.V(this.u,2))&&!a)if(g.V(this.u,8))tJ(this,MC(this.u,4,8));else return;g.V(this.u,128)||(a?tJ(this,KC(this.u,256)):tJ(this,MC(this.u,4,8)));this.o&&this.o.pause();g.GB(this.T)&&this.w&&RJ(this,!1)}; +g.h.stopVideo=function(){this.pauseVideo();this.w&&(RJ(this,!1),CF(this.w))}; +g.h.seekTo=function(a,b){b=void 0===b?{}:b;g.V(this.u,2)&&BJ(this);this.C.seekTo(a,b)}; +g.h.getCurrentTime=function(){return this.C.getCurrentTime()}; +g.h.getPlaylistSequenceForTime=function(a){return this.T.getPlaylistSequenceForTime(a-this.Bb())}; +g.h.getDuration=function(){return this.T.lengthSeconds?this.T.lengthSeconds+this.Bb():bK(this)?bK(this):0}; +g.h.eF=function(){var a=new bja;if(this.w){var b=this.A.schedule;a.w=b.G;a.B=b.M;a.bandwidthEstimate=wy(b);a.o="d."+ty(b).toFixed(2)+";st."+(1E9*(b.o.o()||0)).toFixed(2)+";bw."+b.u.o().toFixed(0)+";abw."+b.I.o().toFixed(0)+";v50."+qy(b.w,.5).toFixed(2)+";v92."+qy(b.w,.92).toFixed(2)+";v96."+qy(b.w,.96).toFixed(2)+";v98."+qy(b.w,.98).toFixed(2);b=this.w;if(b.w&&!au(b.w)&&(a.u=wE(b.u,b.C),a.A=wE(b.A,b.C),b.o.oa)){var c=vE(b.u),d=vE(b.A),e=Nt(b.w.u.ud(),"_"),f=Nt(b.w.o.ud(),"_");a.o=(a.o||"")+(";lvq."+ +c+";laq."+d+";lvb."+e+";lab."+f)}a.bandwidthEstimate=KE(b.P)}else this.o&&(a.u=yC(this.o));a.C=this.xx();return a}; +g.h.Za=function(a){var b={};if(void 0===a?0:a){g.Ra(b,this.B.Za());this.o&&(g.Ra(b,this.o.Za()),g.Ra(b,this.Ur()));this.w&&g.Ra(b,this.w.Za());this.F&&(b.drm=this.F.Za());b.state=this.u.o.toString(16);g.V(this.u,128)&&(b.debug_error=this.u.u);EJ(this)&&(b.prerolls=this.V.join(","));this.T.qh&&(b.ismb=this.T.qh);"UNKNOWN"!=this.T.latencyClass&&(b.latency_class=this.T.latencyClass);this.T.isLowLatencyLiveStream&&(b.lowlatency="1");this.T.va&&(this.T.ia&&by(this.T.ia)&&(b.segduration=by(this.T.ia)), +a=this.C,b.lat=a.I?SH(a.I.A):0,b.liveutcstart=this.T.liveUtcStartSeconds);b.relative_loudness=this.T.Am.toFixed(3);if(a=g.HJ(this))b.optimal_format=a.ya().qualityLabel;b.user_qual=gy()}b.debug_videoId=this.T.videoId;return b}; +g.h.addCueRange=function(a){var b=this.R;a=[a];b.u();nF(b.o,a);b.A=NaN;b.u()}; +g.h.removeCueRange=function(a){pF(this.R,[a])}; +g.h.AN=function(){sJ(this)}; +g.h.togglePictureInPicture=function(){this.o&&this.o.togglePictureInPicture()}; +g.h.QG=function(a){this.rd.stop();var b=a.target.Xc();if(this.o&&this.o.Xc()&&this.o.Xc()==b){AK(this,a.type);switch(a.type){case "error":var c=CC(this.o)||"";if("capability.changed"==c){AJ(this);return}if(0this.o.getCurrentTime()&&this.w)return;break;case "resize":BK(this);this.T.Ba&&"auto"==this.T.Ba.ya().quality&&this.S("internalvideoformatchange",this.T,!1);break;case "pause":if(this.Md&&g.V(this.u,8)&&!g.V(this.u,1024)&&0==this.getCurrentTime()&&g.oz){uK(this,"safari_autoplay_disabled");return}}if(this.o&&this.o.Xc()==b){this.S("videoelementevent",a);b=this.u;if(!g.V(b,128)){c=this.Ia;e=this.o;var f=this.A.experiments;d=b.o;e=e?e:a.target;var k=e.getCurrentTime();if(!g.V(b, +64)||"ended"!=a.type&&"pause"!=a.type){var l=e.Bf()||1Math.abs(k-e.getDuration());k="ended"==a.type||"waiting"==a.type||"timeupdate"==a.type&&!g.V(b,4)&&!EC(c,k);if("pause"==a.type&&e.Bf()||l&&k)0b-this.Wa)){var c=this.o.Mi();this.Wa=b;c!=this.M.u&&(Xja(this.M,c),AJ(this).then(function(){return BJ(a)})); +this.S("airplayactivechange")}}; +g.h.ir=function(){var a=this.o;a&&this.Ma&&!this.T.se&&!LA("vfp",this.I.timerName)&&2<=a.je()&&!a.Bf()&&0Math.abs(c-a)?(this.Ra("setended","ct."+a+";bh."+b+";dur."+c+";live."+ +d),d&&XJ(this,"html5_set_ended_in_pfx_live_cfl")||(this.o.So()?this.seekTo(0):hJ(this))): +(g.QC(this.u)||zK(this,"progress_fix"),tJ(this,KC(this.u,1)))):(c&&!d&&!e&&0d-1&&this.Ra("misspg","t:"+a.toFixed(2)+";d:"+d+";r:"+c.toFixed(2)+";bh:"+b.toFixed(2))),g.V(this.u,4)&&g.QC(this.u)&&5this.pe)a="drm.sessionlimitexhausted",b=!1;else if(XJ(this,"html5_drm_fallback_to_playready_on_retry")&&"drm.keyerror"==a&&2>this.qe&&(this.qe++,lJ(this),1Math.random()&&g.Uq(Error("Botguard not available after 2 attempts")),!a&&5>this.Ea)){this.pc.Ua();this.Ea++;return}if("c1b"in c.o){var d=Uja(this.B);d&&qfa(c).then(function(e){e&&!b.wa&&d&&(d(e),b.wa=!0)})}else if(a=ofa(c))Tja(this.B,a),this.wa=!0}}; +g.h.Ab=function(){return this.C.Ab()}; +g.h.Bb=function(){return this.C?this.C.Bb():0}; +g.h.getStreamTimeOffset=function(){return this.C?this.C.getStreamTimeOffset():0}; +g.h.setPlaybackRate=function(a){var b=this.T.xa&&this.T.xa.videoInfos&&32=a)){a-=this.o.length;for(var b=0;b=(a||1)}; +g.h.PD=function(){for(var a=this.w.length-1;0<=a;a--)OL(this,this.w[a]);this.o.length==this.u.length&&4<=this.o.length||(4>this.u.length?this.Yw(4):(this.o=[],(0,g.y)(this.u,function(b){OL(this,b)},this)))}; +NL.prototype.fillPool=NL.prototype.Yw;NL.prototype.getTag=NL.prototype.gF;NL.prototype.releaseTag=NL.prototype.eO;NL.prototype.hasTags=NL.prototype.RF;NL.prototype.activateTags=NL.prototype.PD;g.r(g.QL,g.vC);g.h=g.QL.prototype;g.h.isView=function(){return!0}; +g.h.Gp=function(){var a=this.o.getCurrentTime();if(ae?RL(this,"next_player_future"):(this.G=d,this.A=du(a,c,d,!0),this.B=du(a,e,f,!1),a=this.u.getVideoData().clientPlaybackNonce,this.o.Ra("gaplessPrep", +"cpn."+a),hK(this.o,this.A),PJ(this.o,UL(b,c,d,!this.o.getVideoData().isAd())),VL(this,2),YL(this))))}else RL(this,"no-elem")}; +g.h.hk=function(a){var b=XL(this),c=a==b.fC;b=c?this.A.o:this.A.u;c=c?this.B.o:this.B.u;if(b.isActive()&&!c.isActive()){var d=this.G;Pt(a.ud(),d-.01)&&(VL(this,4),b.setActive(!1),this.u.Ra("sbh","1"),c.setActive(!0));a=this.B.u;this.B.o.isActive()&&a.isActive()&&VL(this,5)}}; +g.h.LA=function(){4<=this.w.status&&6>this.w.status&&RL(this,"player-reload-after-handoff")}; +g.h.X=function(){WL(this);this.o.unsubscribe("newelementrequired",this.LA,this);if(this.A){var a=this.A.u;this.A.o.o.unsubscribe("updateend",this.hk,this);a.o.unsubscribe("updateend",this.hk,this)}g.A.prototype.X.call(this)}; +g.h.Ez=function(a){g.bH(a,128)&&RL(this,"player-error-event")};g.r(ZL,g.A);ZL.prototype.clearQueue=function(){this.B&&this.B.reject("Queue cleared");$L(this)}; +ZL.prototype.X=function(){$L(this);g.A.prototype.X.call(this)};g.r(eM,g.A);eM.prototype.get=function(a){cM(this);var b=this.data.find(function(c){return c.key===a}); +return b?b.value:null}; +eM.prototype.set=function(a,b,c){this.remove(a,!0);cM(this);a={key:a,value:b,expire:Infinity};c&&isFinite(c)&&(c*=1E3,a.expire=(0,g.N)()+c);for(this.data.push(a);this.data.length>this.w;)(c=this.data.shift())&&fM(this,c,!0);dM(this)}; +eM.prototype.remove=function(a,b){b=void 0===b?!1:b;var c=this.data.find(function(d){return d.key===a}); +c&&(fM(this,c,b),g.eb(this.data,function(d){return d.key===a}),dM(this))}; +eM.prototype.X=function(){var a=this;g.A.prototype.X.call(this);this.data.forEach(function(b){fM(a,b,!0)}); +this.data=[]};g.r(kM,g.A);kM.prototype.w=function(a){this.u=a[a.length-1].intersectionRatio}; +kM.prototype.X=function(){g.A.prototype.X.call(this);this.u=null;this.o&&this.o.disconnect()};var w2;w2={};g.lM=(w2.STOP_EVENT_PROPAGATION="html5-stop-propagation",w2.IV_DRAWER_ENABLED="ytp-iv-drawer-enabled",w2.IV_DRAWER_OPEN="ytp-iv-drawer-open",w2.MAIN_VIDEO="html5-main-video",w2.VIDEO_CONTAINER="html5-video-container",w2.HOUSE_BRAND="house-brand",w2);g.r(nM,g.R);g.h=nM.prototype;g.h.PF=function(){this.G=new g.ph(0,0,0,0);this.w=new g.ph(0,0,0,0)}; +g.h.km=function(a){g.Cn(this.element,arguments)}; +g.h.ke=function(){if(this.u){var a=this.getPlayerSize();if(!a.isEmpty()){var b=this.w;b=!g.Td(a,new g.Sd(b.width,b.height));var c=vM(this);b&&(this.w.width=a.width,this.w.height=a.height);a=this.app.N();(c||b||a.ma)&&this.app.u.S("resize",this.getPlayerSize())}}}; +g.h.cJ=function(a,b){this.updateVideoData(b)}; +g.h.QF=function(a){a.getVideoData()&&this.updateVideoData(a.getVideoData())}; +g.h.updateVideoData=function(a){if(this.u){var b=this.app.N();nl&&(this.u.setAttribute("x-webkit-airplay","allow"),a.title?this.u.setAttribute("title",a.title):this.u.removeAttribute("title"));wB(a)?this.u.setAttribute("disableremoteplayback",""):this.u.removeAttribute("disableremoteplayback");this.u.setAttribute("controlslist","nodownload");b.zo&&a.videoId&&(this.u.poster=a.tc("default.jpg"));g.P(b.experiments,"html5_send_origin_for_progressive")&&a.xa&&!a.xa.o&&this.u.setAttribute("crossorigin", +"anonymous")}b=g.CB(a,"yt:bgcolor");this.A.style.backgroundColor=b?b:"";this.U=Ey(g.CB(a,"yt:stretch"));this.V=Ey(g.CB(a,"yt:crop"),!0);g.K(this.element,"ytp-dni",a.lc);this.ke()}; +g.h.setGlobalCrop=function(a){this.M=Ey(a,!0);this.ke()}; +g.h.setCenterCrop=function(a){this.da=a;this.ke()}; +g.h.getPlayerSize=function(){var a=this.app.N(),b=this.app.u.isFullscreen();if(b&&el())return new g.Sd(window.outerWidth,window.outerHeight);if(b||a.fn){if(window.matchMedia){a="(width: "+window.innerWidth+"px) and (height: "+window.innerHeight+"px)";this.F&&this.F.media==a||(this.F=window.matchMedia(a));var c=this.F&&this.F.matches}if(c)return new g.Sd(window.innerWidth,window.innerHeight)}else{if(!isNaN(this.B.width)&&!isNaN(this.B.height))return this.B.clone();if(this.aa&&this.Z&&!this.app.isWidescreen())for(a= +0;a(a.deltaX||-a.deltaY)?-this.G:this.G;this.cj(b);g.Kp(a)}; +g.h.mJ=function(a){a=(a-g.Eh(this.w).x)/this.M*this.C+this.minimumValue;this.cj(a)}; +g.h.cj=function(a,b){b=void 0===b?"":b;var c=g.Md(a,this.minimumValue,this.maximumValue);""==b&&(b=c.toString());this.la("valuenow",c);this.la("valuetext",b);this.U.style.left=(c-this.minimumValue)/this.C*(this.M-this.R)+"px";this.u=c}; +g.h.focus=function(){this.V.focus()};g.r(rO,pO);rO.prototype.Z=function(){this.B.setPlaybackRate(this.u,!0)}; +rO.prototype.cj=function(a){pO.prototype.cj.call(this,a,sO(this,a).toString());this.A&&(qO(this),this.ba())}; +rO.prototype.aa=function(){var a=this.B.getPlaybackRate();sO(this,this.u)!=a&&(this.cj(a),qO(this))};g.r(tO,g.Ru);tO.prototype.focus=function(){this.u.focus()};g.r(uO,VN);g.r(vO,g.iO);g.h=vO.prototype;g.h.Ze=function(a){return"1"===a?"Normale":a.toLocaleString()}; +g.h.sa=function(){var a=this.K.getPresentingPlayerType();this.enable(2!==a&&3!==a);zO(this)}; +g.h.fk=function(a){g.iO.prototype.fk.call(this,a);a?(this.I=this.L(this.K,"onPlaybackRateChange",this.UH),zO(this),xO(this,this.K.getPlaybackRate())):(this.bb(this.I),this.I=null)}; +g.h.UH=function(a){var b=this.K.getPlaybackRate();this.G.includes(b)||yO(this,b);xO(this,a)}; +g.h.fd=function(a){g.iO.prototype.fd.call(this,a);a===this.w?this.K.setPlaybackRate(this.C,!0):this.K.setPlaybackRate(Number(a),!0);this.u.Ih()};var bsa={"default":0,monoSerif:1,propSerif:2,monoSans:3,propSans:4,casual:5,cursive:6,smallCaps:7};Object.keys(bsa).reduce(function(a,b){a[bsa[b]]=b;return a},{}); +var csa={none:0,raised:1,depressed:2,uniform:3,dropShadow:4};Object.keys(csa).reduce(function(a,b){a[csa[b]]=b;return a},{}); +var dsa={normal:0,bold:1,italic:2,bold_italic:3};Object.keys(dsa).reduce(function(a,b){a[dsa[b]]=b;return a},{});var x2,esa;x2=[{option:"#fff",text:"Blanc"},{option:"#ff0",text:"Jaune"},{option:"#0f0",text:"Vert"},{option:"#0ff",text:"Cyan"},{option:"#00f",text:"Bleu"},{option:"#f0f",text:"Magenta"},{option:"#f00",text:"Rouge"},{option:"#080808",text:"Noir"}];esa=[{option:0,text:AO(0)},{option:.25,text:AO(.25)},{option:.5,text:AO(.5)},{option:.75,text:AO(.75)},{option:1,text:AO(1)}]; +g.DO=[{option:"fontFamily",text:"Famille de polices",options:[{option:1,text:"Serif monospace"},{option:2,text:"Serif proportionnelle"},{option:3,text:"Sans Serif monospace"},{option:4,text:"Sans Serif proportionnelle"},{option:5,text:"Casual"},{option:6,text:"Cursive"},{option:7,text:"Petites majuscules"}]},{option:"color",text:"Couleur de la police",options:x2},{option:"fontSizeIncrement",text:"Taille de police",options:[{option:-2,text:AO(.5)},{option:-1,text:AO(.75)},{option:0,text:AO(1)},{option:1, +text:AO(1.5)},{option:2,text:AO(2)},{option:3,text:AO(3)},{option:4,text:AO(4)}]},{option:"background",text:"Couleur de l'arri\u00e8re-plan",options:x2},{option:"backgroundOpacity",text:"Opacit\u00e9 de l'arri\u00e8re-plan",options:esa},{option:"windowColor",text:"Couleur de la fen\u00eatre",options:x2},{option:"windowOpacity",text:"Opacit\u00e9 de la fen\u00eatre",options:esa},{option:"charEdgeStyle",text:"Style de bordure des caract\u00e8res",options:[{option:0,text:"Aucun"},{option:4,text:"Ombre projet\u00e9e"}, +{option:1,text:"Sur\u00e9lev\u00e9"},{option:2,text:"Surbaiss\u00e9"},{option:3,text:"Soulign\u00e9"}]},{option:"textOpacity",text:"Opacit\u00e9 de la police",options:[{option:.25,text:AO(.25)},{option:.5,text:AO(.5)},{option:.75,text:AO(.75)},{option:1,text:AO(1)}]}];g.r(CO,g.iO);g.h=CO.prototype;g.h.Db=function(a){g.iO.prototype.Db.call(this,a)}; +g.h.mz=function(a){return a.option.toString()}; +g.h.getOption=function(a){return this.settings[a]}; +g.h.Ze=function(a){return this.getOption(a).text||""}; +g.h.fd=function(a){g.iO.prototype.fd.call(this,a);this.S("settingChange",this.setting,this.settings[a].option)};g.r(EO,g.WN);EO.prototype.A=function(a,b){this.S("settingChange",a,b)};g.r(GO,g.iO);GO.prototype.w=function(a){return a.languageCode}; +GO.prototype.Ze=function(a){return this.languages[a].languageName||""}; +GO.prototype.fd=function(a){this.S("select",a);eO(this.u)};g.r(IO,g.iO);g.h=IO.prototype;g.h.ot=function(a){return g.Mb(a)?"__off__":a.displayName}; +g.h.Ze=function(a){return"__off__"===a?"D\u00e9sactiv\u00e9s":"__translate__"===a?"Traduire automatiquement":"__contribute__"===a?"Ajouter des sous-titres":("__off__"===a?{}:this.tracks[a]).displayName}; +g.h.fd=function(a){"__translate__"===a?this.w.open():"__contribute__"===a?(this.K.pauseVideo(),this.K.isFullscreen()&&this.K.toggleFullscreen(),a=g.CH(this.K.N(),this.K.getVideoData()),g.GN(a)):(this.K.setOption("captions","track","__off__"===a?{}:this.tracks[a]),g.iO.prototype.fd.call(this,a),this.u.Ih())}; +g.h.sa=function(){var a=this.K.getOptions();a=a&&-1!==a.indexOf("captions");var b=this.K.getVideoData();b=b&&b.yn;var c={};if(a||b){if(a){var d=this.K.getOption("captions","track");c=this.K.getOption("captions","tracklist",{includeAsr:!0});var e=this.K.getOption("captions","translationLanguages");this.tracks=g.vb(c,this.ot,this);var f=(0,g.Cc)(c,this.ot);if(e.length&&!g.Mb(d)){var k=d.translationLanguage;if(k&&k.languageName){var l=k.languageName;k=e.findIndex(function(m){return m.languageName=== +l}); +raa(e,k)}$ka(this.w,e);f.push("__translate__")}e=this.ot(d)}else this.tracks={},f=[],e="__off__";f.unshift("__off__");this.tracks.__off__={};b&&f.unshift("__contribute__");this.tracks[e]||(this.tracks[e]=d,f.push(e));g.kO(this,f);this.Db(e);d&&d.translationLanguage?this.w.Db(this.w.w(d.translationLanguage)):jO(this.w);a&&FO(this.C,this.K.getSubtitlesUserSettings());this.I.qb(c&&c.length?" ("+c.length+")":"");this.S("size-change");this.enable(!0)}else this.enable(!1)}; +g.h.WH=function(a){var b=this.K.getOption("captions","track");b=g.Pb(b);b.translationLanguage=this.w.languages[a];this.K.setOption("captions","track",b)}; +g.h.VH=function(a,b){if("reset"===a)this.K.resetSubtitlesUserSettings();else{var c={};c[a]=b;this.K.updateSubtitlesUserSettings(c)}HO(this,!0);this.G.start();FO(this.C,this.K.getSubtitlesUserSettings())}; +g.h.dN=function(a){a||this.G.Pe()}; +g.h.X=function(){this.G.Pe();g.iO.prototype.X.call(this)};g.r(JO,g.$N);g.h=JO.prototype;g.h.Bh=function(a){KO(this);g.XN(this.A,a);UN(this.V,this.A.w.length)}; +g.h.Td=function(a){this.Ha()&&1>=this.A.w.length&&this.hide();g.YN(this.A,a);UN(this.V,this.A.w.length)}; +g.h.Qb=function(a){KO(this);0a&&this.delay.start()}; +var fsa=new g.Mn(0,0,.4,0,.2,1,1,1),bla=/[0-9.-]+|[^0-9.-]+/g;g.r(RO,g.R);RO.prototype.F=function(){var a=this.u.app;a.u.na("SIZE_CLICKED",!a.Ic)}; +RO.prototype.w=function(){g.Qu(this,this.u.app.pe&&!this.u.isFullscreen()&&3!=this.u.getPresentingPlayerType());if(this.Ha()){var a=this.u.isWidescreen();if(this.A!=a){var b=a?g.X?{D:"div",Y:["ytp-icon","ytp-icon-default-view"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,O:{d:"m 26,13 0,10 -16,0 0,-10 z m -14,2 12,0 0,6 -12,0 0,-6 z",fill:"#fff","fill-rule":"evenodd"}}]}:g.X?{D:"div",Y:["ytp-icon","ytp-icon-theater-mode"]}:{D:"svg",O:{height:"100%", +version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,O:{d:"m 28,11 0,14 -20,0 0,-14 z m -18,2 16,0 0,10 -16,0 0,-10 z",fill:"#fff","fill-rule":"evenodd"}}]};this.u.N().F||null==this.A?this.la("icon",b):QO(this.C,this.element,b);this.A=a;b=g.MN(this.u,"Affichage par d\u00e9faut","t");var c=g.MN(this.u,"Mode cin\u00e9ma","t");this.la("title",a?b:c);SN(this.B)}}};g.r(SO,g.R);SO.prototype.onClick=function(){var a=g.W(this.K.app);a&&a.o&&a.o.Ys()}; +SO.prototype.sa=function(){var a=g.W(this.K.app);g.Qu(this,!!a&&a.Ic);this.la("icon",this.K.Mi()?g.X?{D:"div",Y:["ytp-icon","ytp-icon-airplay-on"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,O:{d:"M11,13 L25,13 L25,21 L11,21 L11,13 Z M12,28 L24,28 L18,22 L12,28 Z M27,9 L9,9 C7.9,9 7,9.9 7,11 L7,23 C7,24.1 7.9,25 9,25 L13,25 L13,23 L9,23 L9,11 L27,11 L27,23 L23,23 L23,25 L27,25 C28.1,25 29,24.1 29,23 L29,11 C29,9.9 28.1,9 27,9 L27,9 Z",fill:"#fff"}}]}: +g.X?{D:"div",Y:["ytp-icon","ytp-icon-airplay-off"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"M12,28 L24,28 L18,22 L12,28 Z M27,9 L9,9 C7.9,9 7,9.9 7,11 L7,23 C7,24.1 7.9,25 9,25 L13,25 L13,23 L9,23 L9,11 L27,11 L27,23 L23,23 L23,25 L27,25 C28.1,25 29,24.1 29,23 L29,11 C29,9.9 28.1,9 27,9 L27,9 Z"}}]})};g.r(TO,g.R);g.r(g.VO,g.R);g.VO.prototype.F=function(a){g.V(a.state,32)?WO(this,this.api.ue()):this.Ha()&&(g.V(a.state,16)||g.V(a.state,1))||this.u.hide()}; +g.VO.prototype.G=function(){var a=g.PK(this.api);(g.V(a,32)||g.V(a,16))&&XO(this)}; +g.VO.prototype.B=function(){this.A=NaN;XO(this)}; +g.VO.prototype.hide=function(){this.w&&WO(this,null);g.R.prototype.hide.call(this)};g.r(YO,g.R);YO.prototype.onClick=function(){g.nL(this.u,this.element);this.u.na("onFullerscreenEduClicked")}; +YO.prototype.sa=function(){this.u.isFullscreen()?this.w?this.A.hide():this.A.show():this.hide();g.oL(this.u,this.element,this.u.isFullscreen()&&!this.w)};g.r(g.ZO,g.R);g.h=g.ZO.prototype;g.h.onClick=function(){if(this.K.N().da)try{this.K.toggleFullscreen()}catch(a){"fullscreen error"===a.message?g.Uq(a):g.Tq(a),this.Zt()}else this.message.hf(this.element,!0)}; +g.h.Zt=function(){this.disable();this.message.Qb(this.element,!0)}; +g.h.OH=function(){Dr()===this.K.getRootNode()?this.A.start():(this.A.stop(),this.message&&this.message.hide())}; +g.h.fE=function(){if(window.screen&&window.outerWidth&&window.outerHeight){var a=.9*window.screen.width,b=.9*window.screen.height,c=Math.max(window.outerWidth,window.innerWidth),d=Math.max(window.outerHeight,window.innerHeight);if(c>d!==a>b){var e=c;c=d;d=e}a>c&&b>d&&this.Zt()}}; +g.h.disable=function(){if(!this.message){var a=(null!=yp(["requestFullscreen","webkitRequestFullscreen","mozRequestFullScreen","msRequestFullscreen"],document.body)?"Le mode plein \u00e9cran n'est pas disponible. $BEGIN_LINKEn savoir plus$END_LINK":"Votre navigateur n'est pas compatible avec le mode plein \u00e9cran. $BEGIN_LINKEn savoir plus$END_LINK").split(/\$(BEGIN|END)_LINK/);this.message=new g.wN(this.K,{D:"div",Y:["ytp-popup","ytp-generic-popup"],O:{role:"alert",tabindex:"0"},J:[a[0],{D:"a", +O:{href:"https://support.google.com/youtube/answer/6276924",target:this.K.N().C},W:a[2]},a[4]]},100,!0);this.message.hide();g.B(this,this.message);this.message.subscribe("show",(0,g.x)(this.u.nl,this.u,this.message));g.iL(this.K,this.message.element,4);this.element.setAttribute("aria-disabled","true");this.element.setAttribute("aria-haspopup","true");(0,this.w)();this.w=null}}; +g.h.sa=function(){g.Qu(this,HN(this.K))}; +g.h.jz=function(a){if(a){var b=g.X?{D:"div",Y:["ytp-icon","ytp-icon-full-screen-close"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"g",H:"ytp-fullscreen-button-corner-2",J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"m 14,14 -4,0 0,2 6,0 0,-6 -2,0 0,4 0,0 z"}}]},{D:"g",H:"ytp-fullscreen-button-corner-3",J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"m 22,14 0,-4 -2,0 0,6 6,0 0,-2 -4,0 0,0 z"}}]},{D:"g",H:"ytp-fullscreen-button-corner-0",J:[{D:"path",Na:!0,H:"ytp-svg-fill", +O:{d:"m 20,26 2,0 0,-4 4,0 0,-2 -6,0 0,6 0,0 z"}}]},{D:"g",H:"ytp-fullscreen-button-corner-1",J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"m 10,22 4,0 0,4 2,0 0,-6 -6,0 0,2 0,0 z"}}]}]};a=g.MN(this.K,"Quitter le mode plein \u00e9cran","f");document.activeElement===this.element&&this.K.getRootNode().focus()}else b=g.X?{D:"div",Y:["ytp-icon","ytp-icon-full-screen"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"g",H:"ytp-fullscreen-button-corner-0",J:[{D:"path",Na:!0, +H:"ytp-svg-fill",O:{d:"m 10,16 2,0 0,-4 4,0 0,-2 L 10,10 l 0,6 0,0 z"}}]},{D:"g",H:"ytp-fullscreen-button-corner-1",J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"m 20,10 0,2 4,0 0,4 2,0 L 26,10 l -6,0 0,0 z"}}]},{D:"g",H:"ytp-fullscreen-button-corner-2",J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"m 24,24 -4,0 0,2 L 26,26 l 0,-6 -2,0 0,4 0,0 z"}}]},{D:"g",H:"ytp-fullscreen-button-corner-3",J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"M 12,20 10,20 10,26 l 6,0 0,-2 -4,0 0,-4 0,0 z"}}]}]},a=g.MN(this.K,"Plein \u00e9cran", +"f");this.la("icon",b);this.la("title",this.message?null:a);SN(this.u.fb())}; +g.h.X=function(){this.message||((0,this.w)(),this.w=null);g.R.prototype.X.call(this)};g.r($O,g.R);$O.prototype.onClick=function(){this.K.na("onCollapseMiniplayer");g.nL(this.K,this.element)}; +$O.prototype.sa=function(){this.visible=!this.K.isFullscreen();g.Qu(this,this.visible);g.oL(this.K,this.element,this.visible&&this.P)}; +$O.prototype.Xa=function(a){g.R.prototype.Xa.call(this,a);g.oL(this.K,this.element,this.visible&&a)};g.r(aP,g.R);g.h=aP.prototype;g.h.kz=function(a){this.visible=300<=a.width;g.Qu(this,this.visible);g.oL(this.K,this.element,this.visible&&this.P)}; +g.h.PL=function(){this.K.N().R?this.K.isMuted()?this.K.unMute():this.K.mute():this.message.hf(this.element,!0);g.nL(this.K,this.element)}; +g.h.PH=function(a){this.setVolume(a.volume,a.muted)}; +g.h.setVolume=function(a,b){var c=this,d=b?0:a/100,e=this.K.N();if(e.F)d=0===d?$M():0d?ZM():YM(),d!==this.w&&(this.la("icon",d),this.w=d);else{var f=0===d?1:50a.position&& +(n=1);!m&&k/2>this.B-a.position&&(n=2);kR(this.tooltip,c,d,b,!!f,l,e,n)}else kR(this.tooltip,c,d,b,!!f,l);g.K(this.api.getRootNode(),"ytp-progress-bar-hover",!g.V(g.PK(this.api),64));wP(this)}; +g.h.qM=function(){g.lR(this.tooltip);g.Dn(this.api.getRootNode(),"ytp-progress-bar-hover")}; +g.h.pM=function(a,b){this.C&&(this.C.dispose(),this.C=null);this.Yb=b;this.api.N().fa("web_wn_macro_markers")&&1b||1b&&a.C.start()}),this.C.start()); +if(g.V(g.PK(this.api),32)||3===this.api.getPresentingPlayerType())this.api.N().fa("web_wn_macro_markers")&&1.1*(this.A?60:40),f=zP(this));g.K(this.element,"ytp-pull-ui",e);d&&g.J(this.element,"ytp-pulling");d=0;f.w&&0>=f.position?d=-1:f.B&&f.position>=f.width&&(d=1);this.Ca!==d&&(this.Ca=d,this.C&&(this.C.dispose(),this.C=null),d&&(this.C=new g.rn(function(){var k=(0,g.N)(),l=c.B*(c.Z-1);c.U=g.Md(c.U+c.Ca*((0,g.N)()-k)*.3,0,l);vP(c);c.api.seekTo(iP(c.w,zP(c).u),!1);0=this.F&&(!this.w||!g.V(g.PK(this.api),64));g.Qu(this,b);g.K(this.element,"ytp-time-display-allow-autohide",b&&400>a);a=this.api.getProgressState();if(b){b=this.api.getPresentingPlayerType();var c=g.hM(g.P(this.api.N().experiments,"halftime_ux_killswitch")?a.current:this.api.getCurrentTime(b,!1));this.A!==c&&(this.la("currenttime",c),this.A=c);b=g.hM(g.P(this.api.N().experiments,"halftime_ux_killswitch")?a.duration:this.api.getDuration(b, +!1));this.B!==b&&(this.la("duration",b),this.B=b)}this.w&&(a=a.isAtLiveHead,this.C!==a&&(this.C=a,this.Fh(),b=this.liveBadge.element,b.disabled=a,this.liveBadge.qb(this.isPremiere?"Premi\u00e8re":"En direct"),a?this.u&&(this.u(),this.u=null,b.removeAttribute("title")):(b.title="Acc\u00e9der directement \u00e0 la diffusion en direct",this.u=g.BN(this.tooltip,this.liveBadge.element))))}; +g.h.XH=function(a,b){this.updateVideoData(b);this.Fh()}; +g.h.updateVideoData=function(a){this.w=a.va&&!a.wg;this.isPremiere=a.isPremiere;g.K(this.element,"ytp-live",this.w)}; +g.h.onClick=function(a){a.target===this.liveBadge.element&&(this.api.seekTo(Infinity),this.api.playVideo())}; +g.h.X=function(){this.u&&this.u();g.R.prototype.X.call(this)};g.r(RP,g.R);g.h=RP.prototype;g.h.YH=function(){var a=this.w.kc();this.C!==a&&(this.C=a,QP(this,this.api.getVolume(),this.api.isMuted()))}; +g.h.nz=function(a){g.Qu(this,350<=a.width)}; +g.h.bI=function(a){if(!g.Lp(a)){var b=g.Mp(a),c=null;37===b?c=this.volume-5:39===b?c=this.volume+5:36===b?c=0:35===b&&(c=100);null!==c&&(c=g.Md(c,0,100),0===c?this.api.mute():(this.api.isMuted()&&this.api.unMute(),this.api.setVolume(c)),g.Kp(a))}}; +g.h.ZH=function(a){var b=a.deltaX||-a.deltaY;a.deltaMode?this.api.setVolume(this.volume+(0>b?-10:10)):this.api.setVolume(this.volume+g.Md(b/10,-10,10));g.Kp(a)}; +g.h.hN=function(){PP(this,this.u,!0,this.B,this.w.Oi());this.U=this.volume;this.api.isMuted()&&this.api.unMute()}; +g.h.aI=function(a){var b=this.C?78:52,c=this.C?18:12;a-=g.Eh(this.R).x;this.api.setVolume(100*g.Md((a-c/2)/(b-c),0,1))}; +g.h.gN=function(){PP(this,this.u,!1,this.B,this.w.Oi());0===this.volume&&(this.api.mute(),this.api.setVolume(this.U))}; +g.h.cI=function(a){QP(this,a.volume,a.muted)}; +g.h.Bw=function(){PP(this,this.u,this.A,this.B,this.w.Oi())}; +g.h.dC=function(a){g.K(this.element,"ytp-volume-control-hover",a);PP(this,a,this.A,this.B,this.w.Oi())}; +g.h.X=function(){g.R.prototype.X.call(this);g.Dn(this.G,"ytp-volume-slider-active")};g.r(g.SP,g.R);g.SP.prototype.u=function(){this.visible=!!this.api.getVideoData().videoId;g.Qu(this,this.visible);g.oL(this.api,this.element,this.visible&&this.P);if(this.visible){var a=this.api.getVideoUrl(!0,!1,!1,!0);this.la("url",a)}}; +g.SP.prototype.onClick=function(a){var b=this.api.getVideoUrl(!g.iM(a),!1,!0,!0);g.Ly(this.api.N())&&(b=g.yd(b,g.DH({},"emb_logo")));g.JN(b,this.api,a);g.nL(this.api,this.element)}; +g.SP.prototype.Xa=function(a){g.R.prototype.Xa.call(this,a);g.oL(this.api,this.element,this.visible&&a)};g.r(TP,g.Gr);g.h=TP.prototype;g.h.Ot=function(){g.tP(this.B);this.da.Fh();if(g.P(this.u.N().experiments,"web_wn_macro_markers")){var a=this.V,b="",c=a.w.u;1g.LP(this.B)&&g.PK(this.u).eb()&&!!window.requestAnimationFrame,b=!a;this.ba.u||(a=b=!1);b?this.P||(this.P=this.L(this.u,"progresssync",this.Ot)):this.P&&(this.bb(this.P),this.P=null);a?this.I.isActive()||this.I.start():this.I.stop()}; +g.h.YO=function(a){var b=this.A.fb();a=!a;if(null!=b.w)if(a)switch(b.w){case 3:case 2:oR(b);b.M.show();break;default:b.M.show()}else b.M.hide();b.V=a}; +g.h.Pt=function(){var a=this.A.kc(),b=g.QK(this.u).getPlayerSize(),c=VP(this),d=Math.max(b.width-2*c,100);if(this.oa!=b.width||this.ma!=a){this.oa=b.width;this.ma=a;var e=WP(this);this.w.element.style.width=e+"px";this.w.element.style.left=c+"px";g.IP(this.B,c,e,a);this.A.fb().ga=e}c=this.o;e=Math.min(413*(a?1.5:1),Math.round(.82*(b.height-(this.A.kc()?72:50))));c.R=Math.min(570*(a?1.5:1),d);c.M=e;c.Ek();this.Qt();!this.u.N().fa("html5_player_bottom_linear_gradient")&&g.P(this.u.N().experiments,"html5_player_dynamic_bottom_gradient")&& +g.uN(this.wa,b.height)}; +g.h.rJ=function(){var a=this.u.getVideoData();this.R.style.background=a.lc?a.hg:"";g.Qu(this.U,a.Ju)}; +g.h.ua=function(){return this.w.element};g.r(g.XP,g.R);g.XP.prototype.u=function(){}; +g.XP.prototype.A=function(a){var b=this;hla(this);var c=a.Ar,d=this.api.N();"GENERIC_WITHOUT_LINK"!==c||d.B?"TOO_MANY_REQUESTS"===c?(d=this.api.getVideoData(),this.qb(ZP(this,"TOO_MANY_REQUESTS_WITH_LINK",d.kh(),void 0,void 0,void 0,!1))):"HTML5_NO_AVAILABLE_FORMATS_FALLBACK"!==c||d.B?this.qb(g.YP(a.errorMessage)):this.qb(ZP(this,"HTML5_NO_AVAILABLE_FORMATS_FALLBACK_WITH_LINK","//www.youtube.com/supported_browsers")):(a=d.hostLanguage,c="//support.google.com/youtube/?p=player_error1",a&&(c=g.yd(c, +{hl:a})),this.qb(ZP(this,"GENERIC_WITH_LINK_AND_CPN",c,!0)),d.ma&&!d.u&&gla(this,function(e){if(g.IN(e,b.api,!hz(b.api.N()))){e={as3:!1,html5:!0,player:!0,cpn:b.api.getVideoData().clientPlaybackNonce};var f=b.api;f.na("onFeedbackArticleRequest",{articleId:3037019,helpContext:"player_error",productData:e});f.isFullscreen()&&f.toggleFullscreen()}}))}; +var fla=/([^<>]+)<\/a>/;g.r(aQ,g.R);aQ.prototype.hide=function(){this.u.stop();this.message.style.display="none";g.R.prototype.hide.call(this)}; +aQ.prototype.w=function(a){$P(this,a.state)}; +aQ.prototype.A=function(){$P(this,g.PK(this.api))}; +aQ.prototype.B=function(){this.message.style.display="block"};g.r(cQ,g.wN);cQ.prototype.C=function(a){if(this.api.N().F||this.A)a?(bQ(this),this.Qb()):(this.seen&&dQ(this),this.gb())}; +cQ.prototype.B=function(a){this.api.isMutedByMutedAutoplay()&&g.bH(a,2)&&this.gb()}; +cQ.prototype.onClick=function(){this.api.unMute();dQ(this)};g.r(g.eQ,g.Gr);g.h=g.eQ.prototype;g.h.init=function(){var a=g.PK(this.api);this.xk(a);this.Mg();this.Ti()}; +g.h.Oz=function(a,b){if(this.pc!=b.videoId){this.pc=b.videoId;var c=this.u;c.ba=b&&0=b){this.da=!0;b=this.api.getPlayerSize().width/3;var c=this.api.getRootNode().getBoundingClientRect(),d=a.targetTouches[0].clientX-c.left;c=a.targetTouches[0].clientY-c.top;var e=10*(this.wa-1);02*b&&d<3*b&&(this.It(1,d,c,e),this.api.seekBy(10*this.api.getPlaybackRate()));g.Kp(a)}this.pd=Date.now(); +this.qd.start()}}; +g.h.QM=function(a){kQ(this,a)||(hQ(this)||!iQ(this,a)||this.Ea.isActive()||(jQ(this),g.Kp(a)),this.da&&(this.da=!1))}; +g.h.no=function(){}; +g.h.Jt=function(){}; +g.h.It=function(){}; +g.h.jC=function(){}; +g.h.Xp=function(){var a=g.PK(this.api);g.V(a,2)&&MK(this.api)||(g.OC(a)?this.api.pauseVideo():(this.api.app.Uc=!0,this.api.playVideo(),this.ba&&document.activeElement==this.ba.C&&this.api.getRootNode().focus()))}; +g.h.RM=function(a){var b=this.api.getPresentingPlayerType();fQ(this,Hp(a))||(a=this.api.N(),g.P(a.experiments,"player_doubletap_to_seek")&&this.da?this.da=!1:(a.da||g.P(a.experiments,"player_fullscreen_disabled_killswitch"))&&3!=b&&this.api.toggleFullscreen())}; +g.h.SM=function(a){lQ(this,.3,a.scale);g.Kp(a)}; +g.h.TM=function(a){lQ(this,.1,a.scale)}; +g.h.Ti=function(){var a=g.QK(this.api).getPlayerSize(),b=this.api.getRootNode(),c=650<=a.width;g.Dt&&kN(this.u);g.K(b,"ytp-fullscreen",this.api.isFullscreen());g.K(b,"ytp-large-width-mode",c);g.K(b,"ytp-small-mode",this.Rd());g.K(b,"ytp-big-mode",this.kc());this.B&&this.B.u(a)}; +g.h.ZI=function(a){this.xk(a.state);this.Mg()}; +g.h.Mr=function(){var a=!!this.pc&&!g.LK(this.api),b=2==this.api.getPresentingPlayerType(),c=this.api.N();if(b){if(fra&&g.P(c.experiments,"enable_visit_advertiser_support_on_ipad_mweb"))return!1;b=GL(g.KK(this.api));a&&(null===b.o?a=!1:(a=b.o,a=(b=a.o.getVideoData(2))?b.isListed&&!a.V:!1));return a}return a&&(c.Qg||this.api.isFullscreen()||c.qc)}; +g.h.Mg=function(){var a=this.Mr();this.C!=a&&(this.C=a,g.K(this.api.getRootNode(),"ytp-hide-info-bar",!a))}; +g.h.xk=function(a){var b;(b=a.isCued())||(b=((b=g.W(this.api.app,void 0))?EJ(b):!0)&&3!=this.api.getPresentingPlayerType());b!=this.isCued&&(this.isCued=b,this.Tc&&this.bb(this.Tc),this.Tc=this.L(g.QK(this.api),"touchstart",this.VM,void 0,b));var c=a.eb()&&!g.V(a,32)||cL(this.api);this.u.Tb(128,!c);c=3==this.api.getPresentingPlayerType();this.u.Tb(256,c);c=this.api.getRootNode();if(g.V(a,2))var d=[s2.ENDED];else d=[],g.V(a,8)?d.push(s2.PLAYING):g.V(a,4)&&d.push(s2.PAUSED),g.V(a,1)&&!g.V(a,32)&&d.push(s2.BUFFERING), +g.V(a,32)&&d.push(s2.SEEKING),g.V(a,64)&&d.push(s2.UNSTARTED);g.sb(this.Wa,d)||(g.En(c,this.Wa),this.Wa=d,g.Cn(c,d));d=this.api.N();var e=g.V(a,2);g.K(c,"ytp-hide-controls",("3"==d.controlsType?!e:"1"!=d.controlsType)||b);g.K(c,"ytp-native-controls","3"==d.controlsType&&!b&&!e&&!this.ac);g.V(a,128)&&!g.Ly(d)?(this.B||(this.B=new g.XP(this.api),g.B(this,this.B),g.iL(this.api,this.B.element,4)),this.B.A(a.u),this.B.show()):this.B&&(this.B.dispose(),this.B=null)}; +g.h.jg=function(){return g.YK(this.api)&&g.ZK(this.api)?(this.api.setCardsVisible(!1,!1),!0):g.LK(this.api)?(g.NK(this.api,!0),!0):!1}; +g.h.YI=function(a){this.ac=a;this.oe()}; +g.h.kc=function(){return!1}; +g.h.Rd=function(){return!this.kc()&&(480>this.api.getPlayerSize().width||290>this.api.getPlayerSize().height)}; +g.h.Oi=function(){return this.Kc}; +g.h.fm=function(){return null}; +g.h.xt=function(){var a=g.QK(this.api).getPlayerSize();return new g.ph(0,0,a.width,a.height)}; +g.h.handleGlobalKeyDown=function(){return!1}; +g.h.handleGlobalKeyUp=function(){return!1}; +g.h.qk=function(){}; +g.h.showControls=function(a){if(void 0!=a){var b=g.QK(this.api);Qy(b.app.N());b.C=!a;uM(b)}}; +g.h.At=function(){}; +g.h.Dx=function(){return null};var kla={seekableStart:0,seekableEnd:1,current:0};g.r(mQ,g.Ru);mQ.prototype.B=function(){var a=this.w.getProgressState();a=jP(new hP(a.seekableStart,a.seekableEnd),a.current,0);this.F.style.width=100*a+"%"}; +mQ.prototype.C=function(){g.az(this.A.N())||(2==this.A.getPresentingPlayerType()?-1===this.u&&(this.show(),this.u=this.w.subscribe("b",this.B,this),this.B()):-1!==this.u&&(this.hide(),this.w.Eh(this.u),this.u=-1))};g.r(nQ,g.O);g.h=nQ.prototype;g.h.Rz=function(){return 1E3*this.o.getDuration(this.w)}; +g.h.stop=function(){this.A&&this.u.bb(this.A)}; +g.h.Sz=function(){var a=this.o.getProgressState(this.w);this.B={seekableStart:a.seekableStart,seekableEnd:a.seekableEnd,current:g.P(this.o.N().experiments,"halftime_ux_killswitch")?a.current:this.o.getCurrentTime(this.w,!1)};this.S("b")}; +g.h.getProgressState=function(){return this.B}; +g.h.tJ=function(a){g.bH(a,2)&&this.S("a")};g.r(g.oQ,g.R);g.oQ.prototype.show=function(){g.R.prototype.show.call(this);this.u.Ua()}; +g.oQ.prototype.hide=function(){this.A.stop();g.R.prototype.hide.call(this)};g.r(uQ,g.R);uQ.prototype.Qb=function(){this.w.show();g.Qo("iv-button-shown")}; +uQ.prototype.X=function(){this.u&&this.u();g.R.prototype.X.call(this)}; +uQ.prototype.C=function(){g.Qo("iv-button-mouseover")}; +uQ.prototype.onClicked=function(a){g.YK(this.K);var b=g.Bn(this.K.getRootNode(),"ytp-cards-teaser-shown");g.Qo("iv-teaser-clicked",b);a=0===a.screenX&&0===a.screenY;this.K.setCardsVisible(!g.ZK(this.K),a,"YOUTUBE_DRAWER_MANUAL_OPEN")};g.r(vQ,g.R);g.h=vQ.prototype;g.h.HC=function(){g.YK(this.w)&&g.ZK(this.w)&&this.Ha()&&4!==this.F.state&&this.jm()}; +g.h.MO=function(){this.jm();g.Qo("iv-teaser-clicked",!!this.u);this.w.setCardsVisible(!0,!1,"YOUTUBE_DRAWER_MANUAL_OPEN")}; +g.h.aJ=function(){g.Qo("iv-teaser-mouseover");this.u&&this.u.stop()}; +g.h.nN=function(a){this.u||!a||g.ZK(this.w)||this.A&&this.A.isActive()||(lla(this,a),g.Qo("iv-teaser-shown"))}; +g.h.Kt=function(){if(g.Ly(this.w.N())&&this.Ha()){var a=this.C.element.offsetLeft,b=g.ce("ytp-cards-button-icon"),c=this.w.isFullscreen()?54:36;if(b){var d=a+b.offsetLeft;this.element.style.marginRight=this.C.element.offsetParent.offsetWidth-a-b.offsetLeft-c+"px";this.element.style.marginLeft=d+"px"}}}; +g.h.hE=function(){g.Ly(this.w.N())&&this.U.Rd()&&this.Ha()&&this.R.start()}; +g.h.HA=function(){this.I.stop();this.u&&this.u.isActive()&&this.M.start()}; +g.h.GA=function(){this.M.stop();this.u&&!this.u.isActive()&&this.I.start()}; +g.h.NL=function(){this.u&&this.u.stop()}; +g.h.KL=function(){this.jm()}; +g.h.jm=function(){!this.u||this.B&&this.B.isActive()||(g.Qo("iv-teaser-hidden"),this.F.hide(),g.Dn(this.w.getRootNode(),"ytp-cards-teaser-shown"),this.B=new g.I(function(){for(var a=g.q(this.G),b=a.next();!b.done;b=a.next())this.bb(b.value);this.G=[];this.u&&(this.u.dispose(),this.u=null);tQ(this.C,!0)},330,this),this.B.start())}; +g.h.X=function(){var a=this.w.getRootNode();a&&g.Dn(a,"ytp-cards-teaser-shown");g.Ie(this.A,this.B,this.u);g.R.prototype.X.call(this)};g.r(g.yQ,g.R);g.yQ.prototype.B=function(){g.J(this.element,"ytp-sb-subscribed")}; +g.yQ.prototype.C=function(){g.Dn(this.element,"ytp-sb-subscribed")};g.Ga("yt.pubsub.publish",g.Qo,void 0);var y2={},BQ=(y2.BUTTON="ytp-button",y2.TITLE_NOTIFICATIONS="ytp-title-notifications",y2.TITLE_NOTIFICATIONS_ON="ytp-title-notifications-on",y2.TITLE_NOTIFICATIONS_OFF="ytp-title-notifications-off",y2.NOTIFICATIONS_ENABLED="ytp-notifications-enabled",y2);g.r(CQ,g.R); +CQ.prototype.onClick=function(){g.nL(this.api,this.element);var a=!this.u;this.la("label",a?"Ne plus recevoir de notifications pour chaque vid\u00e9o mise en ligne":"Recevoir une notification pour chaque vid\u00e9o mise en ligne");this.la("pressed",a);DQ(this,a)};g.r(EQ,g.R);EQ.prototype.R=function(){IQ(this);this.w.classList.remove("ytp-title-expanded")}; +EQ.prototype.I=function(){if(FQ(this)&&!GQ(this)){this.la("channelTitleFocusable","0");this.F&&this.F.stop();this.A&&(this.A.show(),g.oL(this.u,this.A.element,!0));var a=this.u.getVideoData();this.C&&a.zk&&a.subscribed&&(this.C.show(),g.oL(this.u,this.C.element,!0));this.w.classList.add("ytp-title-expanded");this.w.classList.add("ytp-title-show-expanded")}}; +EQ.prototype.G=function(){this.la("channelTitleFocusable","-1");this.F&&this.F.start()}; +EQ.prototype.M=function(){var a=this.u.getVideoData(),b=this.u.N(),c=!1;2===this.u.getPresentingPlayerType()?c=!!a.videoId&&!!a.isListed&&!!a.author&&!!a.sf&&!!a.Id:g.Ly(b)&&(c=!!a.videoId&&!!a.sf&&!!a.Id);b=g.tz(this.u.N())+a.sf;g.Ly(this.u.N())&&(b=g.yd(b,g.DH({},"emb_ch_name_ex")));var d=a.sf,e=a.Id,f=a.author;d=void 0===d?"":d;e=void 0===e?"":e;f=void 0===f?"":f;c?(d=g.tz(this.u.N())+d,this.B.style.backgroundImage="url("+e+")",this.la("channelLink",d),this.la("channelLogoLabel",g.gM("Photo de $CHANNEL_NAME", +{CHANNEL_NAME:f})),g.J(this.u.getRootNode(),"ytp-title-enable-channel-logo")):g.Dn(this.u.getRootNode(),"ytp-title-enable-channel-logo");g.oL(this.u,this.B,c&&this.P);this.A&&(this.A.u=a.Ng);this.la("expandedTitle",a.pl);this.la("channelTitleLink",b);this.la("expandedSubtitle",a.expandedSubtitle)};g.r(JQ,g.R);JQ.prototype.show=function(){g.R.prototype.show.call(this);this.u.Ua()}; +JQ.prototype.hide=function(){this.A.stop();g.R.prototype.hide.call(this)};g.r(LQ,g.Tu);LQ.prototype.u=function(a){g.Lp(a)||39!==g.Mp(a)||(this.element.click(),g.Kp(a))};g.r(PQ,g.WN);g.h=PQ.prototype;g.h.KK=function(){LN(this.M.element)}; +g.h.cL=function(){QQ(this,this.u.getDebugText(!0))&&pQ(this.Z,AM())}; +g.h.dL=function(){QQ(this,this.u.getVideoEmbedCode())&&pQ(this.Z,HM());g.nL(this.u,this.A.element);KQ("EMBED",this.u.getVideoData().videoId,this.u.getPlaylistId()||void 0)}; +g.h.fL=function(){QQ(this,this.u.getVideoUrl(!0,!0))&&pQ(this.Z,MM());g.nL(this.u,this.C.element);KQ("COPY_PASTE",this.u.getVideoData().videoId,this.u.getPlaylistId()||void 0)}; +g.h.eL=function(){QQ(this,this.u.getVideoUrl(!1,!0))&&pQ(this.Z,MM());g.nL(this.u,this.B.element);KQ("COPY_PASTE",this.u.getVideoData().videoId,this.u.getPlaylistId()||void 0)}; +g.h.EA=function(a){this.F.setValue(a)}; +g.h.vL=function(){var a=this.F.getValue();cT(this.u.app,a);this.U.gb();g.nL(this.u,this.F.element)}; +g.h.GM=function(a){this.u.reportPlaybackIssue();if(g.IN(a,this.u,!hz(this.u.N()))){a=this.u;var b={as3:!1,html5:!0,player:!0};b=b||{};var c=a.getVideoStats().debug_error;c&&(b.player_error=c.errorCode,b.player_error_details=c.errorDetail);b.debug_text=a.getDebugText(!0);a.na("onFeedbackStartRequest",b);a.isFullscreen()&&a.toggleFullscreen()}this.U.gb()}; +g.h.eN=function(){this.u.showVideoInfo();this.U.gb()}; +g.h.eJ=function(a,b){OQ(this,b)}; +g.h.Xa=function(a){g.WN.prototype.Xa.call(this,a);g.oL(this.u,this.A.element,a);g.oL(this.u,this.C.element,a);g.oL(this.u,this.B.element,a);g.oL(this.u,this.F.element,a)};g.r(g.RQ,g.Gr);g.RQ.prototype.L=function(a,b,c){return g.Gr.prototype.L.call(this,a,b,c)};g.r(g.TQ,g.$N);g.h=g.TQ.prototype;g.h.show=function(){this.A||(this.A=new PQ(this.K,this.aa,this,this.V),g.B(this,this.A),g.dO(this,this.A));this.A.EA(xK(this.K.app.C));g.$N.prototype.show.call(this);g.oL(this.K,this.element,!0);this.A.Xa(!0)}; +g.h.hide=function(){SQ(this);g.$N.prototype.hide.call(this);g.oL(this.K,this.element,!1);this.A&&this.A.Xa(!1)}; +g.h.JK=function(a){var b=Hp(a);if(!(this.Ha()||b&&(g.De(b,"a")||g.De(b,null,"ytp-no-contextmenu",void 0)))){g.Kp(a);UQ(this);b=this.K.getVideoData();g.K(this.element,"ytp-dni",b.lc);this.element.style.left="";this.element.style.top="";a=Jp(a);a.x++;a.y++;this.Qb();var c=document.body;b=new nh(0,Infinity,Infinity,0);var d=Zd(c);for(var e=d.o.body,f=d.o.documentElement,k=ge(d.o);c=Dh(c);)if(!(g.he&&0==c.clientWidth||g.je&&0==c.clientHeight&&c==e)&&c!=e&&c!=f&&"visible"!=yh(c,"overflow")){var l=g.Eh(c), +m=new g.Qd(c.clientLeft,c.clientTop);l.x+=m.x;l.y+=m.y;b.top=Math.max(b.top,l.y);b.right=Math.min(b.right,l.x+c.clientWidth);b.bottom=Math.min(b.bottom,l.y+c.clientHeight);b.left=Math.max(b.left,l.x)}e=k.scrollLeft;k=k.scrollTop;b.left=Math.max(b.left,e);b.top=Math.max(b.top,k);d=d.o;d=fe(d.parentWindow||d.defaultView||window);b.right=Math.min(b.right,e+d.width);b.bottom=Math.min(b.bottom,k+d.height);d=0<=b.top&&0<=b.left&&b.bottom>b.top&&b.right>b.left?b:null;b=this.size;a=a.clone();b=b.clone(); +d&&(k=a,e=b,f=5,65==(f&65)&&(k.x=d.right)&&(f&=-2),132==(f&132)&&(k.y=d.bottom)&&(f&=-5),k.xd.right&&(e.width=Math.min(d.right-k.x,c+e.width-d.left),e.width=Math.max(e.width,0))),k.x+e.width>d.right&&f&1&&(k.x=Math.max(d.right-e.width,d.left)),k.yd.bottom&&(e.height=Math.min(d.bottom-k.y,c+e.height-d.top),e.height=Math.max(e.height, +0))),k.y+e.height>d.bottom&&f&4&&(k.y=Math.max(d.bottom-e.height,d.top)));d=new g.ph(0,0,0,0);d.left=a.x;d.top=a.y;d.width=b.width;d.height=b.height;g.Ah(this.element,new g.Qd(d.left,d.top));g.Ir(this.B);this.B.L(document,"contextmenu",this.PK);this.B.L(this.K,"fullscreentoggled",this.NH);this.B.L(this.K,"pageTransition",this.aM)}}; +g.h.PK=function(a){if(!g.Lp(a)){var b=Hp(a);g.xe(this.element,b)||this.gb();this.K.N().cn&&g.Kp(a)}}; +g.h.NH=function(){this.gb();UQ(this)}; +g.h.aM=function(){this.gb()};g.r(g.VQ,g.Gr);g.h=g.VQ.prototype; +g.h.Qx=function(a){var b=!1,c=g.Mp(a),d=Hp(a),e=!a.altKey&&!a.ctrlKey&&!a.metaKey,f=!1,k=!1,l=this.o.N();g.Lp(a)?(e=!1,k=!0):l.Xb&&(e=!1);if(9==c)b=!0;else{if(d)switch(c){case 32:case 13:if("BUTTON"==d.tagName||"A"==d.tagName||"INPUT"==d.tagName)b=!0,e=!1;else if(e){var m=d.getAttribute("role");!m||"option"!=m&&"button"!=m&&0!=m.indexOf("menuitem")||(b=!0,d.click(),f=!0)}break;case 37:case 39:case 36:case 35:b="slider"==d.getAttribute("role");break;case 38:case 40:m=d.getAttribute("role"),d=38==c? +d.previousSibling:d.nextSibling,"slider"==m?b=!0:e&&("option"==m?(d&&"option"==d.getAttribute("role")&&d.focus(),f=b=!0):m&&0==m.indexOf("menuitem")&&(d&&d.hasAttribute("role")&&0==d.getAttribute("role").indexOf("menuitem")&&d.focus(),f=b=!0))}if(e&&!f)switch(c){case 38:f=Math.min(this.o.getVolume()+5,100);rQ(this.u,f,!1);this.o.setVolume(f);k=f=!0;break;case 40:f=Math.max(this.o.getVolume()-5,0);rQ(this.u,f,!0);this.o.setVolume(f);k=f=!0;break;case 36:this.o.Qc()&&(this.o.seekTo(0),k=f=!0);break; +case 35:this.o.Qc()&&(this.o.seekTo(Infinity),k=f=!0)}}b&&this.Fu(!0);(b||k)&&this.B.Tb(2,!0);(f||e&&this.handleGlobalKeyDown(c,a.shiftKey,a.ctrlKey,a.altKey,a.metaKey,a.key,a.code))&&g.Kp(a);l.w&&(a={keyCode:g.Mp(a),altKey:a.altKey,ctrlKey:a.ctrlKey,metaKey:a.metaKey,shiftKey:a.shiftKey,handled:g.Lp(a),fullscreen:this.o.isFullscreen()},this.o.na("onKeyPress",a))}; +g.h.Rx=function(a){this.handleGlobalKeyUp(g.Mp(a),a.shiftKey,a.ctrlKey,a.altKey,a.metaKey,a.key,a.code)}; +g.h.handleGlobalKeyUp=function(a){var b=!1,c=g.VK(g.KK(this.o));c&&(c=c.u)&&c.Ha()&&(c.Ox(a),b=!0);9==a&&(this.Fu(!0),b=!0);return b}; +g.h.handleGlobalKeyDown=function(a,b,c,d,e,f){d=!1;c=this.o.N();if(c.Xb)return d;if((e=g.VK(g.KK(this.o)))&&(e=e.u)&&e.Ha())switch(a){case 65:case 68:case 87:case 83:case 107:case 221:case 109:case 219:d=e.Nx(a)}c.B||d||(f=f||String.fromCharCode(a).toLowerCase(),this.w+=f,0=="awesome".indexOf(this.w)?(d=!0,7==this.w.length&&(f=this.o.getRootNode(),e=!g.Bn(f,"ytp-color-party"),g.K(f,"ytp-color-party",e))):(this.w=f,d=0=="awesome".indexOf(this.w)));if(!d){switch(a){case 80:b&&!c.M&&(pQ(this.u,TM(), +"Pr\u00e9c\u00e9dente"),this.o.previousVideo(),d=!0);break;case 78:b&&!c.M&&(pQ(this.u,OM(),"Suivante"),this.o.nextVideo(),d=!0);break;case 74:this.o.Qc()&&(pQ(this.u,g.X?{D:"div",Y:["ytp-icon","ytp-icon-rewind-ten-seconds"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"M 18,11 V 7 l -5,5 5,5 v -4 c 3.3,0 6,2.7 6,6 0,3.3 -2.7,6 -6,6 -3.3,0 -6,-2.7 -6,-6 h -2 c 0,4.4 3.6,8 8,8 4.4,0 8,-3.6 8,-8 0,-4.4 -3.6,-8 -8,-8 z M 16.9,22 H 16 V 18.7 L 15,19 v -0.7 l 1.8,-0.6 h .1 V 22 z m 4.3,-1.8 c 0,.3 0,.6 -0.1,.8 l -0.3,.6 c 0,0 -0.3,.3 -0.5,.3 -0.2,0 -0.4,.1 -0.6,.1 -0.2,0 -0.4,0 -0.6,-0.1 -0.2,-0.1 -0.3,-0.2 -0.5,-0.3 -0.2,-0.1 -0.2,-0.3 -0.3,-0.6 -0.1,-0.3 -0.1,-0.5 -0.1,-0.8 v -0.7 c 0,-0.3 0,-0.6 .1,-0.8 l .3,-0.6 c 0,0 .3,-0.3 .5,-0.3 .2,0 .4,-0.1 .6,-0.1 .2,0 .4,0 .6,.1 .2,.1 .3,.2 .5,.3 .2,.1 .2,.3 .3,.6 .1,.3 .1,.5 .1,.8 v .7 z m -0.9,-0.8 v -0.5 c 0,0 -0.1,-0.2 -0.1,-0.3 0,-0.1 -0.1,-0.1 -0.2,-0.2 -0.1,-0.1 -0.2,-0.1 -0.3,-0.1 -0.1,0 -0.2,0 -0.3,.1 l -0.2,.2 c 0,0 -0.1,.2 -0.1,.3 v 2 c 0,0 .1,.2 .1,.3 0,.1 .1,.1 .2,.2 .1,.1 .2,.1 .3,.1 .1,0 .2,0 .3,-0.1 l .2,-0.2 c 0,0 .1,-0.2 .1,-0.3 v -1.5 z"}}]}), +this.o.seekBy(-10*this.o.getPlaybackRate()),d=!0);break;case 76:this.o.Qc()&&(pQ(this.u,g.X?{D:"div",Y:["ytp-icon","ytp-icon-forward-ten-seconds"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"m 10,19 c 0,4.4 3.6,8 8,8 4.4,0 8,-3.6 8,-8 h -2 c 0,3.3 -2.7,6 -6,6 -3.3,0 -6,-2.7 -6,-6 0,-3.3 2.7,-6 6,-6 v 4 l 5,-5 -5,-5 v 4 c -4.4,0 -8,3.6 -8,8 z m 6.8,3 H 16 V 18.7 L 15,19 v -0.7 l 1.8,-0.6 h .1 V 22 z m 4.3,-1.8 c 0,.3 0,.6 -0.1,.8 l -0.3,.6 c 0,0 -0.3,.3 -0.5,.3 C 20,21.9 19.8,22 19.6,22 19.4,22 19.2,22 19,21.9 18.8,21.8 18.7,21.7 18.5,21.6 18.3,21.5 18.3,21.3 18.2,21 18.1,20.7 18.1,20.5 18.1,20.2 v -0.7 c 0,-0.3 0,-0.6 .1,-0.8 l .3,-0.6 c 0,0 .3,-0.3 .5,-0.3 .2,0 .4,-0.1 .6,-0.1 .2,0 .4,0 .6,.1 .2,.1 .3,.2 .5,.3 .2,.1 .2,.3 .3,.6 .1,.3 .1,.5 .1,.8 v .7 z m -0.8,-0.8 v -0.5 c 0,0 -0.1,-0.2 -0.1,-0.3 0,-0.1 -0.1,-0.1 -0.2,-0.2 -0.1,-0.1 -0.2,-0.1 -0.3,-0.1 -0.1,0 -0.2,0 -0.3,.1 l -0.2,.2 c 0,0 -0.1,.2 -0.1,.3 v 2 c 0,0 .1,.2 .1,.3 0,.1 .1,.1 .2,.2 .1,.1 .2,.1 .3,.1 .1,0 .2,0 .3,-0.1 l .2,-0.2 c 0,0 .1,-0.2 .1,-0.3 v -1.5 z"}}]}), +this.o.seekBy(10*this.o.getPlaybackRate()),d=!0);break;case 37:this.o.Qc()&&(pQ(this.u,g.X?{D:"div",Y:["ytp-icon","ytp-icon-rewind-five-seconds"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"M 18,11 V 7 l -5,5 5,5 v -4 c 3.3,0 6,2.7 6,6 0,3.3 -2.7,6 -6,6 -3.3,0 -6,-2.7 -6,-6 h -2 c 0,4.4 3.6,8 8,8 4.4,0 8,-3.6 8,-8 0,-4.4 -3.6,-8 -8,-8 z m -1.3,8.9 .2,-2.2 h 2.4 v .7 h -1.7 l -0.1,.9 c 0,0 .1,0 .1,-0.1 0,-0.1 .1,0 .1,-0.1 0,-0.1 .1,0 .2,0 h .2 c .2,0 .4,0 .5,.1 .1,.1 .3,.2 .4,.3 .1,.1 .2,.3 .3,.5 .1,.2 .1,.4 .1,.6 0,.2 0,.4 -0.1,.5 -0.1,.1 -0.1,.3 -0.3,.5 -0.2,.2 -0.3,.2 -0.4,.3 C 18.5,22 18.2,22 18,22 17.8,22 17.6,22 17.5,21.9 17.4,21.8 17.2,21.8 17,21.7 16.8,21.6 16.8,21.5 16.7,21.3 16.6,21.1 16.6,21 16.6,20.8 h .8 c 0,.2 .1,.3 .2,.4 .1,.1 .2,.1 .4,.1 .1,0 .2,0 .3,-0.1 L 18.5,21 c 0,0 .1,-0.2 .1,-0.3 v -0.6 l -0.1,-0.2 -0.2,-0.2 c 0,0 -0.2,-0.1 -0.3,-0.1 h -0.2 c 0,0 -0.1,0 -0.2,.1 -0.1,.1 -0.1,0 -0.1,.1 0,.1 -0.1,.1 -0.1,.1 h -0.7 z"}}]}), +this.o.seekBy(-5*this.o.getPlaybackRate()),d=!0);break;case 39:this.o.Qc()&&(pQ(this.u,g.X?{D:"div",Y:["ytp-icon","ytp-icon-forward-five-seconds"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"m 10,19 c 0,4.4 3.6,8 8,8 4.4,0 8,-3.6 8,-8 h -2 c 0,3.3 -2.7,6 -6,6 -3.3,0 -6,-2.7 -6,-6 0,-3.3 2.7,-6 6,-6 v 4 l 5,-5 -5,-5 v 4 c -4.4,0 -8,3.6 -8,8 z m 6.7,.9 .2,-2.2 h 2.4 v .7 h -1.7 l -0.1,.9 c 0,0 .1,0 .1,-0.1 0,-0.1 .1,0 .1,-0.1 0,-0.1 .1,0 .2,0 h .2 c .2,0 .4,0 .5,.1 .1,.1 .3,.2 .4,.3 .1,.1 .2,.3 .3,.5 .1,.2 .1,.4 .1,.6 0,.2 0,.4 -0.1,.5 -0.1,.1 -0.1,.3 -0.3,.5 -0.2,.2 -0.3,.2 -0.5,.3 C 18.3,22 18.1,22 17.9,22 17.7,22 17.5,22 17.4,21.9 17.3,21.8 17.1,21.8 16.9,21.7 16.7,21.6 16.7,21.5 16.6,21.3 16.5,21.1 16.5,21 16.5,20.8 h .8 c 0,.2 .1,.3 .2,.4 .1,.1 .2,.1 .4,.1 .1,0 .2,0 .3,-0.1 L 18.4,21 c 0,0 .1,-0.2 .1,-0.3 v -0.6 l -0.1,-0.2 -0.2,-0.2 c 0,0 -0.2,-0.1 -0.3,-0.1 h -0.2 c 0,0 -0.1,0 -0.2,.1 -0.1,.1 -0.1,0 -0.1,.1 0,.1 -0.1,.1 -0.1,.1 h -0.6 z"}}]}), +this.o.seekBy(5*this.o.getPlaybackRate()),d=!0);break;case 77:this.o.isMuted()?(this.o.unMute(),rQ(this.u,this.o.getVolume(),!1)):(this.o.mute(),rQ(this.u,0,!0));d=!0;break;case 32:case 75:c.M||(b=!g.OC(g.PK(this.o)),g.qQ(this.u,b),b?this.o.playVideo():this.o.pauseVideo(),d=!0);break;case 190:b?c.Ia&&(b=this.o.getPlaybackRate(),this.o.setPlaybackRate(b+.25,!0),sQ(this.u,!1),d=!0):this.o.Qc()&&(XQ(this,1),d=!0);break;case 188:b?c.Ia&&(b=this.o.getPlaybackRate(),this.o.setPlaybackRate(b-.25,!0),sQ(this.u, +!0),d=!0):this.o.Qc()&&(XQ(this,-1),d=!0);break;case 70:HN(this.o)&&(this.o.toggleFullscreen(),d=!0);break;case 27:this.C()&&(d=!0)}if("3"!=c.controlsType)switch(a){case 67:g.zL(g.KK(this.o))&&(b=this.o.getOption("captions","track"),this.o.toggleSubtitles(),b=!b||b&&!b.displayName?"Sous-titres activ\u00e9s":"Sous-titres d\u00e9sactiv\u00e9s",pQ(this.u,XM(),b),d=!0);break;case 79:WQ(this,"textOpacity");break;case 87:WQ(this,"windowOpacity");break;case 187:case 61:WQ(this,"fontSizeIncrement",!1,!0); +break;case 189:case 173:WQ(this,"fontSizeIncrement",!0,!0)}var k;48<=a&&57>=a?k=a-48:96<=a&&105>=a&&(k=a-96);null!=k&&this.o.Qc()&&(a=this.o.getProgressState(),this.o.seekTo(k/10*(a.seekableEnd-a.seekableStart)+a.seekableStart),d=!0);d&&this.B.Tb(2,!0)}return d}; +g.h.Fu=function(a){g.K(this.o.getRootNode(),"ytp-probably-keyboard-focus",a);g.K(this.F.element,"ytp-probably-keyboard-focus",a)}; +g.h.kC=function(a){g.zL(g.KK(this.o))&&this.o.setOption("captions","sampleSubtitles",a)}; +g.h.X=function(){this.A.Pe();g.Gr.prototype.X.call(this)};g.r(YQ,g.R);YQ.prototype.Db=function(a){this.element.setAttribute("aria-checked",String(a))}; +YQ.prototype.onClick=function(a){g.IN(a,this.api)&&this.api.playVideoAt(this.index)};g.r(ZQ,g.wN);g.h=ZQ.prototype;g.h.show=function(){g.wN.prototype.show.call(this);this.w.L(this.api,"videodatachange",this.cu);this.w.L(this.api,"onPlaylistUpdate",this.cu);this.cu()}; +g.h.hide=function(){g.wN.prototype.hide.call(this);g.Ir(this.w);this.updatePlaylist(null)}; +g.h.cu=function(){this.updatePlaylist(this.api.getPlaylist())}; +g.h.Hp=function(){var a=this.playlist,b=a.w;if(b===this.A)this.selected.Db(!1),this.selected=this.playlistData[a.index];else{for(var c=g.q(this.playlistData),d=c.next();!d.done;d=c.next())d.value.dispose();c=a.getLength();this.playlistData=[];for(d=0;dg.QK(this.w).getPlayerSize().width&&!a);this.u&&2!=this.w.getPresentingPlayerType()?(this.update({text:g.gM("$CURRENT_POSITION/$PLAYLIST_LENGTH",{CURRENT_POSITION:String(this.u.index+1),PLAYLIST_LENGTH:String(this.u.getLength())}),title:g.gM("Playlist\u00a0: $PLAYLIST_NAME",{PLAYLIST_NAME:this.u.title})}),this.Ha()||(this.show(),SN(this.B)),this.F=!0):this.Ha()&&(this.hide(),SN(this.B))}; +$Q.prototype.Xa=function(a){g.R.prototype.Xa.call(this,a);g.oL(this.w,this.element,this.F&&a)}; +$Q.prototype.C=function(){this.u&&this.u.unsubscribe("shuffle",this.A,this);(this.u=this.w.getPlaylist())&&this.u.subscribe("shuffle",this.A,this);this.A()};g.r(aR,g.R); +aR.prototype.C=function(a){if(a){this.u=a;a=this.u.text;var b=!1;a&&(this.update({title:a}),b=!0);g.Oh(this.U,b);a=this.u.detailsText;b=!1;a&&(this.update({details:a}),b=!0);g.Oh(this.I,b);a=this.u.acceptButton;b=!1;a&&a.buttonRenderer&&(this.update({acceptButtonText:a.buttonRenderer.text}),b=!0);g.Oh(this.G,b);a=this.u.dismissButton;b=!1;a&&a.buttonRenderer&&(this.update({dismissButtonText:a.buttonRenderer.text}),b=!0);g.Oh(this.M,b)}a=document.querySelectorAll('[data-tooltip-target-id="'+this.u.targetId+ +'"]');this.A=0'),e=d.document))e.write(g.Qc(c)), +e.close()}else(d=ad(e,d,f,l))&&c.noopener&&(d.opener=null);if(c=d)c.opener||(c.opener=window),c.focus();g.Kp(b)}}; +g.h.HL=function(a,b){g.JN(a,this.w,b)&&this.w.na("SHARE_CLICKED")}; +g.h.kJ=function(a){!a&&yN(this)&&this.hf()}; +g.h.focus=function(){this.F.focus()}; +g.h.X=function(){g.wN.prototype.X.call(this);cR(this)};g.r(g.eR,g.R);g.eR.prototype.G=function(){var a=this.u.N(),b=this.u.getVideoData(),c=this.u.getPlaylistId();a=a.getVideoUrl(b.videoId,c,void 0,!0);navigator.share?navigator.share({title:b.title,url:a}):(this.B.jg(),this.I.hf(this.element,!1));g.nL(this.u,this.element)}; +g.eR.prototype.A=function(){var a=this.u.N(),b=this.u.getVideoData(),c=this.B.Rd()&&g.Ly(a),d=g.Ly(a)&&g.SK(this.u)&&g.V(g.PK(this.u),128);this.la("icon",c&&a.F?{D:"div",Y:["ytp-icon","ytp-icon-sharrow-large"]}:g.X?{D:"div",Y:["ytp-icon","ytp-icon-sharrow"]}:{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 36 36",width:"100%"},J:[{D:"path",Na:!0,H:"ytp-svg-fill",O:{d:"m 20.20,14.19 0,-4.45 7.79,7.79 -7.79,7.79 0,-4.56 C 16.27,20.69 12.10,21.81 9.34,24.76 8.80,25.13 7.60,27.29 8.12,25.65 9.08,21.32 11.80,17.18 15.98,15.38 c 1.33,-0.60 2.76,-0.98 4.21,-1.19 z"}}]}); +a=a.disableSharing&&2!=this.u.getPresentingPlayerType()||!b.showShareButton||b.Jm||d;c=g.QK(this.u).getPlayerSize().width;this.w=!!b.videoId&&c>=this.F&&!a;g.K(this.element,"ytp-share-button-visible",this.w);g.Qu(this,this.w);SN(this.C);g.oL(this.u,this.element,this.w&&this.P)}; +g.eR.prototype.Xa=function(a){g.R.prototype.Xa.call(this,a);g.oL(this.u,this.element,this.w&&a)}; +g.eR.prototype.X=function(){g.R.prototype.X.call(this);g.Dn(this.element,"ytp-share-button-visible")};g.r(gR,g.wN);gR.prototype.show=function(){g.wN.prototype.show.call(this);this.C.start()}; +gR.prototype.hide=function(){g.wN.prototype.hide.call(this);this.C.stop()}; +gR.prototype.aa=function(){var a=this.w.getCurrentTime();a>this.B/1E3&&a(b.height-k.height)/2?l.y-f.height-12:l.y+k.height+12);a.style.top=f+(e||0)+"px";a.style.left=c+"px"}; +g.h.mm=function(a){a&&(this.M.rf(this.A.element),this.o&&this.M.rf(this.o.ua()));g.eQ.prototype.mm.call(this,a)}; +g.h.xt=function(a,b){var c=g.QK(this.api).getPlayerSize();c=new g.ph(0,0,c.width,c.height);if(a||this.u.u&&!this.Sh()){if(this.api.N().Qg||b){var d=this.kc()?this.yb:this.Rb;c.top+=d;c.height-=d}this.o&&(c.height-=this.o.A.kc()?72:50)}return c}; +g.h.bJ=function(a){var b=this.api.getRootNode();a?b.parentElement?(b.setAttribute("aria-label","Lecteur vid\u00e9o YouTube en plein \u00e9cran"),this.api.N().externalFullscreen||(b.parentElement.insertBefore(this.Ka.element,b),b.parentElement.insertBefore(this.Ia.element,b.nextSibling))):g.M(Error("Player not in DOM.")):(b.setAttribute("aria-label","Lecteur vid\u00e9o YouTube"),g.Nu(this.Ka),g.Nu(this.Ia));this.Ti();this.Mg()}; +g.h.kc=function(){return this.api.isFullscreen()||!1}; +g.h.showControls=function(a){this.Xb=!a;this.oe()}; +g.h.Ti=function(){var a=this.kc();this.M.B=a?1.5:1;this.P&&g.K(this.P.element,"ytp-big-mode",a);this.oe();if(this.Rd()&&this.w)this.I&&tR(this.w,this.I),this.G&&tR(this.w,this.G),this.F&&tR(this.w,this.F);else{if(this.w){a=this.w;for(var b=g.q(a.actionButtons),c=b.next();!c.done;c=b.next())g.Nu(c.value);a.actionButtons=[]}this.I&&!g.xe(this.ha.element,this.I.element)&&this.I.ca(this.ha.element);this.G&&!g.xe(this.ha.element,this.G.element)&&this.G.ca(this.ha.element);this.F&&!g.xe(this.ha.element, +this.F.element)&&this.F.ca(this.ha.element)}this.Mg();g.eQ.prototype.Ti.call(this)}; +g.h.Mr=function(){if(JR(this)&&!g.SK(this.api))return!1;var a=this.api.getVideoData();return!g.Ly(this.api.N())||2==this.api.getPresentingPlayerType()||!this.wf||((a=this.wf||a.wf)?(a=a.embedPreview)?(a=a.thumbnailPreviewRenderer,a=a.videoDetails&&a.videoDetails.embeddedPlayerOverlayVideoDetailsRenderer||null):a=null:a=null,a&&a.collapsedRenderer&&a.expandedRenderer)?g.eQ.prototype.Mr.call(this):!1}; +g.h.Mg=function(){g.eQ.prototype.Mg.call(this);g.oL(this.api,this.qc.element,!!this.C);this.za&&this.za.Xa(!!this.C);this.rb.Xa(!!this.C);this.Ma&&this.Ma.Xa(this.Rd()&&!!this.C);this.G&&this.G.Xa(!this.Rd()&&!!this.C);this.I&&this.I.Xa(!this.Rd()&&!!this.C);this.F&&this.F.Xa(!this.Rd()&&!!this.C);if(!this.C){this.M.rf(this.A.element);for(var a=0;a=c,b.dis=this.B.zl("display"));(a=a?(0,g.yJ)():null)&&(b.gpu=a);b.cgr=!0;b.debug_playbackQuality=this.u.getPlaybackQuality(1);b.debug_date=(new Date).toString();delete b.uga;delete b.q;(a=aL(this.A))&&(b=IT(b,a.Za(),"fresca_"));return JSON.stringify(b,null,2)}; +g.h.getPresentingPlayerType=function(){return 1==this.Z?1:DS(this)?3:g.W(this).getPlayerType()}; +g.h.getAppState=function(){return this.Z}; +g.h.KG=function(a){switch(a.type){case "loadedmetadata":LA("fvb",this.P.timerName)||this.P.tick("fvb");OA("fvb");this.yb.start();break;case "loadstart":LA("gv",this.P.timerName)||this.P.tick("gv");OA("gv");break;case "progress":case "timeupdate":!LA("l2s",this.P.timerName)&&2<=Rt(a.target.Dd())&&this.P.tick("l2s");break;case "playing":g.nz&&this.yb.start();if(g.$y(this.o))a=!1;else{var b=g.VK(this.A);a="none"==this.B.zl("display")||0==Ud(this.B.ck());var c=tM(this.G),d=this.C.getVideoData(),e=mz(this.o)|| +g.Uy(this.o);d=hB(d);b=!c||b||e||d||this.o.Wg;a=a&&!b}a&&(this.C.Ra("hidden","1",!0),this.getVideoData().Jf||(tS(this,"html5_new_elem_on_hidden")?(this.getVideoData().Jf=1,this.KA(null),this.C.playVideo()):BT(this,"hidden",!0)))}}; +g.h.pL=function(a,b){this.u.na("onLoadProgress",b)}; +g.h.lN=function(){this.u.S("playbackstalledatstart")}; +g.h.LG=function(a,b){var c=PS(this,a);b=fT(this,c.getCurrentTime(),c);this.u.na("onVideoProgress",b)}; +g.h.QK=function(){this.u.na("onDompaused")}; +g.h.uM=function(){this.u.S("progresssync")}; +g.h.HG=function(a){if(1==this.getPresentingPlayerType()){g.bH(a,1)&&!g.V(a.state,64)&&SS(this).va&&this.w.isAtLiveHead()&&1Math.random()&&g.Rq("autoplayTriggered",{intentional:this.Uc});this.pd=!1;var b=g.ds(this.Md||(this.I.o?3:0));if(b){var c={cpn:this.getVideoData().clientPlaybackNonce,csn:b};if(g.P(this.o.experiments,"web_playback_associated_ve")&&null!=this.getVideoData().Af){var d=g.Wr(this.getVideoData().Af);g.us(b, +d);c.playbackVe=g.Yr(d)}g.P(this.o.experiments,"kevlar_playback_associated_queue")&&this.getVideoData().queueInfo&&(c.queueInfo=this.getVideoData().queueInfo);g.Rq("playbackAssociated",c)}tS(this,"web_player_inline_botguard")&&(b=this.getVideoData().botguardData)&&(to("BG_I",b.interpreterScript),to("BG_IU",b.interpreterUrl),to("BG_P",b.program),g.jz(this.o)?Sp(function(){ZS(a)}):ZS(this))}; +g.h.hL=function(){this.u.S("internalAbandon");tS(this,"html5_ad_module_cleanup_killswitch")||hT(this)}; +g.h.tA=function(a){a=a.o;if(!isNaN(a)&&0window.outerHeight*window.outerWidth/(window.screen.width*window.screen.height)&&this.B.ol()}; +g.h.oL=function(a){3!=this.getPresentingPlayerType()&&this.u.S("liveviewshift",a)}; +g.h.playVideo=function(a){if(a=g.W(this,a))2==this.Z?XS(this):(null!=this.ba&&this.ba.Ha()&&this.ba.start(),g.V(a.getPlayerState(),2)?this.seekTo(0):a.playVideo())}; +g.h.pauseVideo=function(a){(a=g.W(this,a))&&a.pauseVideo()}; +g.h.stopVideo=function(){var a=this.w.getVideoData(),b=new g.aB(this.o,{video_id:a.gv||a.videoId,oauth_token:a.oauthToken});b.gf=g.Pb(a.gf);oT(this,6);qT(this,b,1);null!=this.ba&&this.ba.stop()}; +g.h.sendVideoStatsEngageEvent=function(a,b,c){(b=g.W(this,b))&&this.o.rd.has(a.toString())?b.sendVideoStatsEngageEvent(a,c):c&&c()}; +g.h.updatePlaylist=function(){WS(this);this.u.na("onPlaylistUpdate")}; +g.h.setSizeStyle=function(a,b){this.pe=a;this.Ic=b;this.u.S("sizestylechange",a,b);this.G.ke()}; +g.h.isWidescreen=function(){return this.Ic}; +g.h.isInline=function(){return this.I.isInline()}; +g.h.getAdState=function(){if(3==this.getPresentingPlayerType())return g.RK(this.A).getAdState();if(!this.Mb()){var a=GL(this.A);if(a)return a.getAdState()}return-1}; +g.h.LM=function(a){var b=this.G.getVideoContentRect();qh(this.od,b)||(this.od=b,this.C&&WJ(this.C),this.w&&this.w!=this.C&&WJ(this.w),1==this.I.w&&this.Ta&&zT(this,!0));this.Hc&&g.Td(this.Hc,a)||(this.u.S("appresize",a),this.Hc=a)}; +g.h.Qc=function(){return this.u.Qc()}; +g.h.fN=function(){this.getPresentingPlayerType();BT(this,"signature",void 0,!0)}; +g.h.KA=function(){HS(this);GS(this)}; +g.h.HM=function(a){hK(a,this.B.To())}; +g.h.IK=function(){this.u.na("CONNECTION_ISSUE")}; +g.h.IG=function(a){this.u.S("heartbeatparams",a)}; +g.h.setBlackout=function(a){this.o.Wg=a;this.C&&(g.PH(this.C.B),this.o.R&&DT(this))}; +g.h.setAccountLinkState=function(a){var b=g.W(this);b&&(b.getVideoData().Zh=a)}; +g.h.WL=function(){var a=g.W(this);if(a){var b=!cL(this.u);g.wK(a,b)}}; +g.h.rL=function(){this.u.na("onLoadedMetadata")}; +g.h.WK=function(){this.u.na("onDrmOutputRestricted")}; +g.h.X=function(){this.A.dispose();this.Aa.dispose();this.U&&this.U.dispose();this.w.dispose();HS(this);g.Ie(g.Fb(this.Kc),this.F);os(this.Ca);this.Ca=0;g.A.prototype.X.call(this)}; +g.h.setScreenLayer=function(a){this.Md=a}; +g.h.cancelPendingLocalMediaById=function(a){if(this.ha){var b=this.ha,c=b.api.kb(),d=c?c.getVideoData():null;c&&(null===d||void 0===d?0:QB(d))&&(null===d||void 0===d?void 0:d.videoId)===a?(c.w&&XF(c.w),RB(d,!1)):b.player.getVideoData().videoId===a&&(b.player.stopVideo(),b=b.player,b.w&&XF(b.w));a=zt(a)}else a=Promise.reject();return a}; +g.h.fetchLocalMedia=function(){if(this.ha){var a=this.ha,b=a.api.kb();if(b){var c=b.getVideoData();QB(c)||(ut(c.videoId,2),b.unsubscribe("localmediacomplete",a.o,a),b.subscribe("localmediacomplete",a.o,a),g.LJ(g.W(a.api.app,void 0)),RB(c,!0),mS(c),a.api.playVideo())}}}; +g.h.fetchLocalMediaById=function(a){if(this.ha){var b=this.ha;rt(a)||(0===tt(2).length?nS(b,a):ut(a,3))}}; +g.h.getLocalMediaInfoById=function(a){return this.ha?this.ha.getLocalMediaInfoById(a):Promise.reject()}; +g.h.getAllLocalMediaInfo=function(){return this.ha?this.ha.getAllLocalMediaInfo():Promise.reject()}; +g.h.getStatsForNerds=function(){var a=this.u,b=g.W(this),c=a.getVideoData(),d=a.app.B,e=d.ua(),f=b.Ur(),k=b.ha,l=8*HI(k,"bandwidth")/1024,m=HI(k,"networkactivity")/1024,n=HI(k,"bufferhealth");if(b.F){var p=b.T.useInnertubeDrmService()?"IT/":"";p+=b.F.o.ge()+"/"+Fu(SJ(b));p+="/"+b.F.ge()}else p="";var t=c.hy()?"DAI, ":"",u=b.getPlayerState().o.toString(16),z=d.getCurrentTime().toFixed(2),C=Nt(d.Dd(),",",3);u="s:"+u+" t:"+z+" b:"+C+" ";d.Yl()&&(u+="S");d.Dh()&&(u+="P");d.Bf()&&(u+="E");d=b.B;d=d.o? +d.o.ha:void 0;d&&(u+=" l:"+d.toFixed());t+=u;d=g.iz();u=g.WK(a).WF;z=c.xa&&!c.xa.o?"display:none":"";if((C=c.clientPlaybackNonce)&&16==C.length){for(var D=0,E="",F=0;10>F;F++)if(D=(D<<6)+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_".indexOf(C.charAt(F)),4==F%5){for(var G="",fa=0;6>fa;fa++)G="0123456789ABCDEFGHJKMNPQRSTVWXYZ".charAt(D&31)+G,D>>=5;E+=G}C=E.substr(0,4)+" "+E.substr(4,4)+" "+E.substr(8,4)}else C="";l={video_id_and_cpn:c.videoId+" / "+C,codecs:"",dims_and_frames:"", +bandwidth_kbps:l.toFixed(0)+" Kbps",buffer_health_seconds:n.toFixed(2)+" s",drm_style:p?"":"display:none",drm:p,debug_info:t,bandwidth_style:z,network_activity_style:z,network_activity_bytes:m.toFixed(0)+" KB",shader_info:u,shader_info_style:u?"":"display:none",playback_categories:""};m=e.clientWidth+"x"+e.clientHeight+(1a)if(c.latencyClass&&"UNKNOWN"!==c.latencyClass)switch(c.latencyClass){case "NORMAL":f="Optimized for Normal Latency"; +break;case "LOW":f="Optimized for Low Latency";break;case "ULTRALOW":f="Optimized for Ultra Low Latency";break;default:f="Unknown Latency Setting"}else f=c.isLowLatencyLiveStream?"Optimized for Low Latency":"Optimized for Smooth Streaming";e+=f;(a=b.getPlaylistSequenceForTime(b.getCurrentTime()))&&(e+=", seq "+a.sequence);l.live_mode=e}b.isGapless()&&(l.playback_categories+="Gapless ");l.playback_categories_style=l.playback_categories?"":"display:none";l.bandwidth_samples=GI(k,"bandwidth");l.network_activity_samples= +GI(k,"networkactivity");l.live_latency_samples=GI(k,"livelatency");l.buffer_health_samples=GI(k,"bufferhealth");iB(c,"web_player_release_debug")?(l.release_name="youtube.player.web_20200517_0_RC0",l.release_style=""):l.release_style="display:none";return l}; +g.h.getVideoUrl=function(a,b,c,d,e){return this.M&&this.M.postId?(a=this.o.getVideoUrl(a),a=Dd(a,"v"),a.replace("/watch","/clip/"+this.M.postId)):this.o.getVideoUrl(a,b,c,d,e)}; +var AS={};var Rla="www.youtube-nocookie.com youtube-nocookie.com www.youtube-nocookie.com:443 youtube.googleapis.com www.youtubeedu.com www.youtubeeducation.com video.google.com redirector.gvt1.com".split(" ");KT.prototype.fetch=function(a,b){var c=this;if(!a.match(/\[BISCOTTI_ID\]/g))return LT(this,a,b);var d=1===this.u;d&&this.o.app.P.tick("a_bid_s");var e=Ola();if(null!==e)return d&&this.o.app.P.tick("a_bid_f"),LT(this,a,b,e);e=Pla();d&&Jf(e,function(){c.o.app.P.tick("a_bid_f")}); +return e.then(function(f){return LT(c,a,b,f)})}; +KT.prototype.reset=function(){this.w=this.u=1};var gsa={zS:"replaceUrlMacros",zR:"isExternalShelfAllowedFor"};g.r(NT,g.iC);var hsa={commandMetadata:!0,loggingUrls:!0};g.r(VT,g.A);VT.prototype.X=function(){this.o={};g.A.prototype.X.call(this)}; +VT.prototype.executeCommand=function(a,b,c){var d=this;c=void 0===c?{}:c;this.ea();a.loggingUrls&&WT(this,"loggingUrls",a,b,c);Object.keys(a).filter(function(e){return!hsa.hasOwnProperty(e)}).forEach(function(e){return WT(d,e,a,b,c)})};XT.prototype.o=function(){return"adLifecycleCommand"}; +XT.prototype.Fa=function(a){var b=this;switch(a.action){case "START_LINEAR_AD":g.uf(function(){b.u.dz()}); +break;case "END_LINEAR_AD":g.uf(function(){b.u.cz()}); +break;case "END_LINEAR_AD_PLACEMENT":g.uf(function(){b.u.ct()}); +break;case "FILL_INSTREAM_SLOT":g.uf(function(){a.elementId&&b.u.Xw(a.elementId)}); +break;case "FILL_ABOVE_FEED_SLOT":g.uf(function(){a.elementId&&(null!==b.A&&(LW(b.w)||MW(b.w)||NW(b.w))&&b.A.Fr(a.elementId),b.u.Fr(a.elementId))}); +break;case "CLEAR_ABOVE_FEED_SLOT":g.uf(function(){null!==b.A&&(LW(b.w)||MW(b.w)||NW(b.w))&&b.A.kr();b.u.kr()})}};ZT.prototype.o=function(){return"adPingingEndpoint"}; +ZT.prototype.Fa=function(a,b,c){c=void 0===c?{}:c;this.u.send(a,b,c)};$T.prototype.o=function(){return"adPlayerControlsCommand"}; +$T.prototype.Fa=function(a){switch(a.action){case "AD_PLAYER_CONTROLS_ACTION_SEEK_TO_END":var b=this.u;b=WU(b.o)&&b.u.uh()?b.o.getDuration(2):0;if(0>=b)break;this.u.seekTo(g.Md(b-(Number(a.seekOffsetMilliseconds)||0)/1E3,0,b));break;case "AD_PLAYER_CONTROLS_ACTION_RESUME":this.u.resume()}};aU.prototype.o=function(){return"changeEngagementPanelVisibilityAction"}; +aU.prototype.Fa=function(a){this.K.na("changeEngagementPanelVisibility",{changeEngagementPanelVisibilityAction:a})};bU.prototype.o=function(){return"clearCueRangesCommand"}; +bU.prototype.Fa=function(){var a=this;g.uf(function(){var b=a.u;fX(b,Array.from(b.G))})};cU.prototype.send=function(a,b,c){try{var d=a.match(md);if("https"===d[1])var e=a;else d[1]="https",e=kd("https",d[2],d[3],d[4],d[5],d[6],d[7]);var f=cn(e);a=[];sq(e)&&a.push({headerType:"USER_AUTH"});this.o.send({baseUrl:e,scrubReferrer:f,headers:a},b,c)}catch(k){}};dU.prototype.o=function(){return"loggingUrls"}; +dU.prototype.Fa=function(a,b,c){c=void 0===c?{}:c;a=g.q(a);for(var d=a.next();!d.done;d=a.next())d=d.value,d.baseUrl&&this.u.send(d.baseUrl,b,c)};eU.prototype.o=function(){return"muteAdEndpoint"}; +eU.prototype.Fa=function(a){var b=this;switch(a.type){case "SKIP":g.uf(function(){b.u.ct()})}};fU.prototype.o=function(){return"pingingEndpoint"}; +fU.prototype.Fa=function(){};gU.prototype.o=function(){return"urlEndpoint"}; +gU.prototype.Fa=function(a,b){if(a.url){var c=g.dn(a.url,b);g.GN(c)}};g.r(hU,g.A);iU.prototype.showCompanion=function(a,b,c){return jU(this).then(function(){return nU(a,b,c)})};pU.prototype.showCompanion=function(a,b){b.contentVideoId||(b.contentVideoId=a);this.u.na("updateKevlarOrC3Companion",b)};qU.prototype.Kl=function(){return!1}; +qU.prototype.R=function(){return function(){return null}};g.r(tU,qU);g.h=tU.prototype;g.h.bd=function(){return!0}; +g.h.Ec=function(){return!1}; +g.h.isSkippable=function(){return null!=this.ba}; +g.h.getVideoUrl=function(){return this.P}; +g.h.Kl=function(){return!0};g.r(wU,qU);wU.prototype.bd=function(){return!0}; +wU.prototype.Ec=function(){return!0};g.r(DU,qU);DU.prototype.bd=function(){return!0}; +DU.prototype.Ec=function(){return!1}; +DU.prototype.Kl=function(){return!0}; +DU.prototype.R=function(){return function(){return g.ce("video-ads")}};EU.prototype.xb=function(){return this.M}; +EU.prototype.isPostroll=function(){return"AD_PLACEMENT_KIND_END"==this.xb().u};var jma=["FINAL","CPN","MIDROLL_POS","SDKV","SLOT_POS"];var RU=null;g.r(QU,g.O);QU.prototype.ul=function(a){return this.o.hasOwnProperty(a)?this.o[a].ul():{}}; +g.Ga("ytads.bulleit.getVideoMetadata",function(a){return SU().ul(a)},void 0); +g.Ga("ytads.bulleit.triggerExternalActivityEvent",function(a,b,c){var d=SU();c=lma(c);null!==c&&d.S(c,{queryId:a,viewabilityString:b})},void 0);TU.prototype.send=function(a,b,c){try{var d=!!a.scrubReferrer,e=g.dn(a.baseUrl,kma(b,c,d)),f;if(a.headers)for(var k=g.q(a.headers),l=k.next();!l.done;l=k.next())switch(l.value.headerType){case "USER_AUTH":var m=this.Qd();m&&(f||(f={}),f.Authorization="Bearer "+m)}g.cr(e,void 0,d,f)}catch(n){}};g.r(UU,TU);UU.prototype.Qd=function(){return this.o?this.o.Qd():""};g.r(VU,g.A);g.r(aV,g.A);g.r(Y,g.O);g.h=Y.prototype;g.h.ul=function(){return{}}; +g.h.wu=function(){}; +g.h.ib=function(a){this.Je();this.S(a)}; +g.h.Iz=function(){}; +g.h.Je=function(){sV(this,this.V,3);this.V=[]}; +g.h.getDuration=function(){return this.K.getDuration(2,!1)}; +g.h.mh=function(){var a=this.o;bV(a)||!oV(a,"impression")&&!oV(a,"start")||oV(a,"abandon")||oV(a,"complete")||oV(a,"skip")||(dV(a)?jV(a,"pause"):iV(a,"pause"))}; +g.h.sg=function(){this.ba||this.G||this.Lb()}; +g.h.Zc=function(){lV(this.o,this.getDuration())}; +g.h.Ac=function(){var a=this.o;!oV(a,"impression")||oV(a,"skip")||oV(a,"complete")||jV(a,"abandon")}; +g.h.nh=function(){var a=this.o;dV(a)?iV(a,"skip"):!oV(a,"impression")||oV(a,"abandon")||oV(a,"complete")||iV(a,"skip")}; +g.h.Lb=function(){if(!this.G){var a=vV(this);this.o.w.AD_CPN=a;kV(this.o);this.G=!0}}; +g.h.Wb=function(a){a=a||"";var b="",c="",d="";WU(this.K)&&(b=g.PK(this.K,2).o,this.K.app.B&&(c=this.K.app.B.je(),null!=this.K.app.B.Ye()&&(d=this.K.app.B.Ye())));var e=this.o;e.w=OU(e.w,MU(3,"There was an error playing the video ad. Error code: "+(a+"; s:"+b+"; rs:")+(c+"; ec:"+d)));iV(e,"error")}; +g.h.Ri=function(){}; +g.h.DB=function(){this.S("e")}; +g.h.EB=function(){this.S("j")}; +g.h.FB=function(){this.S("k")}; +g.h.GB=function(){this.S("l")}; +g.h.HB=function(){this.S("m")}; +g.h.IB=function(){this.S("n")}; +g.h.JB=function(){this.S("s")}; +g.h.dispose=function(){this.ea()||(this.Je(),this.w.unsubscribe("e",this.DB,this),this.w.unsubscribe("j",this.EB,this),this.w.unsubscribe("k",this.FB,this),this.w.unsubscribe("l",this.GB,this),this.w.unsubscribe("m",this.HB,this),this.w.unsubscribe("n",this.IB,this),this.w.unsubscribe("s",this.JB,this),delete this.w.o[this.F.F],g.O.prototype.dispose.call(this))}; +g.h.Uw=function(){return""};g.r(wV,qU);wV.prototype.bd=function(){return!1}; +wV.prototype.Ec=function(){return!0};g.r(xV,ST);g.r(yV,Y);yV.prototype.dc=function(){var a=this,b=new xV(this.F.o,this.macros),c=this.K.getVideoData(2),d=b.renderer;g.P(this.K.N().experiments,"ignore_video_data_current_ad_check")&&c&&d&&d.adVideoId?AV(this,c,b):c&&c.Id&&zV(c,b)?AV(this,c,b):(this.u=function(e,f,k){f&&2==k&&zV(f,b)&&f.Id&&(a.u&&(a.K.removeEventListener("videodatachange",a.u),a.u=null),AV(a,f,b))},this.K.addEventListener("videodatachange",this.u))}; +yV.prototype.Ri=function(a){pV(this.o,a)}; +yV.prototype.X=function(){this.u&&(this.K.removeEventListener("videodatachange",this.u),this.u=null);Y.prototype.X.call(this)};g.r(BV,qU);BV.prototype.bd=function(){return!0}; +BV.prototype.Ec=function(){return!1};g.r(CV,ST);g.r(DV,Y);g.h=DV.prototype;g.h.dc=function(){0=this.C&&(g.M(Error("durationMs was specified incorrectly with a value of: "+this.C)),this.Zc());this.Lb();this.K.addEventListener("progresssync",this.I)}; +g.h.Ac=function(){Y.prototype.Ac.call(this);this.ib("d")}; +g.h.Lb=function(){var a=this.K.N();Y.prototype.Lb.call(this);this.u=Math.floor(this.K.getCurrentTime());this.A=this.u+this.C/1E3;g.$y(a)?this.K.na("onAdMessageChange",{renderer:this.B.o,startTimeSecs:this.u}):tV(this,[new SV(this.B.o)]);a=(a=this.K.getVideoData(1))&&a.clientPlaybackNonce||"";var b=g.ds();b&&g.Rq("adNotify",{clientScreenNonce:b,adMediaTimeSec:this.A,timeToAdBreakSec:Math.ceil(this.A-this.u),clientPlaybackNonce:a,videoAdBreakOffsetSec:Math.floor(this.B.o.videoAdBreakOffsetMs/1E3)}); +g.V(g.PK(this.K,1),512)&&(a=(a=this.K.getVideoData(1))&&a.clientPlaybackNonce||"",(b=g.ds())&&g.Rq("adNotifyFailure",{clientScreenNonce:b,adMediaTimeSec:this.A,timeToAdBreakSec:Math.ceil(this.A-this.u),clientPlaybackNonce:a,videoAdBreakOffsetSec:Math.floor(this.B.o.videoAdBreakOffsetMs/1E3)}),this.Zc())}; +g.h.Zc=function(){Y.prototype.Zc.call(this);this.ib("h")}; +g.h.Wb=function(a){Y.prototype.Wb.call(this,a);this.ib("i")}; +g.h.ib=function(a){this.K.removeEventListener("progresssync",this.I);this.Je();this.S(a)}; +g.h.dispose=function(){this.K.removeEventListener("progresssync",this.I);Y.prototype.dispose.call(this)}; +g.h.Je=function(){g.$y(this.K.N())?this.K.na("onAdMessageChange",{renderer:null,startTimeSecs:this.u}):Y.prototype.Je.call(this)};g.r(UV,ST);g.r(VV,Y);VV.prototype.dc=function(){tV(this,[new UV(this.F.o,this.macros)])}; +VV.prototype.Ri=function(a){pV(this.o,a)};g.r(WV,Y);WV.prototype.dc=function(){var a=vV(this);this.o.w.AD_CPN=a;kV(this.o)};g.r(XV,ST);g.r(YV,ST);g.r(ZV,Y);ZV.prototype.dc=function(){var a;if(a=g.P(this.K.N().experiments,"render_enhanced_overlays_as_ctas_for_desktop"))a=this.u.o,a=a.contentSupportedRenderer?!!a.contentSupportedRenderer.enhancedTextOverlayAdContentRenderer:!1;a?(a=new YV(this.u.o,this.macros),tV(this,[a])):(a=new XV(this.u.o,this.macros),tV(this,[a]))};g.r($V,ST);g.r(aW,Y);aW.prototype.dc=function(){this.Lb()}; +aW.prototype.Lb=function(){tV(this,[new $V(this.u.o,this.macros)]);Y.prototype.Lb.call(this)}; +aW.prototype.Wb=function(a){Y.prototype.Wb.call(this,a);this.ib("i")};eW.prototype.sendAdsPing=function(a){this.B.send(a,iW(this),{})};g.r(kW,ST);g.r(lW,Y);lW.prototype.dc=function(){var a=new kW(this.u.o,this.macros);tV(this,[a])};g.r(mW,ST);g.r(nW,Y);nW.prototype.dc=function(){var a=new mW(this.F.o,this.macros);tV(this,[a])}; +nW.prototype.Ri=function(a){pV(this.o,a)};g.r(qW,g.O);qW.prototype.getProgressState=function(){return this.w}; +qW.prototype.start=function(){this.A=Date.now();pW(this,{current:this.o/1E3,duration:this.u/1E3});this.Ga.start()}; +qW.prototype.stop=function(){this.Ga.stop()};g.r(rW,ST);g.r(sW,Y);g.h=sW.prototype;g.h.dc=function(){this.Lb()}; +g.h.Lb=function(){var a=this.B.o;g.$y(this.K.N())?(a=Bma(this.I,a),this.K.na("onAdInfoChange",a),this.u&&(this.C=Date.now(),this.u.start())):tV(this,[new rW(a)]);Y.prototype.Lb.call(this)}; +g.h.getDuration=function(){return this.B.u}; +g.h.mh=function(){Y.prototype.mh.call(this);this.u&&this.u.stop()}; +g.h.sg=function(){Y.prototype.sg.call(this);this.u&&this.u.start()}; +g.h.Ac=function(){Y.prototype.Ac.call(this);this.ib("c")}; +g.h.nh=function(){Y.prototype.nh.call(this);this.ib("h")}; +g.h.Wb=function(a){Y.prototype.Wb.call(this,a);this.ib("i")}; +g.h.ib=function(a){this.Je();"c"!=a&&rY(this.P.aa);this.S(a)}; +g.h.Ri=function(a){switch(a){case "skip-button":this.nh();break;case "survey-submit":this.ib("h")}}; +g.h.Je=function(){g.$y(this.K.N())?(this.u&&this.u.stop(),this.K.na("onAdInfoChange",null)):Y.prototype.Je.call(this)};g.r(tW,ST);g.r(uW,Y);uW.prototype.dc=function(){this.Lb()}; +uW.prototype.Lb=function(){tV(this,[new tW(this.u.o,this.macros)]);Y.prototype.Lb.call(this)}; +uW.prototype.Ac=function(){Y.prototype.Ac.call(this);this.ib("c")}; +uW.prototype.Wb=function(a){Y.prototype.Wb.call(this,a);this.ib("i")};g.r(vW,ST);g.r(wW,Y);g.h=wW.prototype;g.h.dc=function(){0b){var f=this.K.app;c=b-a;if(f.U){e=void 0;var k=null;f=g.q(f.U.o);for(var l=f.next();!l.done;l=f.next())if(l=l.value,l.Eb===d){k=l;break}k&&(void 0=== +e&&(e=k.Nb),RR(k,c,e))}else{e=f.Aa;k=void 0;f=null;l=g.q(e.o);for(var m=l.next();!m.done;m=l.next())if(m=m.value,m.Eb===d){f=m;break}f?(void 0===k&&(k=f.Nb),jS(e,f,c,k)):VR(e,"e.InvalidTimelinePlaybackId timelinePlaybackId="+d)}}return d}; +g.h.dispose=function(){XU(this.K)&&!this.P&&this.K.stopVideo(2);JW(this,"c");Y.prototype.dispose.call(this)};UW.prototype.reduce=function(a){switch(a.event){case "start":case "continue":case "predictStart":case "stop":break;case "unknown":return;default:return}var b=a.identifier;var c=this.o[b];c?b=c:(c={uj:null,vy:-Infinity},b=this.o[b]=c);c=a.startSecs+a.o/1E3;if(!(c=c?null:c,null===c)a=null;else{switch(a.event){case "start":case "continue":case "stop":break;default:a=null;break a}var d=Math.max(a.startSecs,0);a={sE:new Qn(d,c),ZF:new gv(d,c-d,a.context,a.identifier,a.event,a.o)}}a&&(c=a.ZF,b.uj=a.sE,this.u.JA(c))}}; +UW.prototype.updateTime=function(){};g.r(XW,qU);aX.prototype.reset=function(){return new aX(this.u)};g.r(hX,g.O);g.h=hX.prototype;g.h.Si=function(){var a=this.o;return a.o instanceof tU||a.o instanceof DU||a.o instanceof xU||a.o instanceof wU}; +g.h.hm=function(){return this.o.o.Ec()}; +g.h.xb=function(){return this.o.xb()}; +g.h.gp=function(){return GU(this.o)}; +g.h.Et=function(){return FU(this.o)}; +g.h.gs=function(a){if(!OT(a)){this.P&&(this.V=this.K.isAtLiveHead(),this.U=Math.ceil((0,g.H)()/1E3));var b=new dX(this.xc);a=eX(a);gX(b,a)}this.ik()}; +g.h.Qj=function(){return this.B instanceof NV||this.B instanceof wV||this.B instanceof XW||this.B instanceof IV}; +g.h.ly=function(){return!(this.B instanceof MV)&&!this.Qj()}; +g.h.im=function(){return this.B instanceof DU}; +g.h.uh=function(){return this.B instanceof tU}; +g.h.ik=function(){NY(this.xc,this);if(!this.o.B.hasOwnProperty("ad_placement_start")){for(var a=g.q(this.o.P),b=a.next();!b.done;b=a.next())jX(b.value);this.o.B.ad_placement_start=!0}this.F.w=!1;FA("video_to_ad",["apbs"],void 0);this.rB()}; +g.h.rB=function(){this.B?this.dc(this.B):this.bh()}; +g.h.Vi=function(a,b){a=void 0===a?!1:a;b=void 0===b?!1:b;RY(this.xc,0);this.bh(a,b)}; +g.h.gA=function(){this.Vi()}; +g.h.SJ=function(){iV(this.u.o,"active_view_measurable")}; +g.h.TJ=function(){var a=this.u.o;bV(a)||qV(a)||iV(a,"active_view_fully_viewable_audible_half_duration")}; +g.h.UJ=function(){}; +g.h.VJ=function(){}; +g.h.WJ=function(){}; +g.h.XJ=function(){}; +g.h.ZJ=function(){var a=this.u.o;bV(a)||qV(a)||iV(a,"active_view_viewable")}; +g.h.ix=function(){return this.uh()?[this.ao()]:[]}; +g.h.Gt=function(a){if(null!==this.u){this.R||(a=new g.$G(a.state,new g.HC),this.R=!0);this.u.Iz(a);var b=a.state;if(this.ba&&g.V(b,1024))this.u.Wb("dom_paused");else if(g.bH(a,2))b=this.F,b.R?cX(b):(b.w=!1,FA("ad_to_ad",["apbs"],void 0)),this.u.Zc();else{var c=a;(g.P(this.K.N().experiments,"html5_bulleit_handle_gained_playing_state")?c.state.eb()&&!c.Jh.eb():c.state.eb())?(b=this.F,b.G&&!b.w&&(b.M=!1,b.w=!0,"ad_to_video"!=b.o&&HA("apbs",void 0,b.o)),this.u.sg()):b.isError()?this.u.Wb(b.u.errorCode): +g.bH(a,4)&&(this.M||this.u.mh())}if(null!==this.u){if(g.bH(a,16)&&(b=this.u.o,!(bV(b)||.5>b.o.getCurrentTime(2,!1)&&!g.P(b.o.N().experiments,"html5_dai_pseudogapless_seek_killswitch")))){c=b.u;if(c.Kl()){var d=g.P(b.I.o.N().experiments,"html5_dai_enable_active_view_creating_completed_adblock");Im(c.F,d)}b.u.G.seek=!0}0>aH(a,4)&&!(0>aH(a,2))&&(b=this.u.o,bV(b)||(dV(b)?jV(b,"resume"):iV(b,"resume")));!g.P(this.K.N().experiments,"html5_dai_handle_suspended_state_killswitch")&&this.daiEnabled&&g.bH(a, +512)&&!g.QC(a.state)&&cX(this.F)}}}; +g.h.Kz=function(){}; +g.h.resume=function(){this.u&&this.u.wu()}; +g.h.Ft=function(){this.u&&this.u.ib("h")}; +g.h.hp=function(){this.Ft()}; +g.h.Jz=function(a){var b=this.xc;b.w&&g.P(b.o.N().experiments,"html5_bulleit_dai_publish_ad_ux_killswitch")||b.o.na("onAdUxUpdate",a)}; +g.h.onAdUxClicked=function(a){this.u.Ri(a)}; +g.h.fx=function(){return 0}; +g.h.hx=function(){return 1}; +g.h.Yp=function(a){if(this.daiEnabled&&this.o.F&&this.o.xb().start<=a&&a=Math.abs(c-this.o.xb().end/1E3)):c=!0;if(c&&!this.o.B.hasOwnProperty("ad_placement_end")){c=g.q(this.o.I);for(var d=c.next();!d.done;d=c.next())jX(d.value);this.o.B.ad_placement_end=!0}c=this.o.A;null!==c&&($W(this.Le,{cueIdentifier:this.o.u&&this.o.u.identifier,driftRecoveryMs:c,qB:this.o.xb().start,Ay:nX(this)}),this.o.A=null);b||this.daiEnabled? +OY(this.xc,!0):this.P&&this.Et()&&this.uh()?OY(this.xc,!1,Oma(this)):OY(this.xc,!1);kX(this,!0)}; +g.h.ks=function(a){RY(this.xc,a)}; +g.h.ao=function(){return this.B}; +g.h.isLiveStream=function(){return this.P}; +g.h.reset=function(){return new hX(this.xc,this.K,this.F.reset(),this.o,this.Le,this.vj,this.Sg,this.daiEnabled)}; +g.h.X=function(){g.He(this.u);this.u=null;g.O.prototype.X.call(this)};pX.prototype.create=function(a){return(a.o instanceof xU?this.A:a.o instanceof XW?this.w:""===a.C?this.o:this.u)(a)};rX.prototype.clickCommand=function(a){var b=g.ds();if(!a.clickTrackingParams||!b)return!1;vs(this.client,b,g.Wr(a.clickTrackingParams));return!0};g.r(vX,g.O);g.h=vX.prototype;g.h.xb=function(){return this.o.xb()}; +g.h.gp=function(){return GU(this.o)}; +g.h.Et=function(){return FU(this.o)}; +g.h.Qj=function(){return!1}; +g.h.hm=function(){return!1}; +g.h.onAdUxClicked=function(){}; +g.h.gs=function(a){var b=this;if(1!==this.o.w&&2!==this.o.w){var c=[];this.gp()||(c=eX(a));this.o.w=1;Jf(this.B.fetch(this.o.C,{mi:this.o.u||void 0,Pb:this.o.xb(),Bk:sY(this.u.aa)}).then(function(d){if(!b.ea()){var e=c;g.P(b.w.N().experiments,"enable_client_deferred_full_screen_filtering_for_mweb_phones")&&b.w.isFullscreen();d=Qma(b,d);var f=b.A;f.u&&d.isEmpty&&ZW("DAI_ERROR_TYPE_NO_AD_BREAK_RENDERER",f.o);d.my||(b.o.w=2,gX(new dX(b.u),e),d.isEmpty||(e=b.u,f=d=d.Tg,0!=f.length&&null!==e.oa&&(LW(e.F)|| +MW(e.F)||NW(e.F)||r1(e.F)||q1(e.F))&&(f={Tg:f,Pq:f,contentCpn:null!==EY(e)?EY(e).clientPlaybackNonce:"",Yk:1E3*e.o.getDuration(1),so:!0,daiEnabled:!1},F0(e.oa,f)),d=HY(e,d),KY(e,d)))}},function(){gX(new dX(b.u),c); +var d=b.A;d.u&&ZW("DAI_ERROR_TYPE_AD_REQUEST_FAIL",d.o)}),function(){2!==b.o.w&&(b.o.w=0); +b.gp()&&JY(b.u)})}}; +g.h.ik=function(){}; +g.h.Yp=function(){};g.r(wX,g.R);wX.prototype.executeCommand=function(a){a=void 0===a?null:a;this.ea();a&&this.A.executeCommand(a,this.B)};g.r(yX,g.A);yX.prototype.append=function(a){if(!this.G)throw Error("This does not support the append operation");this.mn(a.ua())}; +yX.prototype.mn=function(a){this.ua().appendChild(a)}; +g.r(zX,yX);zX.prototype.ua=function(){return this.o};g.r(BX,g.A);var isa=new WeakSet;g.r(Z,g.Ru);g.h=Z.prototype;g.h.bind=function(a){if(!this.da&&a.renderer){var b=Object.assign({},AX(this.api,this.ra),a.macros);this.init(a.id,a.renderer,b,a)}return Promise.resolve()}; +g.h.init=function(a,b,c){this.da=a;this.element.setAttribute("id",this.da);this.za&&g.J(this.element,this.za);this.G=b&&b.adRendererCommands;this.macros=c;this.F=b.trackingParams||null;null!=this.F&&FX(this,this.element,this.F)}; +g.h.clear=function(){}; +g.h.hide=function(){g.Ru.prototype.hide.call(this);null!=this.F&&GX(this,this.element,!1)}; +g.h.show=function(){g.Ru.prototype.show.call(this);if(!this.Ia){this.Ia=!0;var a=this.G&&this.G.impressionCommand;a&&this.ra.executeCommand(a,this.macros,null)}null!=this.F&&GX(this,this.element,!0)}; +g.h.onClick=function(a){if(this.F&&!isa.has(a)){var b=this.element;g.pL(this.api,b)&&this.Ha()&&g.nL(this.api,b);isa.add(a)}(a=this.G&&this.G.clickCommand)&&this.ra.executeCommand(a,this.macros,this.lx())}; +g.h.lx=function(){return null}; +g.h.wJ=function(a){var b=this.R;b.F=!0;b.u=a.touches.length;b.o.isActive()&&(b.o.stop(),b.B=!0);a=a.touches;b.C=CX(b,a)||1!=a.length;var c=a.item(0);b.C||!c?(b.G=Infinity,b.I=Infinity):(b.G=c.clientX,b.I=c.clientY);for(c=b.w.length=0;cMath.pow(5,2))b.A=!0}; +g.h.uJ=function(a){if(this.R){var b=this.R,c=a.changedTouches;c&&b.F&&1==b.u&&!b.A&&!b.B&&!b.C&&CX(b,c)&&(b.P=a,b.o.start());b.u=a.touches.length;0===b.u&&(b.F=!1,b.A=!1,b.w.length=0);b.B=!1}}; +g.h.X=function(){this.clear(null);this.bb(this.wa);for(var a=g.q(this.U),b=a.next();!b.done;b=a.next())this.bb(b.value);g.Ru.prototype.X.call(this)};g.r(IX,g.A);IX.prototype.X=function(){this.u&&g.Fp(this.u);this.o.clear();JX=null;g.A.prototype.X.call(this)}; +IX.prototype.register=function(a,b){b&&this.o.set(a,b)}; +var JX=null;g.r(NX,yX);NX.prototype.addEventListener=function(a,b){this.C.subscribe(a,b)}; +NX.prototype.removeEventListener=function(a,b){this.C.unsubscribe(a,b)}; +NX.prototype.dispatchEvent=function(a){this.C.S(a.type,a)};g.r(OX,g.A);g.h=OX.prototype;g.h.bind=function(a){var b=a.renderer,c=b.trackingParams;if(this.P&&this.P!=c)throw Error("Cannot re-bind presenter with new tracking params");if(c){this.P=c;var d=this.view,e=this.o,f=d.ua();g.lL(e,f,d);g.mL(e,f,c)}this.I=b.impressionEndpoints||[];this.macros=Object.assign({},a.macros);return this.B(a)}; +g.h.Ha=function(){return this.R}; +g.h.show=function(){this.view.show();this.R=!0;var a=this.o,b=this.view.ua();g.pL(a,b)&&g.oL(a,b,!0);QX(this,this.I);this.I=[]}; +g.h.hide=function(){this.rs();this.R=!1;var a=this.o,b=this.view.ua();g.pL(a,b)&&g.oL(a,b,!1)}; +g.h.rs=function(){this.view.hide()}; +g.h.onClick=function(a){a=void 0===a?{}:a;this.G(a);if(this.Ha()){a=this.o;var b=this.view.ua();g.pL(a,b)&&g.nL(a,b)}}; +g.h.executeCommand=function(a){this.A.executeCommand(a,PX(this))};g.r(RX,g.O);g.h=RX.prototype;g.h.ua=function(){return this.o.element}; +g.h.show=function(){if(!this.Ha()){this.B.L(document,"click",this.gH);this.o.show();var a=this.ua(),b=g.Nh(Dh(this.A)).width,c=g.Nh(this.A),d=Bh(this.A);a.style.top=d.y+c.height+"px";a.style.right=b-d.x-c.width+"px"}}; +g.h.hide=function(){this.Ha()&&(this.o.hide(),g.Ir(this.B))}; +g.h.Ha=function(){return this.o.Ha()}; +g.h.setTitle=function(a){a?this.w.show():this.w.hide();this.w.qb(TX(a))}; +g.h.gH=function(a){this.Ha()&&(a=a.target,g.xe(this.A,a)||(g.xe(this.u.o["ytp-ad-info-dialog-confirm-button"],a)?this.S("confirmClick"):g.xe(this.o.element,a)||this.S("externalClick")))}; +var Uma={qQ:"confirmClick",QQ:"externalClick"};g.r(UX,NX);UX.prototype.setTitle=function(a){this.o.setTitle(a)}; +UX.prototype.show=function(){this.o.show()}; +UX.prototype.hide=function(){this.o.hide()}; +UX.prototype.ua=function(){return this.o.ua()};var Vma={hD:UX},Xma=["confirmClick","externalClick"];g.r(VX,OX);VX.prototype.B=function(a){var b=this.view;a=a.renderer;var c=b.o,d=a.confirmLabel||null;d?c.u.show():c.u.hide();c.u.qb(TX(d));b.setTitle(a.title||null);b.o.o.qb(TX(a.dialogMessage||null));g.re(SX(b.o));c=g.q(a.adReasons||[]);for(d=c.next();!d.done;d=c.next())d=d.value,SX(b.o).appendChild(g.ne("li",null,TX(d)));this.u=a.confirmServiceEndpoint||null;return Promise.resolve()}; +VX.prototype.rs=function(){OX.prototype.rs.call(this);this.u&&(this.executeCommand(this.u),this.u=null)}; +VX.prototype.G=function(a){switch(a.type){case "confirmClick":case "externalClick":this.hide()}};g.r(WX,Z);g.h=WX.prototype;g.h.init=function(a,b,c){Z.prototype.init.call(this,a,b,c);(a=(a=b.button&&b.button.buttonRenderer&&b.button.buttonRenderer.navigationEndpoint&&b.button.buttonRenderer.navigationEndpoint.adInfoDialogEndpoint)&&a.dialog&&a.dialog.adInfoDialogRenderer)?(b.hoverText?(b=MX(b.hoverText),g.se(this.u,b,0)):this.u=null,this.w.bind({renderer:a,macros:c}),this.show()):g.M(Error("adInfoDialogRenderer is missing in AdHoverTextButtonRenderer"))}; +g.h.qs=function(){this.u&&g.Oh(this.u,!1)}; +g.h.iH=function(){this.w.Ha()||this.u&&g.Oh(this.u,!0)}; +g.h.hH=function(){this.w.show();this.qs()}; +g.h.clear=function(){this.hide()};g.r(XX,wX);g.r(YX,XW);g.h=YX.prototype;g.h.bd=function(){return!1}; +g.h.Ec=function(){return!0}; +g.h.vx=function(){var a=this.o,b=new Zla;b.url=a.iframeUrl||null;b.width=a.iframeWidth||0;b.height=a.iframeHeight||0;b.impressionTrackingUrls=ZX(a.impressionCommands||[]);b.clickTrackingUrls=ZX(a.onClickCommands||[]);b.adInfoRenderer=a.adInfoRenderer||null;a=new oU;a.iframeCompanionRenderer=b;return a}; +g.h.rx=function(){return[new g.Sd(300,60)]}; +g.h.Gw=function(a,b){return new XX(a,b,this.o)};g.r($X,Y);g.h=$X.prototype;g.h.gs=function(a){if(!OT(a)){var b=new dX(this.I);a=eX(a);gX(b,a)}this.ik()}; +g.h.ik=function(){var a=this;if(this.u instanceof YX){var b=this.K.getVideoData(2);if(!b||b.wc||(null==this.u.o||this.u.o.adVideoId!=b.videoId)&&!g.P(this.K.N().experiments,"ignore_video_data_current_ad_check")){this.A=function(c,d,e){if(d&&2==e&&null!=a.u.o&&a.u.o.adVideoId==d.videoId||g.P(a.K.N().experiments,"ignore_video_data_current_ad_check"))a.A&&(a.K.removeEventListener("videodatachange",a.A),a.A=null),g.P(a.K.N().experiments,"populate_companion_metadata_from_vms_html5")?rV(a):d.isListed&& +rV(a)}; +this.K.addEventListener("videodatachange",this.A);return}if(!b.isListed&&!g.P(this.K.N().experiments,"populate_companion_metadata_from_vms_html5"))return}rV(this)}; +g.h.dc=function(){var a=this;NY(this.I,this);if(YU(this.K)){var b=this.K.getVideoData(1),c=this.u.vx();null!=c&&(c.macros=Object.assign({},this.macros),this.P.showCompanion(b.videoId,c))}else{var d=this.u.rx();$la(this.P).then(function(e){a:{if(d&&e){e=g.q(e);for(var f=e.next();!f.done;f=e.next()){f=f.value;for(var k=g.q(d),l=k.next();!l.done;l=k.next())if(l=l.value,l.width==f.width&&l.height==f.height){e=l;break a}}}e=null}e&&(f=a.u.Gw(a.K,a.I,e),null!=f&&(g.B(a,f),k=a.P,k.o&&k.o.showCompanion(f.element, +e.width,e.height)))})}if(this.u instanceof YX){this.C=function(e){var f; +if(f=e.data)try{f=sq(e.source.document.location.origin)}catch(l){f=!1}if(f)if(f=a.u.o,"companion-setup-complete"==e.data)try{e.source.postMessage(JSON.stringify(f),"*");var k=e.source.frameElement;k.parentNode.style.cssText="";k.width=String(f.iframeWidth);k.height=String(f.iframeHeight)}catch(l){g.Go(l)}else"pause-video"==e.data&&a.K.pauseVideo()}; +try{window.addEventListener("message",this.C)}catch(e){g.M(e)}}}; +g.h.onAdUxClicked=function(a){pV(this.o,a)}; +g.h.xb=function(){return this.B.xb()}; +g.h.gp=function(){return GU(this.B)}; +g.h.Et=function(){return FU(this.B)}; +g.h.Qj=function(){return!0}; +g.h.hm=function(){return this.B.o.Ec()}; +g.h.Yp=function(){}; +g.h.X=function(){if(this.C)try{window.removeEventListener("message",this.C),this.C=null}catch(a){g.M(a)}this.A&&(this.K.removeEventListener("videodatachange",this.A),this.A=null);Y.prototype.X.call(this)};var Zma=Object.freeze([BV,GV,DU,OV,PV,tU]);g.r(bY,hX);g.h=bY.prototype;g.h.ix=function(){for(var a=this.A.o,b=g.q(a),c=b.next();!c.done;c=b.next());return a}; +g.h.ly=function(){return(0>=this.C?this.A.o:this.A.o.slice(this.C)).some(function(a){return a.bd()})}; +g.h.im=function(){return this.G instanceof DU||this.G instanceof OV}; +g.h.uh=function(){return this.G instanceof tU||this.G instanceof GV}; +g.h.rB=function(){this.daiEnabled?WU(this.K)&&iX(this):cY(this)}; +g.h.dc=function(a){var b=aY(a);this.G&&b&&this.I!==b&&(b?PY(this.xc):nna(this.xc),this.I=b);this.G=a;this.daiEnabled&&(this.C=this.A.o.findIndex(function(c){return c===a})); +hX.prototype.dc.call(this,a)}; +g.h.bh=function(a,b){a=void 0===a?!1:a;b=void 0===b?!1:b;this.w&&(g.He(this.w),this.w=null);hX.prototype.bh.call(this,a,b)}; +g.h.hp=function(){this.C=this.A.o.length;this.w&&this.w.ib("h");this.u&&this.u.ib("h");this.bh()}; +g.h.Kz=function(){cY(this)}; +g.h.Ft=function(){this.Vi()}; +g.h.Gt=function(a){hX.prototype.Gt.call(this,a);a=a.state;g.V(a,2)&&this.w?this.w.Zc():a.eb()?(null==this.w&&(a=this.A.w)&&(this.w=this.Sg.create(a,NU(JU(this.o))),this.w.subscribe("onAdUxUpdate",this.Jz,this),rV(this.w)),this.w&&this.w.sg()):a.isError()&&this.w&&this.w.Wb(a.u.errorCode)}; +g.h.Vi=function(a,b){a=void 0===a?!1:a;b=void 0===b?!1:b;this.daiEnabled||(RY(this.xc,0),a?this.bh(a,b):cY(this))}; +g.h.gA=function(){1==this.A.u?this.bh():this.Vi()}; +g.h.onAdUxClicked=function(a){hX.prototype.onAdUxClicked.call(this,a);this.w&&this.w.Ri(a)}; +g.h.ao=function(){var a=0>=this.C?this.A.o:this.A.o.slice(this.C);return 0aH(a,16)&&(this.U.forEach(this.gm,this),this.U.clear())}; +g.h.Hz=function(){if(this.u){var a=this.u;a.daiEnabled&&iX(a)}if(this.w){a=1E3*this.o.getCurrentTime(1);for(var b=g.q(this.C.keys()),c=b.next();!c.done;c=b.next())if(c=c.value,c.start<=a&&aMath.random())&&g.Go(Error("Found AdImage without valid image URL")):(this.u?g.sh(this.element,"backgroundImage","url("+b+")"):ee(this.element,{src:b}),ee(this.element,{alt:a&&a.accessibility&&a.accessibility.label||""}),this.show())}; +TY.prototype.clear=function(){this.hide()};g.r(VY,Z); +VY.prototype.init=function(a,b,c){Z.prototype.init.call(this,a,b,c);this.u=b;if(null==b.text&&null==b.icon)g.Go(Error("ButtonRenderer did not have text or an icon set."));else{switch(b.style||null){case "STYLE_UNKNOWN":a="ytp-ad-button-link";break;default:a=null}null!=a&&g.J(this.element,a);null!=b.text&&(a=g.T(b.text),g.ec(a)||(this.element.setAttribute("aria-label",a),this.B=new g.Ru({D:"span",H:"ytp-ad-button-text",W:a}),g.B(this,this.B),this.B.ca(this.element)));null!=b.icon&&(b=UY(b.icon),null!= +b&&(this.w=new g.Ru({D:"span",H:"ytp-ad-button-icon",J:[b]}),g.B(this,this.w)),this.C?g.se(this.element,this.w.element,0):this.w.ca(this.element))}}; +VY.prototype.clear=function(){this.hide()}; +VY.prototype.onClick=function(a){var b=this;Z.prototype.onClick.call(this,a);pna(this).forEach(function(c){return b.ra.executeCommand(c,b.macros)}); +this.api.onAdUxClicked(this.componentType)};g.r(WY,Z);WY.prototype.clear=function(){this.dispose()};g.r(ZY,WY);g.h=ZY.prototype;g.h.init=function(a,b,c){WY.prototype.init.call(this,a,b,c);g.sh(this.A,"stroke-dasharray","0 "+this.w);this.show()}; +g.h.clear=function(){this.hide()}; +g.h.hide=function(){YY(this);WY.prototype.hide.call(this)}; +g.h.show=function(){XY(this);WY.prototype.show.call(this)}; +g.h.aj=function(){this.hide()}; +g.h.Nh=function(){if(this.u){var a=this.u.getProgressState();null!=a&&null!=a.current&&(a=a.current/a.seekableEnd*this.w,this.C&&(a=this.w-a),g.sh(this.A,"stroke-dasharray",a+" "+this.w))}};g.r($Y,Z);$Y.prototype.init=function(a,b,c){Z.prototype.init.call(this,a,b,c);this.u=b;this.isTemplated()||g.ye(this.element,DX(this.u));if(b.backgroundImage&&(a=(a=b.backgroundImage.thumbnail)?SY(a):"",c=(c=this.api.getVideoData(1))&&c.Hm,a&&c&&(this.element.style.backgroundImage="url("+a+")",this.element.style.backgroundSize="100%"),b.style&&b.style.adTextStyle))switch(b.style.adTextStyle.fontSize){case "AD_FONT_SIZE_MEDIUM":this.element.style.fontSize="26px"}this.show()}; +$Y.prototype.isTemplated=function(){return this.u.isTemplated||!1}; +$Y.prototype.clear=function(){this.hide()};g.r(bZ,WY);g.h=bZ.prototype; +g.h.init=function(a,b,c){WY.prototype.init.call(this,a,b,c);a=b.durationMilliseconds;"number"===typeof a&&0>a&&g.M(Error("durationMilliseconds was specified incorrectly in AdPreviewRenderer with a value of: "+a));this.ma&&g.J(this.w.element,"countdown-next-to-thumbnail");a=b.durationMilliseconds;this.V=null==a||0===a?this.u.Rz():a;if(b.templatedCountdown)var d=b.templatedCountdown.templatedAdText;else b.staticPreview&&(d=b.staticPreview);this.A.init(RT("ad-text"),d,c);(d=this.api.getVideoData(1))&& +d.Hm&&b.thumbnail?this.C.init(RT("ad-image"),b.thumbnail,c):this.I.hide()}; +g.h.clear=function(){this.hide()}; +g.h.hide=function(){this.w.hide();this.A.hide();this.C.hide();YY(this);WY.prototype.hide.call(this)}; +g.h.show=function(){XY(this);this.w.show();this.A.show();this.C.show();WY.prototype.show.call(this)}; +g.h.aj=function(){this.hide()}; +g.h.Nh=function(){if(null!=this.u){var a=this.u.getProgressState();null!=a&&null!=a.current&&(a=1E3*a.current,!this.aa&&a>=this.V?(g.P(this.api.N().experiments,"enable_pubsub_for_skip_transition_bulleit")||this.M.hide(),this.aa=!0,this.S("t")):this.A&&this.A.isTemplated()&&(a=Math.max(0,Math.ceil((this.V-a)/1E3)),a!=this.ga&&(aZ(this.A,{TIME_REMAINING:String(a)}),this.ga=a)))}};g.r(dZ,g.A);g.h=dZ.prototype;g.h.X=function(){this.reset();g.A.prototype.X.call(this)}; +g.h.reset=function(){g.Ir(this.B);this.C=!1;this.o&&this.o.stop();this.A.stop();this.u&&(this.u=!1,this.F.play())}; +g.h.start=function(){this.reset();this.B.L(this.w,"mouseover",this.LL,this);this.B.L(this.w,"mouseout",this.IL,this);this.o?this.o.start():(this.C=this.u=!0,g.sh(this.w,{opacity:this.I}))}; +g.h.LL=function(){this.u&&(this.u=!1,this.F.play());this.A.stop();this.o&&this.o.stop()}; +g.h.IL=function(){this.C?this.A.start():this.o&&this.o.start()}; +g.h.hw=function(){this.u||(this.u=!0,this.G.play(),this.C=!0)};var qna=yb(function(){return new oba}),vna=yb(function(){return new sna});g.r(eZ,WY);g.h=eZ.prototype; +g.h.init=function(a,b,c){WY.prototype.init.call(this,a,b,c);this.I=b;this.ga=xna(this);!b||g.Mb(b)?g.M(Error("SkipButtonRenderer was not specified or empty.")):!b.message||g.Mb(b.message)?g.M(Error("SkipButtonRenderer.message was not specified or empty.")):(a={iconType:"SKIP_NEXT"},b=UY(a),null==b?g.M(Error("Icon for SkipButton was unable to be retrieved. yt.innertube.Icon.IconType: "+a.iconType+".")):(this.C=new g.Ru({D:"button",Y:["ytp-ad-skip-button","ytp-button"],J:[{D:"span",H:"ytp-ad-skip-button-icon", +J:[b]}]}),g.B(this,this.C),this.C.ca(this.A.element),this.w=new $Y(this.api,this.ra,"ytp-ad-skip-button-text"),this.w.init(RT("ad-text"),this.I.message,c),g.B(this,this.w),g.se(this.C.element,this.w.element,0)),g.P(this.api.N().experiments,"bulleit_use_touch_events_for_skip")&&HX(this))}; +g.h.clear=function(){this.V.reset();this.hide()}; +g.h.hide=function(){this.A.hide();this.w&&this.w.hide();YY(this);WY.prototype.hide.call(this);this.aa.stop();this.M&&(this.M(),this.M=null)}; +g.h.onClick=function(a){if(null!=this.C&&(a&&g.Kp(a),WY.prototype.onClick.call(this,a),this.S("u"),!this.ga))this.api.onAdUxClicked(this.componentType)}; +g.h.lx=function(){return"skip"}; +g.h.show=function(){this.V.start();this.A.show();this.w&&this.w.show();XY(this);WY.prototype.show.call(this);this.aa.Ua()}; +g.h.aj=function(){this.S("v")}; +g.h.Nh=function(){};g.r(fZ,g.O);g.h=fZ.prototype;g.h.Rz=function(){return this.u}; +g.h.start=function(){this.w||(this.w=!0,this.Ga.start())}; +g.h.stop=function(){this.w&&(this.w=!1,this.Ga.stop())}; +g.h.sJ=function(){this.o+=100;var a=!1;this.o>this.u&&(this.o=this.u,this.Ga.stop(),a=!0);this.A={seekableStart:0,seekableEnd:this.u/1E3,current:this.o/1E3};this.B&&oW(this.B,this.A.current);this.S("b");a&&this.S("a")}; +g.h.getProgressState=function(){return this.A};g.r(gZ,Z);g.h=gZ.prototype; +g.h.init=function(a,b,c){Z.prototype.init.call(this,a,b,c);if(b.image&&b.image.thumbnail)if(b.headline)if(b.description)if(b.backgroundImage&&b.backgroundImage.thumbnail)if(b.actionButton&&b.actionButton.buttonRenderer)if(a=b.durationMilliseconds||0,"number"!==typeof a||0>=a)g.M(Error("durationMilliseconds was specified incorrectly in AdActionInterstitialRenderer with a value of: "+a));else if(b.navigationEndpoint){var d=this.api.getVideoData(2);if(null!=d){var e=b.image.thumbnail.thumbnails;null!= +e&&0f)g.M(Error("timeoutSeconds was specified incorrectly in AdChoiceInterstitialRenderer with a value of: "+f));else if(b.completeCommands)if(b.adDurationRemaining&&b.adDurationRemaining.timedPieCountdownRenderer){g.ye(this.o["ytp-ad-choice-interstitial-head-title"],g.T(b.text));var m=Ana(b.defaultButtonChoiceIndex);Cna(this,e,a,m)?(Ena(this,b.completeCommands,c,f),b&&b.adDurationRemaining&&b.adDurationRemaining.timedPieCountdownRenderer&& +Fna(this,b.adDurationRemaining.timedPieCountdownRenderer,c),b&&b.background&&zna(this.o["ytp-ad-choice-interstitial"],b.background),Dna(this,a),this.show(),g.P(this.api.N().experiments,"self_podding_default_button_focused")&&g.uf(function(){0===m?d.u&&d.u.focus():d.A&&d.A.focus()})):g.M(Error("AdChoiceInterstitialRenderer failed to initialize buttons."))}else g.M(Error("AdChoiceInterstitialRenderer requires a timed_pie_countdown_renderer.")); +else g.M(Error("timeoutSeconds was specified yet no completeCommands were specified"))}else g.M(Error("AdChoiceInterstitialRenderer should have two choices."));else g.M(Error("AdChoiceInterstitialRenderer has no title."))}; +hZ.prototype.clear=function(){this.hide()};g.r(iZ,Z);g.h=iZ.prototype;g.h.init=function(a,b,c){Z.prototype.init.call(this,a,b,c);b.text?(a=b.durationMilliseconds||0,"number"!==typeof a||0>=a?g.M(Error("durationMilliseconds was specified incorrectly in AdTextInterstitialRenderer with a value of: "+a)):(this.u.init(RT("ad-text"),b.text,c),this.show())):g.M(Error("AdTextInterstitialRenderer has no message AdText."))}; +g.h.clear=function(){this.hide()}; +g.h.show=function(){Gna(!0);Z.prototype.show.call(this)}; +g.h.hide=function(){Gna(!1);Z.prototype.hide.call(this)}; +g.h.onClick=function(){};g.r(jZ,Z); +jZ.prototype.init=function(a,b,c){Z.prototype.init.call(this,a,b,c);a=b.hoverText||null;b=b.button&&b.button.buttonRenderer||null;null==b?g.M(Error("AdHoverTextButtonRenderer.button was not set in response.")):(this.button=new VY(this.api,this.ra),g.B(this,this.button),this.button.init(RT("button"),b,this.macros),a&&this.button.element.setAttribute("aria-label",g.T(a)),this.button.ca(this.element),this.C&&!g.Bn(this.button.element,"ytp-ad-clickable")&&g.J(this.button.element,"ytp-ad-clickable"),a&& +(this.w=new g.Ru({D:"div",H:"ytp-ad-hover-text-container"}),this.B&&(b=new g.Ru({D:"div",H:"ytp-ad-hover-text-callout"}),b.ca(this.w.element),g.B(this,b)),g.B(this,this.w),this.w.ca(this.element),b=MX(a),g.se(this.w.element,b,0)),this.show())}; +jZ.prototype.hide=function(){this.button&&this.button.hide();this.w&&this.w.hide();Z.prototype.hide.call(this)}; +jZ.prototype.show=function(){this.button&&this.button.show();Z.prototype.show.call(this)};g.r(kZ,Z);g.h=kZ.prototype;g.h.init=function(a,b,c){Z.prototype.init.call(this,a,b,c);b.reasons?null==b.confirmLabel?g.M(Error("AdFeedbackRenderer.confirmLabel was not set.")):(null==b.cancelLabel&&g.Go(Error("AdFeedbackRenderer.cancelLabel was not set.")),null==b.title&&g.Go(Error("AdFeedbackRenderer.title was not set.")),Kna(this,b)):g.M(Error("AdFeedbackRenderer.reasons were not set."))}; +g.h.clear=function(){Pp(this.B);Pp(this.I);this.A.length=0;this.hide()}; +g.h.hide=function(){this.u&&this.u.hide();this.w&&this.w.hide();Z.prototype.hide.call(this);this.C&&this.C.focus()}; +g.h.show=function(){this.u&&this.u.show();this.w&&this.w.show();this.C=document.activeElement;Z.prototype.show.call(this);this.B.focus()}; +g.h.Vz=function(){this.api.onAdUxClicked("ad-feedback-dialog-close-button");this.S("w");this.hide()}; +g.h.xN=function(){this.hide()}; +lZ.prototype.ua=function(){return this.o.element}; +lZ.prototype.isChecked=function(){return this.w.checked};g.r(mZ,Z);g.h=mZ.prototype;g.h.hide=function(){Z.prototype.hide.call(this);this.A&&this.A.focus()}; +g.h.show=function(){this.A=document.activeElement;Z.prototype.show.call(this);this.B.focus()}; +g.h.init=function(a,b,c){Z.prototype.init.call(this,a,b,c);this.w=b;b.dialogMessages||null!=b.title?null==b.confirmLabel?g.M(Error("ConfirmDialogRenderer.confirmLabel was not set.")):null==b.cancelLabel?g.M(Error("ConfirmDialogRenderer.cancelLabel was not set.")):Lna(this,b):g.M(Error("Neither ConfirmDialogRenderer.title nor ConfirmDialogRenderer.dialogMessages were set."))}; +g.h.clear=function(){g.Ir(this.u);this.hide()}; +g.h.Wt=function(){this.hide()}; +g.h.Vt=function(){var a=this.w.cancelEndpoint;a&&this.ra.executeCommand(a,this.macros);this.hide()}; +g.h.Xt=function(){var a=this.w.confirmNavigationEndpoint||this.w.confirmEndpoint;a&&this.ra.executeCommand(a,this.macros);this.hide()};g.r(nZ,mZ);nZ.prototype.Wt=function(a){mZ.prototype.Wt.call(this,a);this.api.onAdUxClicked("ad-mute-confirm-dialog-close-button")}; +nZ.prototype.Vt=function(a){mZ.prototype.Vt.call(this,a);this.api.onAdUxClicked("ad-mute-confirm-dialog-close-button")}; +nZ.prototype.Xt=function(a){mZ.prototype.Xt.call(this,a);this.api.onAdUxClicked("ad-mute-confirm-dialog-confirm-button");this.S("x")};g.r(oZ,Z);g.h=oZ.prototype; +g.h.init=function(a,b,c){Z.prototype.init.call(this,a,b,c);this.C=b;if(null==b.dialogMessage&&null==b.title)g.M(Error("Neither AdInfoDialogRenderer.dialogMessage nor AdInfoDialogRenderer.title was set."));else{null==b.confirmLabel&&g.Go(Error("AdInfoDialogRenderer.confirmLabel was not set."));if(a=b.closeOverlayRenderer&&b.closeOverlayRenderer.buttonRenderer||null)this.u=new VY(this.api,this.ra,["ytp-ad-info-dialog-close-button"],"ad-info-dialog-close-button"),g.B(this,this.u),this.u.init(RT("button"), +a,this.macros),this.u.ca(this.element);b.title&&(a=g.T(b.title),this.la("title",a));if(b.adReasons)for(a=b.adReasons,c=0;c=a&&g.M(Error("durationMs was specified incorrectly in AdMessageRenderer with a value of: "+a));a=b.durationMs;this.C=null==a||0===a?0:a+1E3*this.u.getProgressState().current;if(b.text)var d=b.text.templatedAdText;else b.staticMessage&&(d=b.staticMessage);this.w.init(RT("ad-text"),d,c);this.w.ca(this.A.element);this.I.show(100);this.show()}; +g.h.clear=function(){this.hide()}; +g.h.hide=function(){eoa(this,!1);WY.prototype.hide.call(this);this.A.hide();this.w.hide();YY(this)}; +g.h.show=function(){eoa(this,!0);WY.prototype.show.call(this);XY(this);this.A.show();this.w.show()}; +g.h.aj=function(){this.hide()}; +g.h.Nh=function(){if(null!=this.u){var a=this.u.getProgressState();null!=a&&null!=a.current&&(a=1E3*a.current,!this.M&&a>=this.C?(this.I.hide(),this.M=!0):this.w&&this.w.isTemplated()&&(a=Math.max(0,Math.ceil((this.C-a)/1E3)),a!=this.V&&(aZ(this.w,{TIME_REMAINING:String(a)}),this.V=a)))}};g.r(zZ,WY);g.h=zZ.prototype; +g.h.init=function(a,b,c){WY.prototype.init.call(this,a,b,c);a=b&&b.preskipRenderer&&b.preskipRenderer.adPreviewRenderer||{};if(a=g.Mb(a)?null:a){this.C=null!=a.durationMilliseconds&&void 0!==a.durationMilliseconds?a.durationMilliseconds:5E3;var d="countdown_next_to_thumbnail"==g.At(this.api.N().experiments,"preskip_button_style_ads_backend")&&Yy(this.api.N());this.w=new bZ(this.api,this.ra,this.u,d);this.w.init(RT("preskip-component"),a,c);cZ(this.w);g.B(this,this.w);this.w.ca(this.element);g.P(this.api.N().experiments, +"enable_pubsub_for_skip_transition_bulleit")&&this.w.subscribe("t",this.oM,this)}else b.skipOffsetMilliseconds&&(this.C=b.skipOffsetMilliseconds);b=b&&b.skippableRenderer&&b.skippableRenderer.skipButtonRenderer||{};b=g.Mb(b)?null:b;null==b?g.M(Error("SkipButtonRenderer was not set in player response.")):(this.A=new eZ(this.api,this.ra,this.u),this.A.init(RT("skip-button"),b,c),g.B(this,this.A),this.A.ca(this.element),this.show())}; +g.h.show=function(){this.I&&this.A?this.A.show():this.w&&this.w.show();XY(this);WY.prototype.show.call(this)}; +g.h.aj=function(){}; +g.h.clear=function(){this.w&&this.w.clear();this.A&&this.A.clear();YY(this);WY.prototype.hide.call(this)}; +g.h.hide=function(){this.w&&this.w.hide();this.A&&this.A.hide();YY(this);WY.prototype.hide.call(this)}; +g.h.oM=function(){AZ(this,!0)}; +g.h.Nh=function(){g.P(this.api.N().experiments,"enable_pubsub_for_skip_transition_bulleit")?this.w||1E3*this.u.getProgressState().current>=this.C&&AZ(this,!0):1E3*this.u.getProgressState().current>=this.C&&AZ(this,!0)};g.r(BZ,Z);BZ.prototype.init=function(a,b,c){Z.prototype.init.call(this,a,b,c);b.skipAd&&(a=b.skipAd,a.skipAdRenderer&&(b=new zZ(this.api,this.ra,this.u),b.ca(this.w),b.init(RT("skip-button"),a.skipAdRenderer,this.macros),g.B(this,b)));this.show()};g.r(CZ,WY);g.h=CZ.prototype;g.h.init=function(a,b,c){WY.prototype.init.call(this,a,b,c);if(b.templatedCountdown){a=b.templatedCountdown.templatedAdText;if(!a.isTemplated){g.Go(Error("AdDurationRemainingRenderer has no templated ad text."));return}this.w=new $Y(this.api,this.ra);this.w.init(RT("ad-text"),a,{});this.w.ca(this.element);g.B(this,this.w)}this.show()}; +g.h.clear=function(){this.hide()}; +g.h.hide=function(){YY(this);WY.prototype.hide.call(this)}; +g.h.aj=function(){this.hide()}; +g.h.Nh=function(){if(null!=this.u){var a=this.u.getProgressState();if(null!=a&&null!=a.current&&this.w){a=(this.u instanceof fZ?a.seekableEnd:this.api.getDuration(2,g.P(this.api.N().experiments,"halftime_ux_killswitch")?void 0:!1))-a.current;var b=g.hM(a);aZ(this.w,{FORMATTED_AD_DURATION_REMAINING:String(b),TIME_REMAINING:String(Math.ceil(a))})}}}; +g.h.show=function(){XY(this);WY.prototype.show.call(this)};g.r(DZ,$Y);DZ.prototype.onClick=function(a){$Y.prototype.onClick.call(this,a);this.api.onAdUxClicked(this.componentType)};g.r(EZ,WY);g.h=EZ.prototype; +g.h.init=function(a,b,c){WY.prototype.init.call(this,a,b,c);if(b.image&&b.image.thumbnail)if(b.headline)if(b.description)if(b.actionButton&&b.actionButton.buttonRenderer&&b.actionButton.buttonRenderer.navigationEndpoint){a=this.api.getVideoData(2);if(null!=a)if(b.image&&b.image.thumbnail){var d=b.image.thumbnail.thumbnails;null!=d&&0=this.V&&(YY(this),g.Dn(this.element,"ytp-flyout-cta-inactive"))}}; +g.h.aj=function(){this.clear()}; +g.h.clear=function(){this.hide()}; +g.h.show=function(){this.w&&this.w.show();WY.prototype.show.call(this)}; +g.h.hide=function(){this.w&&this.w.hide();WY.prototype.hide.call(this)};g.r(FZ,Z);g.h=FZ.prototype; +g.h.init=function(a,b,c){Z.prototype.init.call(this,a,b,c);this.w=b;if(null==b.defaultText&&null==b.defaultIcon)g.M(Error("ToggleButtonRenderer must have either text or icon set."));else if(null==b.defaultIcon&&null!=b.toggledIcon)g.M(Error("ToggleButtonRenderer cannot have toggled icon set without a default icon."));else{if(b.style){switch(b.style.styleType){case "STYLE_UNKNOWN":case "STYLE_DEFAULT":a="ytp-ad-toggle-button-default-style";break;default:a=null}null!=a&&g.J(this.A,a)}a={};b.defaultText? +(c=g.T(b.defaultText),g.ec(c)||(a.buttonText=c,this.u.setAttribute("aria-label",c))):g.Oh(this.Z,!1);b.defaultTooltip&&(a.tooltipText=b.defaultTooltip,this.u.hasAttribute("aria-label")||this.M.setAttribute("aria-label",b.defaultTooltip));b.defaultIcon?(c=UY(b.defaultIcon),this.la("untoggledIconTemplateSpec",c),b.toggledIcon?(this.I=!0,c=UY(b.toggledIcon),this.la("toggledIconTemplateSpec",c)):(g.Oh(this.C,!0),g.Oh(this.B,!1)),g.Oh(this.u,!1)):g.Oh(this.M,!1);g.Mb(a)||this.update(a);b.isToggled&&(g.J(this.A, +"ytp-ad-toggle-button-toggled"),this.toggleButton(b.isToggled));GZ(this);this.V=this.L(this.element,"change",this.Tz);g.P(this.api.N().experiments,"bulleit_use_touch_events_for_magpie")&&HX(this,this.V);this.show()}}; +g.h.onClick=function(a){0a)g.M(Error("timeoutSeconds was specified incorrectly in SurveyTextInterstitialRenderer with a value of: "+a));else if(b.timeoutCommands)if(b.text)if(b.ctaButton&&b.ctaButton.buttonRenderer)if(b.brandImage)if(b.backgroundImage&&b.backgroundImage.thumbnailLandscapePortraitRenderer&&b.backgroundImage.thumbnailLandscapePortraitRenderer.landscape){qoa(this.B,b.backgroundImage.thumbnailLandscapePortraitRenderer.landscape);qoa(this.I, +b.brandImage);g.ye(this.M,g.T(b.text));this.u=new VY(this.api,this.ra,["ytp-ad-survey-interstitial-action-button"]);g.B(this,this.u);this.u.ca(this.C);this.u.init(RT("button"),b.ctaButton.buttonRenderer,c);this.u.show();var e=b.timeoutCommands;this.A=new fZ(1E3*a);this.A.subscribe("a",function(){d.w.hide();e.forEach(function(f){return d.ra.executeCommand(f,c)}); +d.ra.executeCommand({adLifecycleCommand:{action:"END_LINEAR_AD"}},c)}); +g.B(this,this.A);this.L(this.element,"click",function(f){return poa(d,f,b)}); +this.w.show(100);b.impressionCommands&&b.impressionCommands.forEach(function(f){return d.ra.executeCommand(f,c)})}else g.M(Error("SurveyTextInterstitialRenderer has no landscape background image.")); +else g.M(Error("SurveyTextInterstitialRenderer has no brandImage."));else g.M(Error("SurveyTextInterstitialRenderer has no button."));else g.M(Error("SurveyTextInterstitialRenderer has no text."));else g.M(Error("timeoutSeconds was specified yet no timeoutCommands where specified"))}; +UZ.prototype.clear=function(){this.hide()}; +UZ.prototype.show=function(){roa(!0);Z.prototype.show.call(this)}; +UZ.prototype.hide=function(){roa(!1);Z.prototype.hide.call(this)};g.r(VZ,Z);g.h=VZ.prototype; +g.h.init=function(a,b,c){var d=this;Z.prototype.init.call(this,a,b,c);this.u&&(this.u.cancel(),this.u=null);this.u=new zf(g.Ia);b.bannerImage?b.iconImage?b.headline?b.description?b.actionButton&&b.actionButton.buttonRenderer?b.navigationEndpoint?(b.adInfoRenderer&&b.adInfoRenderer.adHoverTextButtonRenderer?this.B.init(RT("watch-ad-info-hover-button"),b.adInfoRenderer.adHoverTextButtonRenderer,c):g.M(Error("ActionCompanionAdRenderer has no ad info renderer.")),this.A.init(RT("ad-image"),b.bannerImage, +c),this.ga.init(RT("ad-image"),b.iconImage,c),this.M.init(RT("ad-text"),b.headline,c),this.C.init(RT("ad-text"),b.description,c),this.w.init(RT("button"),b.actionButton.buttonRenderer,c),g.ye(this.o["yt-badge-ad"],"Annonce"),this.aa=b.impressionCommands||[],this.V=b.navigationEndpoint,this.I.L(this.element,"click",this.SL,this),Promise.race([this.u,this.ma.showCompanion(this.element,300,250)]).then(function(){return d.show()})):g.M(Error("ActionCompanionAdRenderer has no navigation endpoint.")):g.M(Error("ActionCompanionAdRenderer has no button.")): +g.M(Error("ActionCompanionAdRenderer has no description string.")):g.M(Error("ActionCompanionAdRenderer has no headline string.")):g.M(Error("ActionCompanionAdRenderer has no icon image.")):g.M(Error("ActionCompanionAdRenderer has no banner image."))}; +g.h.clear=function(){g.Ir(this.I);this.hide()}; +g.h.show=function(){var a=this;this.w.show();Z.prototype.show.call(this);this.aa.forEach(function(b){return a.ra.executeCommand(b,a.macros)})}; +g.h.hide=function(){this.w.hide();Z.prototype.hide.call(this)}; +g.h.SL=function(a){a=a.target;g.xe(this.B.element,a)||(this.V&&!g.xe(this.w.element,a)&&this.ra.executeCommand(this.V,this.macros),this.api.onAdUxClicked("action-companion"),this.api.pauseVideo())}; +g.h.X=function(){this.u&&(this.u.cancel(),this.u=null);Z.prototype.X.call(this)};g.r(WZ,g.R);WZ.prototype.clear=function(){for(var a=g.q(this.u),b=a.next();!b.done;b=a.next())g.He(b.value);this.u=[]}; +WZ.prototype.G=function(a){g.Kp(a);this.w=Math.max(0,this.w-XZ(this));YZ(this)}; +WZ.prototype.F=function(a){g.Kp(a);this.w=Math.min(this.u.length-1,this.w+XZ(this));YZ(this)}; +WZ.prototype.X=function(){this.clear();g.R.prototype.X.call(this)};g.r(ZZ,NX);g.h=ZZ.prototype;g.h.ua=function(){return this.o.element}; +g.h.mn=function(a){var b=this.o,c=new g.R({D:"li",H:"ad-carousel-listitem",J:[{D:"div",H:"ad-carousel-item"}]});c.o["ad-carousel-item"].appendChild(a);b.u.push(c);b.C.appendChild(c.element)}; +g.h.show=function(){this.o.show()}; +g.h.hide=function(){this.o.hide()}; +g.h.clear=function(){this.o.clear()};var voa={DP:"adinfoclick",TR:"offerclick",UR:"offernavclick"};g.r($Z,NX);$Z.prototype.show=function(){this.u.show()}; +$Z.prototype.hide=function(){this.u.hide()}; +$Z.prototype.ua=function(){return this.u.element};var toa={Cq:$Z};g.r(b_,OX); +b_.prototype.B=function(a){var b=this.view;a=a.renderer;this.u=a.clickthroughEndpoint||null;var c=a.headline||null;a_(b.w,"headline",c);a_(b.o,"headline",c);c=a.merchant||null;a_(b.A,"merchant",c);a_(b.w,"merchant",c);a_(b.o,"merchant",c);c=a.priceText||null;a_(b.A,"price",c);a_(b.w,"price",c);a_(b.o,"price",c);c=(c=a.image&&0=Math.abs(e-f)}e&&w0(this.w,"ad_placement_end")}; +g.h.mk=function(a){a=a.layoutId;var b,c,d;this.o&&(null===(b=this.o.pj)||void 0===b?void 0:b.layout.layoutId)!==a&&(null===(c=this.o.pj)||void 0===c?void 0:c.fj("normal"),this.o={pj:Dpa(this,a)},null===(d=this.o.pj)||void 0===d?void 0:d.startRendering())}; +g.h.kk=function(){}; +g.h.IA=function(){}; +g.h.uA=function(a){var b=v_(this.layout.Ja,"metadata_type_layout_enter_ms"),c=A0(this);a*=1E3;b<=a&&aaH(a,4)&&!(0>aH(a,2))&&v0(this.o,"resume"),g.bH(a,16)&&.5<=this.ob.K.getCurrentTime(2,!1)&&v0(this.o,"seek"),g.bH(a,2))){var c=v_(this.layout.Ja,"metadata_type_video_length_seconds"),d=1>=Math.abs(c-b);Fpa(this,a.state,d?c:b,this.u.Ls);d&& +w0(this.o,"complete")}}}; +g.h.Ky=function(a){this.o.o.has("impression")&&v0(this.o,a?"fullscreen":"end_fullscreen")}; +g.h.skip=function(){}; +g.h.RB=function(){this.o.o.has("impression")&&v0(this.o,"clickthrough")};Gpa.prototype.o=function(a,b,c,d){a:{var e=v_(d.Ja,"metadata_type_sub_layouts"),f=v_(d.Ja,"metadata_type_ad_placement_config");if(z0(d,{tf:["metadata_type_layout_enter_ms","metadata_type_drift_recovery_ms"],xh:["layout_type_composite_player_bytes"]})&&void 0!==e&&void 0!==f){var k=[];e=g.q(e);for(var l=e.next();!l.done;l=e.next()){l=l.value;var m=v_(l.Ja,"metadata_type_sub_layout_index");if(!z0(l,{tf:["metadata_type_video_length_seconds","metadata_type_player_vars","metadata_type_layout_enter_ms"], +xh:["layout_type_media"]})||void 0===m){a=null;break a}k.push(new Epa(b,c,l,this.Fg,new t0(l.jf,this.Cb,f,this.oc,l.layoutId,m),this.ob,this.kj,this.oc,this.hd))}a=new Bpa(a,c,d,this.hd,this.Fg,this.vf,this.ob,new t0(d.jf,this.Cb,f,this.oc,d.layoutId),this.Cb,k)}else a=null}if(a)return a;throw new T_("Unsupported layout with type: "+d.layoutType+" and client metadata: "+w_(d.Ja)+" in PlayerBytesLayoutRenderingAdapterFactory.");};g.h=Hpa.prototype;g.h.Ul=function(){return this.slot}; +g.h.vl=function(){return this.layout}; +g.h.init=function(){}; +g.h.Po=function(){}; +g.h.startRendering=function(){}; +g.h.fj=function(){};Jpa.prototype.o=function(a,b,c,d){if(z0(d,Ipa()))return new Hpa(c,d);throw new T_("Unsupported layout with type: "+d.layoutType+" and client metadata: "+w_(d.Ja)+" in TvInPlayerLayoutRenderingAdapterFactory.");};g.r(D0,s0);D0.prototype.init=function(){s0.prototype.init.call(this);var a=v_(this.layout.Ja,"metadata_type_instream_ad_player_overlay_renderer");this.u.push(new DW(a))}; +D0.prototype.Ly=function(a){a:{var b=this.A;for(var c=g.q(this.Gd.o.values()),d=c.next();!d.done;d=c.next())if(d.value.layoutId===b){b=!0;break a}b=!1}if(b)switch(a){case "visit-advertiser":this.Cb.K.sendVideoStatsEngageEvent(3,void 0,2)}switch(a){case "ad-mute-confirm-dialog-close-button":case "ad-feedback-undo-mute-button":case "ad-info-dialog-close-button":this.w||(a=this.ob,2===a.K.getPlayerState(2)&&a.K.playVideo());break;case "ad-info-icon-button":(this.w=2===this.ob.K.getPlayerState(2))||this.ob.pauseVideo(); +break;case "visit-advertiser":this.ob.pauseVideo();v_(this.layout.Ja,"metadata_type_player_bytes_callback").RB();break;case "skip-button":v_(this.layout.Ja,"metadata_type_player_bytes_callback").skip()}}; +D0.prototype.X=function(){s0.prototype.X.call(this)};Kpa.prototype.o=function(a,b,c,d){if(z0(d,{tf:["metadata_type_instream_ad_player_overlay_renderer","metadata_type_player_bytes_callback","metadata_type_linked_player_bytes_layout_id"],xh:["layout_type_media_layout_player_overlay"]}))return new D0(a,c,d,this.Ge,this.ob,this.Cb,this.Gd);throw new T_("Unsupported layout with type: "+d.layoutType+" and client metadata: "+w_(d.Ja)+" in WebInPlayerLayoutRenderingAdapterFactory.");};g.r(E0,g.A);g.r(G0,E0);G0.prototype.u=function(a,b,c,d){0!==c.length&&F0(this,{Tg:c,Pq:d,contentCpn:a,Yk:b,so:!1,daiEnabled:!1})};Npa.prototype.A=function(a){var b=this,c=[];this.u=new Map;var d=a.Tg.filter(Spa),e={};d=g.q(d);for(var f=d.next();!f.done;e={Zb:e.Zb,nf:e.nf,qf:e.qf},f=d.next())if(e.qf=f.value,e.Zb=e.qf.renderer,e.nf=e.qf.config.adPlacementConfig,f=e.nf.kind,null!=e.Zb.actionCompanionAdRenderer)LW(this.Kb)&&(e.Zb.actionCompanionAdRenderer.adVideoId?H0(this,e.qf.elementId,f,e.Zb.actionCompanionAdRenderer.adVideoId,e.nf,function(k){return function(l,m,n,p){var t=k.Zb.actionCompanionAdRenderer;return j1("layout_type_companion_with_action_button", +new $_(t),m,n,p,t.impressionPings,b.o(l))}}(e)):r_("ActionCompanionAdRenderer without adVideoId",void 0,void 0,{kind:f, +"actionButton undefined":void 0===e.Zb.actionCompanionAdRenderer.actionButton,"APR count":a.Tg.length,isAdBreakResponse:a.so}));else if(e.Zb.imageCompanionAdRenderer)MW(this.Kb)&&(e.Zb.imageCompanionAdRenderer.adVideoId?H0(this,e.qf.elementId,f,e.Zb.imageCompanionAdRenderer.adVideoId,e.nf,function(k){return function(l,m,n,p){var t=k.Zb.imageCompanionAdRenderer;return j1("layout_type_companion_with_image",new c0(t),m,n,p,t.impressionPings,b.o(l))}}(e)):r_("ImageCompanionAdRenderer without adVideoId")); +else if(e.Zb.shoppingCompanionCarouselRenderer)NW(this.Kb)&&(e.Zb.shoppingCompanionCarouselRenderer.adVideoId?H0(this,e.qf.elementId,f,e.Zb.shoppingCompanionCarouselRenderer.adVideoId,e.nf,function(k){return function(l,m,n,p){var t=k.Zb.shoppingCompanionCarouselRenderer;return j1("layout_type_companion_with_shopping",new d0(t),m,n,p,t.impressionPings,b.o(l))}}(e)):r_("ShoppingCompanionCarouselRenderer without adVideoId")); +else if(e.Zb.adBreakServiceRenderer)DY(this.Kb)&&Tpa(e.qf)&&this.Fb.Yt({adPlacementRenderer:e.qf,contentCpn:a.contentCpn,Yk:a.Yk});else if(e.Zb.clientForecastingAdRenderer)r1(this.Kb)&&(f=sqa(e.nf,a.contentCpn,function(k){return function(l){var m=k.Zb.clientForecastingAdRenderer,n=k.nf;l=b.o(l);var p=Tr(),t={layoutId:p,layoutType:"layout_type_forecasting",wb:"core"},u=new Map,z=m.impressionUrls;z&&u.set("impression",z);return{layoutId:p,layoutType:"layout_type_forecasting",jf:u,Ae:[new c1(p)],We:[], +Ve:[],wb:"core",Ja:new u_([new p0(m),new e0(n)]),rh:l(t)}}}(e)))&&c.push(f); +else if(e.Zb.invideoOverlayAdRenderer)q1(this.Kb)&&(f=nqa(e.nf,a.contentCpn,function(k){return function(l,m){a:{var n=k.Zb.invideoOverlayAdRenderer;var p=k.nf,t=b.o(l),u=n.contentSupportedRenderer;if(u){if(u.textOverlayAdContentRenderer){u=Tr();n=k1(u,"layout_type_in_video_text_overlay",n,p,t,m);break a}if(u.enhancedTextOverlayAdContentRenderer){u=Tr();n=k1(u,"layout_type_in_video_enhanced_text_overlay",n,p,t,m);break a}if(u.imageOverlayAdContentRenderer){u=Tr();var z=[new h1(u)];m&&z.push(m);n=Object.assign(Object.assign({}, +k1(u,"layout_type_in_video_image_overlay",n,p,t,m)),{Ae:z});break a}r_("InvideoOverlayAdRenderer without appropriate sub renderer")}else r_("InvideoOverlayAdRenderer without contentSupportedRenderer");n=void 0}return n}}(e)))&&c.push(f); +else if(e.Zb.linearAdSequenceRenderer&&a.daiEnabled){f=void 0;try{f=rqa(a.contentCpn,function(k){return function(l){return Wpa(k.qf,b.o(l))}}(e))}catch(k){r_("Failed to parse AdPlacementRenderer for DAI AdPlacementRenderersSlotExtractor: "+k.message); +continue}c.push(f)}else Qpa(this,e.Zb,f);if(null===this.w||a.daiEnabled)return c;e=a.Pq.filter(Spa);e=g.q(e);for(f=e.next();!f.done;f=e.next())d=f.value,Qpa(this,d.renderer,d.config.adPlacementConfig.kind);d=Array.from(this.u.values()).filter(function(k){return Rpa(k,a)}); +e={};d=g.q(d);for(f=d.next();!f.done;e={Sf:e.Sf},f=d.next())e.Sf=f.value,f=function(k){return function(l){return k.Sf.Zk(l,k.Sf.adVideoId,k.Sf.instreamVideoAdRenderer.elementId,k.Sf.Nq)}}(e),"AD_PLACEMENT_KIND_COMMAND_TRIGGERED"===e.Sf.ai?c.push(qqa(this.w,e.Sf.Oq,a.contentCpn,f)):c.push(pqa(this.w,a.contentCpn,e.Sf.instreamVideoAdRenderer.elementId,f)); +return c};g.r(I0,E0);g.h=I0.prototype;g.h.Yt=function(a){if(v1(this.hd,1).daiEnabled&&"AD_PLACEMENT_KIND_CUE_POINT_TRIGGERED"===a.adPlacementRenderer.config.adPlacementConfig.kind)if(this.o)r_("Unexpected multiple fetch instructions for the current content");else{this.o=a;a=g.q(this.vf.w);for(var b=a.next();!b.done;b=a.next())Zpa(this,this.o,b.value)}}; +g.h.IA=function(a){this.o&&Zpa(this,this.o,a)}; +g.h.uA=function(){}; +g.h.mk=function(){}; +g.h.kk=function(a){a=a.clientPlaybackNonce;var b;(null===(b=this.o)||void 0===b?void 0:b.contentCpn)!==a&&(this.o=null)}; +g.h.X=function(){E0.prototype.X.call(this);this.o=null};g.r(J0,g.A);g.h=J0.prototype;g.h.schedule=function(a){var b=a.contentCpn,c=a.execute,d=a.JE;a=a.aO;var e="adfetchcuerange:"+Tr(),f=a?"deferredadvisiblecuerange:"+Tr():null;this.o.set(e,{contentCpn:b,Lw:f,execute:c});this.Ke.addCueRange(e,d.start,d.end,!1,this);f&&a&&this.Ke.addCueRange(f,a.start,a.end,!0,this)}; +g.h.Iy=function(a){var b=this.o.get(a);if(b){var c=b.execute;b=b.Lw;this.o["delete"](a);this.Ke.removeCueRange(a);b&&this.Ke.removeCueRange(b);c()}}; +g.h.Jy=function(){}; +g.h.mk=function(){}; +g.h.kk=function(a){a=a.clientPlaybackNonce;for(var b=g.q(this.o.entries()),c=b.next();!c.done;c=b.next()){var d=g.q(c.value);c=d.next().value;d=d.next().value;var e=d.Lw;d.contentCpn!==a&&(this.o["delete"](c),this.Ke.removeCueRange(c),e&&this.Ke.removeCueRange(e))}};var Gqa=["metadata_type_content_cpn","metadata_type_player_bytes_callback","metadata_type_instream_ad_player_overlay_renderer","metadata_type_ad_placement_config"],Fqa=["metadata_type_content_cpn","metadata_type_player_bytes_callback","metadata_type_instream_ad_player_overlay_renderer","metadata_type_ad_placement_config","metadata_type_ad_next_params"];g.r(K0,E0);g.h=K0.prototype; +g.h.Hi=function(a,b){if(KW(this.Kb)&&"layout_type_media"===b.layoutType)if(t_(b,this.o)){var c={Su:b.layoutId,contentCpn:v_(b.Ja,"metadata_type_content_cpn"),SN:v_(b.Ja,"metadata_type_player_bytes_callback"),instreamAdPlayerOverlayRenderer:v_(b.Ja,"metadata_type_instream_ad_player_overlay_renderer"),adPlacementConfig:v_(b.Ja,"metadata_type_ad_placement_config"),adNextParams:v_(b.Ja,"metadata_type_ad_next_params")};F0(this,c)}else r_("Received MediaLayout entered, missing metadata for opportunity", +a,b,{Actual:w_(b.Ja),Expected:this.o})}; +g.h.Yj=function(){}; +g.h.nk=function(){}; +g.h.Wj=function(){}; +g.h.Xj=function(){}; +g.h.Xi=function(){}; +g.h.lk=function(){}; +g.h.Ii=function(){}; +L0.prototype.A=function(a){var b=this,c=[];c.push(lqa(a.contentCpn,a.Su,function(d){return b.Zk("core",a,function(e){return C_(b.Sa,d.slotId,d.ab,d.wb,d.ld,e.layoutId,e.layoutType,e.wb)})})); +return c};g.r(M0,g.A);g.h=M0.prototype;g.h.Yj=function(){}; +g.h.nk=function(){}; +g.h.Wj=function(){}; +g.h.Xj=function(){}; +g.h.Xi=function(){}; +g.h.lk=function(a,b){this.o.has(a)&&this.o.get(a)===b&&r_("Unscheduled a Layout that is currently entered.",a,b)}; +g.h.Hi=function(a,b){this.o.set(a,b)}; +g.h.Ii=function(a){this.o["delete"](a)};g.r(U0,g.A);g.h=U0.prototype; +g.h.cf=function(a,b,c,d){if(this.u.has(b.o))throw new O_("Tried to register duplicate trigger for slot.");if(!(b instanceof Q0||b instanceof R0||b instanceof S0||b instanceof N0||b instanceof O0||b instanceof P0))throw new O_("Incorrect TriggerType: Tried to register trigger of type "+b.triggerType+" in AdsControlFlowEventTriggerAdapter");a=new T0(a,b,c,d);this.u.set(b.o,a);b instanceof S0&&this.B.has(b.A)&&L_(this.o(),[a]);b instanceof Q0&&this.A.has(b.w)&&L_(this.o(),[a]);b instanceof N0&&this.w.has(b.u)&& +L_(this.o(),[a])}; +g.h.lf=function(a){this.u["delete"](a.o)}; +g.h.Yj=function(a){this.B.add(a.slotId);for(var b=[],c=g.q(this.u.values()),d=c.next();!d.done;d=c.next())d=d.value,d.trigger instanceof S0&&a.slotId===d.trigger.A&&b.push(d);0=c)return 0;if(1<=c)return 1;for(var d=0,e=1,f=0,k=0;8>k;k++){f=g.Nn(a,c);var l=(g.Nn(a,c+1E-6)-f)/1E-6;if(1E-6>Math.abs(f-b))return c;if(1E-6>Math.abs(l))break;else fk;k++)fb;b++){var c=new g.R({D:"a",H:"ytp-suggestion-link",O:{href:"{{link}}",target:a.C,"aria-label":"{{aria_label}}"},J:[{D:"div",H:"ytp-suggestion-image",J:[{D:"div",O:{"data-is-live":"{{is_live}}"},H:"ytp-suggestion-duration",W:"{{duration}}"}]},{D:"div",H:"ytp-suggestion-title",O:{title:"{{hover_title}}"},W:"{{title}}"},{D:"div",H:"ytp-suggestion-author", +W:"{{views_or_author}}"}]});g.B(this,c);c.ca(this.G.element);var d=c.o["ytp-suggestion-link"];g.sh(d,"transitionDelay",b/20+"s");this.ba.L(d,"click",g.Qa(this.BI,b));this.C.push(c)}this.I=new g.R({D:"button",Y:["ytp-button","ytp-next"],O:{"aria-label":"Afficher plus de suggestions de vid\u00e9os"},J:[g.CM()]});g.B(this,this.I);this.I.ca(this.element);this.I.ka("click",this.zI,this);this.ba.L(this.u,"videodatachange",this.wz);Mua(this,g.QK(this.u).getPlayerSize());this.wz();this.show()},Mua=function(a, +b,c){var d=a.u.N(),e=16/9,f=650<=b.width,k=480>b.width||290>b.height,l=Math.min(a.w.length,a.C.length); +if(150>=Math.min(b.width,b.height)||0==l||!d.Aa)a.hide();else{var m;if(f){var n=m=28;a.A=16}else n=m=8,a.A=8;if(k){var p=6;f=14;var t=12;k=24;d=12}else p=8,f=18,t=16,k=36,d=16;b=b.width-(48+m+n);m=Math.ceil(b/150);m=Math.min(3,m);m=b/m-a.A;n=Math.floor(m/e);c&&n+100>c&&50m||g.SK(a.u)?a.hide():a.show();for(c=0;cm?"none":""}l=f+p+t+4;a.U=l+d+(n-k)/2;a.G.element.style.height=n+l+"px";a.Z=m;a.F=b;a.B=0;a.xz(0);G4(a)}},Nua=function(a,b){var c=g.Md(b,a.F-a.w.length*(a.Z+a.A),0); +a.da.start(a.B,c,1E3);a.B=c;G4(a)},G4=function(a){a.I.element.style.bottom=a.U+"px"; +a.M.element.style.bottom=a.U+"px";var b=a.B,c=a.F-a.w.length*(a.Z+a.A);g.K(a.element,"ytp-scroll-min",0<=b);g.K(a.element,"ytp-scroll-max",b<=c)},Oua=function(a){for(var b=0;bb.width||290>b.height?(e={D:"div",Y:["ytp-icon","ytp-icon-error-exclamation-small"]},f=Lua(),k=0):650<=b.width&&(e={D:"div",Y:["ytp-icon","ytp-icon-error-exclamation-large"]},f=g.X?{D:"div",Y:["ytp-icon","ytp-icon-youtube-logo-redirect-extra-large"]}:{D:"svg",O:{fill:"#fff",height:"100%",viewBox:"0 0 24 24",width:"100%"},J:[{D:"path",O:{d:"M0 0h24v24H0V0z",fill:"none"}},{D:"path",O:{d:"M21.58 7.19c-.23-.86-.91-1.54-1.77-1.77C18.25 5 12 5 12 5s-6.25 0-7.81.42c-.86.23-1.54.91-1.77 1.77C2 8.75 2 12 2 12s0 3.25.42 4.81c.23.86.91 1.54 1.77 1.77C5.75 19 12 19 12 19s6.25 0 7.81-.42c.86-.23 1.54-.91 1.77-1.77C22 15.25 22 12 22 12s0-3.25-.42-4.81zM10 15V9l5.2 3-5.2 3z"}}]}, +k=2);if(k!==a.B){e={"ytp-error-icon-container":e,"ytp-small-redirect":f};f=g.q(Object.keys(e));for(var l=f.next();!l.done;l=f.next()){l=l.value;var m=g.ce(l,a.element);g.re(m);(new g.R(e[l])).ca(m)}a.B=k}}c.style.paddingTop=(b.height-a.w.element.clientHeight)/2-d/2+"px"},I4=function(a,b){var c=a.N(); +g.R.call(this,{D:"button",Y:["ytp-impression-link","ytp-button"]});this.hide();this.u=a;this.B=b;this.A=!1;g.kL(a,this.element,this,96714);var d=this.u.N(),e=this.u.getVideoData().lc,f=d.Ca,k=d.Yf;d=!d.Aa;var l=this.B.Rd();f||k||l||e||d||(g.P(c.experiments,"embeds_impression_link_call_to_action")&&(g.J(this.element,"show-cta-button"),(new g.R({D:"div",H:"ytp-impression-link-content",J:[{D:"div",H:"ytp-impression-link-text",W:"Regarder sur"},{D:"div",H:"ytp-impression-link-logo",J:[D4()]}]})).ca(this.element), +this.show()),g.P(c.experiments,"embeds_impression_link_video_thumbnail")&&Qua(this),g.P(c.experiments,"embeds_impression_link_channel_thumbnail")&&Rua(this),g.P(c.experiments,"embeds_impression_link_occlusion")&&Sua(this),g.P(c.experiments,"embeds_impression_link_hover")&&Tua(this),this.L(a,"presentingplayerstatechange",this.F),this.L(a,"videoplayerreset",this.G),this.L(this.element,"click",this.C))},Qua=function(a){var b,c,d,e,f; +g.Ba(function(k){if(1==k.o)return b=a.u.getVideoData(),g.ta(k,J4(a,b),2);c=k.u;if(!c)return k["return"]();d=c[0];a.w=d;g.J(a.element,"show-video-thumbnail-button");e=new g.R({D:"div",H:"ytp-impression-link-header",W:"Autres contenus YouTube"});e.ca(a.element);f=new g.R({D:"div",H:"ytp-impression-link-content",J:[{D:"div",H:"ytp-impression-link-metadata",J:[{D:"div",H:"ytp-impression-link-title",W:d.title},{D:"div",H:"ytp-impression-link-views-and-duration",W:"{{views_and_duration}}"}]},{D:"div",H:"ytp-impression-link-thumbnail"}]}); +f.ca(a.element);K4(a,f,d);L4(a,f,d);a.show();k.o=0})},Rua=function(a){var b,c,d; +g.Ba(function(e){if(1==e.o)return g.ta(e,Uua(a),2);b=e.u;if(!b)return e["return"]();a.w=b;g.J(a.element,"show-channel-thumbnail-button");c=new g.R({D:"div",H:"ytp-impression-link-header",W:"Autres contenus YouTube"});c.ca(a.element);d=new g.R({D:"div",H:"ytp-impression-link-content",J:[{D:"div",H:"ytp-impression-link-metadata",J:[{D:"div",H:"ytp-impression-link-title",W:b.pl},{D:"div",H:"ytp-impression-link-subscribers",W:b.expandedSubtitle}]},{D:"div",H:"ytp-impression-link-thumbnail"}]});d.ca(a.element); +K4(a,d,b);a.show();e.o=0})},Sua=function(a){var b,c,d,e,f,k,l,m,n,p; +g.Ba(function(t){if(1==t.o)return b=a.u.getVideoData(),g.ta(t,J4(a,b),2);c=t.u;if(!c)return t["return"]();d=c[0];a.w=d;g.J(a.element,"show-occlusion-video-thumbnail-button");e=new g.R({D:"div",H:"ytp-impression-link-header",W:"Autres contenus YouTube"});e.ca(a.element);f=new g.R({D:"div",H:"ytp-impression-link-content",J:[{D:"div",H:"ytp-impression-link-metadata",J:[{D:"div",H:"ytp-impression-link-title",W:d.title},{D:"div",H:"ytp-impression-link-author",W:d.author},{D:"div",H:"ytp-impression-link-views", +W:"{{views}}"}]},{D:"div",H:"ytp-impression-link-thumbnail-and-duration",J:[{D:"div",H:"ytp-impression-link-thumbnail"},{D:"div",H:"ytp-impression-link-duration",W:"{{duration}}"}]}]});f.ca(a.element);K4(a,f,d);L4(a,f,d);k=new g.R({D:"button",Y:["ytp-button","ytp-impression-link-close"],J:[{D:"div",Y:["ytp-impression-link-close-icon"],J:[Kua()]}]});k.ca(a.element);k.ka("click",function(u){a.hide();g.oL(a.u,a.element,!1);u.stopPropagation()},a); +l=function(u){!g.q(u).next().value.isIntersecting&&a.element&&a.show()}; +try{m={threshold:.8},n=new IntersectionObserver(l,m),p=document.querySelector("body"),n.observe(p)}catch(u){g.M(u)}t.o=0})},Tua=function(a){var b,c,d,e,f; +g.Ba(function(k){if(1==k.o)return b=a.u.getVideoData(),g.ta(k,J4(a,b),2);c=k.u;if(!c)return k["return"]();d=c[0];a.w=d;g.J(a.element,"show-video-thumbnail-expanding-button");a.L(a.element,"mouseenter",function(){g.J(a.element,"show-expanded-metadata");g.Dn(a.element,"show-collapsed-metadata")}); +a.L(a.element,"mouseleave",function(){g.Dn(a.element,"show-expanded-metadata");g.J(a.element,"show-collapsed-metadata")}); +e=new g.R({D:"div",H:"ytp-impression-link-header",W:"Plus de vid\u00e9os"});e.ca(a.element);f=new g.R({D:"div",H:"ytp-impression-link-content",J:[{D:"div",H:"ytp-impression-link-metadata",J:[{D:"div",H:"ytp-impression-link-title",W:d.title},{D:"div",H:"ytp-impression-link-views-and-duration",W:"{{views_and_duration}}"}]},{D:"div",H:"ytp-impression-link-thumbnail"}]});f.ca(a.element);K4(a,f,d);L4(a,f,d);a.show();k.o=0})},K4=function(a,b,c){a=g.P(a.u.N().experiments,"embeds_impression_link_channel_thumbnail")? +c.Id:c.tc(); +b.o["ytp-impression-link-thumbnail"].style.backgroundImage=a?"url("+a+")":""},L4=function(a,b,c){a=a.u.N(); +var d="";c.va?d="En direct":c.lengthSeconds&&(d=g.hM(c.lengthSeconds));c=c.shortViewCount?c.shortViewCount:"";var e="";c&&d?e=c+" \u2022 "+d:c?e=c:d&&(e=d);g.P(a.experiments,"embeds_impression_link_occlusion")?b.update({views:c,duration:d}):b.update({views_and_duration:e})},Vua=function(a,b){var c,d,e,f,k,l,m,n; +return g.Ba(function(p){return 1==p.o?(c=a.u.N(),d={format:"RAW",method:"GET",withCredentials:!0,timeout:3E4},e={},c.sendVisitorIdHeader&&b.visitorData&&(e["X-Goog-Visitor-Id"]=b.visitorData),(f=g.At(c.experiments,"debug_dapper_trace_id"))&&(e["X-Google-DapperTraceInfo"]=f),(k=g.At(c.experiments,"debug_sherlog_username"))&&(e["X-Youtube-Sherlog-Username"]=k),0e;e++){var f=new g.R({D:"a",H:"ytp-suggestion-link",O:{href:"{{link}}",target:c.C,"aria-label":"{{aria_label}}"},J:[{D:"div",H:"ytp-suggestion-image"},{D:"div",H:"ytp-suggestion-overlay", +O:d,J:[{D:"div",H:"ytp-suggestion-title",W:"{{title}}"},{D:"div",H:"ytp-suggestion-author",W:"{{author_and_views}}"},{D:"div",O:{"data-is-live":"{{is_live}}"},H:"ytp-suggestion-duration",W:"{{duration}}"}]}]});g.B(this,f);f.ca(this.G.element);var k=f.o["ytp-suggestion-link"];g.sh(k,"transitionDelay",e/20+"s");this.A.L(k,"click",g.Qa(this.wI,e));this.C.push(f)}this.M=new g.R({D:"button",Y:["ytp-button","ytp-next"],O:{"aria-label":"Afficher plus de suggestions de vid\u00e9os"},J:[g.CM()]});g.B(this, +this.M);this.M.ca(this.element);this.M.ka("click",this.uI,this);c=new g.R({D:"button",Y:["ytp-button","ytp-collapse"],O:{"aria-label":'Masquer la section "Plus de vid\u00e9os"'},J:[Kua()]});g.B(this,c);c.ca(this.element);c.ka("click",this.DK,this);this.I=new g.R({D:"button",Y:["ytp-button","ytp-expand"],W:"Plus de vid\u00e9os"});g.B(this,this.I);this.I.ca(this.element);this.I.ka("click",this.EK,this);this.A.L(this.u,"appresize",this.vt);this.A.L(this.u,"fullscreentoggled",this.xI);this.A.L(this.u, +"presentingplayerstatechange",this.yI);this.A.L(this.u,"videodatachange",this.uz);this.vt(g.QK(this.u).getPlayerSize());this.uz()},Wua=function(a,b){var c=g.Md(b,a.F-a.w.length*(a.ba+8),0); +a.ga.start(a.B,c,1E3);a.B=c;P4(a)},P4=function(a){var b=a.aa.kc(); +b=a.ma/2+(b?32:16);a.M.element.style.bottom=b+"px";a.R.element.style.bottom=b+"px";b=a.B;var c=a.F-a.w.length*(a.ba+8);g.K(a.element,"ytp-scroll-min",0<=b);g.K(a.element,"ytp-scroll-max",b<=c)},Xua=function(a){for(var b=0;bb&&this.u.start()};g.r(F4,g.R);g.h=F4.prototype;g.h.hide=function(){this.V=!0;g.R.prototype.hide.call(this)}; +g.h.show=function(){this.V=!1;g.R.prototype.show.call(this)}; +g.h.isHidden=function(){return this.V}; +g.h.zI=function(){Nua(this,this.B-this.F)}; +g.h.AI=function(){Nua(this,this.B+this.F)}; +g.h.BI=function(a,b){var c=this.w[a],d=c.Ob;if(g.IN(b,this.u,this.aa,d||void 0)){var e=c.ya().videoId;c=c.getPlaylistId();g.rT(this.u.app,e,d,c,void 0,void 0)}}; +g.h.wz=function(){var a=this,b=this.u.getVideoData(),c=this.u.N();this.aa=b.lc?!1:c.u;if(b.suggestions){var d=(0,g.ue)(b.suggestions,function(e){return e&&!e.list}); +this.w=(0,g.Cc)(d,function(e){e=g.jM(c,e);g.B(a,e);return e})}else this.w.length=0; +Oua(this);b.lc?this.R.update({title:g.gM("Autres vid\u00e9os de $DNI_RELATED_CHANNEL",{DNI_RELATED_CHANNEL:b.author})}):this.R.update({title:"Plus de vid\u00e9os sur YouTube"})}; +g.h.xz=function(a){this.G.element.scrollLeft=-a};g.r(H4,g.XP);H4.prototype.show=function(){g.XP.prototype.show.call(this);Pua(this,g.QK(this.api).getPlayerSize())}; +H4.prototype.u=function(a){g.XP.prototype.u.call(this,a);Pua(this,a);g.K(this.element,"related-on-error-overlay-visible",!this.w.isHidden())}; +H4.prototype.A=function(a){g.XP.prototype.A.call(this,a);var b=this.api.getVideoData(),c=g.P(this.api.N().experiments,"embeds_enable_sg_misinfo"),d;if(a.dh){if(b.Qn){a:{a=b.Qn;if(a.runs)for(var e=0;e(0,g.N)()-this.oa)g.Kp(b),document.activeElement.blur();else{var c=this.w[a],d=c.Ob;if(g.IN(b,this.u,this.da,d||void 0)){var e=c.ya().videoId;c=c.getPlaylistId();g.rT(this.u.app,e,d,c,void 0,void 0)}}}; +g.h.xI=function(){this.vt(g.QK(this.u).getPlayerSize())}; +g.h.yI=function(a){if(!(g.V(a.state,1)||g.V(a.state,16)||g.V(a.state,32))){var b=!g.P(this.u.N().experiments,"embeds_disable_pauseoverlay_on_autoplay_blocked_killswitch")&&g.V(a.state,2048);!g.V(a.state,4)||g.V(a.state,2)||b?this.V.hide():this.w.length&&(this.Z||(g.J(this.u.getRootNode(),"ytp-expand-pause-overlay"),P4(this)),this.V.show(),this.oa=(0,g.N)())}}; +g.h.vt=function(a){var b=16/9,c=this.aa.kc();a=a.width-(c?112:58);c=Math.ceil(a/(c?320:192));c=(a-8*c)/c;b=Math.floor(c/b);for(var d=0;da.width;if(c&&!this.B||!c&&this.B)a=480>a.width&&b.F?{D:"div",Y:["ytp-icon","ytp-icon-watermark-small"]}:D4(),a=new g.R(a),b=this.o["ytp-watermark"],g.K(b,"ytp-watermark-small",c),g.re(b),a.ca(b),this.B=c};g.r(R4,g.vL);g.h=R4.prototype;g.h.Pf=function(){return!1}; +g.h.create=function(){var a=this.o.N(),b=g.dC(this.o);a.Aa&&(this.G=new O4(this.o,b),g.B(this,this.G),g.iL(this.o,this.G.element,4));g.P(a.experiments,"embeds_enable_muted_autoplay")&&(this.w=new N4(this.o),g.B(this,this.w),g.iL(this.o,this.w.element,4),this.F=new M4(this.o),g.B(this,this.F),g.iL(this.o,this.F.element,4));if(a.Ca||this.w)this.A=new Q4(this.o),g.B(this,this.A),g.iL(this.o,this.A.element,7);g.P(a.experiments,"embeds_impression_link")&&(this.C=new I4(this.o,b),g.B(this,this.C),g.iL(this.o, +this.C.element,7));this.B.L(this.o,"appresize",this.rI);this.B.L(this.o,"presentingplayerstatechange",this.qI);this.B.L(this.o,"videodatachange",this.aP);this.B.L(this.o,"onMutedAutoplayStarts",this.RL);Yua(this,g.PK(this.o));g.fL(this.player,"embed")}; +g.h.rI=function(){var a=g.QK(this.o).getPlayerSize();this.u&&this.u.u(a)}; +g.h.qI=function(a){Yua(this,a.state)}; +g.h.RL=function(){this.o.getVideoData().mutedAutoplay&&this.w&&this.A&&this.A.ca(this.w.bottomButtons,0)}; +g.h.aP=function(){var a=this.o.getVideoData();this.A&&this.w&&!a.mutedAutoplay&&g.xe(this.w.element,this.A.element)&&g.iL(this.o,this.A.element,7)};g.KL.embed=R4;})(_yt_player); diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/fU9hR3kiOK0_data/endscreen.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/fU9hR3kiOK0_data/endscreen.js new file mode 100644 index 0000000..dcc05aa --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/fU9hR3kiOK0_data/endscreen.js @@ -0,0 +1,64 @@ +(function(g){var window=this;var S4=function(a,b,c){var d=b.ya();g.K(a.element,"ytp-suggestion-set",!!d.videoId);var e=b.getPlaylistId();c=b.tc(c?c:"mqdefault.jpg");var f=b instanceof g.aB&&b.lengthSeconds?g.hM(b.lengthSeconds):null,k=!!e;e=k&&"RD"===(new g.mC(e.substr(0,2),e.substr(2))).type;var l=b instanceof g.aB?b.va:null;d={title:b.title,author:b.author,author_and_views:d.shortViewCount?b.author+" \u2022 "+d.shortViewCount:b.author,aria_label:b.Tk||g.gM("Regarder $TITLE",{TITLE:b.title}),duration:f,url:b.kh(),is_live:l, +is_list:k,is_mix:e,background:c?"background-image: url("+c+")":""};b instanceof g.nC&&(d.playlist_length=b.getLength());a.update(d)},T4=function(a){g.R.call(this,{D:"div", +Y:["ytp-upnext","ytp-player-content"],O:{"aria-label":"{{aria_label}}"},J:[{D:"div",H:"ytp-cued-thumbnail-overlay-image",O:{style:"{{background}}"}},{D:"span",H:"ytp-upnext-top",J:[{D:"span",H:"ytp-upnext-header",W:"\u00c0 suivre"},{D:"span",H:"ytp-upnext-title",W:"{{title}}"},{D:"span",H:"ytp-upnext-author",W:"{{author}}"}]},{D:"a",H:"ytp-upnext-autoplay-icon",O:{role:"button",href:"{{url}}","aria-label":"Lire la vid\u00e9o suivante"},J:[{D:"svg",O:{height:"100%",version:"1.1",viewBox:"0 0 72 72", +width:"100%"},J:[{D:"circle",H:"ytp-svg-autoplay-circle",O:{cx:"36",cy:"36",fill:"#fff","fill-opacity":"0.3",r:"31.5"}},{D:"circle",H:"ytp-svg-autoplay-ring",O:{cx:"-36",cy:"36","fill-opacity":"0",r:"33.5",stroke:"#FFFFFF","stroke-dasharray":"211","stroke-dashoffset":"-211","stroke-width":"4",transform:"rotate(-90)"}},{D:"path",H:"ytp-svg-fill",O:{d:"M 24,48 41,36 24,24 V 48 z M 44,24 v 24 h 4 V 24 h -4 z"}}]}]},{D:"span",H:"ytp-upnext-bottom",J:[{D:"span",H:"ytp-upnext-cancel"},{D:"span",H:"ytp-upnext-paused", +W:"La lecture automatique est d\u00e9sactiv\u00e9e"}]}]});this.B=null;var b=this.o["ytp-upnext-cancel"];this.B=new g.R({D:"button",Y:["ytp-upnext-cancel-button","ytp-button"],O:{tabindex:"0","aria-label":"Annuler la lecture automatique"},W:"Annuler"});g.B(this,this.B);this.B.ka("click",this.tK,this);this.B.ca(b);this.u=a;this.M=this.o["ytp-svg-autoplay-ring"];this.F=this.C=this.w=this.A=null;this.G=new g.I(this.En,5E3,this);g.B(this,this.G);this.I=0;g.kL(this.u,this.element,this,18788);this.L(this.o["ytp-upnext-autoplay-icon"], +"click",this.gM);this.mA();this.L(a,"autonavvisibility",this.mA);this.L(a,"mdxnowautoplaying",this.wL);this.L(a,"mdxautoplaycanceled",this.xL);this.L(a,"mdxautoplayupnext",this.LC);3==this.u.getPresentingPlayerType()&&(a=(a=g.RK(g.KK(this.u)))?a.fF():null)&&this.LC(a);g.K(this.element,"ytp-upnext-mobile",this.u.N().o)},U4=function(a,b){if(!a.w){g.Qo("a11y-announce","\u00c0 suivre "+a.A.title); +a.I=(0,g.N)();a.w=new g.I((0,g.x)(a.Rq,a,b),25);a.Rq(b);var c=b||g.Q(a.u.N().experiments,"autoplay_time")||1E4;a.u.na("onAutonavCoundownStarted",c)}g.Dn(a.element,"ytp-upnext-autoplay-paused")},W4=function(a){V4(a); +a.I=(0,g.N)();a.Rq();g.J(a.element,"ytp-upnext-autoplay-paused")},V4=function(a){a.w&&(a.w.dispose(),a.w=null)},X4=function(a,b){g.R.call(this,{D:"div", +Y:["html5-endscreen","ytp-player-content",b||"base-endscreen"]});this.created=!1;this.player=a},Zua=function(a){X4.call(this,a,"subscribecard-endscreen"); +var b=a.getVideoData();this.u=new g.R({D:"div",H:"ytp-subscribe-card",J:[{D:"img",H:"ytp-author-image",O:{src:b.Id}},{D:"div",H:"ytp-subscribe-card-right",J:[{D:"div",H:"ytp-author-name",W:b.author},{D:"div",H:"html5-subscribe-button-container"}]}]});g.B(this,this.u);this.u.ca(this.element);this.subscribeButton=new g.yQ("S'abonner",null,"Se d\u00e9sabonner",null,!0,!1,b.Ng,b.subscribed,"trailer-endscreen",null,null,a);g.B(this,this.subscribeButton);this.subscribeButton.ca(this.u.o["html5-subscribe-button-container"]); +this.hide()},Y4=function(a){var b=a.N(),c=g.Dt||g.vh?{style:"will-change: opacity"}:void 0,d=b.u,e=["ytp-videowall-still"]; +b.o&&e.push("ytp-videowall-show-text");g.R.call(this,{D:"a",Y:e,O:{href:"{{url}}",target:d?b.C:"","aria-label":"{{aria_label}}","data-is-live":"{{is_live}}","data-is-list":"{{is_list}}","data-is-mix":"{{is_mix}}"},J:[{D:"div",H:"ytp-videowall-still-image",O:{style:"{{background}}"}},{D:"span",H:"ytp-videowall-still-info",J:[{D:"span",H:"ytp-videowall-still-info-bg",J:[{D:"span",H:"ytp-videowall-still-info-content",O:c,J:[{D:"span",H:"ytp-videowall-still-info-title",W:"{{title}}"},{D:"span",H:"ytp-videowall-still-info-author", +W:"{{author_and_views}}"},{D:"span",H:"ytp-videowall-still-info-live",W:"En direct"},{D:"span",H:"ytp-videowall-still-info-duration",W:"{{duration}}"}]}]}]},{D:"span",Y:["ytp-videowall-still-listlabel-regular","ytp-videowall-still-listlabel"],J:[{D:"span",H:"ytp-videowall-still-listlabel-icon"},"Playlist",{D:"span",H:"ytp-videowall-still-listlabel-length",J:[" (",{D:"span",W:"{{playlist_length}}"},")"]}]},{D:"span",Y:["ytp-videowall-still-listlabel-mix","ytp-videowall-still-listlabel"],J:[{D:"span", +H:"ytp-videowall-still-listlabel-mix-icon"},"Mix",{D:"span",H:"ytp-videowall-still-listlabel-length",W:" (50+)"}]}]});this.suggestion=null;this.u=d;this.api=a;this.w=new g.Gr(this);g.B(this,this.w);this.ka("click",this.onClick);this.ka("keypress",this.B);this.w.L(a,"videodatachange",this.A);g.lL(a,this.element,this);this.A()},Z4=function(a){X4.call(this,a,"videowall-endscreen"); +var b=this;this.K=a;this.A=0;this.stills=[];this.B=this.videoData=this.suggestions=null;this.C=this.I=!1;this.G=null;this.w=new g.RQ(this);g.B(this,this.w);this.F=new g.I(function(){g.J(b.element,"ytp-show-tiles")},0); +g.B(this,this.F);var c=new g.R({D:"button",Y:["ytp-button","ytp-endscreen-previous"],O:{"aria-label":"Pr\u00e9c\u00e9dente"},J:[g.BM()]});g.B(this,c);c.ca(this.element);c.ka("click",this.uH,this);this.table=new g.Mu({D:"div",H:"ytp-endscreen-content"});g.B(this,this.table);this.table.ca(this.element);c=new g.R({D:"button",Y:["ytp-button","ytp-endscreen-next"],O:{"aria-label":"Suivante"},J:[g.CM()]});g.B(this,c);c.ca(this.element);c.ka("click",this.tH,this);this.u=new T4(a);g.B(this,this.u);g.iL(this.player, +this.u.element,4);this.hide()},$4=function(a){return g.jL(a.player)&&a.iw()&&!a.B},$ua=function(a,b){return(0,g.Cc)(b.suggestions,function(c){c=g.jM(a.K.N(),c); +g.B(a,c);return c})},a5=function(a){var b=a.gt(); +b!==a.I&&(a.I=b,a.player.S("autonavvisibility"))},b5=function(a){g.vL.call(this,a); +this.endScreen=null;this.listeners=new g.Gr(this);g.B(this,this.listeners);this.o=a.N();ava(a)?this.endScreen=new Z4(this.player):this.o.Ta?this.endScreen=new Zua(this.player):this.endScreen=new X4(this.player);g.B(this,this.endScreen);g.iL(this.player,this.endScreen.element,4);this.UB();this.listeners.L(a,"videodatachange",this.UB,this);this.listeners.L(a,g.lC("endscreen"),this.qH,this);this.listeners.L(a,"crx_endscreen",this.rH,this)},ava=function(a){a=a.N(); +return a.Aa&&!a.Ta}; +g.r(T4,g.R);g.h=T4.prototype;g.h.En=function(){this.C&&(this.G.stop(),this.bb(this.F),this.F=null,this.C.close(),this.C=null)}; +g.h.mA=function(){g.Qu(this,g.LK(this.u));g.oL(this.u,this.element,g.LK(this.u))}; +g.h.VL=function(){window.focus();this.En()}; +g.h.hide=function(){g.R.prototype.hide.call(this)}; +g.h.Rq=function(a){a=a||g.Q(this.u.N().experiments,"autoplay_time")||1E4;var b=Math.min((0,g.N)()-this.I,a);a=Math.min(b/a,1);this.M.setAttribute("stroke-dashoffset",-211*(a+1));1<=a&&3!=this.u.getPresentingPlayerType()?this.select(!0):this.w&&this.w.start()}; +g.h.select=function(a){a=void 0===a?!1:a;if(g.P(this.u.N().experiments,"autonav_notifications")&&a&&window.Notification&&document.hasFocus){var b=Notification.permission;"default"==b?Notification.requestPermission():"granted"!=b||document.hasFocus()||(b=this.A.ya(),this.En(),this.C=new Notification("\u00c0 suivre",{body:b.title,icon:b.tc()}),this.F=this.L(this.C,"click",this.VL),this.G.start())}V4(this);this.u.nextVideo(!1,a)}; +g.h.gM=function(a){!g.xe(this.B.element,g.Gp(a))&&g.IN(a,this.u)&&this.select()}; +g.h.tK=function(){g.NK(this.u,!0)}; +g.h.wL=function(a){this.u.getPresentingPlayerType();this.show();U4(this,a)}; +g.h.LC=function(a){this.u.getPresentingPlayerType();this.A&&this.A.ya().videoId==a.ya().videoId||(this.A=a,S4(this,a,"hqdefault.jpg"))}; +g.h.xL=function(){this.u.getPresentingPlayerType();V4(this);this.hide()}; +g.h.X=function(){V4(this);this.En();g.R.prototype.X.call(this)};g.r(X4,g.R);g.h=X4.prototype;g.h.create=function(){this.created=!0}; +g.h.destroy=function(){this.created=!1}; +g.h.iw=function(){return!1}; +g.h.gt=function(){return!1}; +g.h.py=function(){return!1};g.r(Zua,X4);g.r(Y4,g.R);Y4.prototype.select=function(){var a=this.suggestion.ya().videoId,b=this.suggestion.getPlaylistId();(g.rT(this.api.app,a,this.suggestion.Ob,b,void 0,void 0)||this.api.fa("web_player_endscreen_double_log_fix_killswitch"))&&g.nL(this.api,this.element)}; +Y4.prototype.onClick=function(a){g.IN(a,this.api,this.u,this.suggestion.Ob||void 0)&&this.select()}; +Y4.prototype.B=function(a){switch(a.keyCode){case 13:case 32:g.Lp(a)||(this.select(),g.Kp(a))}}; +Y4.prototype.A=function(){var a=this.api.getVideoData(),b=this.api.N();this.u=a.lc?!1:b.u};g.r(Z4,X4);g.h=Z4.prototype;g.h.create=function(){X4.prototype.create.call(this);var a=this.player.getVideoData();a&&(this.suggestions=$ua(this,a),this.videoData=a);this.Hg();this.w.L(this.player,"appresize",this.Hg);this.w.L(this.player,"onVideoAreaChange",this.Hg);this.w.L(this.player,"videodatachange",this.vH);this.w.L(this.player,"autonavchange",this.ht);this.w.L(this.player,"autonavcancel",this.sH);a=this.videoData.autonavState;a!==this.G&&this.ht(a);this.w.L(this.element,"transitionend",this.tN)}; +g.h.destroy=function(){g.Ir(this.w);g.Ie(this.stills);this.stills=[];this.suggestions=null;X4.prototype.destroy.call(this);g.Dn(this.element,"ytp-show-tiles");this.F.stop();this.G=this.videoData.autonavState}; +g.h.iw=function(){return 1!==this.videoData.autonavState}; +g.h.show=function(){X4.prototype.show.call(this);g.Dn(this.element,"ytp-show-tiles");this.player.N().o?g.un(this.F):this.F.start();(this.C||this.B&&this.B!==this.videoData.clientPlaybackNonce)&&g.NK(this.player,!1);$4(this)?(a5(this),2===this.videoData.autonavState?this.player.N().fa("fast_autonav_in_background")&&3===this.player.getVisibilityState()?this.u.select(!0):U4(this.u):3===this.videoData.autonavState&&W4(this.u)):(g.NK(this.player,!0),a5(this))}; +g.h.hide=function(){X4.prototype.hide.call(this);W4(this.u);a5(this)}; +g.h.tN=function(a){g.Gp(a)===this.element&&this.Hg()}; +g.h.Hg=function(){if(this.suggestions&&this.suggestions.length){g.J(this.element,"ytp-endscreen-paginate");var a=g.$K(this.K,!0,this.K.isFullscreen()),b=g.dC(this.K);b&&(b=b.kc()?48:32,a.width-=2*b);var c=a.width/a.height,d=96/54,e=b=2,f=Math.max(a.width/96,2),k=Math.max(a.height/54,2),l=this.suggestions.length,m=Math.pow(2,2);var n=l*m+(Math.pow(2,2)-m);n+=Math.pow(2,2)-m;for(n-=m;0=t*m,z=e<=k-2&&n>=p*m;if((p+1)/t*d/c>c/(p/(t+1)*d)&&z)n-=p*m,e+=2;else if(u)n-= +t*m,b+=2;else if(z)n-=p*m,e+=2;else break}d=!1;n>=3*m&&6>=l*m-n&&(4<=e||4<=b)&&(d=!0);m=96*b;n=54*e;c=m/n=b-2&&k>=e-2?t=1:0===k%2&&0===f%2&&(2>k&&2>f?0===k&&0===f&&(t=2):t=2),p=g.Nd(p+this.A,l),0!==t){u=this.stills[c];u||(u=new Y4(this.player),this.stills[c]=u,a.appendChild(u.element));z=Math.floor(n*k/e);var C=Math.floor(m*f/b),D=Math.floor(n*(k+t)/e)-z-4,E=Math.floor(m*(f+t)/b)-C-4;g.Ah(u.element,C,z);g.Mh(u.element,E,D);g.sh(u.element,"transitionDelay",(k+f)/20+"s");g.K(u.element,"ytp-videowall-still-mini",1===t);g.K(u.element, +"ytp-videowall-still-large",2=c;b--)e=this.stills[b],g.te(e.element),g.He(e);this.stills.length=c}}; +g.h.vH=function(){var a=this.player.getVideoData();this.videoData!==a&&(this.A=0,this.suggestions=$ua(this,a),this.videoData=a,this.Hg())}; +g.h.tH=function(){this.A+=this.stills.length;this.Hg()}; +g.h.uH=function(){this.A-=this.stills.length;this.Hg()}; +g.h.py=function(){return!!this.u.w}; +g.h.ht=function(a){1===a?(this.C=!1,this.B=this.videoData.clientPlaybackNonce,V4(this.u),this.Ha()&&this.Hg()):(this.C=!0,this.Ha()&&$4(this)&&(2===a?U4(this.u):3===a&&W4(this.u)))}; +g.h.sH=function(a){if(a){for(a=0;a-1?upcased:method}function Request(input,options){options=options||{};var body=options.body;if(Request.prototype.isPrototypeOf(input)){if(input.bodyUsed)throw new TypeError("Already read");this.url=input.url;this.credentials=input.credentials;if(!options.headers)this.headers=new Headers(input.headers);this.method=input.method;this.mode=input.mode; +if(!body){body=input._bodyInit;input.bodyUsed=true}}else this.url=input;this.credentials=options.credentials||this.credentials||"omit";if(options.headers||!this.headers)this.headers=new Headers(options.headers);this.method=normalizeMethod(options.method||this.method||"GET");this.mode=options.mode||this.mode||null;this.referrer=null;if((this.method==="GET"||this.method==="HEAD")&&body)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(body)}Request.prototype.clone=function(){return new Request(this)}; +function decode(body){var form=new FormData;body.trim().split("&").forEach(function(bytes){if(bytes){var split=bytes.split("=");var name=split.shift().replace(/\+/g," ");var value=split.join("=").replace(/\+/g," ");form.append(decodeURIComponent(name),decodeURIComponent(value))}});return form}function headers(xhr){var head=new Headers;var pairs=xhr.getAllResponseHeaders().trim().split("\n");pairs.forEach(function(header){var split=header.trim().split(":");var key=split.shift().trim();var value=split.join(":").trim(); +head.append(key,value)});return head}Body.call(Request.prototype);function Response(bodyInit,options){if(!options)options={};this.type="default";this.status=options.status;this.ok=this.status>=200&&this.status<300;this.statusText=options.statusText;this.headers=options.headers instanceof Headers?options.headers:new Headers(options.headers);this.url=options.url||"";this._initBody(bodyInit)}Body.call(Response.prototype);Response.prototype.clone=function(){return new Response(this._bodyInit,{status:this.status, +statusText:this.statusText,headers:new Headers(this.headers),url:this.url})};Response.error=function(){var response=new Response(null,{status:0,statusText:""});response.type="error";return response};var redirectStatuses=[301,302,303,307,308];Response.redirect=function(url,status){if(redirectStatuses.indexOf(status)===-1)throw new RangeError("Invalid status code");return new Response(null,{status:status,headers:{location:url}})};self.Headers=Headers;self.Request=Request;self.Response=Response;self.fetch= +function(input,init){return new Promise(function(resolve,reject){var request;if(Request.prototype.isPrototypeOf(input)&&!init)request=input;else request=new Request(input,init);var xhr=new XMLHttpRequest;function responseURL(){if("responseURL"in xhr)return xhr.responseURL;if(/^X-Request-URL:/m.test(xhr.getAllResponseHeaders()))return xhr.getResponseHeader("X-Request-URL");return}xhr.onload=function(){var status=xhr.status===1223?204:xhr.status;if(status<100||status>599){reject(new TypeError("Network request failed")); +return}var options={status:status,statusText:xhr.statusText,headers:headers(xhr),url:responseURL()};var body="response"in xhr?xhr.response:xhr.responseText;resolve(new Response(body,options))};xhr.onerror=function(){reject(new TypeError("Network request failed"))};xhr.open(request.method,request.url,true);if(request.credentials==="include")xhr.withCredentials=true;if("responseType"in xhr&&support.blob)xhr.responseType="blob";request.headers.forEach(function(value,name){xhr.setRequestHeader(name,value)}); +xhr.send(typeof request._bodyInit==="undefined"?null:request._bodyInit)})};self.fetch.polyfill=true})(typeof self!=="undefined"?self:this); diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/fU9hR3kiOK0_data/remote.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/fU9hR3kiOK0_data/remote.js new file mode 100644 index 0000000..c886f4a --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/fU9hR3kiOK0_data/remote.js @@ -0,0 +1,540 @@ +(function(g){var window=this;var Wva=function(a,b){return g.Jb(a,b)},X5=function(a,b,c){a.w.set(b,c)},Y5=function(a){X5(a,"zx",Math.floor(2147483648*Math.random()).toString(36)+Math.abs(Math.floor(2147483648*Math.random())^(0,g.H)()).toString(36)); +return a},Z5=function(a,b,c){Array.isArray(c)||(c=[String(c)]); +g.an(a.w,b,c)},Xva=function(a,b){var c=[]; +g.hk(b,function(d){try{var e=g.$n.prototype.u.call(this,d,!0)}catch(f){if("Storage: Invalid value was encountered"==f)return;throw f;}void 0===e?c.push(d):g.Zn(e)&&c.push(d)},a); +return c},Yva=function(a,b){var c=Xva(a,b); +(0,g.y)(c,function(d){g.$n.prototype.remove.call(this,d)},a)},Zva=function(a){if(a.Sc){if(a.Sc.locationOverrideToken)return{locationOverrideToken:a.Sc.locationOverrideToken}; +if(null!=a.Sc.latitudeE7&&null!=a.Sc.longitudeE7)return{latitudeE7:a.Sc.latitudeE7,longitudeE7:a.Sc.longitudeE7}}return null},$va=function(a,b){g.$a(a,b)||a.push(b)},$5=function(a){var b=0,c; +for(c in a)b++;return b},awa=function(a,b){var c=b instanceof g.tc?b:g.xc(b,/^data:image\//i.test(b)); +a.src=g.uc(c)},a6=function(){},bwa=function(a){try{return g.v.JSON.parse(a)}catch(b){}a=String(a); +if(/^\s*$/.test(a)?0:/^[\],:{}\s\u2028\u2029]*$/.test(a.replace(/\\["\\\/bfnrtu]/g,"@").replace(/(?:"[^"\\\n\r\u2028\u2029\x00-\x08\x0a-\x1f]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)[\s\u2028\u2029]*(?=:|,|]|}|$)/g,"]").replace(/(?:^|:|,)(?:[\s\u2028\u2029]*\[)+/g,"")))try{return eval("("+a+")")}catch(b){}throw Error("Invalid JSON string: "+a);},cwa=function(a){if(a.Ed&&"function"==typeof a.Ed)return a.Ed(); +if("string"===typeof a)return a.split("");if(g.La(a)){for(var b=[],c=a.length,d=0;db.length)return C6;var e=b.substr(d,c);a.Sm=d+c;return e},Lwa=function(a,b){a.wk=(0,g.H)(); +B6(a);var c=b?window.location.hostname:"";a.Ph=a.Vg.clone();X5(a.Ph,"DOMAIN",c);X5(a.Ph,"t",a.F);try{a.kf=new ActiveXObject("htmlfile")}catch(n){F6(a);a.lh=7;D6(22);G6(a);return}var d="";if(b){for(var e="",f=0;f"==k)e+="\\x3e";else{var l=k;if(l in H6)k=H6[l];else if(l in Kwa)k=H6[l]=Kwa[l];else{var m=l.charCodeAt(0);if(31m)k=l;else{if(256>m){if(k="\\x",16>m||256m&&(k+="0");k+=m.toString(16).toUpperCase()}k= +H6[l]=k}e+=k}}d+=' + + +
+ + + + \ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/drift-translations-en_US-1340bea6496365f220aa.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/drift-translations-en_US-1340bea6496365f220aa.js new file mode 100644 index 0000000..118ce17 --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/drift-translations-en_US-1340bea6496365f220aa.js @@ -0,0 +1 @@ +(window.driftWebpackJsonp=window.driftWebpackJsonp||[]).push([[104],{765:function(e){e.exports={"app.async.contactPrompt":"How can we reach you?","app.async.thankYou":"Thanks for your message. We'll follow up in a bit at {email}","app.automessage.emailCaptureMessage":"Hey there! We're excited to help you out. Let us know your email address so that we can follow up in case we get disconnected.","app.automessage.emailCapturedSuccess":"Thanks for submitting your email","app.campaign.nps.detractorFeedbackApproval":"It will help us improve your experience.","app.campaign.nps.feedbackApproval":"Thank you for your feedback!","app.campaign.nps.notLikely":"not likely","app.campaign.nps.veryLikely":"very likely","app.composer.footer.chatWith":"Chat with {orgName}","app.composer.footer.meetingPoweredByDrift":"Meeting {bolt} by {drift}","app.composer.footer.poweredByDrift":"Chat {bolt} by {drift}","app.composer.disabledUseButtons":"Choose an option above...","app.composer.leaveMessage":"Leave Message","app.composer.leaveMessageForPlaceholder":"Leave a message for {name}","app.composer.leaveMessagePlaceholder":"Leave a message…","app.composer.placeholder":"Type your message…","app.composer.replyToPlaceholder":"Reply to {name}","app.composer.sendKeyHint":"{key} to send","app.composer.sendMessage":"Send Message","app.composer.submitKeyHint":"{key} to submit","app.composer.conversationRating.label":"Rate Us:","app.form.invalidEmail":"Invalid email address","app.form.label.emailAddress":"Email address","app.form.label.submit":"Submit","app.form.requiredField":"Required","app.header.title.conversations":"Conversations","app.header.title.newConversation":"New Conversation","app.meeting.hour":"hour","app.meeting.hours":"hours","app.meeting.minute":"minute","app.meeting.minutes":"minutes","app.meeting.next":"Next","app.meeting.prev":"Prev","app.meeting.retry":"Retry","app.meeting.schedule":"Schedule","app.meeting.scheduleAMeeting":"Schedule a Meeting","app.meeting.scheduleAMeetingError":"Sorry about that! We ran into an error on our end - please try again.","app.meeting.scheduleAMeetingTimePassedError":"Sorry, the time you chose has already passed! Please pick a new time.","app.meeting.scheduleAMeetingAlreadyBookedError":"Sorry, it looks like someone has already scheduled this time slot with {name}.","app.meeting.chooseNewTime":"Choose a new time","app.meeting.searchTimeZones":"Search Time Zones","app.meeting.selectADay":"Select a day","app.meeting.selectATime":"Select a time","app.meeting.timeZone":"Time Zone","app.message.attachmentCount":"{count, plural, =0 {No attachments} one {1 attachment} other {# attachments}}","app.message.deliveryStatus.delivered":"Delivered","app.message.deliveryStatus.sending":"Sending...","app.newConversation.welcomeMessage":"How can we help? We're here for you!","app.status.connected":"Connected","app.status.connecting":"Connecting","app.status.connectionFailed":"Connection failed.","app.status.connectionRetry":"Retry?","app.user.personalPronoun":"You","app.user.status.active":"active {time}","app.user.status.offline":"offline now","app.user.status.online":"online now","messenger.offlineFeedback.awayMessageDefaultCopy":"Hi there! So we’re away right now, but if you leave us a message we’ll get back to you soon.","messenger.offlineFeedback.confirmationMessageDefaultCopy":"Thanks for your message! We’ll follow up in a bit.","messenger.offlineFeedback.form.label.emailAddress":"Email Address","messenger.offlineFeedback.form.label.message":"Message","messenger.offlineFeedback.form.label.submitAwayMode":"Leave message","system.key.enter":"enter","system.key.return":"return"}}}]); \ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/moment-90d9c676ca6bc1da30ce.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/moment-90d9c676ca6bc1da30ce.js new file mode 100644 index 0000000..0cd04ab --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/moment-90d9c676ca6bc1da30ce.js @@ -0,0 +1,13 @@ +(window.driftWebpackJsonp=window.driftWebpackJsonp||[]).push([[107],{1076:function(c){c.exports={version:"2019c",zones:["Africa/Abidjan|LMT GMT|g.8 0|01|-2ldXH.Q|48e5","Africa/Accra|LMT GMT +0020|.Q 0 -k|012121212121212121212121212121212121212121212121|-26BbX.8 6tzX.8 MnE 1BAk MnE 1BAk MnE 1BAk MnE 1C0k MnE 1BAk MnE 1BAk MnE 1BAk MnE 1C0k MnE 1BAk MnE 1BAk MnE 1BAk MnE 1C0k MnE 1BAk MnE 1BAk MnE 1BAk MnE 1C0k MnE 1BAk MnE 1BAk MnE 1BAk MnE 1C0k MnE 1BAk MnE 1BAk MnE|41e5","Africa/Nairobi|LMT EAT +0230 +0245|-2r.g -30 -2u -2J|01231|-1F3Cr.g 3Dzr.g okMu MFXJ|47e5","Africa/Algiers|PMT WET WEST CET CEST|-9.l 0 -10 -10 -20|0121212121212121343431312123431213|-2nco9.l cNb9.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 DA0 Imo0 rd0 De0 9Xz0 1fb0 1ap0 16K0 2yo0 mEp0 hwL0 jxA0 11A0 dDd0 17b0 11B0 1cN0 2Dy0 1cN0 1fB0 1cL0|26e5","Africa/Lagos|LMT WAT|-d.A -10|01|-22y0d.A|17e6","Africa/Bissau|LMT -01 GMT|12.k 10 0|012|-2ldX0 2xoo0|39e4","Africa/Maputo|LMT CAT|-2a.k -20|01|-2GJea.k|26e5","Africa/Cairo|EET EEST|-20 -30|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-1bIO0 vb0 1ip0 11z0 1iN0 1nz0 12p0 1pz0 10N0 1pz0 16p0 1jz0 s3d0 Vz0 1oN0 11b0 1oO0 10N0 1pz0 10N0 1pb0 10N0 1pb0 10N0 1pb0 10N0 1pz0 10N0 1pb0 10N0 1pb0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1WL0 rd0 1Rz0 wp0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1qL0 Xd0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1ny0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 WL0 1qN0 Rb0 1wp0 On0 1zd0 Lz0 1EN0 Fb0 c10 8n0 8Nd0 gL0 e10 mn0|15e6","Africa/Casablanca|LMT +00 +01|u.k 0 -10|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-2gMnt.E 130Lt.E rb0 Dd0 dVb0 b6p0 TX0 EoB0 LL0 gnd0 rz0 43d0 AL0 1Nd0 XX0 1Cp0 pz0 dEp0 4mn0 SyN0 AL0 1Nd0 wn0 1FB0 Db0 1zd0 Lz0 1Nf0 wM0 co0 go0 1o00 s00 dA0 vc0 11A0 A00 e00 y00 11A0 uM0 e00 Dc0 11A0 s00 e00 IM0 WM0 mo0 gM0 LA0 WM0 jA0 e00 28M0 e00 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0|32e5","Africa/Ceuta|WET WEST CET CEST|0 -10 -10 -20|010101010101010101010232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-25KN0 11z0 drd0 18p0 3HX0 17d0 1fz0 1a10 1io0 1a00 1y7o0 LL0 gnd0 rz0 43d0 AL0 1Nd0 XX0 1Cp0 pz0 dEp0 4VB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|85e3","Africa/El_Aaiun|LMT -01 +00 +01|Q.M 10 0 -10|012323232323232323232323232323232323232323232323232323232323232323232323232323232323|-1rDz7.c 1GVA7.c 6L0 AL0 1Nd0 XX0 1Cp0 pz0 1cBB0 AL0 1Nd0 wn0 1FB0 Db0 1zd0 Lz0 1Nf0 wM0 co0 go0 1o00 s00 dA0 vc0 11A0 A00 e00 y00 11A0 uM0 e00 Dc0 11A0 s00 e00 IM0 WM0 mo0 gM0 LA0 WM0 jA0 e00 28M0 e00 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0|20e4","Africa/Johannesburg|SAST SAST SAST|-1u -20 -30|012121|-2GJdu 1Ajdu 1cL0 1cN0 1cL0|84e5","Africa/Juba|LMT CAT CAST EAT|-26.s -20 -30 -30|01212121212121212121212121212121213|-1yW26.s 1zK06.s 16L0 1iN0 17b0 1jd0 17b0 1ip0 17z0 1i10 17X0 1hB0 18n0 1hd0 19b0 1gp0 19z0 1iN0 17b0 1ip0 17z0 1i10 18n0 1hd0 18L0 1gN0 19b0 1gp0 19z0 1iN0 17z0 1i10 17X0 yGd0","Africa/Khartoum|LMT CAT CAST EAT|-2a.8 -20 -30 -30|012121212121212121212121212121212131|-1yW2a.8 1zK0a.8 16L0 1iN0 17b0 1jd0 17b0 1ip0 17z0 1i10 17X0 1hB0 18n0 1hd0 19b0 1gp0 19z0 1iN0 17b0 1ip0 17z0 1i10 18n0 1hd0 18L0 1gN0 19b0 1gp0 19z0 1iN0 17z0 1i10 17X0 yGd0 HjL0|51e5","Africa/Monrovia|MMT MMT GMT|H.8 I.u 0|012|-23Lzg.Q 28G01.m|11e5","Africa/Ndjamena|LMT WAT WAST|-10.c -10 -20|0121|-2le10.c 2J3c0.c Wn0|13e5","Africa/Sao_Tome|LMT GMT WAT|A.J 0 -10|0121|-2le00 4i6N0 2q00","Africa/Tripoli|LMT CET CEST EET|-Q.I -10 -20 -20|012121213121212121212121213123123|-21JcQ.I 1hnBQ.I vx0 4iP0 xx0 4eN0 Bb0 7ip0 U0n0 A10 1db0 1cN0 1db0 1dd0 1db0 1eN0 1bb0 1e10 1cL0 1c10 1db0 1dd0 1db0 1cN0 1db0 1q10 fAn0 1ep0 1db0 AKq0 TA0 1o00|11e5","Africa/Tunis|PMT CET CEST|-9.l -10 -20|0121212121212121212121212121212121|-2nco9.l 18pa9.l 1qM0 DA0 3Tc0 11B0 1ze0 WM0 7z0 3d0 14L0 1cN0 1f90 1ar0 16J0 1gXB0 WM0 1rA0 11c0 nwo0 Ko0 1cM0 1cM0 1rA0 10M0 zuM0 10N0 1aN0 1qM0 WM0 1qM0 11A0 1o00|20e5","Africa/Windhoek|+0130 SAST SAST CAT WAT|-1u -20 -30 -20 -10|01213434343434343434343434343434343434343434343434343|-2GJdu 1Ajdu 1cL0 1SqL0 9Io0 16P0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0|32e4","America/Adak|NST NWT NPT BST BDT AHST HST HDT|b0 a0 a0 b0 a0 a0 a0 90|012034343434343434343434343434343456767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-17SX0 8wW0 iB0 Qlb0 52O0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cm0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|326","America/Anchorage|AST AWT APT AHST AHDT YST AKST AKDT|a0 90 90 a0 90 90 90 80|012034343434343434343434343434343456767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-17T00 8wX0 iA0 Qlb0 52O0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cm0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|30e4","America/Port_of_Spain|LMT AST|46.4 40|01|-2kNvR.U|43e3","America/Araguaina|LMT -03 -02|3c.M 30 20|0121212121212121212121212121212121212121212121212121|-2glwL.c HdKL.c 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 dMN0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 ny10 Lz0|14e4","America/Argentina/Buenos_Aires|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323232323232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wp0 Rb0 1wp0 TX0 A4p0 uL0 1qN0 WL0","America/Argentina/Catamarca|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323132321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 rlB0 7B0 8zb0 uL0","America/Argentina/Cordoba|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323132323232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 A4p0 uL0 1qN0 WL0","America/Argentina/Jujuy|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323121323232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1ze0 TX0 1ld0 WK0 1wp0 TX0 A4p0 uL0","America/Argentina/La_Rioja|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323231232321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Qn0 qO0 16n0 Rb0 1wp0 TX0 rlB0 7B0 8zb0 uL0","America/Argentina/Mendoza|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232312121321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1u20 SL0 1vd0 Tb0 1wp0 TW0 ri10 Op0 7TX0 uL0","America/Argentina/Rio_Gallegos|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323232321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wp0 Rb0 1wp0 TX0 rlB0 7B0 8zb0 uL0","America/Argentina/Salta|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323231323232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 A4p0 uL0","America/Argentina/San_Juan|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323231232321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Qn0 qO0 16n0 Rb0 1wp0 TX0 rld0 m10 8lb0 uL0","America/Argentina/San_Luis|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323121212321212|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 XX0 1q20 SL0 AN0 vDb0 m10 8lb0 8L0 jd0 1qN0 WL0 1qN0","America/Argentina/Tucuman|CMT -04 -03 -02|4g.M 40 30 20|0121212121212121212121212121212121212121212323232313232123232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 rlB0 4N0 8BX0 uL0 1qN0 WL0","America/Argentina/Ushuaia|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323232321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wp0 Rb0 1wp0 TX0 rkN0 8p0 8zb0 uL0","America/Curacao|LMT -0430 AST|4z.L 4u 40|012|-2kV7o.d 28KLS.d|15e4","America/Asuncion|AMT -04 -03|3O.E 40 30|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-1x589.k 1DKM9.k 3CL0 3Dd0 10L0 1pB0 10n0 1pB0 10n0 1pB0 1cL0 1dd0 1db0 1dd0 1cL0 1dd0 1cL0 1dd0 1cL0 1dd0 1db0 1dd0 1cL0 1dd0 1cL0 1dd0 1cL0 1dd0 1db0 1dd0 1cL0 1lB0 14n0 1dd0 1cL0 1fd0 WL0 1rd0 1aL0 1dB0 Xz0 1qp0 Xb0 1qN0 10L0 1rB0 TX0 1tB0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 WN0 1qL0 11B0 1nX0 1ip0 WL0 1qN0 WL0 1qN0 WL0 1tB0 TX0 1tB0 TX0 1tB0 19X0 1a10 1fz0 1a10 1fz0 1cN0 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0|28e5","America/Atikokan|CST CDT CWT CPT EST|60 50 50 50 50|0101234|-25TQ0 1in0 Rnb0 3je0 8x30 iw0|28e2","America/Bahia_Banderas|LMT MST CST PST MDT CDT|71 70 60 80 60 50|0121212131414141414141414141414141414152525252525252525252525252525252525252525252525252525252|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 otX0 gmN0 P2N0 13Vd0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nW0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|84e3","America/Bahia|LMT -03 -02|2y.4 30 20|01212121212121212121212121212121212121212121212121212121212121|-2glxp.U HdLp.U 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 l5B0 Rb0|27e5","America/Barbados|LMT BMT AST ADT|3W.t 3W.t 40 30|01232323232|-1Q0I1.v jsM0 1ODC1.v IL0 1ip0 17b0 1ip0 17b0 1ld0 13b0|28e4","America/Belem|LMT -03 -02|3d.U 30 20|012121212121212121212121212121|-2glwK.4 HdKK.4 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0|20e5","America/Belize|LMT CST -0530 CDT|5Q.M 60 5u 50|01212121212121212121212121212121212121212121212121213131|-2kBu7.c fPA7.c Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1f0Mu qn0 lxB0 mn0|57e3","America/Blanc-Sablon|AST ADT AWT APT|40 30 30 30|010230|-25TS0 1in0 UGp0 8x50 iu0|11e2","America/Boa_Vista|LMT -04 -03|42.E 40 30|0121212121212121212121212121212121|-2glvV.k HdKV.k 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 smp0 WL0 1tB0 2L0|62e2","America/Bogota|BMT -05 -04|4U.g 50 40|0121|-2eb73.I 38yo3.I 2en0|90e5","America/Boise|PST PDT MST MWT MPT MDT|80 70 70 60 60 60|0101023425252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252|-261q0 1nX0 11B0 1nX0 8C10 JCL0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 Dd0 1Kn0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|21e4","America/Cambridge_Bay|-00 MST MWT MPT MDDT MDT CST CDT EST|0 70 60 60 50 60 60 50 50|0123141515151515151515151515151515151515151515678651515151515151515151515151515151515151515151515151515151515151515151515151|-21Jc0 RO90 8x20 ix0 LCL0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11A0 1nX0 2K0 WQ0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|15e2","America/Campo_Grande|LMT -04 -03|3C.s 40 30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glwl.w HdLl.w 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 1C10 Lz0 1Ip0 HX0 1zd0 On0 1HB0 IL0 1wp0 On0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1HB0 FX0|77e4","America/Cancun|LMT CST EST EDT CDT|5L.4 60 50 40 50|0123232341414141414141414141414141414141412|-1UQG0 2q2o0 yLB0 1lb0 14p0 1lb0 14p0 Lz0 xB0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 Dd0|63e4","America/Caracas|CMT -0430 -04|4r.E 4u 40|01212|-2kV7w.k 28KM2.k 1IwOu kqo0|29e5","America/Cayenne|LMT -04 -03|3t.k 40 30|012|-2mrwu.E 2gWou.E|58e3","America/Panama|CMT EST|5j.A 50|01|-2uduE.o|15e5","America/Chicago|CST CDT EST CWT CPT|60 50 50 50 50|01010101010101010101010101010101010102010101010103401010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 1wp0 TX0 WN0 1qL0 1cN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 11B0 1Hz0 14p0 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 RB0 8x30 iw0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|92e5","America/Chihuahua|LMT MST CST CDT MDT|74.k 70 60 50 60|0121212323241414141414141414141414141414141414141414141414141414141414141414141414141414141|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 2zQN0 1lb0 14p0 1lb0 14q0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|81e4","America/Costa_Rica|SJMT CST CDT|5A.d 60 50|0121212121|-1Xd6n.L 2lu0n.L Db0 1Kp0 Db0 pRB0 15b0 1kp0 mL0|12e5","America/Creston|MST PST|70 80|010|-29DR0 43B0|53e2","America/Cuiaba|LMT -04 -03|3I.k 40 30|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glwf.E HdLf.E 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 4a10 HX0 1zd0 On0 1HB0 IL0 1wp0 On0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1HB0 FX0|54e4","America/Danmarkshavn|LMT -03 -02 GMT|1e.E 30 20 0|01212121212121212121212121212121213|-2a5WJ.k 2z5fJ.k 19U0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 DC0|8","America/Dawson_Creek|PST PDT PWT PPT MST|80 70 70 70 70|0102301010101010101010101010101010101010101010101010101014|-25TO0 1in0 UGp0 8x10 iy0 3NB0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 ML0|12e3","America/Dawson|YST YDT YWT YPT YDDT PST PDT|90 80 80 80 70 80 70|0101023040565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-25TN0 1in0 1o10 13V0 Ser0 8x00 iz0 LCL0 1fA0 jrA0 fNd0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|13e2","America/Denver|MST MDT MWT MPT|70 60 60 60|01010101023010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261r0 1nX0 11B0 1nX0 11B0 1qL0 WN0 mn0 Ord0 8x20 ix0 LCN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|26e5","America/Detroit|LMT CST EST EWT EPT EDT|5w.b 60 50 40 40 40|0123425252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252|-2Cgir.N peqr.N 156L0 8x40 iv0 6fd0 11z0 JxX1 SMX 1cN0 1cL0 aW10 1cL0 s10 1Vz0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|37e5","America/Edmonton|LMT MST MDT MWT MPT|7x.Q 70 60 60 60|0121212121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2yd4q.8 shdq.8 1in0 17d0 hz0 2dB0 1fz0 1a10 11z0 1qN0 WL0 1qN0 11z0 IGN0 8x20 ix0 3NB0 11z0 XQp0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|10e5","America/Eirunepe|LMT -05 -04|4D.s 50 40|0121212121212121212121212121212121|-2glvk.w HdLk.w 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 dPB0 On0 yTd0 d5X0|31e3","America/El_Salvador|LMT CST CDT|5U.M 60 50|012121|-1XiG3.c 2Fvc3.c WL0 1qN0 WL0|11e5","America/Tijuana|LMT MST PST PDT PWT PPT|7M.4 70 80 70 70 70|012123245232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-1UQE0 4PX0 8mM0 8lc0 SN0 1cL0 pHB0 83r0 zI0 5O10 1Rz0 cOO0 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 BUp0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|20e5","America/Fort_Nelson|PST PDT PWT PPT MST|80 70 70 70 70|01023010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010104|-25TO0 1in0 UGp0 8x10 iy0 3NB0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0|39e2","America/Fort_Wayne|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|010101023010101010101010101040454545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 QI10 Db0 RB0 8x30 iw0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 5Tz0 1o10 qLb0 1cL0 1cN0 1cL0 1qhd0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/Fortaleza|LMT -03 -02|2y 30 20|0121212121212121212121212121212121212121|-2glxq HdLq 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 nsp0 WL0 1tB0 5z0 2mN0 On0|34e5","America/Glace_Bay|LMT AST ADT AWT APT|3X.M 40 30 30 30|012134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2IsI0.c CwO0.c 1in0 UGp0 8x50 iu0 iq10 11z0 Jg10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|19e3","America/Godthab|LMT -03 -02|3q.U 30 20|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2a5Ux.4 2z5dx.4 19U0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|17e3","America/Goose_Bay|NST NDT NST NDT NWT NPT AST ADT ADDT|3u.Q 2u.Q 3u 2u 2u 2u 40 30 20|010232323232323245232323232323232323232323232323232323232326767676767676767676767676767676767676767676768676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-25TSt.8 1in0 DXb0 2HbX.8 WL0 1qN0 WL0 1qN0 WL0 1tB0 TX0 1tB0 WL0 1qN0 WL0 1qN0 7UHu itu 1tB0 WL0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1tB0 WL0 1ld0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 S10 g0u 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14n1 1lb0 14p0 1nW0 11C0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zcX Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|76e2","America/Grand_Turk|KMT EST EDT AST|57.a 50 40 40|01212121212121212121212121212121212121212121212121212121212121212121212121232121212121212121212121212121212121212121|-2l1uQ.O 2HHBQ.O 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 5Ip0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|37e2","America/Guatemala|LMT CST CDT|62.4 60 50|0121212121|-24KhV.U 2efXV.U An0 mtd0 Nz0 ifB0 17b0 zDB0 11z0|13e5","America/Guayaquil|QMT -05 -04|5e 50 40|0121|-1yVSK 2uILK rz0|27e5","America/Guyana|LMT -0345 -03 -04|3Q.E 3J 30 40|0123|-2dvU7.k 2r6LQ.k Bxbf|80e4","America/Halifax|LMT AST ADT AWT APT|4e.o 40 30 30 30|0121212121212121212121212121212121212121212121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2IsHJ.A xzzJ.A 1db0 3I30 1in0 3HX0 IL0 1E10 ML0 1yN0 Pb0 1Bd0 Mn0 1Bd0 Rz0 1w10 Xb0 1w10 LX0 1w10 Xb0 1w10 Lz0 1C10 Jz0 1E10 OL0 1yN0 Un0 1qp0 Xb0 1qp0 11X0 1w10 Lz0 1HB0 LX0 1C10 FX0 1w10 Xb0 1qp0 Xb0 1BB0 LX0 1td0 Xb0 1qp0 Xb0 Rf0 8x50 iu0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 3Qp0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 3Qp0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 6i10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|39e4","America/Havana|HMT CST CDT|5t.A 50 40|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1Meuu.o 72zu.o ML0 sld0 An0 1Nd0 Db0 1Nd0 An0 6Ep0 An0 1Nd0 An0 JDd0 Mn0 1Ap0 On0 1fd0 11X0 1qN0 WL0 1wp0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 14n0 1ld0 14L0 1kN0 15b0 1kp0 1cL0 1cN0 1fz0 1a10 1fz0 1fB0 11z0 14p0 1nX0 11B0 1nX0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 14n0 1ld0 14n0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 1a10 1in0 1a10 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 17c0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 11A0 6i00 Rc0 1wo0 U00 1tA0 Rc0 1wo0 U00 1wo0 U00 1zc0 U00 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0|21e5","America/Hermosillo|LMT MST CST PST MDT|7n.Q 70 60 80 60|0121212131414141|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 otX0 gmN0 P2N0 13Vd0 1lb0 14p0 1lb0 14p0 1lb0|64e4","America/Indiana/Knox|CST CDT CWT CPT EST|60 50 50 50 50|0101023010101010101010101010101010101040101010101010101010101010101010101010101010101010141010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 3NB0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 11z0 1o10 11z0 1o10 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 3Cn0 8wp0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 z8o0 1o00 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/Indiana/Marengo|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|0101023010101010101010104545454545414545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 dyN0 11z0 6fd0 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 jrz0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1VA0 LA0 1BX0 1e6p0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/Indiana/Petersburg|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|01010230101010101010101010104010101010101010101010141014545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 njX0 WN0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 3Fb0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 19co0 1o00 Rd0 1zb0 Oo0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/Indiana/Tell_City|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|01010230101010101010101010401054541010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 njX0 WN0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 8wn0 1cN0 1cL0 1cN0 1cK0 1cN0 1cL0 1qhd0 1o00 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/Indiana/Vevay|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|010102304545454545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 kPB0 Awn0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1lnd0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/Indiana/Vincennes|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|01010230101010101010101010101010454541014545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 1o10 11z0 g0p0 11z0 1o10 11z0 1qL0 WN0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 caL0 1cL0 1cN0 1cL0 1qhd0 1o00 Rd0 1zb0 Oo0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/Indiana/Winamac|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|01010230101010101010101010101010101010454541054545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 jrz0 1cL0 1cN0 1cL0 1qhd0 1o00 Rd0 1za0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/Inuvik|-00 PST PDDT MST MDT|0 80 60 70 60|0121343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-FnA0 tWU0 1fA0 wPe0 2pz0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|35e2","America/Iqaluit|-00 EWT EPT EST EDDT EDT CST CDT|0 40 40 50 30 40 60 50|01234353535353535353535353535353535353535353567353535353535353535353535353535353535353535353535353535353535353535353535353|-16K00 7nX0 iv0 LCL0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11C0 1nX0 11A0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|67e2","America/Jamaica|KMT EST EDT|57.a 50 40|0121212121212121212121|-2l1uQ.O 2uM1Q.O 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0|94e4","America/Juneau|PST PWT PPT PDT YDT YST AKST AKDT|80 70 70 70 80 90 90 80|01203030303030303030303030403030356767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-17T20 8x10 iy0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cM0 1cM0 1cL0 1cN0 1fz0 1a10 1fz0 co0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|33e3","America/Kentucky/Louisville|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|0101010102301010101010101010101010101454545454545414545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 3Fd0 Nb0 LPd0 11z0 RB0 8x30 iw0 1nX1 e0X 9vd0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 xz0 gso0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1VA0 LA0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/Kentucky/Monticello|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|0101023010101010101010101010101010101010101010101010101010101010101010101454545454545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 SWp0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11A0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/La_Paz|CMT BST -04|4w.A 3w.A 40|012|-1x37r.o 13b0|19e5","America/Lima|LMT -05 -04|58.A 50 40|0121212121212121|-2tyGP.o 1bDzP.o zX0 1aN0 1cL0 1cN0 1cL0 1PrB0 zX0 1O10 zX0 6Gp0 zX0 98p0 zX0|11e6","America/Los_Angeles|PST PDT PWT PPT|80 70 70 70|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261q0 1nX0 11B0 1nX0 SgN0 8x10 iy0 5Wp1 1VaX 3dA0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1fA0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|15e6","America/Maceio|LMT -03 -02|2m.Q 30 20|012121212121212121212121212121212121212121|-2glxB.8 HdLB.8 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 dMN0 Lz0 8Q10 WL0 1tB0 5z0 2mN0 On0|93e4","America/Managua|MMT CST EST CDT|5J.c 60 50 50|0121313121213131|-1quie.M 1yAMe.M 4mn0 9Up0 Dz0 1K10 Dz0 s3F0 1KH0 DB0 9In0 k8p0 19X0 1o30 11y0|22e5","America/Manaus|LMT -04 -03|40.4 40 30|01212121212121212121212121212121|-2glvX.U HdKX.U 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 dPB0 On0|19e5","America/Martinique|FFMT AST ADT|44.k 40 30|0121|-2mPTT.E 2LPbT.E 19X0|39e4","America/Matamoros|LMT CST CDT|6E 60 50|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1UQG0 2FjC0 1nX0 i6p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|45e4","America/Mazatlan|LMT MST CST PST MDT|75.E 70 60 80 60|0121212131414141414141414141414141414141414141414141414141414141414141414141414141414141414141|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 otX0 gmN0 P2N0 13Vd0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|44e4","America/Menominee|CST CDT CWT CPT EST|60 50 50 50 50|01010230101041010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 1o10 11z0 LCN0 1fz0 6410 9Jb0 1cM0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|85e2","America/Merida|LMT CST EST CDT|5W.s 60 50 50|0121313131313131313131313131313131313131313131313131313131313131313131313131313131313131|-1UQG0 2q2o0 2hz0 wu30 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|11e5","America/Metlakatla|PST PWT PPT PDT AKST AKDT|80 70 70 70 90 80|01203030303030303030303030303030304545450454545454545454545454545454545454545454|-17T20 8x10 iy0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1hU10 Rd0 1zb0 Op0 1zb0 Op0 1zb0 uM0 jB0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|14e2","America/Mexico_City|LMT MST CST CDT CWT|6A.A 70 60 50 50|012121232324232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 gEn0 TX0 3xd0 Jb0 6zB0 SL0 e5d0 17b0 1Pff0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|20e6","America/Miquelon|LMT AST -03 -02|3I.E 40 30 20|012323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2mKkf.k 2LTAf.k gQ10 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|61e2","America/Moncton|EST AST ADT AWT APT|50 40 30 30 30|012121212121212121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2IsH0 CwN0 1in0 zAo0 An0 1Nd0 An0 1Nd0 An0 1Nd0 An0 1Nd0 An0 1Nd0 An0 1K10 Lz0 1zB0 NX0 1u10 Wn0 S20 8x50 iu0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 3Cp0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14n1 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 ReX 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|64e3","America/Monterrey|LMT CST CDT|6F.g 60 50|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1UQG0 2FjC0 1nX0 i6p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|41e5","America/Montevideo|LMT MMT -04 -03 -0330 -0230 -02 -0130|3I.P 3I.P 40 30 3u 2u 20 1u|012343434343434343434343435353636353636375363636363636363636363636363636363636363636363|-2tRUf.9 sVc0 8jcf.9 1db0 1dcu 1cLu 1dcu 1cLu ircu 11zu 1o0u 11zu 1o0u 11zu 1o0u 11zu 1qMu WLu 1qMu WLu 1fAu 1cLu 1o0u 11zu NAu 3jXu zXu Dq0u 19Xu pcu jz0 cm10 19X0 6tB0 1fbu 3o0u jX0 4vB0 xz0 3Cp0 mmu 1a10 IMu Db0 4c10 uL0 1Nd0 An0 1SN0 uL0 mp0 28L0 iPB0 un0 1SN0 xz0 1zd0 Lz0 1zd0 Rb0 1zd0 On0 1wp0 Rb0 s8p0 1fB0 1ip0 11z0 1ld0 14n0 1o10 11z0 1o10 11z0 1o10 14n0 1ld0 14n0 1ld0 14n0 1o10 11z0 1o10 11z0 1o10 11z0|17e5","America/Toronto|EST EDT EWT EPT|50 40 40 40|01010101010101010101010101010101010101010101012301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-25TR0 1in0 11Wu 1nzu 1fD0 WJ0 1wr0 Nb0 1Ap0 On0 1zd0 On0 1wp0 TX0 1tB0 TX0 1tB0 TX0 1tB0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 4kM0 8x40 iv0 1o10 11z0 1nX0 11z0 1o10 11z0 1o10 1qL0 11D0 1nX0 11B0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|65e5","America/Nassau|LMT EST EDT|59.u 50 40|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2kNuO.u 26XdO.u 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|24e4","America/New_York|EST EDT EWT EPT|50 40 40 40|01010101010101010101010101010101010101010101010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261t0 1nX0 11B0 1nX0 11B0 1qL0 1a10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 RB0 8x40 iv0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|21e6","America/Nipigon|EST EDT EWT EPT|50 40 40 40|010123010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-25TR0 1in0 Rnb0 3je0 8x40 iv0 19yN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|16e2","America/Nome|NST NWT NPT BST BDT YST AKST AKDT|b0 a0 a0 b0 a0 90 90 80|012034343434343434343434343434343456767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-17SX0 8wW0 iB0 Qlb0 52O0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cl0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|38e2","America/Noronha|LMT -02 -01|29.E 20 10|0121212121212121212121212121212121212121|-2glxO.k HdKO.k 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 nsp0 WL0 1tB0 2L0 2pB0 On0|30e2","America/North_Dakota/Beulah|MST MDT MWT MPT CST CDT|70 60 60 60 60 50|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101014545454545454545454545454545454545454545454545454545454|-261r0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Oo0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/North_Dakota/Center|MST MDT MWT MPT CST CDT|70 60 60 60 60 50|010102301010101010101010101010101010101010101010101010101014545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-261r0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14o0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/North_Dakota/New_Salem|MST MDT MWT MPT CST CDT|70 60 60 60 60 50|010102301010101010101010101010101010101010101010101010101010101010101010101010101454545454545454545454545454545454545454545454545454545454545454545454|-261r0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14o0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","America/Ojinaga|LMT MST CST CDT MDT|6V.E 70 60 50 60|0121212323241414141414141414141414141414141414141414141414141414141414141414141414141414141|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 2zQN0 1lb0 14p0 1lb0 14q0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e3","America/Pangnirtung|-00 AST AWT APT ADDT ADT EDT EST CST CDT|0 40 30 30 20 30 40 50 60 50|012314151515151515151515151515151515167676767689767676767676767676767676767676767676767676767676767676767676767676767676767|-1XiM0 PnG0 8x50 iu0 LCL0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1o00 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11C0 1nX0 11A0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|14e2","America/Paramaribo|LMT PMT PMT -0330 -03|3E.E 3E.Q 3E.A 3u 30|01234|-2nDUj.k Wqo0.c qanX.I 1yVXN.o|24e4","America/Phoenix|MST MDT MWT|70 60 60|01010202010|-261r0 1nX0 11B0 1nX0 SgN0 4Al1 Ap0 1db0 SWqX 1cL0|42e5","America/Port-au-Prince|PPMT EST EDT|4N 50 40|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-28RHb 2FnMb 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14q0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 i6n0 1nX0 11B0 1nX0 d430 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 3iN0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e5","America/Rio_Branco|LMT -05 -04|4v.c 50 40|01212121212121212121212121212121|-2glvs.M HdLs.M 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 NBd0 d5X0|31e4","America/Porto_Velho|LMT -04 -03|4f.A 40 30|012121212121212121212121212121|-2glvI.o HdKI.o 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0|37e4","America/Puerto_Rico|AST AWT APT|40 30 30|0120|-17lU0 7XT0 iu0|24e5","America/Punta_Arenas|SMT -05 -04 -03|4G.K 50 40 30|0102021212121212121232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-2q2jh.e fJAh.e 5knG.K 1Vzh.e jRAG.K 1pbh.e 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 nHX0 op0 blz0 ko0 Qeo0 WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0","America/Rainy_River|CST CDT CWT CPT|60 50 50 50|010123010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-25TQ0 1in0 Rnb0 3je0 8x30 iw0 19yN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|842","America/Rankin_Inlet|-00 CST CDDT CDT EST|0 60 40 50 50|012131313131313131313131313131313131313131313431313131313131313131313131313131313131313131313131313131313131313131313131|-vDc0 keu0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|26e2","America/Recife|LMT -03 -02|2j.A 30 20|0121212121212121212121212121212121212121|-2glxE.o HdLE.o 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 nsp0 WL0 1tB0 2L0 2pB0 On0|33e5","America/Regina|LMT MST MDT MWT MPT CST|6W.A 70 60 60 60 60|012121212121212121212121341212121212121212121212121215|-2AD51.o uHe1.o 1in0 s2L0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 66N0 1cL0 1cN0 19X0 1fB0 1cL0 1fB0 1cL0 1cN0 1cL0 M30 8x20 ix0 1ip0 1cL0 1ip0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 3NB0 1cL0 1cN0|19e4","America/Resolute|-00 CST CDDT CDT EST|0 60 40 50 50|012131313131313131313131313131313131313131313431313131313431313131313131313131313131313131313131313131313131313131313131|-SnA0 GWS0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|229","America/Santarem|LMT -04 -03|3C.M 40 30|0121212121212121212121212121212|-2glwl.c HdLl.c 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 NBd0|21e4","America/Santiago|SMT -05 -04 -03|4G.K 50 40 30|010202121212121212321232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-2q2jh.e fJAh.e 5knG.K 1Vzh.e jRAG.K 1pbh.e 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 nHX0 op0 9Bz0 jb0 1oN0 ko0 Qeo0 WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1zb0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0|62e5","America/Santo_Domingo|SDMT EST EDT -0430 AST|4E 50 40 4u 40|01213131313131414|-1ttjk 1lJMk Mn0 6sp0 Lbu 1Cou yLu 1RAu wLu 1QMu xzu 1Q0u xXu 1PAu 13jB0 e00|29e5","America/Sao_Paulo|LMT -03 -02|36.s 30 20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glwR.w HdKR.w 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 pTd0 PX0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 1C10 Lz0 1Ip0 HX0 1zd0 On0 1HB0 IL0 1wp0 On0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1HB0 FX0|20e6","America/Scoresbysund|LMT -02 -01 +00|1r.Q 20 10 0|0121323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2a5Ww.8 2z5ew.8 1a00 1cK0 1cL0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|452","America/Sitka|PST PWT PPT PDT YST AKST AKDT|80 70 70 70 90 90 80|01203030303030303030303030303030345656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-17T20 8x10 iy0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 co0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|90e2","America/St_Johns|NST NDT NST NDT NWT NPT NDDT|3u.Q 2u.Q 3u 2u 2u 2u 1u|01010101010101010101010101010101010102323232323232324523232323232323232323232323232323232323232323232323232323232323232323232323232323232326232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-28oit.8 14L0 1nB0 1in0 1gm0 Dz0 1JB0 1cL0 1cN0 1cL0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 1cL0 1cN0 1cL0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 1cL0 1fB0 19X0 1fB0 19X0 10O0 eKX.8 19X0 1iq0 WL0 1qN0 WL0 1qN0 WL0 1tB0 TX0 1tB0 WL0 1qN0 WL0 1qN0 7UHu itu 1tB0 WL0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1tB0 WL0 1ld0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14n1 1lb0 14p0 1nW0 11C0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zcX Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|11e4","America/Swift_Current|LMT MST MDT MWT MPT CST|7b.k 70 60 60 60 60|012134121212121212121215|-2AD4M.E uHdM.E 1in0 UGp0 8x20 ix0 1o10 17b0 1ip0 11z0 1o10 11z0 1o10 11z0 isN0 1cL0 3Cp0 1cL0 1cN0 11z0 1qN0 WL0 pMp0|16e3","America/Tegucigalpa|LMT CST CDT|5M.Q 60 50|01212121|-1WGGb.8 2ETcb.8 WL0 1qN0 WL0 GRd0 AL0|11e5","America/Thule|LMT AST ADT|4z.8 40 30|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2a5To.Q 31NBo.Q 1cL0 1cN0 1cL0 1fB0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|656","America/Thunder_Bay|CST EST EWT EPT EDT|60 50 40 40 40|0123141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141|-2q5S0 1iaN0 8x40 iv0 XNB0 1cL0 1cN0 1fz0 1cN0 1cL0 3Cp0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|11e4","America/Vancouver|PST PDT PWT PPT|80 70 70 70|0102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-25TO0 1in0 UGp0 8x10 iy0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e5","America/Whitehorse|YST YDT YWT YPT YDDT PST PDT|90 80 80 80 70 80 70|0101023040565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-25TN0 1in0 1o10 13V0 Ser0 8x00 iz0 LCL0 1fA0 3NA0 vrd0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e3","America/Winnipeg|CST CDT CWT CPT|60 50 50 50|010101023010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aIi0 WL0 3ND0 1in0 Jap0 Rb0 aCN0 8x30 iw0 1tB0 11z0 1ip0 11z0 1o10 11z0 1o10 11z0 1rd0 10L0 1op0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 1cL0 1cN0 11z0 6i10 WL0 6i10 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|66e4","America/Yakutat|YST YWT YPT YDT AKST AKDT|90 80 80 80 90 80|01203030303030303030303030303030304545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-17T10 8x00 iz0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cn0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|642","America/Yellowknife|-00 MST MWT MPT MDDT MDT|0 70 60 60 50 60|012314151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151|-1pdA0 hix0 8x20 ix0 LCL0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|19e3","Antarctica/Casey|-00 +08 +11|0 -80 -b0|01212121|-2q00 1DjS0 T90 40P0 KL0 blz0 3m10|10","Antarctica/Davis|-00 +07 +05|0 -70 -50|01012121|-vyo0 iXt0 alj0 1D7v0 VB0 3Wn0 KN0|70","Antarctica/DumontDUrville|-00 +10|0 -a0|0101|-U0o0 cfq0 bFm0|80","Antarctica/Macquarie|AEST AEDT -00 +11|-a0 -b0 0 -b0|0102010101010101010101010101010101010101010101010101010101010101010101010101010101010101013|-29E80 19X0 4SL0 1ayy0 Lvs0 1cM0 1o00 Rc0 1wo0 Rc0 1wo0 U00 1wo0 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1qM0 WM0 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1wo0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 11A0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 11A0 1o00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1cM0 1cM0 1cM0|1","Antarctica/Mawson|-00 +06 +05|0 -60 -50|012|-CEo0 2fyk0|60","Pacific/Auckland|NZMT NZST NZST NZDT|-bu -cu -c0 -d0|01020202020202020202020202023232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-1GCVu Lz0 1tB0 11zu 1o0u 11zu 1o0u 11zu 1o0u 14nu 1lcu 14nu 1lcu 1lbu 11Au 1nXu 11Au 1nXu 11Au 1nXu 11Au 1nXu 11Au 1qLu WMu 1qLu 11Au 1n1bu IM0 1C00 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1qM0 14o0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1io0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00|14e5","Antarctica/Palmer|-00 -03 -04 -02|0 30 40 20|0121212121213121212121212121212121212121212121212121212121212121212121212121212121|-cao0 nD0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 jsN0 14N0 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0|40","Antarctica/Rothera|-00 -03|0 30|01|gOo0|130","Antarctica/Syowa|-00 +03|0 -30|01|-vs00|20","Antarctica/Troll|-00 +00 +02|0 0 -20|01212121212121212121212121212121212121212121212121212121212121212121|1puo0 hd0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|40","Antarctica/Vostok|-00 +06|0 -60|01|-tjA0|25","Europe/Oslo|CET CEST|-10 -20|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2awM0 Qm0 W6o0 5pf0 WM0 1fA0 1cM0 1cM0 1cM0 1cM0 wJc0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1qM0 WM0 zpc0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|62e4","Asia/Riyadh|LMT +03|-36.Q -30|01|-TvD6.Q|57e5","Asia/Almaty|LMT +05 +06 +07|-57.M -50 -60 -70|012323232323232323232321232323232323232323232323232|-1Pc57.M eUo7.M 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0|15e5","Asia/Amman|LMT EET EEST|-2n.I -20 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1yW2n.I 1HiMn.I KL0 1oN0 11b0 1oN0 11b0 1pd0 1dz0 1cp0 11b0 1op0 11b0 fO10 1db0 1e10 1cL0 1cN0 1cL0 1cN0 1fz0 1pd0 10n0 1ld0 14n0 1hB0 15b0 1ip0 19X0 1cN0 1cL0 1cN0 17b0 1ld0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1So0 y00 1fc0 1dc0 1co0 1dc0 1cM0 1cM0 1cM0 1o00 11A0 1lc0 17c0 1cM0 1cM0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 4bX0 Dd0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0|25e5","Asia/Anadyr|LMT +12 +13 +14 +11|-bN.U -c0 -d0 -e0 -b0|01232121212121212121214121212121212121212121212121212121212141|-1PcbN.U eUnN.U 23CL0 1db0 2q10 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|13e3","Asia/Aqtau|LMT +04 +05 +06|-3l.4 -40 -50 -60|012323232323232323232123232312121212121212121212|-1Pc3l.4 eUnl.4 24PX0 2pX0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|15e4","Asia/Aqtobe|LMT +04 +05 +06|-3M.E -40 -50 -60|0123232323232323232321232323232323232323232323232|-1Pc3M.E eUnM.E 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0|27e4","Asia/Ashgabat|LMT +04 +05 +06|-3R.w -40 -50 -60|0123232323232323232323212|-1Pc3R.w eUnR.w 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0|41e4","Asia/Atyrau|LMT +03 +05 +06 +04|-3r.I -30 -50 -60 -40|01232323232323232323242323232323232324242424242|-1Pc3r.I eUor.I 24PW0 2pX0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 2sp0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0","Asia/Baghdad|BMT +03 +04|-2V.A -30 -40|012121212121212121212121212121212121212121212121212121|-26BeV.A 2ACnV.A 11b0 1cp0 1dz0 1dd0 1db0 1cN0 1cp0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1de0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0|66e5","Asia/Qatar|LMT +04 +03|-3q.8 -40 -30|012|-21Jfq.8 27BXq.8|96e4","Asia/Baku|LMT +03 +04 +05|-3j.o -30 -40 -50|01232323232323232323232123232323232323232323232323232323232323232|-1Pc3j.o 1jUoj.o WCL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 1cM0 9Je0 1o00 11z0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|27e5","Asia/Bangkok|BMT +07|-6G.4 -70|01|-218SG.4|15e6","Asia/Barnaul|LMT +06 +07 +08|-5z -60 -70 -80|0123232323232323232323212323232321212121212121212121212121212121212|-21S5z pCnz 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 p90 LE0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0","Asia/Beirut|EET EEST|-20 -30|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-21aq0 1on0 1410 1db0 19B0 1in0 1ip0 WL0 1lQp0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 11b0 q6N0 En0 1oN0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 11b0 1op0 11b0 dA10 17b0 1iN0 17b0 1iN0 17b0 1iN0 17b0 1vB0 SL0 1mp0 13z0 1iN0 17b0 1iN0 17b0 1jd0 12n0 1a10 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0|22e5","Asia/Bishkek|LMT +05 +06 +07|-4W.o -50 -60 -70|012323232323232323232321212121212121212121212121212|-1Pc4W.o eUnW.o 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2e00 1tX0 17b0 1ip0 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1cPu 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0|87e4","Asia/Brunei|LMT +0730 +08|-7D.E -7u -80|012|-1KITD.E gDc9.E|42e4","Asia/Kolkata|MMT IST +0630|-5l.a -5u -6u|012121|-2zOtl.a 1r2LP.a 1un0 HB0 7zX0|15e6","Asia/Chita|LMT +08 +09 +10|-7x.Q -80 -90 -a0|012323232323232323232321232323232323232323232323232323232323232312|-21Q7x.Q pAnx.Q 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3re0|33e4","Asia/Choibalsan|LMT +07 +08 +10 +09|-7C -70 -80 -a0 -90|0123434343434343434343434343434343434343434343424242|-2APHC 2UkoC cKn0 1da0 1dd0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 6hD0 11z0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 3Db0 h1f0 1cJ0 1cP0 1cJ0|38e3","Asia/Shanghai|CST CDT|-80 -90|010101010101010101010101010|-1c2w0 Rz0 11d0 1wL0 A10 8HX0 1G10 Tz0 1ip0 1jX0 1cN0 11b0 1oN0 aL0 1tU30 Rb0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0|23e6","Asia/Colombo|MMT +0530 +06 +0630|-5j.w -5u -60 -6u|01231321|-2zOtj.w 1rFbN.w 1zzu 7Apu 23dz0 11zu n3cu|22e5","Asia/Dhaka|HMT +0630 +0530 +06 +07|-5R.k -6u -5u -60 -70|0121343|-18LFR.k 1unn.k HB0 m6n0 2kxbu 1i00|16e6","Asia/Damascus|LMT EET EEST|-2p.c -20 -30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-21Jep.c Hep.c 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1xRB0 11X0 1oN0 10L0 1pB0 11b0 1oN0 10L0 1mp0 13X0 1oN0 11b0 1pd0 11b0 1oN0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 Nb0 1AN0 Nb0 bcp0 19X0 1gp0 19X0 3ld0 1xX0 Vd0 1Bz0 Sp0 1vX0 10p0 1dz0 1cN0 1cL0 1db0 1db0 1g10 1an0 1ap0 1db0 1fd0 1db0 1cN0 1db0 1dd0 1db0 1cp0 1dz0 1c10 1dX0 1cN0 1db0 1dd0 1db0 1cN0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1db0 1cN0 1db0 1cN0 19z0 1fB0 1qL0 11B0 1on0 Wp0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0|26e5","Asia/Dili|LMT +08 +09|-8m.k -80 -90|01212|-2le8m.k 1dnXm.k 1nfA0 Xld0|19e4","Asia/Dubai|LMT +04|-3F.c -40|01|-21JfF.c|39e5","Asia/Dushanbe|LMT +05 +06 +07|-4z.c -50 -60 -70|012323232323232323232321|-1Pc4z.c eUnz.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2hB0|76e4","Asia/Famagusta|LMT EET EEST +03|-2f.M -20 -30 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212312121212121212121212121212121212121212121|-1Vc2f.M 2a3cf.M 1cL0 1qp0 Xz0 19B0 19X0 1fB0 1db0 1cp0 1cL0 1fB0 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1o30 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 15U0 2Ks0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00","Asia/Gaza|EET EEST IST IDT|-20 -30 -20 -30|0101010101010101010101010101010123232323232323232323232323232320101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-1c2q0 5Rb0 10r0 1px0 10N0 1pz0 16p0 1jB0 16p0 1jx0 pBd0 Vz0 1oN0 11b0 1oO0 10N0 1pz0 10N0 1pb0 10N0 1pb0 10N0 1pb0 10N0 1pz0 10N0 1pb0 10N0 1pb0 11d0 1oL0 dW0 hfB0 Db0 1fB0 Rb0 bXd0 gM0 8Q00 IM0 1wM0 11z0 1C10 IL0 1s10 10n0 1o10 WL0 1zd0 On0 1ld0 11z0 1o10 14n0 1o10 14n0 1nd0 12n0 1nd0 Xz0 1q10 12n0 M10 C00 17c0 1io0 17c0 1io0 17c0 1o00 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 17c0 1io0 18N0 1bz0 19z0 1gp0 1610 1iL0 11z0 1o10 14o0 1lA1 SKX 1xd1 MKX 1AN0 1a00 1fA0 1cL0 1cN0 1nX0 1210 1nz0 1220 1qL0 WN0 1qL0 WN0 1qL0 11c0 1oo0 11c0 1rc0 Wo0 1rc0 Wo0 1rc0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1rc0 Wo0 1rc0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1rc0 Wo0 1rc0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1rc0|18e5","Asia/Hebron|EET EEST IST IDT|-20 -30 -20 -30|010101010101010101010101010101012323232323232323232323232323232010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-1c2q0 5Rb0 10r0 1px0 10N0 1pz0 16p0 1jB0 16p0 1jx0 pBd0 Vz0 1oN0 11b0 1oO0 10N0 1pz0 10N0 1pb0 10N0 1pb0 10N0 1pb0 10N0 1pz0 10N0 1pb0 10N0 1pb0 11d0 1oL0 dW0 hfB0 Db0 1fB0 Rb0 bXd0 gM0 8Q00 IM0 1wM0 11z0 1C10 IL0 1s10 10n0 1o10 WL0 1zd0 On0 1ld0 11z0 1o10 14n0 1o10 14n0 1nd0 12n0 1nd0 Xz0 1q10 12n0 M10 C00 17c0 1io0 17c0 1io0 17c0 1o00 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 17c0 1io0 18N0 1bz0 19z0 1gp0 1610 1iL0 12L0 1mN0 14o0 1lc0 Tb0 1xd1 MKX bB0 cn0 1cN0 1a00 1fA0 1cL0 1cN0 1nX0 1210 1nz0 1220 1qL0 WN0 1qL0 WN0 1qL0 11c0 1oo0 11c0 1rc0 Wo0 1rc0 Wo0 1rc0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1rc0 Wo0 1rc0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1rc0 Wo0 1rc0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1rc0|25e4","Asia/Ho_Chi_Minh|LMT PLMT +07 +08 +09|-76.E -76.u -70 -80 -90|0123423232|-2yC76.E bK00.a 1h7b6.u 5lz0 18o0 3Oq0 k5b0 aW00 BAM0|90e5","Asia/Hong_Kong|LMT HKT HKST HKWT JST|-7A.G -80 -90 -8u -90|0123412121212121212121212121212121212121212121212121212121212121212121|-2CFH0 1taO0 Hc0 xUu 9tBu 11z0 1tDu Rc0 1wo0 11A0 1cM0 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1nX0 U10 1tz0 U10 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 U10 1tz0 U10 1wn0 Rd0 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 17d0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 s10 1Vz0 1cN0 1cL0 1cN0 1cL0 6fd0 14n0|73e5","Asia/Hovd|LMT +06 +07 +08|-66.A -60 -70 -80|012323232323232323232323232323232323232323232323232|-2APG6.A 2Uko6.A cKn0 1db0 1dd0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 6hD0 11z0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 kEp0 1cJ0 1cP0 1cJ0|81e3","Asia/Irkutsk|IMT +07 +08 +09|-6V.5 -70 -80 -90|01232323232323232323232123232323232323232323232323232323232323232|-21zGV.5 pjXV.5 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|60e4","Europe/Istanbul|IMT EET EEST +03 +04|-1U.U -20 -30 -30 -40|0121212121212121212121212121212121212121212121234312121212121212121212121212121212121212121212121212121212121212123|-2ogNU.U dzzU.U 11b0 8tB0 1on0 1410 1db0 19B0 1in0 3Rd0 Un0 1oN0 11b0 zSN0 CL0 mp0 1Vz0 1gN0 8yn0 1yp0 ML0 1kp0 17b0 1ip0 17b0 1fB0 19X0 1ip0 19X0 1ip0 17b0 qdB0 38L0 1jd0 Tz0 l6O0 11A0 WN0 1qL0 TB0 1tX0 U10 1tz0 11B0 1in0 17d0 z90 cne0 pb0 2Cp0 1800 14o0 1dc0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1a00 1fA0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WO0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 Xc0 1qo0 WM0 1qM0 11A0 1o00 1200 1nA0 11A0 1tA0 U00 15w0|13e6","Asia/Jakarta|BMT +0720 +0730 +09 +08 WIB|-77.c -7k -7u -90 -80 -70|01232425|-1Q0Tk luM0 mPzO 8vWu 6kpu 4PXu xhcu|31e6","Asia/Jayapura|LMT +09 +0930 WIT|-9m.M -90 -9u -90|0123|-1uu9m.M sMMm.M L4nu|26e4","Asia/Jerusalem|JMT IST IDT IDDT|-2k.E -20 -30 -40|012121212121321212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-26Bek.E SyMk.E 5Rb0 10r0 1px0 10N0 1pz0 16p0 1jB0 16p0 1jx0 3LB0 Em0 or0 1cn0 1dB0 16n0 10O0 1ja0 1tC0 14o0 1cM0 1a00 11A0 1Na0 An0 1MP0 AJ0 1Kp0 LC0 1oo0 Wl0 EQN0 Db0 1fB0 Rb0 bXd0 gM0 8Q00 IM0 1wM0 11z0 1C10 IL0 1s10 10n0 1o10 WL0 1zd0 On0 1ld0 11z0 1o10 14n0 1o10 14n0 1nd0 12n0 1nd0 Xz0 1q10 12n0 1hB0 1dX0 1ep0 1aL0 1eN0 17X0 1nf0 11z0 1tB0 19W0 1e10 17b0 1ep0 1gL0 18N0 1fz0 1eN0 17b0 1gq0 1gn0 19d0 1dz0 1c10 17X0 1hB0 1gn0 19d0 1dz0 1c10 17X0 1kp0 1dz0 1c10 1aL0 1eN0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0|81e4","Asia/Kabul|+04 +0430|-40 -4u|01|-10Qs0|46e5","Asia/Kamchatka|LMT +11 +12 +13|-ay.A -b0 -c0 -d0|012323232323232323232321232323232323232323232323232323232323212|-1SLKy.A ivXy.A 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|18e4","Asia/Karachi|LMT +0530 +0630 +05 PKT PKST|-4s.c -5u -6u -50 -50 -60|012134545454|-2xoss.c 1qOKW.c 7zX0 eup0 LqMu 1fy00 1cL0 dK10 11b0 1610 1jX0|24e6","Asia/Urumqi|LMT +06|-5O.k -60|01|-1GgtO.k|32e5","Asia/Kathmandu|LMT +0530 +0545|-5F.g -5u -5J|012|-21JhF.g 2EGMb.g|12e5","Asia/Khandyga|LMT +08 +09 +10 +11|-92.d -80 -90 -a0 -b0|0123232323232323232323212323232323232323232323232343434343434343432|-21Q92.d pAp2.d 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 qK0 yN0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 17V0 7zD0|66e2","Asia/Krasnoyarsk|LMT +06 +07 +08|-6b.q -60 -70 -80|01232323232323232323232123232323232323232323232323232323232323232|-21Hib.q prAb.q 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|10e5","Asia/Kuala_Lumpur|SMT +07 +0720 +0730 +09 +08|-6T.p -70 -7k -7u -90 -80|0123435|-2Bg6T.p 17anT.p l5XE 17bO 8Fyu 1so1u|71e5","Asia/Kuching|LMT +0730 +08 +0820 +09|-7l.k -7u -80 -8k -90|0123232323232323242|-1KITl.k gDbP.k 6ynu AnE 1O0k AnE 1NAk AnE 1NAk AnE 1NAk AnE 1O0k AnE 1NAk AnE pAk 8Fz0|13e4","Asia/Macau|LMT CST +09 +10 CDT|-7y.a -80 -90 -a0 -90|012323214141414141414141414141414141414141414141414141414141414141414141|-2CFHy.a 1uqKy.a PX0 1kn0 15B0 11b0 4Qq0 1oM0 11c0 1ko0 1u00 11A0 1cM0 11c0 1o00 11A0 1o00 11A0 1oo0 1400 1o00 11A0 1o00 U00 1tA0 U00 1wo0 Rc0 1wru U10 1tz0 U10 1tz0 U10 1tz0 U10 1wn0 Rd0 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 17d0 1cK0 1cO0 1cK0 1cO0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 s10 1Vz0 1cN0 1cL0 1cN0 1cL0 6fd0 14n0|57e4","Asia/Magadan|LMT +10 +11 +12|-a3.c -a0 -b0 -c0|012323232323232323232321232323232323232323232323232323232323232312|-1Pca3.c eUo3.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3Cq0|95e3","Asia/Makassar|LMT MMT +08 +09 WITA|-7V.A -7V.A -80 -90 -80|01234|-21JjV.A vfc0 myLV.A 8ML0|15e5","Asia/Manila|PST PDT JST|-80 -90 -90|010201010|-1kJI0 AL0 cK10 65X0 mXB0 vX0 VK10 1db0|24e6","Asia/Nicosia|LMT EET EEST|-2d.s -20 -30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1Vc2d.s 2a3cd.s 1cL0 1qp0 Xz0 19B0 19X0 1fB0 1db0 1cp0 1cL0 1fB0 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1o30 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|32e4","Asia/Novokuznetsk|LMT +06 +07 +08|-5M.M -60 -70 -80|012323232323232323232321232323232323232323232323232323232323212|-1PctM.M eULM.M 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|55e4","Asia/Novosibirsk|LMT +06 +07 +08|-5v.E -60 -70 -80|0123232323232323232323212323212121212121212121212121212121212121212|-21Qnv.E pAFv.E 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 ml0 Os0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 4eN0|15e5","Asia/Omsk|LMT +05 +06 +07|-4R.u -50 -60 -70|01232323232323232323232123232323232323232323232323232323232323232|-224sR.u pMLR.u 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|12e5","Asia/Oral|LMT +03 +05 +06 +04|-3p.o -30 -50 -60 -40|01232323232323232424242424242424242424242424242|-1Pc3p.o eUop.o 23CK0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 1cM0 1cM0 IM0 1EM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|27e4","Asia/Pontianak|LMT PMT +0730 +09 +08 WITA WIB|-7h.k -7h.k -7u -90 -80 -80 -70|012324256|-2ua7h.k XE00 munL.k 8Rau 6kpu 4PXu xhcu Wqnu|23e4","Asia/Pyongyang|LMT KST JST KST|-8n -8u -90 -90|012313|-2um8n 97XR 1lTzu 2Onc0 6BA0|29e5","Asia/Qostanay|LMT +04 +05 +06|-4e.s -40 -50 -60|012323232323232323232123232323232323232323232323|-1Pc4e.s eUoe.s 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0","Asia/Qyzylorda|LMT +04 +05 +06|-4l.Q -40 -50 -60|01232323232323232323232323232323232323232323232|-1Pc4l.Q eUol.Q 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 3ao0 1EM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 zQl0|73e4","Asia/Rangoon|RMT +0630 +09|-6o.L -6u -90|0121|-21Jio.L SmnS.L 7j9u|48e5","Asia/Sakhalin|LMT +09 +11 +12 +10|-9u.M -90 -b0 -c0 -a0|01232323232323232323232423232323232424242424242424242424242424242|-2AGVu.M 1BoMu.M 1qFa0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 2pB0 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|58e4","Asia/Samarkand|LMT +04 +05 +06|-4r.R -40 -50 -60|01232323232323232323232|-1Pc4r.R eUor.R 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0|36e4","Asia/Seoul|LMT KST JST KST KDT KDT|-8r.Q -8u -90 -90 -a0 -9u|012343434343151515151515134343|-2um8r.Q 97XV.Q 1m1zu 6CM0 Fz0 1kN0 14n0 1kN0 14L0 1zd0 On0 69B0 2I0u OL0 1FB0 Rb0 1qN0 TX0 1tB0 TX0 1tB0 TX0 1tB0 TX0 2ap0 12FBu 11A0 1o00 11A0|23e6","Asia/Srednekolymsk|LMT +10 +11 +12|-ae.Q -a0 -b0 -c0|01232323232323232323232123232323232323232323232323232323232323232|-1Pcae.Q eUoe.Q 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|35e2","Asia/Taipei|CST JST CDT|-80 -90 -90|01020202020202020202020202020202020202020|-1iw80 joM0 1yo0 Tz0 1ip0 1jX0 1cN0 11b0 1oN0 11b0 1oN0 11b0 1oN0 11b0 10N0 1BX0 10p0 1pz0 10p0 1pz0 10p0 1db0 1dd0 1db0 1cN0 1db0 1cN0 1db0 1cN0 1db0 1BB0 ML0 1Bd0 ML0 uq10 1db0 1cN0 1db0 97B0 AL0|74e5","Asia/Tashkent|LMT +05 +06 +07|-4B.b -50 -60 -70|012323232323232323232321|-1Pc4B.b eUnB.b 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0|23e5","Asia/Tbilisi|TBMT +03 +04 +05|-2X.b -30 -40 -50|0123232323232323232323212121232323232323232323212|-1Pc2X.b 1jUnX.b WCL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 1cK0 1cL0 1cN0 1cL0 1cN0 2pz0 1cL0 1fB0 3Nz0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 An0 Os0 WM0|11e5","Asia/Tehran|LMT TMT +0330 +04 +05 +0430|-3p.I -3p.I -3u -40 -50 -4u|01234325252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252|-2btDp.I 1d3c0 1huLT.I TXu 1pz0 sN0 vAu 1cL0 1dB0 1en0 pNB0 UL0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 64p0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0|14e6","Asia/Thimphu|LMT +0530 +06|-5W.A -5u -60|012|-Su5W.A 1BGMs.A|79e3","Asia/Tokyo|JST JDT|-90 -a0|010101010|-QJJ0 Rc0 1lc0 14o0 1zc0 Oo0 1zc0 Oo0|38e6","Asia/Tomsk|LMT +06 +07 +08|-5D.P -60 -70 -80|0123232323232323232323212323232323232323232323212121212121212121212|-21NhD.P pxzD.P 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 co0 1bB0 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3Qp0|10e5","Asia/Ulaanbaatar|LMT +07 +08 +09|-77.w -70 -80 -90|012323232323232323232323232323232323232323232323232|-2APH7.w 2Uko7.w cKn0 1db0 1dd0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 6hD0 11z0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 kEp0 1cJ0 1cP0 1cJ0|12e5","Asia/Ust-Nera|LMT +08 +09 +12 +11 +10|-9w.S -80 -90 -c0 -b0 -a0|012343434343434343434345434343434343434343434343434343434343434345|-21Q9w.S pApw.S 23CL0 1d90 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 17V0 7zD0|65e2","Asia/Vladivostok|LMT +09 +10 +11|-8L.v -90 -a0 -b0|01232323232323232323232123232323232323232323232323232323232323232|-1SJIL.v itXL.v 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|60e4","Asia/Yakutsk|LMT +08 +09 +10|-8C.W -80 -90 -a0|01232323232323232323232123232323232323232323232323232323232323232|-21Q8C.W pAoC.W 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|28e4","Asia/Yekaterinburg|LMT PMT +04 +05 +06|-42.x -3J.5 -40 -50 -60|012343434343434343434343234343434343434343434343434343434343434343|-2ag42.x 7mQh.s qBvJ.5 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|14e5","Asia/Yerevan|LMT +03 +04 +05|-2W -30 -40 -50|0123232323232323232323212121212323232323232323232323232323232|-1Pc2W 1jUnW WCL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 4RX0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0|13e5","Atlantic/Azores|HMT -02 -01 +00 WET|1S.w 20 10 0 0|01212121212121212121212121212121212121212121232123212321232121212121212121212121212121212121212121232323232323232323232323232323234323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2ldW0 aPX0 Sp0 LX0 1vc0 Tc0 1uM0 SM0 1vc0 Tc0 1vc0 SM0 1vc0 6600 1co0 3E00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1tA0 1cM0 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 3Co0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 qIl0 1cM0 1fA0 1cM0 1cM0 1cN0 1cL0 1cN0 1cM0 1cM0 1cM0 1cM0 1cN0 1cL0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cL0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|25e4","Atlantic/Bermuda|LMT AST ADT|4j.i 40 30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1BnRE.G 1LTbE.G 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|65e3","Atlantic/Canary|LMT -01 WET WEST|11.A 10 0 -10|01232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-1UtaW.o XPAW.o 1lAK0 1a10 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|54e4","Atlantic/Cape_Verde|LMT -02 -01|1y.4 20 10|01212|-2ldW0 1eEo0 7zX0 1djf0|50e4","Atlantic/Faroe|LMT WET WEST|r.4 0 -10|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2uSnw.U 2Wgow.U 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|49e3","Atlantic/Madeira|FMT -01 +00 +01 WET WEST|17.A 10 0 -10 0 -10|01212121212121212121212121212121212121212121232123212321232121212121212121212121212121212121212121454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-2ldX0 aPX0 Sp0 LX0 1vc0 Tc0 1uM0 SM0 1vc0 Tc0 1vc0 SM0 1vc0 6600 1co0 3E00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1tA0 1cM0 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 3Co0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 qIl0 1cM0 1fA0 1cM0 1cM0 1cN0 1cL0 1cN0 1cM0 1cM0 1cM0 1cM0 1cN0 1cL0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|27e4","Atlantic/Reykjavik|LMT -01 +00 GMT|1s 10 0 0|012121212121212121212121212121212121212121212121212121212121212121213|-2uWmw mfaw 1Bd0 ML0 1LB0 Cn0 1LB0 3fX0 C10 HrX0 1cO0 LB0 1EL0 LA0 1C00 Oo0 1wo0 Rc0 1wo0 Rc0 1wo0 Rc0 1zc0 Oo0 1zc0 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1lc0 14o0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 14o0|12e4","Atlantic/South_Georgia|-02|20|0||30","Atlantic/Stanley|SMT -04 -03 -02|3P.o 40 30 20|012121212121212323212121212121212121212121212121212121212121212121212|-2kJw8.A 12bA8.A 19X0 1fB0 19X0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1fB0 Cn0 1Cc10 WL0 1qL0 U10 1tz0 2mN0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1tz0 U10 1tz0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1tz0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qN0 U10 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 U10 1tz0 U10 1tz0 U10 1wn0 U10 1tz0 U10 1tz0 U10|21e2","Australia/Sydney|AEST AEDT|-a0 -b0|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-293lX xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 14o0 1o00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1tA0 WM0 1tA0 U00 1tA0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 11A0 1o00 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|40e5","Australia/Adelaide|ACST ACDT|-9u -au|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-293lt xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 Oo0 1zc0 WM0 1qM0 Rc0 1zc0 U00 1tA0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|11e5","Australia/Brisbane|AEST AEDT|-a0 -b0|01010101010101010|-293lX xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 H1A0 Oo0 1zc0 Oo0 1zc0 Oo0|20e5","Australia/Broken_Hill|ACST ACDT|-9u -au|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-293lt xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 14o0 1o00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1tA0 WM0 1tA0 U00 1tA0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|18e3","Australia/Currie|AEST AEDT|-a0 -b0|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-29E80 19X0 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1qM0 WM0 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1wo0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 11A0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 11A0 1o00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|746","Australia/Darwin|ACST ACDT|-9u -au|010101010|-293lt xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0|12e4","Australia/Eucla|+0845 +0945|-8J -9J|0101010101010101010|-293kI xcX 10jd0 yL0 1cN0 1cL0 1gSp0 Oo0 l5A0 Oo0 iJA0 G00 zU00 IM0 1qM0 11A0 1o00 11A0|368","Australia/Hobart|AEST AEDT|-a0 -b0|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-29E80 19X0 10jd0 yL0 1cN0 1cL0 1fB0 19X0 VfB0 1cM0 1o00 Rc0 1wo0 Rc0 1wo0 U00 1wo0 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1qM0 WM0 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1wo0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 11A0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 11A0 1o00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|21e4","Australia/Lord_Howe|AEST +1030 +1130 +11|-a0 -au -bu -b0|0121212121313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313|raC0 1zdu Rb0 1zd0 On0 1zd0 On0 1zd0 On0 1zd0 TXu 1qMu WLu 1tAu WLu 1tAu TXu 1tAu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1zcu Onu 1zcu Onu 1zcu 11zu 1o0u 11zu 1o0u 11zu 1o0u 11zu 1qMu WLu 11Au 1nXu 1qMu 11zu 1o0u 11zu 1o0u 11zu 1qMu WLu 1qMu 11zu 1o0u WLu 1qMu 14nu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu|347","Australia/Lindeman|AEST AEDT|-a0 -b0|010101010101010101010|-293lX xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 H1A0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0|10","Australia/Melbourne|AEST AEDT|-a0 -b0|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-293lX xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1qM0 11A0 1tA0 U00 1tA0 U00 1tA0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 11A0 1o00 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|39e5","Australia/Perth|AWST AWDT|-80 -90|0101010101010101010|-293jX xcX 10jd0 yL0 1cN0 1cL0 1gSp0 Oo0 l5A0 Oo0 iJA0 G00 zU00 IM0 1qM0 11A0 1o00 11A0|18e5","CET|CET CEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 16M0 1gMM0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00","Pacific/Easter|EMT -07 -06 -05|7h.s 70 60 50|012121212121212121212121212123232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-1uSgG.w 1s4IG.w WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 2pA0 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1zb0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0|30e2","CST6CDT|CST CDT CWT CPT|60 50 50 50|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","EET|EET EEST|-20 -30|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|hDB0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00","Europe/Dublin|DMT IST GMT BST IST|p.l -y.D 0 -10 -10|01232323232324242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242|-2ax9y.D Rc0 1fzy.D 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 g600 14o0 1wo0 17c0 1io0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1a00 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1tA0 IM0 90o0 U00 1tA0 U00 1tA0 U00 1tA0 U00 1tA0 WM0 1qM0 WM0 1qM0 WM0 1tA0 U00 1tA0 U00 1tA0 11z0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","EST|EST|50|0|","EST5EDT|EST EDT EWT EPT|50 40 40 40|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261t0 1nX0 11B0 1nX0 SgN0 8x40 iv0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","Etc/GMT-0|GMT|0|0|","Etc/GMT-1|+01|-10|0|","Pacific/Port_Moresby|+10|-a0|0||25e4","Etc/GMT-11|+11|-b0|0|","Pacific/Tarawa|+12|-c0|0||29e3","Etc/GMT-13|+13|-d0|0|","Etc/GMT-14|+14|-e0|0|","Etc/GMT-2|+02|-20|0|","Etc/GMT-3|+03|-30|0|","Etc/GMT-4|+04|-40|0|","Etc/GMT-5|+05|-50|0|","Etc/GMT-6|+06|-60|0|","Indian/Christmas|+07|-70|0||21e2","Etc/GMT-8|+08|-80|0|","Pacific/Palau|+09|-90|0||21e3","Etc/GMT+1|-01|10|0|","Etc/GMT+10|-10|a0|0|","Etc/GMT+11|-11|b0|0|","Etc/GMT+12|-12|c0|0|","Etc/GMT+3|-03|30|0|","Etc/GMT+4|-04|40|0|","Etc/GMT+5|-05|50|0|","Etc/GMT+6|-06|60|0|","Etc/GMT+7|-07|70|0|","Etc/GMT+8|-08|80|0|","Etc/GMT+9|-09|90|0|","Etc/UTC|UTC|0|0|","Europe/Amsterdam|AMT NST +0120 +0020 CEST CET|-j.w -1j.w -1k -k -20 -10|010101010101010101010101010101010101010101012323234545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545|-2aFcj.w 11b0 1iP0 11A0 1io0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1co0 1io0 1yo0 Pc0 1a00 1fA0 1Bc0 Mo0 1tc0 Uo0 1tA0 U00 1uo0 W00 1s00 VA0 1so0 Vc0 1sM0 UM0 1wo0 Rc0 1u00 Wo0 1rA0 W00 1s00 VA0 1sM0 UM0 1w00 fV0 BCX.w 1tA0 U00 1u00 Wo0 1sm0 601k WM0 1fA0 1cM0 1cM0 1cM0 16M0 1gMM0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|16e5","Europe/Andorra|WET CET CEST|0 -10 -20|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-UBA0 1xIN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|79e3","Europe/Astrakhan|LMT +03 +04 +05|-3c.c -30 -40 -50|012323232323232323212121212121212121212121212121212121212121212|-1Pcrc.c eUMc.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|10e5","Europe/Athens|AMT EET EEST CEST CET|-1y.Q -20 -30 -20 -10|012123434121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2a61x.Q CNbx.Q mn0 kU10 9b0 3Es0 Xa0 1fb0 1dd0 k3X0 Nz0 SCp0 1vc0 SO0 1cM0 1a00 1ao0 1fc0 1a10 1fG0 1cg0 1dX0 1bX0 1cQ0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|35e5","Europe/London|GMT BST BDST|0 -10 -20|0101010101010101010101010101010101010101010101010121212121210101210101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2axa0 Rc0 1fA0 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 2Rz0 Dc0 1zc0 Oo0 1zc0 Rc0 1wo0 17c0 1iM0 FA0 xB0 1fA0 1a00 14o0 bb0 LA0 xB0 Rc0 1wo0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1a00 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1tA0 IM0 90o0 U00 1tA0 U00 1tA0 U00 1tA0 U00 1tA0 WM0 1qM0 WM0 1qM0 WM0 1tA0 U00 1tA0 U00 1tA0 11z0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|10e6","Europe/Belgrade|CET CEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-19RC0 3IP0 WM0 1fA0 1cM0 1cM0 1rc0 Qo0 1vmo0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","Europe/Berlin|CET CEST CEMT|-10 -20 -30|01010101010101210101210101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 kL0 Nc0 m10 WM0 1ao0 1cp0 dX0 jz0 Dd0 1io0 17c0 1fA0 1a00 1ehA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|41e5","Europe/Prague|CET CEST GMT|-10 -20 0|01010101010101010201010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 1cM0 1qM0 11c0 mp0 xA0 mn0 17c0 1io0 17c0 1fc0 1ao0 1bNc0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|13e5","Europe/Brussels|WET CET CEST WEST|0 -10 -20 -10|0121212103030303030303030303030303030303030303030303212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2ehc0 3zX0 11c0 1iO0 11A0 1o00 11A0 my0 Ic0 1qM0 Rc0 1EM0 UM0 1u00 10o0 1io0 1io0 17c0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a30 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 y00 5Wn0 WM0 1fA0 1cM0 16M0 1iM0 16M0 1C00 Uo0 1eeo0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|21e5","Europe/Bucharest|BMT EET EEST|-1I.o -20 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1xApI.o 20LI.o RA0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Axc0 On0 1fA0 1a10 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cK0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cL0 1cN0 1cL0 1fB0 1nX0 11E0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|19e5","Europe/Budapest|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1ip0 17b0 1op0 1tb0 Q2m0 3Ne0 WM0 1fA0 1cM0 1cM0 1oJ0 1dc0 1030 1fA0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1iM0 1fA0 8Ha0 Rb0 1wN0 Rb0 1BB0 Lz0 1C20 LB0 SNX0 1a10 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|17e5","Europe/Zurich|CET CEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-19Lc0 11A0 1o00 11A0 1xG10 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|38e4","Europe/Chisinau|CMT BMT EET EEST CEST CET MSK MSD|-1T -1I.o -20 -30 -20 -10 -30 -40|012323232323232323234545467676767676767676767323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-26jdT wGMa.A 20LI.o RA0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 27A0 2en0 39g0 WM0 1fA0 1cM0 V90 1t7z0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 gL0 WO0 1cM0 1cM0 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1nX0 11D0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|67e4","Europe/Copenhagen|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2azC0 Tz0 VuO0 60q0 WM0 1fA0 1cM0 1cM0 1cM0 S00 1HA0 Nc0 1C00 Dc0 1Nc0 Ao0 1h5A0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","Europe/Gibraltar|GMT BST BDST CET CEST|0 -10 -20 -10 -20|010101010101010101010101010101010101010101010101012121212121010121010101010101010101034343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-2axa0 Rc0 1fA0 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 2Rz0 Dc0 1zc0 Oo0 1zc0 Rc0 1wo0 17c0 1iM0 FA0 xB0 1fA0 1a00 14o0 bb0 LA0 xB0 Rc0 1wo0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 10Jz0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|30e3","Europe/Helsinki|HMT EET EEST|-1D.N -20 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1WuND.N OULD.N 1dA0 1xGq0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","Europe/Kaliningrad|CET CEST EET EEST MSK MSD +03|-10 -20 -20 -30 -30 -40 -30|01010101010101232454545454545454543232323232323232323232323232323232323232323262|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 390 7A0 1en0 12N0 1pbb0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|44e4","Europe/Kiev|KMT EET MSK CEST CET MSD EEST|-22.4 -20 -30 -20 -10 -40 -30|0123434252525252525252525256161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161|-1Pc22.4 eUo2.4 rnz0 2Hg0 WM0 1fA0 da0 1v4m0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 Db0 3220 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cQ0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|34e5","Europe/Kirov|LMT +03 +04 +05|-3i.M -30 -40 -50|01232323232323232321212121212121212121212121212121212121212121|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|48e4","Europe/Lisbon|LMT WET WEST WEMT CET CEST|A.J 0 -10 -20 -10 -20|012121212121212121212121212121212121212121212321232123212321212121212121212121212121212121212121214121212121212121212121212121212124545454212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2le00 aPX0 Sp0 LX0 1vc0 Tc0 1uM0 SM0 1vc0 Tc0 1vc0 SM0 1vc0 6600 1co0 3E00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1tA0 1cM0 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 3Co0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 pvy0 1cM0 1cM0 1fA0 1cM0 1cM0 1cN0 1cL0 1cN0 1cM0 1cM0 1cM0 1cM0 1cN0 1cL0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|27e5","Europe/Luxembourg|LMT CET CEST WET WEST WEST WET|-o.A -10 -20 0 -10 -20 -10|0121212134343434343434343434343434343434343434343434565651212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2DG0o.A t6mo.A TB0 1nX0 Up0 1o20 11A0 rW0 CM0 1qP0 R90 1EO0 UK0 1u20 10m0 1ip0 1in0 17e0 19W0 1fB0 1db0 1cp0 1in0 17d0 1fz0 1a10 1in0 1a10 1in0 17f0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 vA0 60L0 WM0 1fA0 1cM0 17c0 1io0 16M0 1C00 Uo0 1eeo0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|54e4","Europe/Madrid|WET WEST WEMT CET CEST|0 -10 -20 -10 -20|010101010101010101210343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-25Td0 19B0 1cL0 1dd0 b1z0 18p0 3HX0 17d0 1fz0 1a10 1io0 1a00 1in0 17d0 iIn0 Hd0 1cL0 bb0 1200 2s20 14n0 5aL0 Mp0 1vz0 17d0 1in0 17d0 1in0 17d0 1in0 17d0 6hX0 11B0 XHX0 1a10 1fz0 1a10 19X0 1cN0 1fz0 1a10 1fC0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|62e5","Europe/Malta|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2arB0 Lz0 1cN0 1db0 1410 1on0 Wp0 1qL0 17d0 1cL0 M3B0 5M20 WM0 1fA0 1co0 17c0 1iM0 16m0 1de0 1lc0 14m0 1lc0 WO0 1qM0 GTW0 On0 1C10 LA0 1C00 LA0 1EM0 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1co0 1cM0 1lA0 Xc0 1qq0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1iN0 19z0 1fB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|42e4","Europe/Minsk|MMT EET MSK CEST CET MSD EEST +03|-1O -20 -30 -20 -10 -40 -30 -30|01234343252525252525252525261616161616161616161616161616161616161617|-1Pc1O eUnO qNX0 3gQ0 WM0 1fA0 1cM0 Al0 1tsn0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 3Fc0 1cN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0|19e5","Europe/Monaco|PMT WET WEST WEMT CET CEST|-9.l 0 -10 -20 -10 -20|01212121212121212121212121212121212121212121212121232323232345454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-2nco9.l cNb9.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 1u00 10o0 1io0 1wo0 Rc0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Df0 2RV0 11z0 11B0 1ze0 WM0 1fA0 1cM0 1fa0 1aq0 16M0 1ekn0 1cL0 1fC0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|38e3","Europe/Moscow|MMT MMT MST MDST MSD MSK +05 EET EEST MSK|-2u.h -2v.j -3v.j -4v.j -40 -30 -50 -20 -30 -40|012132345464575454545454545454545458754545454545454545454545454545454545454595|-2ag2u.h 2pyW.W 1bA0 11X0 GN0 1Hb0 c4v.j ik0 3DA0 dz0 15A0 c10 2q10 iM10 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cN0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|16e6","Europe/Paris|PMT WET WEST CEST CET WEMT|-9.l 0 -10 -20 -10 -20|0121212121212121212121212121212121212121212121212123434352543434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434|-2nco8.l cNb8.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 1u00 10o0 1io0 1wo0 Rc0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Df0 Ik0 5M30 WM0 1fA0 1cM0 Vx0 hB0 1aq0 16M0 1ekn0 1cL0 1fC0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|11e6","Europe/Riga|RMT LST EET MSK CEST CET MSD EEST|-1A.y -2A.y -20 -30 -20 -10 -40 -30|010102345454536363636363636363727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272|-25TzA.y 11A0 1iM0 ko0 gWm0 yDXA.y 2bX0 3fE0 WM0 1fA0 1cM0 1cM0 4m0 1sLy0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cN0 1o00 11A0 1o00 11A0 1qM0 3oo0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|64e4","Europe/Rome|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2arB0 Lz0 1cN0 1db0 1410 1on0 Wp0 1qL0 17d0 1cL0 M3B0 5M20 WM0 1fA0 1cM0 16M0 1iM0 16m0 1de0 1lc0 14m0 1lc0 WO0 1qM0 GTW0 On0 1C10 LA0 1C00 LA0 1EM0 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1C00 LA0 1zc0 Oo0 1C00 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1zc0 Oo0 1fC0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|39e5","Europe/Samara|LMT +03 +04 +05|-3k.k -30 -40 -50|0123232323232323232121232323232323232323232323232323232323212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 2y10 14m0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|12e5","Europe/Saratov|LMT +03 +04 +05|-34.i -30 -40 -50|012323232323232321212121212121212121212121212121212121212121212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1cM0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 5810","Europe/Simferopol|SMT EET MSK CEST CET MSD EEST MSK|-2g -20 -30 -20 -10 -40 -30 -40|012343432525252525252525252161616525252616161616161616161616161616161616172|-1Pc2g eUog rEn0 2qs0 WM0 1fA0 1cM0 3V0 1u0L0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Q00 4eL0 1cL0 1cN0 1cL0 1cN0 dX0 WL0 1cN0 1cL0 1fB0 1o30 11B0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11z0 1nW0|33e4","Europe/Sofia|EET CET CEST EEST|-20 -10 -20 -30|01212103030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030|-168L0 WM0 1fA0 1cM0 1cM0 1cN0 1mKH0 1dd0 1fb0 1ap0 1fb0 1a20 1fy0 1a30 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1nX0 11E0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","Europe/Stockholm|CET CEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2azC0 TB0 2yDe0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|15e5","Europe/Tallinn|TMT CET CEST EET MSK MSD EEST|-1D -10 -20 -20 -30 -40 -30|012103421212454545454545454546363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363|-26oND teD 11A0 1Ta0 4rXl KSLD 2FX0 2Jg0 WM0 1fA0 1cM0 18J0 1sTX0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o10 11A0 1qM0 5QM0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|41e4","Europe/Tirane|LMT CET CEST|-1j.k -10 -20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glBj.k 14pcj.k 5LC0 WM0 4M0 1fCK0 10n0 1op0 11z0 1pd0 11z0 1qN0 WL0 1qp0 Xb0 1qp0 Xb0 1qp0 11z0 1lB0 11z0 1qN0 11z0 1iN0 16n0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|42e4","Europe/Ulyanovsk|LMT +03 +04 +05 +02|-3d.A -30 -40 -50 -20|01232323232323232321214121212121212121212121212121212121212121212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|13e5","Europe/Uzhgorod|CET CEST MSK MSD EET EEST|-10 -20 -30 -40 -20 -30|010101023232323232323232320454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-1cqL0 6i00 WM0 1fA0 1cM0 1ml0 1Cp0 1r3W0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Q00 1Nf0 2pw0 1cL0 1cN0 1cL0 1cN0 1cL0 1cQ0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|11e4","Europe/Vienna|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 3KM0 14o0 LA00 6i00 WM0 1fA0 1cM0 1cM0 1cM0 400 2qM0 1ao0 1co0 1cM0 1io0 17c0 1gHa0 19X0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|18e5","Europe/Vilnius|WMT KMT CET EET MSK CEST MSD EEST|-1o -1z.A -10 -20 -30 -20 -40 -30|012324525254646464646464646473737373737373737352537373737373737373737373737373737373737373737373737373737373737373737373|-293do 6ILM.o 1Ooz.A zz0 Mfd0 29W0 3is0 WM0 1fA0 1cM0 LV0 1tgL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11B0 1o00 11A0 1qM0 8io0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|54e4","Europe/Volgograd|LMT +03 +04 +05|-2V.E -30 -40 -50|012323232323232321212121212121212121212121212121212121212121212|-21IqV.E psLV.E 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1cM0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 9Jd0|10e5","Europe/Warsaw|WMT CET CEST EET EEST|-1o -10 -20 -20 -30|012121234312121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2ctdo 1LXo 11d0 1iO0 11A0 1o00 11A0 1on0 11A0 6zy0 HWP0 5IM0 WM0 1fA0 1cM0 1dz0 1mL0 1en0 15B0 1aq0 1nA0 11A0 1io0 17c0 1fA0 1a00 iDX0 LA0 1cM0 1cM0 1C00 Oo0 1cM0 1cM0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1C00 LA0 uso0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|17e5","Europe/Zaporozhye|+0220 EET MSK CEST CET MSD EEST|-2k -20 -30 -20 -10 -40 -30|01234342525252525252525252526161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161|-1Pc2k eUok rdb0 2RE0 WM0 1fA0 8m0 1v9a0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cK0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cQ0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|77e4","HST|HST|a0|0|","Indian/Chagos|LMT +05 +06|-4N.E -50 -60|012|-2xosN.E 3AGLN.E|30e2","Indian/Cocos|+0630|-6u|0||596","Indian/Kerguelen|-00 +05|0 -50|01|-MG00|130","Indian/Mahe|LMT +04|-3F.M -40|01|-2yO3F.M|79e3","Indian/Maldives|MMT +05|-4S -50|01|-olgS|35e4","Indian/Mauritius|LMT +04 +05|-3O -40 -50|012121|-2xorO 34unO 14L0 12kr0 11z0|15e4","Indian/Reunion|LMT +04|-3F.Q -40|01|-2mDDF.Q|84e4","Pacific/Kwajalein|+11 +10 +09 -12 +12|-b0 -a0 -90 c0 -c0|012034|-1kln0 akp0 6Up0 12ry0 Wan0|14e3","MET|MET MEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 16M0 1gMM0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00","MST|MST|70|0|","MST7MDT|MST MDT MWT MPT|70 60 60 60|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261r0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","Pacific/Chatham|+1215 +1245 +1345|-cf -cJ -dJ|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-WqAf 1adef IM0 1C00 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1qM0 14o0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1io0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00|600","Pacific/Apia|LMT -1130 -11 -10 +14 +13|bq.U bu b0 a0 -e0 -d0|01232345454545454545454545454545454545454545454545454545454|-2nDMx.4 1yW03.4 2rRbu 1ff0 1a00 CI0 AQ0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00|37e3","Pacific/Bougainville|+10 +09 +11|-a0 -90 -b0|0102|-16Wy0 7CN0 2MQp0|18e4","Pacific/Chuuk|+10 +09|-a0 -90|01010|-2ewy0 axB0 RVX0 axd0|49e3","Pacific/Efate|LMT +11 +12|-bd.g -b0 -c0|0121212121212121212121|-2l9nd.g 2Szcd.g 1cL0 1oN0 10L0 1fB0 19X0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 Lz0 1Nd0 An0|66e3","Pacific/Enderbury|-12 -11 +13|c0 b0 -d0|012|nIc0 B7X0|1","Pacific/Fakaofo|-11 +13|b0 -d0|01|1Gfn0|483","Pacific/Fiji|LMT +12 +13|-bT.I -c0 -d0|0121212121212121212121212121212121212121212121212121212121212121|-2bUzT.I 3m8NT.I LA0 1EM0 IM0 nJc0 LA0 1o00 Rc0 1wo0 Ao0 1Nc0 Ao0 1Q00 xz0 1SN0 uM0 1SM0 uM0 1VA0 s00 1VA0 s00 1VA0 s00 20o0 pc0 20o0 s00 20o0 pc0 20o0 pc0 20o0 pc0 20o0 pc0 20o0 s00 1VA0 s00 20o0 pc0 20o0 pc0 20o0 pc0 20o0 pc0 20o0 s00 20o0 pc0 20o0 pc0 20o0 pc0 20o0 pc0 20o0 s00 1VA0 s00|88e4","Pacific/Galapagos|LMT -05 -06|5W.o 50 60|01212|-1yVS1.A 2dTz1.A gNd0 rz0|25e3","Pacific/Gambier|LMT -09|8X.M 90|01|-2jof0.c|125","Pacific/Guadalcanal|LMT +11|-aD.M -b0|01|-2joyD.M|11e4","Pacific/Guam|GST +09 GDT ChST|-a0 -90 -b0 -a0|01020202020202020203|-18jK0 6pB0 AhB0 3QL0 g2p0 3p91 WOX rX0 1zd0 Rb0 1wp0 Rb0 5xd0 rX0 5sN0 zb1 1C0X On0 ULb0|17e4","Pacific/Honolulu|HST HDT HWT HPT HST|au 9u 9u 9u a0|0102304|-1thLu 8x0 lef0 8wWu iAu 46p0|37e4","Pacific/Kiritimati|-1040 -10 +14|aE a0 -e0|012|nIaE B7Xk|51e2","Pacific/Kosrae|+11 +09 +10 +12|-b0 -90 -a0 -c0|01021030|-2ewz0 axC0 HBy0 akp0 axd0 WOK0 1bdz0|66e2","Pacific/Majuro|+11 +09 +10 +12|-b0 -90 -a0 -c0|0102103|-2ewz0 axC0 HBy0 akp0 6RB0 12um0|28e3","Pacific/Marquesas|LMT -0930|9i 9u|01|-2joeG|86e2","Pacific/Pago_Pago|LMT SST|bm.M b0|01|-2nDMB.c|37e2","Pacific/Nauru|LMT +1130 +09 +12|-b7.E -bu -90 -c0|01213|-1Xdn7.E QCnB.E 7mqu 1lnbu|10e3","Pacific/Niue|-1120 -1130 -11|bk bu b0|012|-KfME 17y0a|12e2","Pacific/Norfolk|+1112 +1130 +1230 +11 +12|-bc -bu -cu -b0 -c0|012134343434343434343434343434343434343434|-Kgbc W01G Oo0 1COo0 9Jcu 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|25e4","Pacific/Noumea|LMT +11 +12|-b5.M -b0 -c0|01212121|-2l9n5.M 2EqM5.M xX0 1PB0 yn0 HeP0 Ao0|98e3","Pacific/Pitcairn|-0830 -08|8u 80|01|18Vku|56","Pacific/Pohnpei|+11 +09 +10|-b0 -90 -a0|010210|-2ewz0 axC0 HBy0 akp0 axd0|34e3","Pacific/Rarotonga|-1030 -0930 -10|au 9u a0|012121212121212121212121212|lyWu IL0 1zcu Onu 1zcu Onu 1zcu Rbu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1zcu Onu 1zcu Onu 1zcu Onu|13e3","Pacific/Tahiti|LMT -10|9W.g a0|01|-2joe1.I|18e4","Pacific/Tongatapu|+1220 +13 +14|-ck -d0 -e0|0121212121|-1aB0k 2n5dk 15A0 1wo0 xz0 1Q10 xz0 zWN0 s00|75e3","PST8PDT|PST PDT PWT PPT|80 70 70 70|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261q0 1nX0 11B0 1nX0 SgN0 8x10 iy0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0","WET|WET WEST|0 -10|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|hDB0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00"],links:["Africa/Abidjan|Africa/Bamako","Africa/Abidjan|Africa/Banjul","Africa/Abidjan|Africa/Conakry","Africa/Abidjan|Africa/Dakar","Africa/Abidjan|Africa/Freetown","Africa/Abidjan|Africa/Lome","Africa/Abidjan|Africa/Nouakchott","Africa/Abidjan|Africa/Ouagadougou","Africa/Abidjan|Africa/Timbuktu","Africa/Abidjan|Atlantic/St_Helena","Africa/Cairo|Egypt","Africa/Johannesburg|Africa/Maseru","Africa/Johannesburg|Africa/Mbabane","Africa/Lagos|Africa/Bangui","Africa/Lagos|Africa/Brazzaville","Africa/Lagos|Africa/Douala","Africa/Lagos|Africa/Kinshasa","Africa/Lagos|Africa/Libreville","Africa/Lagos|Africa/Luanda","Africa/Lagos|Africa/Malabo","Africa/Lagos|Africa/Niamey","Africa/Lagos|Africa/Porto-Novo","Africa/Maputo|Africa/Blantyre","Africa/Maputo|Africa/Bujumbura","Africa/Maputo|Africa/Gaborone","Africa/Maputo|Africa/Harare","Africa/Maputo|Africa/Kigali","Africa/Maputo|Africa/Lubumbashi","Africa/Maputo|Africa/Lusaka","Africa/Nairobi|Africa/Addis_Ababa","Africa/Nairobi|Africa/Asmara","Africa/Nairobi|Africa/Asmera","Africa/Nairobi|Africa/Dar_es_Salaam","Africa/Nairobi|Africa/Djibouti","Africa/Nairobi|Africa/Kampala","Africa/Nairobi|Africa/Mogadishu","Africa/Nairobi|Indian/Antananarivo","Africa/Nairobi|Indian/Comoro","Africa/Nairobi|Indian/Mayotte","Africa/Tripoli|Libya","America/Adak|America/Atka","America/Adak|US/Aleutian","America/Anchorage|US/Alaska","America/Argentina/Buenos_Aires|America/Buenos_Aires","America/Argentina/Catamarca|America/Argentina/ComodRivadavia","America/Argentina/Catamarca|America/Catamarca","America/Argentina/Cordoba|America/Cordoba","America/Argentina/Cordoba|America/Rosario","America/Argentina/Jujuy|America/Jujuy","America/Argentina/Mendoza|America/Mendoza","America/Atikokan|America/Coral_Harbour","America/Chicago|US/Central","America/Curacao|America/Aruba","America/Curacao|America/Kralendijk","America/Curacao|America/Lower_Princes","America/Denver|America/Shiprock","America/Denver|Navajo","America/Denver|US/Mountain","America/Detroit|US/Michigan","America/Edmonton|Canada/Mountain","America/Fort_Wayne|America/Indiana/Indianapolis","America/Fort_Wayne|America/Indianapolis","America/Fort_Wayne|US/East-Indiana","America/Halifax|Canada/Atlantic","America/Havana|Cuba","America/Indiana/Knox|America/Knox_IN","America/Indiana/Knox|US/Indiana-Starke","America/Jamaica|Jamaica","America/Kentucky/Louisville|America/Louisville","America/Los_Angeles|US/Pacific","America/Los_Angeles|US/Pacific-New","America/Manaus|Brazil/West","America/Mazatlan|Mexico/BajaSur","America/Mexico_City|Mexico/General","America/New_York|US/Eastern","America/Noronha|Brazil/DeNoronha","America/Panama|America/Cayman","America/Phoenix|US/Arizona","America/Port_of_Spain|America/Anguilla","America/Port_of_Spain|America/Antigua","America/Port_of_Spain|America/Dominica","America/Port_of_Spain|America/Grenada","America/Port_of_Spain|America/Guadeloupe","America/Port_of_Spain|America/Marigot","America/Port_of_Spain|America/Montserrat","America/Port_of_Spain|America/St_Barthelemy","America/Port_of_Spain|America/St_Kitts","America/Port_of_Spain|America/St_Lucia","America/Port_of_Spain|America/St_Thomas","America/Port_of_Spain|America/St_Vincent","America/Port_of_Spain|America/Tortola","America/Port_of_Spain|America/Virgin","America/Regina|Canada/Saskatchewan","America/Rio_Branco|America/Porto_Acre","America/Rio_Branco|Brazil/Acre","America/Santiago|Chile/Continental","America/Sao_Paulo|Brazil/East","America/St_Johns|Canada/Newfoundland","America/Tijuana|America/Ensenada","America/Tijuana|America/Santa_Isabel","America/Tijuana|Mexico/BajaNorte","America/Toronto|America/Montreal","America/Toronto|Canada/Eastern","America/Vancouver|Canada/Pacific","America/Whitehorse|Canada/Yukon","America/Winnipeg|Canada/Central","Asia/Ashgabat|Asia/Ashkhabad","Asia/Bangkok|Asia/Phnom_Penh","Asia/Bangkok|Asia/Vientiane","Asia/Dhaka|Asia/Dacca","Asia/Dubai|Asia/Muscat","Asia/Ho_Chi_Minh|Asia/Saigon","Asia/Hong_Kong|Hongkong","Asia/Jerusalem|Asia/Tel_Aviv","Asia/Jerusalem|Israel","Asia/Kathmandu|Asia/Katmandu","Asia/Kolkata|Asia/Calcutta","Asia/Kuala_Lumpur|Asia/Singapore","Asia/Kuala_Lumpur|Singapore","Asia/Macau|Asia/Macao","Asia/Makassar|Asia/Ujung_Pandang","Asia/Nicosia|Europe/Nicosia","Asia/Qatar|Asia/Bahrain","Asia/Rangoon|Asia/Yangon","Asia/Riyadh|Asia/Aden","Asia/Riyadh|Asia/Kuwait","Asia/Seoul|ROK","Asia/Shanghai|Asia/Chongqing","Asia/Shanghai|Asia/Chungking","Asia/Shanghai|Asia/Harbin","Asia/Shanghai|PRC","Asia/Taipei|ROC","Asia/Tehran|Iran","Asia/Thimphu|Asia/Thimbu","Asia/Tokyo|Japan","Asia/Ulaanbaatar|Asia/Ulan_Bator","Asia/Urumqi|Asia/Kashgar","Atlantic/Faroe|Atlantic/Faeroe","Atlantic/Reykjavik|Iceland","Atlantic/South_Georgia|Etc/GMT+2","Australia/Adelaide|Australia/South","Australia/Brisbane|Australia/Queensland","Australia/Broken_Hill|Australia/Yancowinna","Australia/Darwin|Australia/North","Australia/Hobart|Australia/Tasmania","Australia/Lord_Howe|Australia/LHI","Australia/Melbourne|Australia/Victoria","Australia/Perth|Australia/West","Australia/Sydney|Australia/ACT","Australia/Sydney|Australia/Canberra","Australia/Sydney|Australia/NSW","Etc/GMT-0|Etc/GMT","Etc/GMT-0|Etc/GMT+0","Etc/GMT-0|Etc/GMT0","Etc/GMT-0|Etc/Greenwich","Etc/GMT-0|GMT","Etc/GMT-0|GMT+0","Etc/GMT-0|GMT-0","Etc/GMT-0|GMT0","Etc/GMT-0|Greenwich","Etc/UTC|Etc/UCT","Etc/UTC|Etc/Universal","Etc/UTC|Etc/Zulu","Etc/UTC|UCT","Etc/UTC|UTC","Etc/UTC|Universal","Etc/UTC|Zulu","Europe/Belgrade|Europe/Ljubljana","Europe/Belgrade|Europe/Podgorica","Europe/Belgrade|Europe/Sarajevo","Europe/Belgrade|Europe/Skopje","Europe/Belgrade|Europe/Zagreb","Europe/Chisinau|Europe/Tiraspol","Europe/Dublin|Eire","Europe/Helsinki|Europe/Mariehamn","Europe/Istanbul|Asia/Istanbul","Europe/Istanbul|Turkey","Europe/Lisbon|Portugal","Europe/London|Europe/Belfast","Europe/London|Europe/Guernsey","Europe/London|Europe/Isle_of_Man","Europe/London|Europe/Jersey","Europe/London|GB","Europe/London|GB-Eire","Europe/Moscow|W-SU","Europe/Oslo|Arctic/Longyearbyen","Europe/Oslo|Atlantic/Jan_Mayen","Europe/Prague|Europe/Bratislava","Europe/Rome|Europe/San_Marino","Europe/Rome|Europe/Vatican","Europe/Warsaw|Poland","Europe/Zurich|Europe/Busingen","Europe/Zurich|Europe/Vaduz","Indian/Christmas|Etc/GMT-7","Pacific/Auckland|Antarctica/McMurdo","Pacific/Auckland|Antarctica/South_Pole","Pacific/Auckland|NZ","Pacific/Chatham|NZ-CHAT","Pacific/Chuuk|Pacific/Truk","Pacific/Chuuk|Pacific/Yap","Pacific/Easter|Chile/EasterIsland","Pacific/Guam|Pacific/Saipan","Pacific/Honolulu|Pacific/Johnston","Pacific/Honolulu|US/Hawaii","Pacific/Kwajalein|Kwajalein","Pacific/Pago_Pago|Pacific/Midway","Pacific/Pago_Pago|Pacific/Samoa","Pacific/Pago_Pago|US/Samoa","Pacific/Palau|Etc/GMT-9","Pacific/Pohnpei|Pacific/Ponape","Pacific/Port_Moresby|Etc/GMT-10","Pacific/Tarawa|Etc/GMT-12","Pacific/Tarawa|Pacific/Funafuti","Pacific/Tarawa|Pacific/Wake","Pacific/Tarawa|Pacific/Wallis"]}},1077:function(c,M,o){var n,e,a;//! moment-timezone.js +//! version : 0.5.27 +//! Copyright (c) JS Foundation and other contributors +//! license : MIT +//! github.com/moment/moment-timezone +//! moment-timezone.js +//! version : 0.5.27 +//! Copyright (c) JS Foundation and other contributors +//! license : MIT +//! github.com/moment/moment-timezone +!function(i,t){"use strict";"object"==typeof c&&c.exports?c.exports=t(o(201)):(e=[o(201)],void 0===(a="function"==typeof(n=t)?n.apply(M,e):n)||(c.exports=a))}(0,function(c){"use strict";var M,o={},n={},e={},a={};c&&"string"==typeof c.version||m("Moment Timezone requires Moment.js. See https://momentjs.com/timezone/docs/#/use-it/browser/");var i=c.version.split("."),t=+i[0],z=+i[1];function b(c){return c>96?c-87:c>64?c-29:c-48}function A(c){var M=0,o=c.split("."),n=o[0],e=o[1]||"",a=1,i=0,t=1;for(45===c.charCodeAt(0)&&(M=1,t=-1);M3){var M=e[W(c)];if(M)return M;m("Moment Timezone found "+c+" from the Intl api, but did not have that data loaded.")}}catch(c){}var o,n,a,i=function(){var c,M,o,n=(new Date).getFullYear()-2,e=new u(new Date(n,0,1)),a=[e];for(o=1;o<48;o++)(M=new u(new Date(n,o,1))).offset!==e.offset&&(c=f(e,M),a.push(c),a.push(new u(new Date(c.at+6e4)))),e=M;for(o=0;o<4;o++)a.push(new u(new Date(n+o,0,1))),a.push(new u(new Date(n+o,6,1)));return a}(),t=i.length,z=q(i),b=[];for(n=0;n0?b[0].zone.name:void 0}function W(c){return(c||"").toLowerCase().replace(/\//g,"_")}function X(c){var M,n,a,i;for("string"==typeof c&&(c=[c]),M=0;M= 2.6.0. You are using Moment.js "+c.version+". See momentjs.com"),d.prototype={_set:function(c){this.name=c.name,this.abbrs=c.abbrs,this.untils=c.untils,this.offsets=c.offsets,this.population=c.population},_index:function(c){var M,o=+c,n=this.untils;for(M=0;Mn&&S.moveInvalidForward&&(M=n),a0&&(this._z=null),c.apply(this,arguments)}}(C.utcOffset),c.tz.setDefault=function(M){return(t<2||2===t&&z<9)&&m("Moment Timezone setDefault() requires Moment.js >= 2.9.0. You are using Moment.js "+c.version+"."),c.defaultZone=M?h(M):null,c};var E=c.momentProperties;return"[object Array]"===Object.prototype.toString.call(E)?(E.push("_z"),E.push("_a")):E&&(E._z=null),c})},201:function(c,M){!function(o,n){"object"==typeof M&&void 0!==c?c.exports=n():"function"==typeof define&&define.amd?define(n):o.moment=n()}(this,function(){"use strict";var M,o;function n(){return M.apply(null,arguments)}function e(c){return c instanceof Array||"[object Array]"===Object.prototype.toString.call(c)}function a(c){return null!=c&&"[object Object]"===Object.prototype.toString.call(c)}function i(c,M){return Object.prototype.hasOwnProperty.call(c,M)}function t(c){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(c).length;var M;for(M in c)if(i(c,M))return!1;return!0}function z(c){return void 0===c}function b(c){return"number"==typeof c||"[object Number]"===Object.prototype.toString.call(c)}function A(c){return c instanceof Date||"[object Date]"===Object.prototype.toString.call(c)}function p(c,M){var o,n=[];for(o=0;o>>0;for(M=0;M0)for(o=0;o=0?o?"+":"":"-")+Math.pow(10,Math.max(0,e)).toString().substr(1)+n}var g=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,E=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,R={},y={};function D(c,M,o,n){var e=n;"string"==typeof n&&(e=function(){return this[n]()}),c&&(y[c]=e),M&&(y[M[0]]=function(){return _(e.apply(this,arguments),M[1],M[2])}),o&&(y[o]=function(){return this.localeData().ordinal(e.apply(this,arguments),c)})}function w(c){return c.match(/\[[\s\S]/)?c.replace(/^\[|\]$/g,""):c.replace(/\\/g,"")}function v(c,M){return c.isValid()?(M=k(M,c.localeData()),R[M]=R[M]||function(c){var M,o,n=c.match(g);for(M=0,o=n.length;M=0&&E.test(c);)c=c.replace(E,n),E.lastIndex=0,o-=1;return c}var P={};function x(c,M){var o=c.toLowerCase();P[o]=P[o+"s"]=P[M]=c}function U(c){return"string"==typeof c?P[c]||P[c.toLowerCase()]:void 0}function H(c){var M,o,n={};for(o in c)i(c,o)&&(M=U(o))&&(n[M]=c[o]);return n}var Y={};function I(c,M){Y[c]=M}function F(c){return c%4==0&&c%100!=0||c%400==0}function G(c){return c<0?Math.ceil(c)||0:Math.floor(c)}function j(c){var M=+c,o=0;return 0!==M&&isFinite(M)&&(o=G(M)),o}function V(c,M){return function(o){return null!=o?(Q(this,c,o),n.updateOffset(this,M),this):K(this,c)}}function K(c,M){return c.isValid()?c._d["get"+(c._isUTC?"UTC":"")+M]():NaN}function Q(c,M,o){c.isValid()&&!isNaN(o)&&("FullYear"===M&&F(c.year())&&1===c.month()&&29===c.date()?(o=j(o),c._d["set"+(c._isUTC?"UTC":"")+M](o,c.month(),gc(o,c.month()))):c._d["set"+(c._isUTC?"UTC":"")+M](o))}var J,Z=/\d/,$=/\d\d/,cc=/\d{3}/,Mc=/\d{4}/,oc=/[+-]?\d{6}/,nc=/\d\d?/,ec=/\d\d\d\d?/,ac=/\d\d\d\d\d\d?/,ic=/\d{1,3}/,tc=/\d{1,4}/,zc=/[+-]?\d{1,6}/,bc=/\d+/,Ac=/[+-]?\d+/,pc=/Z|[+-]\d\d:?\d\d/gi,rc=/Z|[+-]\d\d(?::?\d\d)?/gi,sc=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i;function dc(c,M,o){J[c]=m(M)?M:function(c,n){return c&&o?o:M}}function uc(c,M){return i(J,c)?J[c](M._strict,M._locale):new RegExp(function(c){return lc(c.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(c,M,o,n,e){return M||o||n||e}))}(c))}function lc(c){return c.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}J={};var fc={};function Oc(c,M){var o,n=M;for("string"==typeof c&&(c=[c]),b(M)&&(n=function(c,o){o[M]=j(c)}),o=0;o68?1900:2e3)};var Uc=V("FullYear",!0);function Hc(c){var M,o;return c<100&&c>=0?((o=Array.prototype.slice.call(arguments))[0]=c+400,M=new Date(Date.UTC.apply(null,o)),isFinite(M.getUTCFullYear())&&M.setUTCFullYear(c)):M=new Date(Date.UTC.apply(null,arguments)),M}function Yc(c,M,o){var n=7+M-o;return-((7+Hc(c,0,n).getUTCDay()-M)%7)+n-1}function Ic(c,M,o,n,e){var a,i,t=1+7*(M-1)+(7+o-n)%7+Yc(c,n,e);return t<=0?i=xc(a=c-1)+t:t>xc(c)?(a=c+1,i=t-xc(c)):(a=c,i=t),{year:a,dayOfYear:i}}function Fc(c,M,o){var n,e,a=Yc(c.year(),M,o),i=Math.floor((c.dayOfYear()-a-1)/7)+1;return i<1?n=i+Gc(e=c.year()-1,M,o):i>Gc(c.year(),M,o)?(n=i-Gc(c.year(),M,o),e=c.year()+1):(e=c.year(),n=i),{week:n,year:e}}function Gc(c,M,o){var n=Yc(c,M,o),e=Yc(c+1,M,o);return(xc(c)-n+e)/7}D("w",["ww",2],"wo","week"),D("W",["WW",2],"Wo","isoWeek"),x("week","w"),x("isoWeek","W"),I("week",5),I("isoWeek",5),dc("w",nc),dc("ww",nc,$),dc("W",nc),dc("WW",nc,$),Lc(["w","ww","W","WW"],function(c,M,o,n){M[n.substr(0,1)]=j(c)});function jc(c,M){return c.slice(M,7).concat(c.slice(0,M))}D("d",0,"do","day"),D("dd",0,0,function(c){return this.localeData().weekdaysMin(this,c)}),D("ddd",0,0,function(c){return this.localeData().weekdaysShort(this,c)}),D("dddd",0,0,function(c){return this.localeData().weekdays(this,c)}),D("e",0,0,"weekday"),D("E",0,0,"isoWeekday"),x("day","d"),x("weekday","e"),x("isoWeekday","E"),I("day",11),I("weekday",11),I("isoWeekday",11),dc("d",nc),dc("e",nc),dc("E",nc),dc("dd",function(c,M){return M.weekdaysMinRegex(c)}),dc("ddd",function(c,M){return M.weekdaysShortRegex(c)}),dc("dddd",function(c,M){return M.weekdaysRegex(c)}),Lc(["dd","ddd","dddd"],function(c,M,o,n){var e=o._locale.weekdaysParse(c,n,o._strict);null!=e?M.d=e:d(o).invalidWeekday=c}),Lc(["d","e","E"],function(c,M,o,n){M[n]=j(c)});var Vc="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Kc="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Qc="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Jc=sc,Zc=sc,$c=sc;function cM(){function c(c,M){return M.length-c.length}var M,o,n,e,a,i=[],t=[],z=[],b=[];for(M=0;M<7;M++)o=s([2e3,1]).day(M),n=lc(this.weekdaysMin(o,"")),e=lc(this.weekdaysShort(o,"")),a=lc(this.weekdays(o,"")),i.push(n),t.push(e),z.push(a),b.push(n),b.push(e),b.push(a);i.sort(c),t.sort(c),z.sort(c),b.sort(c),this._weekdaysRegex=new RegExp("^("+b.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+z.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+t.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+i.join("|")+")","i")}function MM(){return this.hours()%12||12}function oM(c,M){D(c,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),M)})}function nM(c,M){return M._meridiemParse}D("H",["HH",2],0,"hour"),D("h",["hh",2],0,MM),D("k",["kk",2],0,function(){return this.hours()||24}),D("hmm",0,0,function(){return""+MM.apply(this)+_(this.minutes(),2)}),D("hmmss",0,0,function(){return""+MM.apply(this)+_(this.minutes(),2)+_(this.seconds(),2)}),D("Hmm",0,0,function(){return""+this.hours()+_(this.minutes(),2)}),D("Hmmss",0,0,function(){return""+this.hours()+_(this.minutes(),2)+_(this.seconds(),2)}),oM("a",!0),oM("A",!1),x("hour","h"),I("hour",13),dc("a",nM),dc("A",nM),dc("H",nc),dc("h",nc),dc("k",nc),dc("HH",nc,$),dc("hh",nc,$),dc("kk",nc,$),dc("hmm",ec),dc("hmmss",ac),dc("Hmm",ec),dc("Hmmss",ac),Oc(["H","HH"],Tc),Oc(["k","kk"],function(c,M,o){var n=j(c);M[Tc]=24===n?0:n}),Oc(["a","A"],function(c,M,o){o._isPm=o._locale.isPM(c),o._meridiem=c}),Oc(["h","hh"],function(c,M,o){M[Tc]=j(c),d(o).bigHour=!0}),Oc("hmm",function(c,M,o){var n=c.length-2;M[Tc]=j(c.substr(0,n)),M[Bc]=j(c.substr(n)),d(o).bigHour=!0}),Oc("hmmss",function(c,M,o){var n=c.length-4,e=c.length-2;M[Tc]=j(c.substr(0,n)),M[Bc]=j(c.substr(n,2)),M[mc]=j(c.substr(e)),d(o).bigHour=!0}),Oc("Hmm",function(c,M,o){var n=c.length-2;M[Tc]=j(c.substr(0,n)),M[Bc]=j(c.substr(n))}),Oc("Hmmss",function(c,M,o){var n=c.length-4,e=c.length-2;M[Tc]=j(c.substr(0,n)),M[Bc]=j(c.substr(n,2)),M[mc]=j(c.substr(e))});var eM=V("Hours",!0);var aM,iM={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:Ec,monthsShort:Rc,week:{dow:0,doy:6},weekdays:Vc,weekdaysMin:Qc,weekdaysShort:Kc,meridiemParse:/[ap]\.?m?\.?/i},tM={},zM={};function bM(c,M){var o,n=Math.min(c.length,M.length);for(o=0;o0;){if(n=pM(e.slice(0,M).join("-")))return n;if(o&&o.length>=M&&bM(e,o)>=M-1)break;M--}a++}return aM}(c)}function uM(c){var M,o=c._a;return o&&-2===d(c).overflow&&(M=o[Xc]<0||o[Xc]>11?Xc:o[hc]<1||o[hc]>gc(o[Wc],o[Xc])?hc:o[Tc]<0||o[Tc]>24||24===o[Tc]&&(0!==o[Bc]||0!==o[mc]||0!==o[Sc])?Tc:o[Bc]<0||o[Bc]>59?Bc:o[mc]<0||o[mc]>59?mc:o[Sc]<0||o[Sc]>999?Sc:-1,d(c)._overflowDayOfYear&&(Mhc)&&(M=hc),d(c)._overflowWeeks&&-1===M&&(M=Cc),d(c)._overflowWeekday&&-1===M&&(M=_c),d(c).overflow=M),c}var lM=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,fM=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,OM=/Z|[+-]\d\d(?::?\d\d)?/,LM=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],qM=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],NM=/^\/?Date\((-?\d+)/i,WM=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,XM={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function hM(c){var M,o,n,e,a,i,t=c._i,z=lM.exec(t)||fM.exec(t);if(z){for(d(c).iso=!0,M=0,o=LM.length;M7)&&(z=!0)):(a=c._locale._week.dow,i=c._locale._week.doy,b=Fc(EM(),a,i),o=mM(M.gg,c._a[Wc],b.year),n=mM(M.w,b.week),null!=M.d?((e=M.d)<0||e>6)&&(z=!0):null!=M.e?(e=M.e+a,(M.e<0||M.e>6)&&(z=!0)):e=a);n<1||n>Gc(o,a,i)?d(c)._overflowWeeks=!0:null!=z?d(c)._overflowWeekday=!0:(t=Ic(o,n,e,a,i),c._a[Wc]=t.year,c._dayOfYear=t.dayOfYear)}(c),null!=c._dayOfYear&&(i=mM(c._a[Wc],e[Wc]),(c._dayOfYear>xc(i)||0===c._dayOfYear)&&(d(c)._overflowDayOfYear=!0),o=Hc(i,0,c._dayOfYear),c._a[Xc]=o.getUTCMonth(),c._a[hc]=o.getUTCDate()),M=0;M<3&&null==c._a[M];++M)c._a[M]=t[M]=e[M];for(;M<7;M++)c._a[M]=t[M]=null==c._a[M]?2===M?1:0:c._a[M];24===c._a[Tc]&&0===c._a[Bc]&&0===c._a[mc]&&0===c._a[Sc]&&(c._nextDay=!0,c._a[Tc]=0),c._d=(c._useUTC?Hc:function(c,M,o,n,e,a,i){var t;return c<100&&c>=0?(t=new Date(c+400,M,o,n,e,a,i),isFinite(t.getFullYear())&&t.setFullYear(c)):t=new Date(c,M,o,n,e,a,i),t}).apply(null,t),a=c._useUTC?c._d.getUTCDay():c._d.getDay(),null!=c._tzm&&c._d.setUTCMinutes(c._d.getUTCMinutes()-c._tzm),c._nextDay&&(c._a[Tc]=24),c._w&&void 0!==c._w.d&&c._w.d!==a&&(d(c).weekdayMismatch=!0)}}function CM(c){if(c._f!==n.ISO_8601)if(c._f!==n.RFC_2822){c._a=[],d(c).empty=!0;var M,o,e,a,i,t,z=""+c._i,b=z.length,A=0;for(e=k(c._f,c._locale).match(g)||[],M=0;M0&&d(c).unusedInput.push(i),z=z.slice(z.indexOf(o)+o.length),A+=o.length),y[a]?(o?d(c).empty=!1:d(c).unusedTokens.push(a),qc(a,o,c)):c._strict&&!o&&d(c).unusedTokens.push(a);d(c).charsLeftOver=b-A,z.length>0&&d(c).unusedInput.push(z),c._a[Tc]<=12&&!0===d(c).bigHour&&c._a[Tc]>0&&(d(c).bigHour=void 0),d(c).parsedDateParts=c._a.slice(0),d(c).meridiem=c._meridiem,c._a[Tc]=function(c,M,o){var n;if(null==o)return M;return null!=c.meridiemHour?c.meridiemHour(M,o):null!=c.isPM?((n=c.isPM(o))&&M<12&&(M+=12),n||12!==M||(M=0),M):M}(c._locale,c._a[Tc],c._meridiem),null!==(t=d(c).era)&&(c._a[Wc]=c._locale.erasConvertYear(t,c._a[Wc])),SM(c),uM(c)}else BM(c);else hM(c)}function _M(c){var M=c._i,o=c._f;return c._locale=c._locale||dM(c._l),null===M||void 0===o&&""===M?l({nullInput:!0}):("string"==typeof M&&(c._i=M=c._locale.preparse(M)),N(M)?new q(uM(M)):(A(M)?c._d=M:e(o)?function(c){var M,o,n,e,a,i,t=!1;if(0===c._f.length)return d(c).invalidFormat=!0,void(c._d=new Date(NaN));for(e=0;ethis?this:c:l()});function DM(c,M){var o,n;if(1===M.length&&e(M[0])&&(M=M[0]),!M.length)return EM();for(o=M[0],n=1;n=0?new Date(c+400,M,o)-Ao:new Date(c,M,o).valueOf()}function so(c,M,o){return c<100&&c>=0?Date.UTC(c+400,M,o)-Ao:Date.UTC(c,M,o)}function uo(c,M){return M.erasAbbrRegex(c)}function lo(){var c,M,o=[],n=[],e=[],a=[],i=this.eras();for(c=0,M=i.length;c(a=Gc(c,n,e))&&(M=a),function(c,M,o,n,e){var a=Ic(c,M,o,n,e),i=Hc(a.year,0,a.dayOfYear);return this.year(i.getUTCFullYear()),this.month(i.getUTCMonth()),this.date(i.getUTCDate()),this}.call(this,c,M,o,n,e))}D("N",0,0,"eraAbbr"),D("NN",0,0,"eraAbbr"),D("NNN",0,0,"eraAbbr"),D("NNNN",0,0,"eraName"),D("NNNNN",0,0,"eraNarrow"),D("y",["y",1],"yo","eraYear"),D("y",["yy",2],0,"eraYear"),D("y",["yyy",3],0,"eraYear"),D("y",["yyyy",4],0,"eraYear"),dc("N",uo),dc("NN",uo),dc("NNN",uo),dc("NNNN",function(c,M){return M.erasNameRegex(c)}),dc("NNNNN",function(c,M){return M.erasNarrowRegex(c)}),Oc(["N","NN","NNN","NNNN","NNNNN"],function(c,M,o,n){var e=o._locale.erasParse(c,n,o._strict);e?d(o).era=e:d(o).invalidEra=c}),dc("y",bc),dc("yy",bc),dc("yyy",bc),dc("yyyy",bc),dc("yo",function(c,M){return M._eraYearOrdinalRegex||bc}),Oc(["y","yy","yyy","yyyy"],Wc),Oc(["yo"],function(c,M,o,n){var e;o._locale._eraYearOrdinalRegex&&(e=c.match(o._locale._eraYearOrdinalRegex)),o._locale.eraYearOrdinalParse?M[Wc]=o._locale.eraYearOrdinalParse(c,e):M[Wc]=parseInt(c,10)}),D(0,["gg",2],0,function(){return this.weekYear()%100}),D(0,["GG",2],0,function(){return this.isoWeekYear()%100}),fo("gggg","weekYear"),fo("ggggg","weekYear"),fo("GGGG","isoWeekYear"),fo("GGGGG","isoWeekYear"),x("weekYear","gg"),x("isoWeekYear","GG"),I("weekYear",1),I("isoWeekYear",1),dc("G",Ac),dc("g",Ac),dc("GG",nc,$),dc("gg",nc,$),dc("GGGG",tc,Mc),dc("gggg",tc,Mc),dc("GGGGG",zc,oc),dc("ggggg",zc,oc),Lc(["gggg","ggggg","GGGG","GGGGG"],function(c,M,o,n){M[n.substr(0,2)]=j(c)}),Lc(["gg","GG"],function(c,M,o,e){M[e]=n.parseTwoDigitYear(c)}),D("Q",0,"Qo","quarter"),x("quarter","Q"),I("quarter",7),dc("Q",Z),Oc("Q",function(c,M){M[Xc]=3*(j(c)-1)}),D("D",["DD",2],"Do","date"),x("date","D"),I("date",9),dc("D",nc),dc("DD",nc,$),dc("Do",function(c,M){return c?M._dayOfMonthOrdinalParse||M._ordinalParse:M._dayOfMonthOrdinalParseLenient}),Oc(["D","DD"],hc),Oc("Do",function(c,M){M[hc]=j(c.match(nc)[0])});var Lo=V("Date",!0);D("DDD",["DDDD",3],"DDDo","dayOfYear"),x("dayOfYear","DDD"),I("dayOfYear",4),dc("DDD",ic),dc("DDDD",cc),Oc(["DDD","DDDD"],function(c,M,o){o._dayOfYear=j(c)}),D("m",["mm",2],0,"minute"),x("minute","m"),I("minute",14),dc("m",nc),dc("mm",nc,$),Oc(["m","mm"],Bc);var qo=V("Minutes",!1);D("s",["ss",2],0,"second"),x("second","s"),I("second",15),dc("s",nc),dc("ss",nc,$),Oc(["s","ss"],mc);var No,Wo,Xo=V("Seconds",!1);for(D("S",0,0,function(){return~~(this.millisecond()/100)}),D(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),D(0,["SSS",3],0,"millisecond"),D(0,["SSSS",4],0,function(){return 10*this.millisecond()}),D(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),D(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),D(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),D(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),D(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),x("millisecond","ms"),I("millisecond",16),dc("S",ic,Z),dc("SS",ic,$),dc("SSS",ic,cc),No="SSSS";No.length<=9;No+="S")dc(No,bc);function ho(c,M){M[Sc]=j(1e3*("0."+c))}for(No="S";No.length<=9;No+="S")Oc(No,ho);Wo=V("Milliseconds",!1),D("z",0,0,"zoneAbbr"),D("zz",0,0,"zoneName");var To=q.prototype;function Bo(c){return c}To.add=$M,To.calendar=function(c,M){1===arguments.length&&(oo(arguments[0])?(c=arguments[0],M=void 0):function(c){var M,o=a(c)&&!t(c),n=!1,e=["sameDay","nextDay","lastDay","nextWeek","lastWeek","sameElse"];for(M=0;Mo.valueOf():o.valueOf()9999?v(o,M?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):m(Date.prototype.toISOString)?M?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",v(o,"Z")):v(o,M?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")},To.inspect=function(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var c,M,o,n="moment",e="";return this.isLocal()||(n=0===this.utcOffset()?"moment.utc":"moment.parseZone",e="Z"),c="["+n+'("]',M=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",o=e+'[")]',this.format(c+M+"-MM-DD[T]HH:mm:ss.SSS"+o)},"undefined"!=typeof Symbol&&null!=Symbol.for&&(To[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),To.toJSON=function(){return this.isValid()?this.toISOString():null},To.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},To.unix=function(){return Math.floor(this.valueOf()/1e3)},To.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},To.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},To.eraName=function(){var c,M,o,n=this.localeData().eras();for(c=0,M=n.length;cthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},To.isLocal=function(){return!!this.isValid()&&!this._isUTC},To.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},To.isUtc=FM,To.isUTC=FM,To.zoneAbbr=function(){return this._isUTC?"UTC":""},To.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},To.dates=X("dates accessor is deprecated. Use date instead.",Lo),To.months=X("months accessor is deprecated. Use month instead",kc),To.years=X("years accessor is deprecated. Use year instead",Uc),To.zone=X("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(c,M){return null!=c?("string"!=typeof c&&(c=-c),this.utcOffset(c,M),this):-this.utcOffset()}),To.isDSTShifted=X("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!z(this._isDSTShifted))return this._isDSTShifted;var c,M={};return L(M,this),(M=_M(M))._a?(c=M._isUTC?s(M._a):EM(M._a),this._isDSTShifted=this.isValid()&&function(c,M,o){var n,e=Math.min(c.length,M.length),a=Math.abs(c.length-M.length),i=0;for(n=0;n0):this._isDSTShifted=!1,this._isDSTShifted});var mo=C.prototype;function So(c,M,o,n){var e=dM(),a=s().set(n,M);return e[o](a,c)}function Co(c,M,o){if(b(c)&&(M=c,c=void 0),c=c||"",null!=M)return So(c,M,o,"month");var n,e=[];for(n=0;n<12;n++)e[n]=So(c,n,o,"month");return e}function _o(c,M,o,n){"boolean"==typeof c?(b(M)&&(o=M,M=void 0),M=M||""):(o=M=c,c=!1,b(M)&&(o=M,M=void 0),M=M||"");var e,a=dM(),i=c?a._week.dow:0,t=[];if(null!=o)return So(M,(o+i)%7,n,"day");for(e=0;e<7;e++)t[e]=So(M,(e+i)%7,n,"day");return t}mo.calendar=function(c,M,o){var n=this._calendar[c]||this._calendar.sameElse;return m(n)?n.call(M,o):n},mo.longDateFormat=function(c){var M=this._longDateFormat[c],o=this._longDateFormat[c.toUpperCase()];return M||!o?M:(this._longDateFormat[c]=o.match(g).map(function(c){return"MMMM"===c||"MM"===c||"DD"===c||"dddd"===c?c.slice(1):c}).join(""),this._longDateFormat[c])},mo.invalidDate=function(){return this._invalidDate},mo.ordinal=function(c){return this._ordinal.replace("%d",c)},mo.preparse=Bo,mo.postformat=Bo,mo.relativeTime=function(c,M,o,n){var e=this._relativeTime[o];return m(e)?e(c,M,o,n):e.replace(/%d/i,c)},mo.pastFuture=function(c,M){var o=this._relativeTime[c>0?"future":"past"];return m(o)?o(M):o.replace(/%s/i,M)},mo.set=function(c){var M,o;for(o in c)i(c,o)&&(m(M=c[o])?this[o]=M:this["_"+o]=M);this._config=c,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)},mo.eras=function(c,M){var o,e,a,i=this._eras||dM("en")._eras;for(o=0,e=i.length;o=0)return z[n]},mo.erasConvertYear=function(c,M){var o=c.since<=c.until?1:-1;return void 0===M?n(c.since).year():n(c.since).year()+(M-c.offset)*o},mo.erasAbbrRegex=function(c){return i(this,"_erasAbbrRegex")||lo.call(this),c?this._erasAbbrRegex:this._erasRegex},mo.erasNameRegex=function(c){return i(this,"_erasNameRegex")||lo.call(this),c?this._erasNameRegex:this._erasRegex},mo.erasNarrowRegex=function(c){return i(this,"_erasNarrowRegex")||lo.call(this),c?this._erasNarrowRegex:this._erasRegex},mo.months=function(c,M){return c?e(this._months)?this._months[c.month()]:this._months[(this._months.isFormat||yc).test(M)?"format":"standalone"][c.month()]:e(this._months)?this._months:this._months.standalone},mo.monthsShort=function(c,M){return c?e(this._monthsShort)?this._monthsShort[c.month()]:this._monthsShort[yc.test(M)?"format":"standalone"][c.month()]:e(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},mo.monthsParse=function(c,M,o){var n,e,a;if(this._monthsParseExact)return function(c,M,o){var n,e,a,i=c.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],n=0;n<12;++n)a=s([2e3,n]),this._shortMonthsParse[n]=this.monthsShort(a,"").toLocaleLowerCase(),this._longMonthsParse[n]=this.months(a,"").toLocaleLowerCase();return o?"MMM"===M?-1!==(e=Nc.call(this._shortMonthsParse,i))?e:null:-1!==(e=Nc.call(this._longMonthsParse,i))?e:null:"MMM"===M?-1!==(e=Nc.call(this._shortMonthsParse,i))?e:-1!==(e=Nc.call(this._longMonthsParse,i))?e:null:-1!==(e=Nc.call(this._longMonthsParse,i))?e:-1!==(e=Nc.call(this._shortMonthsParse,i))?e:null}.call(this,c,M,o);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),n=0;n<12;n++){if(e=s([2e3,n]),o&&!this._longMonthsParse[n]&&(this._longMonthsParse[n]=new RegExp("^"+this.months(e,"").replace(".","")+"$","i"),this._shortMonthsParse[n]=new RegExp("^"+this.monthsShort(e,"").replace(".","")+"$","i")),o||this._monthsParse[n]||(a="^"+this.months(e,"")+"|^"+this.monthsShort(e,""),this._monthsParse[n]=new RegExp(a.replace(".",""),"i")),o&&"MMMM"===M&&this._longMonthsParse[n].test(c))return n;if(o&&"MMM"===M&&this._shortMonthsParse[n].test(c))return n;if(!o&&this._monthsParse[n].test(c))return n}},mo.monthsRegex=function(c){return this._monthsParseExact?(i(this,"_monthsRegex")||Pc.call(this),c?this._monthsStrictRegex:this._monthsRegex):(i(this,"_monthsRegex")||(this._monthsRegex=wc),this._monthsStrictRegex&&c?this._monthsStrictRegex:this._monthsRegex)},mo.monthsShortRegex=function(c){return this._monthsParseExact?(i(this,"_monthsRegex")||Pc.call(this),c?this._monthsShortStrictRegex:this._monthsShortRegex):(i(this,"_monthsShortRegex")||(this._monthsShortRegex=Dc),this._monthsShortStrictRegex&&c?this._monthsShortStrictRegex:this._monthsShortRegex)},mo.week=function(c){return Fc(c,this._week.dow,this._week.doy).week},mo.firstDayOfYear=function(){return this._week.doy},mo.firstDayOfWeek=function(){return this._week.dow},mo.weekdays=function(c,M){var o=e(this._weekdays)?this._weekdays:this._weekdays[c&&!0!==c&&this._weekdays.isFormat.test(M)?"format":"standalone"];return!0===c?jc(o,this._week.dow):c?o[c.day()]:o},mo.weekdaysMin=function(c){return!0===c?jc(this._weekdaysMin,this._week.dow):c?this._weekdaysMin[c.day()]:this._weekdaysMin},mo.weekdaysShort=function(c){return!0===c?jc(this._weekdaysShort,this._week.dow):c?this._weekdaysShort[c.day()]:this._weekdaysShort},mo.weekdaysParse=function(c,M,o){var n,e,a;if(this._weekdaysParseExact)return function(c,M,o){var n,e,a,i=c.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],n=0;n<7;++n)a=s([2e3,1]).day(n),this._minWeekdaysParse[n]=this.weekdaysMin(a,"").toLocaleLowerCase(),this._shortWeekdaysParse[n]=this.weekdaysShort(a,"").toLocaleLowerCase(),this._weekdaysParse[n]=this.weekdays(a,"").toLocaleLowerCase();return o?"dddd"===M?-1!==(e=Nc.call(this._weekdaysParse,i))?e:null:"ddd"===M?-1!==(e=Nc.call(this._shortWeekdaysParse,i))?e:null:-1!==(e=Nc.call(this._minWeekdaysParse,i))?e:null:"dddd"===M?-1!==(e=Nc.call(this._weekdaysParse,i))?e:-1!==(e=Nc.call(this._shortWeekdaysParse,i))?e:-1!==(e=Nc.call(this._minWeekdaysParse,i))?e:null:"ddd"===M?-1!==(e=Nc.call(this._shortWeekdaysParse,i))?e:-1!==(e=Nc.call(this._weekdaysParse,i))?e:-1!==(e=Nc.call(this._minWeekdaysParse,i))?e:null:-1!==(e=Nc.call(this._minWeekdaysParse,i))?e:-1!==(e=Nc.call(this._weekdaysParse,i))?e:-1!==(e=Nc.call(this._shortWeekdaysParse,i))?e:null}.call(this,c,M,o);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),n=0;n<7;n++){if(e=s([2e3,1]).day(n),o&&!this._fullWeekdaysParse[n]&&(this._fullWeekdaysParse[n]=new RegExp("^"+this.weekdays(e,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[n]=new RegExp("^"+this.weekdaysShort(e,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[n]=new RegExp("^"+this.weekdaysMin(e,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[n]||(a="^"+this.weekdays(e,"")+"|^"+this.weekdaysShort(e,"")+"|^"+this.weekdaysMin(e,""),this._weekdaysParse[n]=new RegExp(a.replace(".",""),"i")),o&&"dddd"===M&&this._fullWeekdaysParse[n].test(c))return n;if(o&&"ddd"===M&&this._shortWeekdaysParse[n].test(c))return n;if(o&&"dd"===M&&this._minWeekdaysParse[n].test(c))return n;if(!o&&this._weekdaysParse[n].test(c))return n}},mo.weekdaysRegex=function(c){return this._weekdaysParseExact?(i(this,"_weekdaysRegex")||cM.call(this),c?this._weekdaysStrictRegex:this._weekdaysRegex):(i(this,"_weekdaysRegex")||(this._weekdaysRegex=Jc),this._weekdaysStrictRegex&&c?this._weekdaysStrictRegex:this._weekdaysRegex)},mo.weekdaysShortRegex=function(c){return this._weekdaysParseExact?(i(this,"_weekdaysRegex")||cM.call(this),c?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(i(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Zc),this._weekdaysShortStrictRegex&&c?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},mo.weekdaysMinRegex=function(c){return this._weekdaysParseExact?(i(this,"_weekdaysRegex")||cM.call(this),c?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(i(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=$c),this._weekdaysMinStrictRegex&&c?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},mo.isPM=function(c){return"p"===(c+"").toLowerCase().charAt(0)},mo.meridiem=function(c,M,o){return c>11?o?"pm":"PM":o?"am":"AM"},rM("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(c){var M=c%10;return c+(1===j(c%100/10)?"th":1===M?"st":2===M?"nd":3===M?"rd":"th")}}),n.lang=X("moment.lang is deprecated. Use moment.locale instead.",rM),n.langData=X("moment.langData is deprecated. Use moment.localeData instead.",dM);var go=Math.abs;function Eo(c,M,o,n){var e=VM(M,o);return c._milliseconds+=n*e._milliseconds,c._days+=n*e._days,c._months+=n*e._months,c._bubble()}function Ro(c){return c<0?Math.floor(c):Math.ceil(c)}function yo(c){return 4800*c/146097}function Do(c){return 146097*c/4800}function wo(c){return function(){return this.as(c)}}var vo=wo("ms"),ko=wo("s"),Po=wo("m"),xo=wo("h"),Uo=wo("d"),Ho=wo("w"),Yo=wo("M"),Io=wo("Q"),Fo=wo("y");function Go(c){return function(){return this.isValid()?this._data[c]:NaN}}var jo=Go("milliseconds"),Vo=Go("seconds"),Ko=Go("minutes"),Qo=Go("hours"),Jo=Go("days"),Zo=Go("months"),$o=Go("years");var cn=Math.round,Mn={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};var on=Math.abs;function nn(c){return(c>0)-(c<0)||+c}function en(){if(!this.isValid())return this.localeData().invalidDate();var c,M,o,n,e,a,i,t,z=on(this._milliseconds)/1e3,b=on(this._days),A=on(this._months),p=this.asSeconds();return p?(M=G((c=G(z/60))/60),z%=60,c%=60,o=G(A/12),A%=12,n=z?z.toFixed(3).replace(/\.?0+$/,""):"",e=p<0?"-":"",a=nn(this._months)!==nn(p)?"-":"",i=nn(this._days)!==nn(p)?"-":"",t=nn(this._milliseconds)!==nn(p)?"-":"",e+"P"+(o?a+o+"Y":"")+(A?a+A+"M":"")+(b?i+b+"D":"")+(M||c||z?"T":"")+(M?t+M+"H":"")+(c?t+c+"M":"")+(z?t+n+"S":"")):"P0D"}var an=vM.prototype;return an.isValid=function(){return this._isValid},an.abs=function(){var c=this._data;return this._milliseconds=go(this._milliseconds),this._days=go(this._days),this._months=go(this._months),c.milliseconds=go(c.milliseconds),c.seconds=go(c.seconds),c.minutes=go(c.minutes),c.hours=go(c.hours),c.months=go(c.months),c.years=go(c.years),this},an.add=function(c,M){return Eo(this,c,M,1)},an.subtract=function(c,M){return Eo(this,c,M,-1)},an.as=function(c){if(!this.isValid())return NaN;var M,o,n=this._milliseconds;if("month"===(c=U(c))||"quarter"===c||"year"===c)switch(M=this._days+n/864e5,o=this._months+yo(M),c){case"month":return o;case"quarter":return o/3;case"year":return o/12}else switch(M=this._days+Math.round(Do(this._months)),c){case"week":return M/7+n/6048e5;case"day":return M+n/864e5;case"hour":return 24*M+n/36e5;case"minute":return 1440*M+n/6e4;case"second":return 86400*M+n/1e3;case"millisecond":return Math.floor(864e5*M)+n;default:throw new Error("Unknown unit "+c)}},an.asMilliseconds=vo,an.asSeconds=ko,an.asMinutes=Po,an.asHours=xo,an.asDays=Uo,an.asWeeks=Ho,an.asMonths=Yo,an.asQuarters=Io,an.asYears=Fo,an.valueOf=function(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*j(this._months/12):NaN},an._bubble=function(){var c,M,o,n,e,a=this._milliseconds,i=this._days,t=this._months,z=this._data;return a>=0&&i>=0&&t>=0||a<=0&&i<=0&&t<=0||(a+=864e5*Ro(Do(t)+i),i=0,t=0),z.milliseconds=a%1e3,c=G(a/1e3),z.seconds=c%60,M=G(c/60),z.minutes=M%60,o=G(M/60),z.hours=o%24,t+=e=G(yo(i+=G(o/24))),i-=Ro(Do(e)),n=G(t/12),t%=12,z.days=i,z.months=t,z.years=n,this},an.clone=function(){return VM(this)},an.get=function(c){return c=U(c),this.isValid()?this[c+"s"]():NaN},an.milliseconds=jo,an.seconds=Vo,an.minutes=Ko,an.hours=Qo,an.days=Jo,an.weeks=function(){return G(this.days()/7)},an.months=Zo,an.years=$o,an.humanize=function(c,M){if(!this.isValid())return this.localeData().invalidDate();var o,n,e=!1,a=Mn;return"object"==typeof c&&(M=c,c=!1),"boolean"==typeof c&&(e=c),"object"==typeof M&&(a=Object.assign({},Mn,M),null!=M.s&&null==M.ss&&(a.ss=M.s-1)),n=function(c,M,o,n){var e=VM(c).abs(),a=cn(e.as("s")),i=cn(e.as("m")),t=cn(e.as("h")),z=cn(e.as("d")),b=cn(e.as("M")),A=cn(e.as("w")),p=cn(e.as("y")),r=a<=o.ss&&["s",a]||a0,r[4]=n,function(c,M,o,n,e){return e.relativeTime(M||1,!!o,c,n)}.apply(null,r)}(this,!e,a,o=this.localeData()),e&&(n=o.pastFuture(+this,n)),o.postformat(n)},an.toISOString=en,an.toString=en,an.toJSON=en,an.locale=eo,an.localeData=io,an.toIsoString=X("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",en),an.lang=ao,D("X",0,0,"unix"),D("x",0,0,"valueOf"),dc("x",Ac),dc("X",/[+-]?\d+(\.\d{1,3})?/),Oc("X",function(c,M,o){o._d=new Date(1e3*parseFloat(c))}),Oc("x",function(c,M,o){o._d=new Date(j(c))}), +//! moment.js +n.version="2.25.3",function(c){M=c}(EM),n.fn=To,n.min=function(){return DM("isBefore",[].slice.call(arguments,0))},n.max=function(){return DM("isAfter",[].slice.call(arguments,0))},n.now=function(){return Date.now?Date.now():+new Date},n.utc=s,n.unix=function(c){return EM(1e3*c)},n.months=function(c,M){return Co(c,M,"months")},n.isDate=A,n.locale=rM,n.invalid=l,n.duration=VM,n.isMoment=N,n.weekdays=function(c,M,o){return _o(c,M,o,"weekdays")},n.parseZone=function(){return EM.apply(null,arguments).parseZone()},n.localeData=dM,n.isDuration=kM,n.monthsShort=function(c,M){return Co(c,M,"monthsShort")},n.weekdaysMin=function(c,M,o){return _o(c,M,o,"weekdaysMin")},n.defineLocale=sM,n.updateLocale=function(c,M){if(null!=M){var o,n,e=iM;null!=tM[c]&&null!=tM[c].parentLocale?tM[c].set(S(tM[c]._config,M)):(null!=(n=pM(c))&&(e=n._config),M=S(e,M),null==n&&(M.abbr=c),(o=new C(M)).parentLocale=tM[c],tM[c]=o),rM(c)}else null!=tM[c]&&(null!=tM[c].parentLocale?(tM[c]=tM[c].parentLocale,c===rM()&&rM(c)):null!=tM[c]&&delete tM[c]);return tM[c]},n.locales=function(){return h(tM)},n.weekdaysShort=function(c,M,o){return _o(c,M,o,"weekdaysShort")},n.normalizeUnits=U,n.relativeTimeRounding=function(c){return void 0===c?cn:"function"==typeof c&&(cn=c,!0)},n.relativeTimeThreshold=function(c,M){return void 0!==Mn[c]&&(void 0===M?Mn[c]:(Mn[c]=M,"s"===c&&(Mn.ss=M-1),!0))},n.calendarFormat=function(c,M){var o=c.diff(M,"days",!0);return o<-6?"sameElse":o<-1?"lastWeek":o<0?"lastDay":o<1?"sameDay":o<2?"nextDay":o<7?"nextWeek":"sameElse"},n.prototype=To,n.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},n})},237:function(c,M,o){(c.exports=o(1077)).tz.load(o(1076))}}]); \ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/normalize.css b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/normalize.css new file mode 100644 index 0000000..b271fae --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/normalize.css @@ -0,0 +1 @@ +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0} \ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/react-intl-locale-data-en-68d22e6e4ef4c61f742c.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/react-intl-locale-data-en-68d22e6e4ef4c61f742c.js new file mode 100644 index 0000000..4286fe6 --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/react-intl-locale-data-en-68d22e6e4ef4c61f742c.js @@ -0,0 +1 @@ +(window.driftWebpackJsonp=window.driftWebpackJsonp||[]).push([[73],{1513:function(e,a,n){e.exports=function(){"use strict";return[{locale:"en",pluralRuleFunction:function(e,a){var n=String(e).split("."),l=!n[1],o=Number(n[0])==e,t=o&&n[0].slice(-1),r=o&&n[0].slice(-2);return a?1==t&&11!=r?"one":2==t&&12!=r?"two":3==t&&13!=r?"few":"other":1==e&&l?"one":"other"},fields:{year:{displayName:"year",relative:{0:"this year",1:"next year","-1":"last year"},relativeTime:{future:{one:"in {0} year",other:"in {0} years"},past:{one:"{0} year ago",other:"{0} years ago"}}},month:{displayName:"month",relative:{0:"this month",1:"next month","-1":"last month"},relativeTime:{future:{one:"in {0} month",other:"in {0} months"},past:{one:"{0} month ago",other:"{0} months ago"}}},day:{displayName:"day",relative:{0:"today",1:"tomorrow","-1":"yesterday"},relativeTime:{future:{one:"in {0} day",other:"in {0} days"},past:{one:"{0} day ago",other:"{0} days ago"}}},hour:{displayName:"hour",relative:{0:"this hour"},relativeTime:{future:{one:"in {0} hour",other:"in {0} hours"},past:{one:"{0} hour ago",other:"{0} hours ago"}}},minute:{displayName:"minute",relative:{0:"this minute"},relativeTime:{future:{one:"in {0} minute",other:"in {0} minutes"},past:{one:"{0} minute ago",other:"{0} minutes ago"}}},second:{displayName:"second",relative:{0:"now"},relativeTime:{future:{one:"in {0} second",other:"in {0} seconds"},past:{one:"{0} second ago",other:"{0} seconds ago"}}}}},{locale:"en-001",parentLocale:"en"},{locale:"en-150",parentLocale:"en-001"},{locale:"en-AG",parentLocale:"en-001"},{locale:"en-AI",parentLocale:"en-001"},{locale:"en-AS",parentLocale:"en"},{locale:"en-AT",parentLocale:"en-150"},{locale:"en-AU",parentLocale:"en-001"},{locale:"en-BB",parentLocale:"en-001"},{locale:"en-BE",parentLocale:"en-001"},{locale:"en-BI",parentLocale:"en"},{locale:"en-BM",parentLocale:"en-001"},{locale:"en-BS",parentLocale:"en-001"},{locale:"en-BW",parentLocale:"en-001"},{locale:"en-BZ",parentLocale:"en-001"},{locale:"en-CA",parentLocale:"en-001"},{locale:"en-CC",parentLocale:"en-001"},{locale:"en-CH",parentLocale:"en-150"},{locale:"en-CK",parentLocale:"en-001"},{locale:"en-CM",parentLocale:"en-001"},{locale:"en-CX",parentLocale:"en-001"},{locale:"en-CY",parentLocale:"en-001"},{locale:"en-DE",parentLocale:"en-150"},{locale:"en-DG",parentLocale:"en-001"},{locale:"en-DK",parentLocale:"en-150"},{locale:"en-DM",parentLocale:"en-001"},{locale:"en-Dsrt",pluralRuleFunction:function(e,a){return"other"},fields:{year:{displayName:"Year",relative:{0:"this year",1:"next year","-1":"last year"},relativeTime:{future:{other:"+{0} y"},past:{other:"-{0} y"}}},month:{displayName:"Month",relative:{0:"this month",1:"next month","-1":"last month"},relativeTime:{future:{other:"+{0} m"},past:{other:"-{0} m"}}},day:{displayName:"Day",relative:{0:"today",1:"tomorrow","-1":"yesterday"},relativeTime:{future:{other:"+{0} d"},past:{other:"-{0} d"}}},hour:{displayName:"Hour",relative:{0:"this hour"},relativeTime:{future:{other:"+{0} h"},past:{other:"-{0} h"}}},minute:{displayName:"Minute",relative:{0:"this minute"},relativeTime:{future:{other:"+{0} min"},past:{other:"-{0} min"}}},second:{displayName:"Second",relative:{0:"now"},relativeTime:{future:{other:"+{0} s"},past:{other:"-{0} s"}}}}},{locale:"en-ER",parentLocale:"en-001"},{locale:"en-FI",parentLocale:"en-150"},{locale:"en-FJ",parentLocale:"en-001"},{locale:"en-FK",parentLocale:"en-001"},{locale:"en-FM",parentLocale:"en-001"},{locale:"en-GB",parentLocale:"en-001"},{locale:"en-GD",parentLocale:"en-001"},{locale:"en-GG",parentLocale:"en-001"},{locale:"en-GH",parentLocale:"en-001"},{locale:"en-GI",parentLocale:"en-001"},{locale:"en-GM",parentLocale:"en-001"},{locale:"en-GU",parentLocale:"en"},{locale:"en-GY",parentLocale:"en-001"},{locale:"en-HK",parentLocale:"en-001"},{locale:"en-IE",parentLocale:"en-001"},{locale:"en-IL",parentLocale:"en-001"},{locale:"en-IM",parentLocale:"en-001"},{locale:"en-IN",parentLocale:"en-001"},{locale:"en-IO",parentLocale:"en-001"},{locale:"en-JE",parentLocale:"en-001"},{locale:"en-JM",parentLocale:"en-001"},{locale:"en-KE",parentLocale:"en-001"},{locale:"en-KI",parentLocale:"en-001"},{locale:"en-KN",parentLocale:"en-001"},{locale:"en-KY",parentLocale:"en-001"},{locale:"en-LC",parentLocale:"en-001"},{locale:"en-LR",parentLocale:"en-001"},{locale:"en-LS",parentLocale:"en-001"},{locale:"en-MG",parentLocale:"en-001"},{locale:"en-MH",parentLocale:"en"},{locale:"en-MO",parentLocale:"en-001"},{locale:"en-MP",parentLocale:"en"},{locale:"en-MS",parentLocale:"en-001"},{locale:"en-MT",parentLocale:"en-001"},{locale:"en-MU",parentLocale:"en-001"},{locale:"en-MW",parentLocale:"en-001"},{locale:"en-MY",parentLocale:"en-001"},{locale:"en-NA",parentLocale:"en-001"},{locale:"en-NF",parentLocale:"en-001"},{locale:"en-NG",parentLocale:"en-001"},{locale:"en-NL",parentLocale:"en-150"},{locale:"en-NR",parentLocale:"en-001"},{locale:"en-NU",parentLocale:"en-001"},{locale:"en-NZ",parentLocale:"en-001"},{locale:"en-PG",parentLocale:"en-001"},{locale:"en-PH",parentLocale:"en-001"},{locale:"en-PK",parentLocale:"en-001"},{locale:"en-PN",parentLocale:"en-001"},{locale:"en-PR",parentLocale:"en"},{locale:"en-PW",parentLocale:"en-001"},{locale:"en-RW",parentLocale:"en-001"},{locale:"en-SB",parentLocale:"en-001"},{locale:"en-SC",parentLocale:"en-001"},{locale:"en-SD",parentLocale:"en-001"},{locale:"en-SE",parentLocale:"en-150"},{locale:"en-SG",parentLocale:"en-001"},{locale:"en-SH",parentLocale:"en-001"},{locale:"en-SI",parentLocale:"en-150"},{locale:"en-SL",parentLocale:"en-001"},{locale:"en-SS",parentLocale:"en-001"},{locale:"en-SX",parentLocale:"en-001"},{locale:"en-SZ",parentLocale:"en-001"},{locale:"en-Shaw",pluralRuleFunction:function(e,a){return"other"},fields:{year:{displayName:"Year",relative:{0:"this year",1:"next year","-1":"last year"},relativeTime:{future:{other:"+{0} y"},past:{other:"-{0} y"}}},month:{displayName:"Month",relative:{0:"this month",1:"next month","-1":"last month"},relativeTime:{future:{other:"+{0} m"},past:{other:"-{0} m"}}},day:{displayName:"Day",relative:{0:"today",1:"tomorrow","-1":"yesterday"},relativeTime:{future:{other:"+{0} d"},past:{other:"-{0} d"}}},hour:{displayName:"Hour",relative:{0:"this hour"},relativeTime:{future:{other:"+{0} h"},past:{other:"-{0} h"}}},minute:{displayName:"Minute",relative:{0:"this minute"},relativeTime:{future:{other:"+{0} min"},past:{other:"-{0} min"}}},second:{displayName:"Second",relative:{0:"now"},relativeTime:{future:{other:"+{0} s"},past:{other:"-{0} s"}}}}},{locale:"en-TC",parentLocale:"en-001"},{locale:"en-TK",parentLocale:"en-001"},{locale:"en-TO",parentLocale:"en-001"},{locale:"en-TT",parentLocale:"en-001"},{locale:"en-TV",parentLocale:"en-001"},{locale:"en-TZ",parentLocale:"en-001"},{locale:"en-UG",parentLocale:"en-001"},{locale:"en-UM",parentLocale:"en"},{locale:"en-US",parentLocale:"en"},{locale:"en-VC",parentLocale:"en-001"},{locale:"en-VG",parentLocale:"en-001"},{locale:"en-VI",parentLocale:"en"},{locale:"en-VU",parentLocale:"en-001"},{locale:"en-WS",parentLocale:"en-001"},{locale:"en-ZA",parentLocale:"en-001"},{locale:"en-ZM",parentLocale:"en-001"},{locale:"en-ZW",parentLocale:"en-001"}]}()}}]); \ No newline at end of file diff --git a/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/vendors-widget-80097b52b53ff67afc56.js b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/vendors-widget-80097b52b53ff67afc56.js new file mode 100644 index 0000000..4d36877 --- /dev/null +++ b/doc/Turning the database inside-out with Apache Samza - Confluent_fichiers/index_data/vendors-widget-80097b52b53ff67afc56.js @@ -0,0 +1,53 @@ +(window.driftWebpackJsonp=window.driftWebpackJsonp||[]).push([[106],[function(t,e,n){"use strict";var r=n(103),o=n(1127),i=n(350),s=n(452),a=function(){function t(t){this._isScalar=!1,t&&(this._subscribe=t)}return t.prototype.lift=function(e){var n=new t;return n.source=this,n.operator=e,n},t.prototype.subscribe=function(t,e,n){var r=this.operator,i=o.toSubscriber(t,e,n);if(r?r.call(i,this.source):i.add(this.source||!i.syncErrorThrowable?this._subscribe(i):this._trySubscribe(i)),i.syncErrorThrowable&&(i.syncErrorThrowable=!1,i.syncErrorThrown))throw i.syncErrorValue;return i},t.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(e){t.syncErrorThrown=!0,t.syncErrorValue=e,t.error(e)}},t.prototype.forEach=function(t,e){var n=this;if(e||(r.root.Rx&&r.root.Rx.config&&r.root.Rx.config.Promise?e=r.root.Rx.config.Promise:r.root.Promise&&(e=r.root.Promise)),!e)throw new Error("no Promise impl found");return new e(function(e,r){var o;o=n.subscribe(function(e){if(o)try{t(e)}catch(t){r(t),o.unsubscribe()}else t(e)},r,e)})},t.prototype._subscribe=function(t){return this.source.subscribe(t)},t.prototype[i.observable]=function(){return this},t.prototype.pipe=function(){for(var t=[],e=0;e1?n-1:0),o=1;o1?e-1:0),r=1;r2?n-2:0),s=2;s>>0;if(""+n!==e||4294967295===n)return NaN;e=n}return e<0?E(t)+e:e}function C(){return!0}function T(t,e,n){return(0===t||void 0!==n&&t<=-n)&&(void 0===e||void 0!==n&&e>=n)}function k(t,e){return A(t,e,0)}function P(t,e){return A(t,e,e)}function A(t,e,n){return void 0===t?n:t<0?Math.max(0,e+t):void 0===e?t:Math.min(e,t)}var I=0,M=1,N=2,R="function"==typeof Symbol&&Symbol.iterator,D="@@iterator",F=R||D;function L(t){this.next=t}function U(t,e,n,r){var o=0===t?e:1===t?n:[e,n];return r?r.value=o:r={value:o,done:!1},r}function B(){return{value:void 0,done:!0}}function z(t){return!!q(t)}function W(t){return t&&"function"==typeof t.next}function V(t){var e=q(t);return e&&e.call(t)}function q(t){var e=t&&(R&&t[R]||t[D]);if("function"==typeof e)return e}function H(t){return t&&"number"==typeof t.length}function K(t){return null===t||void 0===t?it():s(t)?t.toSeq():function(t){var e=ut(t)||"object"==typeof t&&new et(t);if(!e)throw new TypeError("Expected Array or iterable object of values, or keyed object: "+t);return e}(t)}function $(t){return null===t||void 0===t?it().toKeyedSeq():s(t)?a(t)?t.toSeq():t.fromEntrySeq():st(t)}function G(t){return null===t||void 0===t?it():s(t)?a(t)?t.entrySeq():t.toIndexedSeq():at(t)}function Y(t){return(null===t||void 0===t?it():s(t)?a(t)?t.entrySeq():t:at(t)).toSetSeq()}L.prototype.toString=function(){return"[Iterator]"},L.KEYS=I,L.VALUES=M,L.ENTRIES=N,L.prototype.inspect=L.prototype.toSource=function(){return this.toString()},L.prototype[F]=function(){return this},e(K,n),K.of=function(){return K(arguments)},K.prototype.toSeq=function(){return this},K.prototype.toString=function(){return this.__toString("Seq {","}")},K.prototype.cacheResult=function(){return!this._cache&&this.__iterateUncached&&(this._cache=this.entrySeq().toArray(),this.size=this._cache.length),this},K.prototype.__iterate=function(t,e){return ct(this,t,e,!0)},K.prototype.__iterator=function(t,e){return lt(this,t,e,!0)},e($,K),$.prototype.toKeyedSeq=function(){return this},e(G,K),G.of=function(){return G(arguments)},G.prototype.toIndexedSeq=function(){return this},G.prototype.toString=function(){return this.__toString("Seq [","]")},G.prototype.__iterate=function(t,e){return ct(this,t,e,!1)},G.prototype.__iterator=function(t,e){return lt(this,t,e,!1)},e(Y,K),Y.of=function(){return Y(arguments)},Y.prototype.toSetSeq=function(){return this},K.isSeq=ot,K.Keyed=$,K.Set=Y,K.Indexed=G;var X,J,Q,Z="@@__IMMUTABLE_SEQ__@@";function tt(t){this._array=t,this.size=t.length}function et(t){var e=Object.keys(t);this._object=t,this._keys=e,this.size=e.length}function nt(t){this._iterable=t,this.size=t.length||t.size}function rt(t){this._iterator=t,this._iteratorCache=[]}function ot(t){return!(!t||!t[Z])}function it(){return X||(X=new tt([]))}function st(t){var e=Array.isArray(t)?new tt(t).fromEntrySeq():W(t)?new rt(t).fromEntrySeq():z(t)?new nt(t).fromEntrySeq():"object"==typeof t?new et(t):void 0;if(!e)throw new TypeError("Expected Array or iterable object of [k, v] entries, or keyed object: "+t);return e}function at(t){var e=ut(t);if(!e)throw new TypeError("Expected Array or iterable object of values: "+t);return e}function ut(t){return H(t)?new tt(t):W(t)?new rt(t):z(t)?new nt(t):void 0}function ct(t,e,n,r){var o=t._cache;if(o){for(var i=o.length-1,s=0;s<=i;s++){var a=o[n?i-s:s];if(!1===e(a[1],r?a[0]:s,t))return s+1}return s}return t.__iterateUncached(e,n)}function lt(t,e,n,r){var o=t._cache;if(o){var i=o.length-1,s=0;return new L(function(){var t=o[n?i-s:s];return s++>i?{value:void 0,done:!0}:U(e,r?t[0]:s-1,t[1])})}return t.__iteratorUncached(e,n)}function ft(t,e){return e?function t(e,n,r,o){return Array.isArray(n)?e.call(o,r,G(n).map(function(r,o){return t(e,r,o,n)})):ht(n)?e.call(o,r,$(n).map(function(r,o){return t(e,r,o,n)})):n}(e,t,"",{"":t}):pt(t)}function pt(t){return Array.isArray(t)?G(t).map(pt).toList():ht(t)?$(t).map(pt).toMap():t}function ht(t){return t&&(t.constructor===Object||void 0===t.constructor)}function dt(t,e){if(t===e||t!=t&&e!=e)return!0;if(!t||!e)return!1;if("function"==typeof t.valueOf&&"function"==typeof e.valueOf){if(t=t.valueOf(),e=e.valueOf(),t===e||t!=t&&e!=e)return!0;if(!t||!e)return!1}return!("function"!=typeof t.equals||"function"!=typeof e.equals||!t.equals(e))}function vt(t,e){if(t===e)return!0;if(!s(e)||void 0!==t.size&&void 0!==e.size&&t.size!==e.size||void 0!==t.__hash&&void 0!==e.__hash&&t.__hash!==e.__hash||a(t)!==a(e)||u(t)!==u(e)||l(t)!==l(e))return!1;if(0===t.size&&0===e.size)return!0;var n=!c(t);if(l(t)){var r=t.entries();return e.every(function(t,e){var o=r.next().value;return o&&dt(o[1],t)&&(n||dt(o[0],e))})&&r.next().done}var o=!1;if(void 0===t.size)if(void 0===e.size)"function"==typeof t.cacheResult&&t.cacheResult();else{o=!0;var i=t;t=e,e=i}var f=!0,p=e.__iterate(function(e,r){if(n?!t.has(e):o?!dt(e,t.get(r,m)):!dt(t.get(r,m),e))return f=!1,!1});return f&&t.size===p}function yt(t,e){if(!(this instanceof yt))return new yt(t,e);if(this._value=t,this.size=void 0===e?1/0:Math.max(0,e),0===this.size){if(J)return J;J=this}}function bt(t,e){if(!t)throw new Error(e)}function mt(t,e,n){if(!(this instanceof mt))return new mt(t,e,n);if(bt(0!==n,"Cannot step a Range by 0"),t=t||0,void 0===e&&(e=1/0),n=void 0===n?1:Math.abs(n),er?{value:void 0,done:!0}:U(t,o,n[e?r-o++:o++])})},e(et,$),et.prototype.get=function(t,e){return void 0===e||this.has(t)?this._object[t]:e},et.prototype.has=function(t){return this._object.hasOwnProperty(t)},et.prototype.__iterate=function(t,e){for(var n=this._object,r=this._keys,o=r.length-1,i=0;i<=o;i++){var s=r[e?o-i:i];if(!1===t(n[s],s,this))return i+1}return i},et.prototype.__iterator=function(t,e){var n=this._object,r=this._keys,o=r.length-1,i=0;return new L(function(){var s=r[e?o-i:i];return i++>o?{value:void 0,done:!0}:U(t,s,n[s])})},et.prototype[d]=!0,e(nt,G),nt.prototype.__iterateUncached=function(t,e){if(e)return this.cacheResult().__iterate(t,e);var n=this._iterable,r=V(n),o=0;if(W(r))for(var i;!(i=r.next()).done&&!1!==t(i.value,o++,this););return o},nt.prototype.__iteratorUncached=function(t,e){if(e)return this.cacheResult().__iterator(t,e);var n=this._iterable,r=V(n);if(!W(r))return new L(B);var o=0;return new L(function(){var e=r.next();return e.done?e:U(t,o++,e.value)})},e(rt,G),rt.prototype.__iterateUncached=function(t,e){if(e)return this.cacheResult().__iterate(t,e);for(var n,r=this._iterator,o=this._iteratorCache,i=0;i=r.length){var e=n.next();if(e.done)return e;r[o]=e.value}return U(t,o,r[o++])})},e(yt,G),yt.prototype.toString=function(){return 0===this.size?"Repeat []":"Repeat [ "+this._value+" "+this.size+" times ]"},yt.prototype.get=function(t,e){return this.has(t)?this._value:e},yt.prototype.includes=function(t){return dt(this._value,t)},yt.prototype.slice=function(t,e){var n=this.size;return T(t,e,n)?this:new yt(this._value,P(e,n)-k(t,n))},yt.prototype.reverse=function(){return this},yt.prototype.indexOf=function(t){return dt(this._value,t)?0:-1},yt.prototype.lastIndexOf=function(t){return dt(this._value,t)?this.size:-1},yt.prototype.__iterate=function(t,e){for(var n=0;n=0&&e=0&&nn?{value:void 0,done:!0}:U(t,i++,s)})},mt.prototype.equals=function(t){return t instanceof mt?this._start===t._start&&this._end===t._end&&this._step===t._step:vt(this,t)},e(gt,n),e(_t,gt),e(wt,gt),e(xt,gt),gt.Keyed=_t,gt.Indexed=wt,gt.Set=xt;var Ot="function"==typeof Math.imul&&-2===Math.imul(4294967295,2)?Math.imul:function(t,e){var n=65535&(t|=0),r=65535&(e|=0);return n*r+((t>>>16)*r+n*(e>>>16)<<16>>>0)|0};function St(t){return t>>>1&1073741824|3221225471&t}function Et(t){if(!1===t||null===t||void 0===t)return 0;if("function"==typeof t.valueOf&&(!1===(t=t.valueOf())||null===t||void 0===t))return 0;if(!0===t)return 1;var e=typeof t;if("number"===e){if(t!=t||t===1/0)return 0;var n=0|t;for(n!==t&&(n^=4294967295*t);t>4294967295;)n^=t/=4294967295;return St(n)}if("string"===e)return t.length>Mt?function(t){var e=Dt[t];return void 0===e&&(e=jt(t),Rt===Nt&&(Rt=0,Dt={}),Rt++,Dt[t]=e),e}(t):jt(t);if("function"==typeof t.hashCode)return t.hashCode();if("object"===e)return function(t){var e;if(Pt&&void 0!==(e=Ct.get(t)))return e;if(void 0!==(e=t[It]))return e;if(!kt){if(void 0!==(e=t.propertyIsEnumerable&&t.propertyIsEnumerable[It]))return e;if(void 0!==(e=function(t){if(t&&t.nodeType>0)switch(t.nodeType){case 1:return t.uniqueID;case 9:return t.documentElement&&t.documentElement.uniqueID}}(t)))return e}if(e=++At,1073741824&At&&(At=0),Pt)Ct.set(t,e);else{if(void 0!==Tt&&!1===Tt(t))throw new Error("Non-extensible objects are not allowed as keys.");if(kt)Object.defineProperty(t,It,{enumerable:!1,configurable:!1,writable:!1,value:e});else if(void 0!==t.propertyIsEnumerable&&t.propertyIsEnumerable===t.constructor.prototype.propertyIsEnumerable)t.propertyIsEnumerable=function(){return this.constructor.prototype.propertyIsEnumerable.apply(this,arguments)},t.propertyIsEnumerable[It]=e;else{if(void 0===t.nodeType)throw new Error("Unable to set a non-enumerable property on object.");t[It]=e}}return e}(t);if("function"==typeof t.toString)return jt(t.toString());throw new Error("Value type "+e+" cannot be hashed.")}function jt(t){for(var e=0,n=0;n=e.length)throw new Error("Missing value for key: "+e[n]);t.set(e[n],e[n+1])}})},Lt.prototype.toString=function(){return this.__toString("Map {","}")},Lt.prototype.get=function(t,e){return this._root?this._root.get(0,void 0,t,e):e},Lt.prototype.set=function(t,e){return Zt(this,t,e)},Lt.prototype.setIn=function(t,e){return this.updateIn(t,m,function(){return e})},Lt.prototype.remove=function(t){return Zt(this,t,m)},Lt.prototype.deleteIn=function(t){return this.updateIn(t,function(){return m})},Lt.prototype.update=function(t,e,n){return 1===arguments.length?t(this):this.updateIn([t],e,n)},Lt.prototype.updateIn=function(t,e,n){n||(n=e,e=void 0);var r=function t(e,n,r,o){var i=e===m,s=n.next();if(s.done){var a=i?r:e,u=o(a);return u===a?e:u}bt(i||e&&e.set,"invalid keyPath");var c=s.value,l=i?m:e.get(c,m),f=t(l,n,r,o);return f===l?e:f===m?e.remove(c):(i?Qt():e).set(c,f)}(this,nn(t),e,n);return r===m?void 0:r},Lt.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):Qt()},Lt.prototype.merge=function(){return re(this,void 0,arguments)},Lt.prototype.mergeWith=function(e){var n=t.call(arguments,1);return re(this,e,n)},Lt.prototype.mergeIn=function(e){var n=t.call(arguments,1);return this.updateIn(e,Qt(),function(t){return"function"==typeof t.merge?t.merge.apply(t,n):n[n.length-1]})},Lt.prototype.mergeDeep=function(){return re(this,oe,arguments)},Lt.prototype.mergeDeepWith=function(e){var n=t.call(arguments,1);return re(this,ie(e),n)},Lt.prototype.mergeDeepIn=function(e){var n=t.call(arguments,1);return this.updateIn(e,Qt(),function(t){return"function"==typeof t.mergeDeep?t.mergeDeep.apply(t,n):n[n.length-1]})},Lt.prototype.sort=function(t){return ke(He(this,t))},Lt.prototype.sortBy=function(t,e){return ke(He(this,e,t))},Lt.prototype.withMutations=function(t){var e=this.asMutable();return t(e),e.wasAltered()?e.__ensureOwner(this.__ownerID):this},Lt.prototype.asMutable=function(){return this.__ownerID?this:this.__ensureOwner(new O)},Lt.prototype.asImmutable=function(){return this.__ensureOwner()},Lt.prototype.wasAltered=function(){return this.__altered},Lt.prototype.__iterator=function(t,e){return new Gt(this,t,e)},Lt.prototype.__iterate=function(t,e){var n=this,r=0;return this._root&&this._root.iterate(function(e){return r++,t(e[1],e[0],n)},e),r},Lt.prototype.__ensureOwner=function(t){return t===this.__ownerID?this:t?Jt(this.size,this._root,t,this.__hash):(this.__ownerID=t,this.__altered=!1,this)},Lt.isMap=Ut;var Bt,zt="@@__IMMUTABLE_MAP__@@",Wt=Lt.prototype;function Vt(t,e){this.ownerID=t,this.entries=e}function qt(t,e,n){this.ownerID=t,this.bitmap=e,this.nodes=n}function Ht(t,e,n){this.ownerID=t,this.count=e,this.nodes=n}function Kt(t,e,n){this.ownerID=t,this.keyHash=e,this.entries=n}function $t(t,e,n){this.ownerID=t,this.keyHash=e,this.entry=n}function Gt(t,e,n){this._type=e,this._reverse=n,this._stack=t._root&&Xt(t._root)}function Yt(t,e){return U(t,e[0],e[1])}function Xt(t,e){return{node:t,index:0,__prev:e}}function Jt(t,e,n,r){var o=Object.create(Wt);return o.size=t,o._root=e,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Qt(){return Bt||(Bt=Jt(0))}function Zt(t,e,n){var r,o;if(t._root){var i=w(g),s=w(_);if(r=te(t._root,t.__ownerID,0,void 0,e,n,i,s),!s.value)return t;o=t.size+(i.value?n===m?-1:1:0)}else{if(n===m)return t;o=1,r=new Vt(t.__ownerID,[[e,n]])}return t.__ownerID?(t.size=o,t._root=r,t.__hash=void 0,t.__altered=!0,t):r?Jt(o,r):Qt()}function te(t,e,n,r,o,i,s,a){return t?t.update(e,n,r,o,i,s,a):i===m?t:(x(a),x(s),new $t(e,r,[o,i]))}function ee(t){return t.constructor===$t||t.constructor===Kt}function ne(t,e,n,r,o){if(t.keyHash===r)return new Kt(e,r,[t.entry,o]);var i,s=(0===n?t.keyHash:t.keyHash>>>n)&b,a=(0===n?r:r>>>n)&b,u=s===a?[ne(t,e,n+v,r,o)]:(i=new $t(e,r,o),s>1&1431655765))+(t>>2&858993459))+(t>>4)&252645135,t+=t>>8,127&(t+=t>>16)}function ue(t,e,n,r){var o=r?t:S(t);return o[e]=n,o}Wt[zt]=!0,Wt.delete=Wt.remove,Wt.removeIn=Wt.deleteIn,Vt.prototype.get=function(t,e,n,r){for(var o=this.entries,i=0,s=o.length;i=ce)return function(t,e,n,r){t||(t=new O);for(var o=new $t(t,Et(n),[n,r]),i=0;i>>t)&b),i=this.bitmap;return 0==(i&o)?r:this.nodes[ae(i&o-1)].get(t+v,e,n,r)},qt.prototype.update=function(t,e,n,r,o,i,s){void 0===n&&(n=Et(r));var a=(0===e?n:n>>>e)&b,u=1<=le)return function(t,e,n,r,o){for(var i=0,s=new Array(y),a=0;0!==n;a++,n>>>=1)s[a]=1&n?e[i++]:void 0;return s[r]=o,new Ht(t,i+1,s)}(t,p,c,a,d);if(l&&!d&&2===p.length&&ee(p[1^f]))return p[1^f];if(l&&d&&1===p.length&&ee(d))return d;var g=t&&t===this.ownerID,_=l?d?c:c^u:c|u,w=l?d?ue(p,f,d,g):function(t,e,n){var r=t.length-1;if(n&&e===r)return t.pop(),t;for(var o=new Array(r),i=0,s=0;s>>t)&b,i=this.nodes[o];return i?i.get(t+v,e,n,r):r},Ht.prototype.update=function(t,e,n,r,o,i,s){void 0===n&&(n=Et(r));var a=(0===e?n:n>>>e)&b,u=o===m,c=this.nodes,l=c[a];if(u&&!l)return this;var f=te(l,t,e+v,n,r,o,i,s);if(f===l)return this;var p=this.count;if(l){if(!f&&--p0&&r=0&&t=t.size||e<0)return t.withMutations(function(t){e<0?je(t,e).set(0,n):je(t,0,e+1).set(e,n)});e+=t._origin;var r=t._tail,o=t._root,i=w(_);return e>=Te(t._capacity)?r=Oe(r,t.__ownerID,0,e,n,i):o=Oe(o,t.__ownerID,t._level,e,n,i),i.value?t.__ownerID?(t._root=o,t._tail=r,t.__hash=void 0,t.__altered=!0,t):we(t._origin,t._capacity,t._level,o,r):t}(this,t,e)},pe.prototype.remove=function(t){return this.has(t)?0===t?this.shift():t===this.size-1?this.pop():this.splice(t,1):this},pe.prototype.insert=function(t,e){return this.splice(t,0,e)},pe.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=this._origin=this._capacity=0,this._level=v,this._root=this._tail=null,this.__hash=void 0,this.__altered=!0,this):xe()},pe.prototype.push=function(){var t=arguments,e=this.size;return this.withMutations(function(n){je(n,0,e+t.length);for(var r=0;r>>e&b;if(r>=this.array.length)return new ye([],t);var o,i=0===r;if(e>0){var s=this.array[r];if((o=s&&s.removeBefore(t,e-v,n))===s&&i)return this}if(i&&!o)return this;var a=Se(this,t);if(!i)for(var u=0;u>>e&b;if(o>=this.array.length)return this;if(e>0){var i=this.array[o];if((r=i&&i.removeAfter(t,e-v,n))===i&&o===this.array.length-1)return this}var s=Se(this,t);return s.array.splice(o+1),r&&(s.array[o]=r),s};var be,me,ge={};function _e(t,e){var n=t._origin,r=t._capacity,o=Te(r),i=t._tail;return s(t._root,t._level,0);function s(t,a,u){return 0===a?function(t,s){var a=s===o?i&&i.array:t&&t.array,u=s>n?0:n-s,c=r-s;return c>y&&(c=y),function(){if(u===c)return ge;var t=e?--c:u++;return a&&a[t]}}(t,u):function(t,o,i){var a,u=t&&t.array,c=i>n?0:n-i>>o,l=1+(r-i>>o);return l>y&&(l=y),function(){for(;;){if(a){var t=a();if(t!==ge)return t;a=null}if(c===l)return ge;var n=e?--l:c++;a=s(u&&u[n],o-v,i+(n<>>n&b,u=t&&a0){var c=t&&t.array[a],l=Oe(c,e,n-v,r,o,i);return l===c?t:((s=Se(t,e)).array[a]=l,s)}return u&&t.array[a]===o?t:(x(i),s=Se(t,e),void 0===o&&a===s.array.length-1?s.array.pop():s.array[a]=o,s)}function Se(t,e){return e&&t&&e===t.ownerID?t:new ye(t?t.array.slice():[],e)}function Ee(t,e){if(e>=Te(t._capacity))return t._tail;if(e<1<0;)n=n.array[e>>>r&b],r-=v;return n}}function je(t,e,n){void 0!==e&&(e|=0),void 0!==n&&(n|=0);var r=t.__ownerID||new O,o=t._origin,i=t._capacity,s=o+e,a=void 0===n?i:n<0?i+n:o+n;if(s===o&&a===i)return t;if(s>=a)return t.clear();for(var u=t._level,c=t._root,l=0;s+l<0;)c=new ye(c&&c.array.length?[void 0,c]:[],r),l+=1<<(u+=v);l&&(s+=l,o+=l,a+=l,i+=l);for(var f=Te(i),p=Te(a);p>=1<f?new ye([],r):h;if(h&&p>f&&sv;m-=v){var g=f>>>m&b;y=y.array[g]=Se(y.array[g],r)}y.array[f>>>v&b]=h}if(a=p)s-=p,a-=p,u=v,c=null,d=d&&d.removeBefore(r,0,s);else if(s>o||p>>u&b;if(_!==p>>>u&b)break;_&&(l+=(1<o&&(c=c.removeBefore(r,u,s-l)),c&&pi&&(i=c.size),s(u)||(c=c.map(function(t){return ft(t)})),r.push(c)}return i>t.size&&(t=t.setSize(i)),se(t,e,r)}function Te(t){return t>>v<=y&&s.size>=2*i.size?(o=s.filter(function(t,e){return void 0!==t&&a!==e}),r=o.toKeyedSeq().map(function(t){return t[0]}).flip().toMap(),t.__ownerID&&(r.__ownerID=o.__ownerID=t.__ownerID)):(r=i.remove(e),o=a===s.size-1?s.pop():s.set(a,void 0))}else if(u){if(n===s.get(a)[1])return t;r=i,o=s.set(a,[e,n])}else r=i.set(e,s.size),o=s.set(s.size,[e,n]);return t.__ownerID?(t.size=r.size,t._map=r,t._list=o,t.__hash=void 0,t):Ae(r,o)}function Ne(t,e){this._iter=t,this._useKeys=e,this.size=t.size}function Re(t){this._iter=t,this.size=t.size}function De(t){this._iter=t,this.size=t.size}function Fe(t){this._iter=t,this.size=t.size}function Le(t){var e=Ze(t);return e._iter=t,e.size=t.size,e.flip=function(){return t},e.reverse=function(){var e=t.reverse.apply(this);return e.flip=function(){return t.reverse()},e},e.has=function(e){return t.includes(e)},e.includes=function(e){return t.has(e)},e.cacheResult=tn,e.__iterateUncached=function(e,n){var r=this;return t.__iterate(function(t,n){return!1!==e(n,t,r)},n)},e.__iteratorUncached=function(e,n){if(e===N){var r=t.__iterator(e,n);return new L(function(){var t=r.next();if(!t.done){var e=t.value[0];t.value[0]=t.value[1],t.value[1]=e}return t})}return t.__iterator(e===M?I:M,n)},e}function Ue(t,e,n){var r=Ze(t);return r.size=t.size,r.has=function(e){return t.has(e)},r.get=function(r,o){var i=t.get(r,m);return i===m?o:e.call(n,i,r,t)},r.__iterateUncached=function(r,o){var i=this;return t.__iterate(function(t,o,s){return!1!==r(e.call(n,t,o,s),o,i)},o)},r.__iteratorUncached=function(r,o){var i=t.__iterator(N,o);return new L(function(){var o=i.next();if(o.done)return o;var s=o.value,a=s[0];return U(r,a,e.call(n,s[1],a,t),o)})},r}function Be(t,e){var n=Ze(t);return n._iter=t,n.size=t.size,n.reverse=function(){return t},t.flip&&(n.flip=function(){var e=Le(t);return e.reverse=function(){return t.flip()},e}),n.get=function(n,r){return t.get(e?n:-1-n,r)},n.has=function(n){return t.has(e?n:-1-n)},n.includes=function(e){return t.includes(e)},n.cacheResult=tn,n.__iterate=function(e,n){var r=this;return t.__iterate(function(t,n){return e(t,n,r)},!n)},n.__iterator=function(e,n){return t.__iterator(e,!n)},n}function ze(t,e,n,r){var o=Ze(t);return r&&(o.has=function(r){var o=t.get(r,m);return o!==m&&!!e.call(n,o,r,t)},o.get=function(r,o){var i=t.get(r,m);return i!==m&&e.call(n,i,r,t)?i:o}),o.__iterateUncached=function(o,i){var s=this,a=0;return t.__iterate(function(t,i,u){if(e.call(n,t,i,u))return a++,o(t,r?i:a-1,s)},i),a},o.__iteratorUncached=function(o,i){var s=t.__iterator(N,i),a=0;return new L(function(){for(;;){var i=s.next();if(i.done)return i;var u=i.value,c=u[0],l=u[1];if(e.call(n,l,c,t))return U(o,r?c:a++,l,i)}})},o}function We(t,e,n,r){var o=t.size;if(void 0!==e&&(e|=0),void 0!==n&&(n===1/0?n=o:n|=0),T(e,n,o))return t;var i=k(e,o),s=P(n,o);if(i!=i||s!=s)return We(t.toSeq().cacheResult(),e,n,r);var a,u=s-i;u==u&&(a=u<0?0:u);var c=Ze(t);return c.size=0===a?a:t.size&&a||void 0,!r&&ot(t)&&a>=0&&(c.get=function(e,n){return(e=j(this,e))>=0&&ea)return{value:void 0,done:!0};var t=o.next();return r||e===M?t:U(e,u-1,e===I?void 0:t.value[1],t)})},c}function Ve(t,e,n,r){var o=Ze(t);return o.__iterateUncached=function(o,i){var s=this;if(i)return this.cacheResult().__iterate(o,i);var a=!0,u=0;return t.__iterate(function(t,i,c){if(!a||!(a=e.call(n,t,i,c)))return u++,o(t,r?i:u-1,s)}),u},o.__iteratorUncached=function(o,i){var s=this;if(i)return this.cacheResult().__iterator(o,i);var a=t.__iterator(N,i),u=!0,c=0;return new L(function(){var t,i,l;do{if((t=a.next()).done)return r||o===M?t:U(o,c++,o===I?void 0:t.value[1],t);var f=t.value;i=f[0],l=f[1],u&&(u=e.call(n,l,i,s))}while(u);return o===N?t:U(o,i,l,t)})},o}function qe(t,e,n){var r=Ze(t);return r.__iterateUncached=function(r,o){var i=0,a=!1;return function t(u,c){var l=this;u.__iterate(function(o,u){return(!e||c0}function Ge(t,e,r){var o=Ze(t);return o.size=new tt(r).map(function(t){return t.size}).min(),o.__iterate=function(t,e){for(var n,r=this.__iterator(M,e),o=0;!(n=r.next()).done&&!1!==t(n.value,o++,this););return o},o.__iteratorUncached=function(t,o){var i=r.map(function(t){return t=n(t),V(o?t.reverse():t)}),s=0,a=!1;return new L(function(){var n;return a||(n=i.map(function(t){return t.next()}),a=n.some(function(t){return t.done})),a?{value:void 0,done:!0}:U(t,s++,e.apply(null,n.map(function(t){return t.value})))})},o}function Ye(t,e){return ot(t)?e:t.constructor(e)}function Xe(t){if(t!==Object(t))throw new TypeError("Expected [K, V] tuple: "+t)}function Je(t){return Ft(t.size),E(t)}function Qe(t){return a(t)?r:u(t)?o:i}function Ze(t){return Object.create((a(t)?$:u(t)?G:Y).prototype)}function tn(){return this._iter.cacheResult?(this._iter.cacheResult(),this.size=this._iter.size,this):K.prototype.cacheResult.call(this)}function en(t,e){return t>e?1:t=0;n--)e={value:arguments[n],next:e};return this.__ownerID?(this.size=t,this._head=e,this.__hash=void 0,this.__altered=!0,this):Cn(t,e)},xn.prototype.pushAll=function(t){if(0===(t=o(t)).size)return this;Ft(t.size);var e=this.size,n=this._head;return t.reverse().forEach(function(t){e++,n={value:t,next:n}}),this.__ownerID?(this.size=e,this._head=n,this.__hash=void 0,this.__altered=!0,this):Cn(e,n)},xn.prototype.pop=function(){return this.slice(1)},xn.prototype.unshift=function(){return this.push.apply(this,arguments)},xn.prototype.unshiftAll=function(t){return this.pushAll(t)},xn.prototype.shift=function(){return this.pop.apply(this,arguments)},xn.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._head=void 0,this.__hash=void 0,this.__altered=!0,this):Tn()},xn.prototype.slice=function(t,e){if(T(t,e,this.size))return this;var n=k(t,this.size),r=P(e,this.size);if(r!==this.size)return wt.prototype.slice.call(this,t,e);for(var o=this.size-n,i=this._head;n--;)i=i.next;return this.__ownerID?(this.size=o,this._head=i,this.__hash=void 0,this.__altered=!0,this):Cn(o,i)},xn.prototype.__ensureOwner=function(t){return t===this.__ownerID?this:t?Cn(this.size,this._head,t,this.__hash):(this.__ownerID=t,this.__altered=!1,this)},xn.prototype.__iterate=function(t,e){if(e)return this.reverse().__iterate(t);for(var n=0,r=this._head;r&&!1!==t(r.value,n++,this);)r=r.next;return n},xn.prototype.__iterator=function(t,e){if(e)return this.reverse().__iterator(t);var n=0,r=this._head;return new L(function(){if(r){var e=r.value;return r=r.next,U(t,n++,e)}return{value:void 0,done:!0}})},xn.isStack=On;var Sn,En="@@__IMMUTABLE_STACK__@@",jn=xn.prototype;function Cn(t,e,n,r){var o=Object.create(jn);return o.size=t,o._head=e,o.__ownerID=n,o.__hash=r,o.__altered=!1,o}function Tn(){return Sn||(Sn=Cn(0))}function kn(t,e){var n=function(n){t.prototype[n]=e[n]};return Object.keys(e).forEach(n),Object.getOwnPropertySymbols&&Object.getOwnPropertySymbols(e).forEach(n),t}jn[En]=!0,jn.withMutations=Wt.withMutations,jn.asMutable=Wt.asMutable,jn.asImmutable=Wt.asImmutable,jn.wasAltered=Wt.wasAltered,n.Iterator=L,kn(n,{toArray:function(){Ft(this.size);var t=new Array(this.size||0);return this.valueSeq().__iterate(function(e,n){t[n]=e}),t},toIndexedSeq:function(){return new Re(this)},toJS:function(){return this.toSeq().map(function(t){return t&&"function"==typeof t.toJS?t.toJS():t}).__toJS()},toJSON:function(){return this.toSeq().map(function(t){return t&&"function"==typeof t.toJSON?t.toJSON():t}).__toJS()},toKeyedSeq:function(){return new Ne(this,!0)},toMap:function(){return Lt(this.toKeyedSeq())},toObject:function(){Ft(this.size);var t={};return this.__iterate(function(e,n){t[n]=e}),t},toOrderedMap:function(){return ke(this.toKeyedSeq())},toOrderedSet:function(){return yn(a(this)?this.valueSeq():this)},toSet:function(){return un(a(this)?this.valueSeq():this)},toSetSeq:function(){return new De(this)},toSeq:function(){return u(this)?this.toIndexedSeq():a(this)?this.toKeyedSeq():this.toSetSeq()},toStack:function(){return xn(a(this)?this.valueSeq():this)},toList:function(){return pe(a(this)?this.valueSeq():this)},toString:function(){return"[Iterable]"},__toString:function(t,e){return 0===this.size?t+e:t+" "+this.toSeq().map(this.__toStringMapper).join(", ")+" "+e},concat:function(){var e=t.call(arguments,0);return Ye(this,function(t,e){var n=a(t),o=[t].concat(e).map(function(t){return s(t)?n&&(t=r(t)):t=n?st(t):at(Array.isArray(t)?t:[t]),t}).filter(function(t){return 0!==t.size});if(0===o.length)return t;if(1===o.length){var i=o[0];if(i===t||n&&a(i)||u(t)&&u(i))return i}var c=new tt(o);return n?c=c.toKeyedSeq():u(t)||(c=c.toSetSeq()),(c=c.flatten(!0)).size=o.reduce(function(t,e){if(void 0!==t){var n=e.size;if(void 0!==n)return t+n}},0),c}(this,e))},includes:function(t){return this.some(function(e){return dt(e,t)})},entries:function(){return this.__iterator(N)},every:function(t,e){Ft(this.size);var n=!0;return this.__iterate(function(r,o,i){if(!t.call(e,r,o,i))return n=!1,!1}),n},filter:function(t,e){return Ye(this,ze(this,t,e,!0))},find:function(t,e,n){var r=this.findEntry(t,e);return r?r[1]:n},forEach:function(t,e){return Ft(this.size),this.__iterate(e?t.bind(e):t)},join:function(t){Ft(this.size),t=void 0!==t?""+t:",";var e="",n=!0;return this.__iterate(function(r){n?n=!1:e+=t,e+=null!==r&&void 0!==r?r.toString():""}),e},keys:function(){return this.__iterator(I)},map:function(t,e){return Ye(this,Ue(this,t,e))},reduce:function(t,e,n){var r,o;return Ft(this.size),arguments.length<2?o=!0:r=e,this.__iterate(function(e,i,s){o?(o=!1,r=e):r=t.call(n,r,e,i,s)}),r},reduceRight:function(t,e,n){var r=this.toKeyedSeq().reverse();return r.reduce.apply(r,arguments)},reverse:function(){return Ye(this,Be(this,!0))},slice:function(t,e){return Ye(this,We(this,t,e,!0))},some:function(t,e){return!this.every(Nn(t),e)},sort:function(t){return Ye(this,He(this,t))},values:function(){return this.__iterator(M)},butLast:function(){return this.slice(0,-1)},isEmpty:function(){return void 0!==this.size?0===this.size:!this.some(function(){return!0})},count:function(t,e){return E(t?this.toSeq().filter(t,e):this)},countBy:function(t,e){return function(t,e,n){var r=Lt().asMutable();return t.__iterate(function(o,i){r.update(e.call(n,o,i,t),0,function(t){return t+1})}),r.asImmutable()}(this,t,e)},equals:function(t){return vt(this,t)},entrySeq:function(){var t=this;if(t._cache)return new tt(t._cache);var e=t.toSeq().map(Mn).toIndexedSeq();return e.fromEntrySeq=function(){return t.toSeq()},e},filterNot:function(t,e){return this.filter(Nn(t),e)},findEntry:function(t,e,n){var r=n;return this.__iterate(function(n,o,i){if(t.call(e,n,o,i))return r=[o,n],!1}),r},findKey:function(t,e){var n=this.findEntry(t,e);return n&&n[0]},findLast:function(t,e,n){return this.toKeyedSeq().reverse().find(t,e,n)},findLastEntry:function(t,e,n){return this.toKeyedSeq().reverse().findEntry(t,e,n)},findLastKey:function(t,e){return this.toKeyedSeq().reverse().findKey(t,e)},first:function(){return this.find(C)},flatMap:function(t,e){return Ye(this,function(t,e,n){var r=Qe(t);return t.toSeq().map(function(o,i){return r(e.call(n,o,i,t))}).flatten(!0)}(this,t,e))},flatten:function(t){return Ye(this,qe(this,t,!0))},fromEntrySeq:function(){return new Fe(this)},get:function(t,e){return this.find(function(e,n){return dt(n,t)},void 0,e)},getIn:function(t,e){for(var n,r=this,o=nn(t);!(n=o.next()).done;){var i=n.value;if((r=r&&r.get?r.get(i,m):m)===m)return e}return r},groupBy:function(t,e){return function(t,e,n){var r=a(t),o=(l(t)?ke():Lt()).asMutable();t.__iterate(function(i,s){o.update(e.call(n,i,s,t),function(t){return(t=t||[]).push(r?[s,i]:i),t})});var i=Qe(t);return o.map(function(e){return Ye(t,i(e))})}(this,t,e)},has:function(t){return this.get(t,m)!==m},hasIn:function(t){return this.getIn(t,m)!==m},isSubset:function(t){return t="function"==typeof t.includes?t:n(t),this.every(function(e){return t.includes(e)})},isSuperset:function(t){return(t="function"==typeof t.isSubset?t:n(t)).isSubset(this)},keyOf:function(t){return this.findKey(function(e){return dt(e,t)})},keySeq:function(){return this.toSeq().map(In).toIndexedSeq()},last:function(){return this.toSeq().reverse().first()},lastKeyOf:function(t){return this.toKeyedSeq().reverse().keyOf(t)},max:function(t){return Ke(this,t)},maxBy:function(t,e){return Ke(this,e,t)},min:function(t){return Ke(this,t?Rn(t):Ln)},minBy:function(t,e){return Ke(this,e?Rn(e):Ln,t)},rest:function(){return this.slice(1)},skip:function(t){return this.slice(Math.max(0,t))},skipLast:function(t){return Ye(this,this.toSeq().reverse().skip(t).reverse())},skipWhile:function(t,e){return Ye(this,Ve(this,t,e,!0))},skipUntil:function(t,e){return this.skipWhile(Nn(t),e)},sortBy:function(t,e){return Ye(this,He(this,e,t))},take:function(t){return this.slice(0,Math.max(0,t))},takeLast:function(t){return Ye(this,this.toSeq().reverse().take(t).reverse())},takeWhile:function(t,e){return Ye(this,function(t,e,n){var r=Ze(t);return r.__iterateUncached=function(r,o){var i=this;if(o)return this.cacheResult().__iterate(r,o);var s=0;return t.__iterate(function(t,o,a){return e.call(n,t,o,a)&&++s&&r(t,o,i)}),s},r.__iteratorUncached=function(r,o){var i=this;if(o)return this.cacheResult().__iterator(r,o);var s=t.__iterator(N,o),a=!0;return new L(function(){if(!a)return{value:void 0,done:!0};var t=s.next();if(t.done)return t;var o=t.value,u=o[0],c=o[1];return e.call(n,c,u,i)?r===N?t:U(r,u,c,t):(a=!1,{value:void 0,done:!0})})},r}(this,t,e))},takeUntil:function(t,e){return this.takeWhile(Nn(t),e)},valueSeq:function(){return this.toIndexedSeq()},hashCode:function(){return this.__hash||(this.__hash=function(t){if(t.size===1/0)return 0;var e=l(t),n=a(t),r=e?1:0;return function(t,e){return e=Ot(e,3432918353),e=Ot(e<<15|e>>>-15,461845907),e=Ot(e<<13|e>>>-13,5),e=Ot((e=(e+3864292196|0)^t)^e>>>16,2246822507),e=St((e=Ot(e^e>>>13,3266489909))^e>>>16)}(t.__iterate(n?e?function(t,e){r=31*r+Un(Et(t),Et(e))|0}:function(t,e){r=r+Un(Et(t),Et(e))|0}:e?function(t){r=31*r+Et(t)|0}:function(t){r=r+Et(t)|0}),r)}(this))}});var Pn=n.prototype;Pn[f]=!0,Pn[F]=Pn.values,Pn.__toJS=Pn.toArray,Pn.__toStringMapper=Dn,Pn.inspect=Pn.toSource=function(){return this.toString()},Pn.chain=Pn.flatMap,Pn.contains=Pn.includes,kn(r,{flip:function(){return Ye(this,Le(this))},mapEntries:function(t,e){var n=this,r=0;return Ye(this,this.toSeq().map(function(o,i){return t.call(e,[i,o],r++,n)}).fromEntrySeq())},mapKeys:function(t,e){var n=this;return Ye(this,this.toSeq().flip().map(function(r,o){return t.call(e,r,o,n)}).flip())}});var An=r.prototype;function In(t,e){return e}function Mn(t,e){return[e,t]}function Nn(t){return function(){return!t.apply(this,arguments)}}function Rn(t){return function(){return-t.apply(this,arguments)}}function Dn(t){return"string"==typeof t?JSON.stringify(t):String(t)}function Fn(){return S(arguments)}function Ln(t,e){return te?-1:0}function Un(t,e){return t^e+2654435769+(t<<6)+(t>>2)|0}return An[p]=!0,An[F]=Pn.entries,An.__toJS=Pn.toObject,An.__toStringMapper=function(t,e){return JSON.stringify(e)+": "+Dn(t)},kn(o,{toKeyedSeq:function(){return new Ne(this,!1)},filter:function(t,e){return Ye(this,ze(this,t,e,!1))},findIndex:function(t,e){var n=this.findEntry(t,e);return n?n[0]:-1},indexOf:function(t){var e=this.keyOf(t);return void 0===e?-1:e},lastIndexOf:function(t){var e=this.lastKeyOf(t);return void 0===e?-1:e},reverse:function(){return Ye(this,Be(this,!1))},slice:function(t,e){return Ye(this,We(this,t,e,!1))},splice:function(t,e){var n=arguments.length;if(e=Math.max(0|e,0),0===n||2===n&&!e)return this;t=k(t,t<0?this.count():this.size);var r=this.slice(0,t);return Ye(this,1===n?r:r.concat(S(arguments,2),this.slice(t+e)))},findLastIndex:function(t,e){var n=this.findLastEntry(t,e);return n?n[0]:-1},first:function(){return this.get(0)},flatten:function(t){return Ye(this,qe(this,t,!1))},get:function(t,e){return(t=j(this,t))<0||this.size===1/0||void 0!==this.size&&t>this.size?e:this.find(function(e,n){return n===t},void 0,e)},has:function(t){return(t=j(this,t))>=0&&(void 0!==this.size?this.size===1/0||t1?e-1:0),r=1;r2?n-2:0),o=2;o0&&void 0!==arguments[0]?arguments[0]:[];(Array.isArray(t)?t:[t]).forEach(function(t){t&&t.locale&&(s.a.__addLocaleData(t),u.a.__addLocaleData(t))})}function w(t){var e=t&&t.toLowerCase();return!(!s.a.__localeData__[e]||!u.a.__localeData__[e])}var x="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},O=(function(){function t(t){this.value=t}function e(e){var n,r;function o(n,r){try{var s=e[n](r),a=s.value;a instanceof t?Promise.resolve(a.value).then(function(t){o("next",t)},function(t){o("throw",t)}):i(s.done?"return":"normal",s.value)}catch(t){i("throw",t)}}function i(t,e){switch(t){case"return":n.resolve({value:e,done:!0});break;case"throw":n.reject(e);break;default:n.resolve({value:e,done:!1})}(n=n.next)?o(n.key,n.arg):r=null}this._invoke=function(t,e){return new Promise(function(i,s){var a={key:t,arg:e,resolve:i,reject:s,next:null};r?r=r.next=a:(n=r=a,o(t,e))})},"function"!=typeof e.return&&(this.return=void 0)}"function"==typeof Symbol&&Symbol.asyncIterator&&(e.prototype[Symbol.asyncIterator]=function(){return this}),e.prototype.next=function(t){return this._invoke("next",t)},e.prototype.throw=function(t){return this._invoke("throw",t)},e.prototype.return=function(t){return this._invoke("return",t)}}(),function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}),S=function(){function t(t,e){for(var n=0;n":">","<":"<",'"':""","'":"'"},Q=/[&><"']/g;function Z(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.reduce(function(e,r){return t.hasOwnProperty(r)?e[r]=t[r]:n.hasOwnProperty(r)&&(e[r]=n[r]),e},{})}function tt(){var t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).intl;y()(t,"[React Intl] Could not find required `intl` object. needs to exist in the component ancestry.")}function et(t,e){if(t===e)return!0;if("object"!==(void 0===t?"undefined":x(t))||null===t||"object"!==(void 0===e?"undefined":x(e))||null===e)return!1;var n=Object.keys(t),r=Object.keys(e);if(n.length!==r.length)return!1;for(var o=Object.prototype.hasOwnProperty.bind(e),i=0;i3&&void 0!==arguments[3]?arguments[3]:{},u=s.intl,c=void 0===u?{}:u,l=a.intl,f=void 0===l?{}:l;return!et(e,r)||!et(n,o)||!(f===c||et(Z(f,X),Z(c,X)))}function rt(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.intlPropName,r=void 0===n?"intl":n,o=e.withRef,i=void 0!==o&&o,s=function(e){function n(t,e){O(this,n);var r=T(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,t,e));return tt(e),r}return C(n,e),S(n,[{key:"getWrappedInstance",value:function(){return y()(i,"[React Intl] To access the wrapped instance, the `{withRef: true}` option must be set when calling: `injectIntl()`"),this.refs.wrappedInstance}},{key:"render",value:function(){return p.a.createElement(t,j({},this.props,E({},r,this.context.intl),{ref:i?"wrappedInstance":null}))}}]),n}(f.Component);return s.displayName="InjectIntl("+function(t){return t.displayName||t.name||"Component"}(t)+")",s.contextTypes={intl:H},s.WrappedComponent=t,d()(s,t)}function ot(t){return t}var it=function t(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};O(this,t);var r="ordinal"===n.style,o=function(t){return s.a.prototype._findPluralRuleFunction(t)}(function(t){return s.a.prototype._resolveLocale(t)}(e));this.format=function(t){return o(t,r)}},st=Object.keys(K),at=Object.keys($),ut=Object.keys(G),ct=Object.keys(Y),lt={second:60,minute:60,hour:24,day:30,month:12};function ft(t){var e=u.a.thresholds;e.second=t.second,e.minute=t.minute,e.hour=t.hour,e.day=t.day,e.month=t.month,e["second-short"]=t["second-short"],e["minute-short"]=t["minute-short"],e["hour-short"]=t["hour-short"],e["day-short"]=t["day-short"],e["month-short"]=t["month-short"]}function pt(t,e,n){var r=t&&t[e]&&t[e][n];if(r)return r}function ht(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=t.locale,i=t.formats,s=t.messages,a=t.defaultLocale,u=t.defaultFormats,c=n.id,l=n.defaultMessage;y()(c,"[React Intl] An `id` must be provided to format a message.");var f=s&&s[c];if(!(Object.keys(r).length>0))return f||l||c;var p=void 0;if(f)try{p=e.getMessageFormat(f,o,i).format(r)}catch(t){0}else 0;if(!p&&l)try{p=e.getMessageFormat(l,a,u).format(r)}catch(t){0}return p||f||l||c}var dt=Object.freeze({formatDate:function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=t.locale,i=t.formats,s=t.timeZone,a=r.format,u=new Date(n),c=j({},s&&{timeZone:s},a&&pt(i,"date",a)),l=Z(r,st,c);try{return e.getDateTimeFormat(o,l).format(u)}catch(t){}return String(u)},formatTime:function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=t.locale,i=t.formats,s=t.timeZone,a=r.format,u=new Date(n),c=j({},s&&{timeZone:s},a&&pt(i,"time",a)),l=Z(r,st,c);l.hour||l.minute||l.second||(l=j({},l,{hour:"numeric",minute:"numeric"}));try{return e.getDateTimeFormat(o,l).format(u)}catch(t){}return String(u)},formatRelative:function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=t.locale,i=t.formats,s=r.format,a=new Date(n),c=new Date(r.now),l=s&&pt(i,"relative",s),f=Z(r,ut,l),p=j({},u.a.thresholds);ft(lt);try{return e.getRelativeFormat(o,f).format(a,{now:isFinite(c)?c:e.now()})}catch(t){}finally{ft(p)}return String(a)},formatNumber:function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=t.locale,i=t.formats,s=r.format,a=s&&pt(i,"number",s),u=Z(r,at,a);try{return e.getNumberFormat(o,u).format(n)}catch(t){}return String(n)},formatPlural:function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=t.locale,i=Z(r,ct);try{return e.getPluralFormat(o,i).format(n)}catch(t){}return"other"},formatMessage:ht,formatHTMLMessage:function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return ht(t,e,n,Object.keys(r).reduce(function(t,e){var n=r[e];return t[e]="string"==typeof n?function(t){return(""+t).replace(Q,function(t){return J[t]})}(n):n,t},{}))}}),vt=Object.keys(V),yt=Object.keys(q),bt={formats:{},messages:{},timeZone:null,textComponent:"span",defaultLocale:"en",defaultFormats:{}},mt=function(t){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};O(this,e);var r=T(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,t,n));y()("undefined"!=typeof Intl,"[React Intl] The `Intl` APIs must be available in the runtime, and do not appear to be built-in. An `Intl` polyfill should be loaded.\nSee: http://formatjs.io/guides/runtime-environments/");var o=n.intl,i=void 0;i=isFinite(t.initialNow)?Number(t.initialNow):o?o.now():Date.now();var a=(o||{}).formatters,c=void 0===a?{getDateTimeFormat:m(Intl.DateTimeFormat),getNumberFormat:m(Intl.NumberFormat),getMessageFormat:m(s.a),getRelativeFormat:m(u.a),getPluralFormat:m(it)}:a;return r.state=j({},c,{now:function(){return r._didDisplay?Date.now():i}}),r}return C(e,t),S(e,[{key:"getConfig",value:function(){var t=this.context.intl,e=Z(this.props,vt,t);for(var n in bt)void 0===e[n]&&(e[n]=bt[n]);if(!function(t){for(var e=(t||"").split("-");e.length>0;){if(w(e.join("-")))return!0;e.pop()}return!1}(e.locale)){var r=e,o=(r.locale,r.defaultLocale),i=r.defaultFormats;0,e=j({},e,{locale:o,formats:i,messages:bt.messages})}return e}},{key:"getBoundFormatFns",value:function(t,e){return yt.reduce(function(n,r){return n[r]=dt[r].bind(null,t,e),n},{})}},{key:"getChildContext",value:function(){var t=this.getConfig(),e=this.getBoundFormatFns(t,this.state),n=this.state,r=n.now,o=function(t,e){var n={};for(var r in t)e.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n}(n,["now"]);return{intl:j({},t,e,{formatters:o,now:r})}}},{key:"shouldComponentUpdate",value:function(){for(var t=arguments.length,e=Array(t),n=0;n1?r-1:0),i=1;i0){var v=Math.floor(1099511627776*Math.random()).toString(16),y=function(){var t=0;return function(){return"ELEMENT-"+v+"-"+(t+=1)}}();p="@__"+v+"__@",h={},d={},Object.keys(a).forEach(function(t){var e=a[t];if(Object(f.isValidElement)(e)){var n=y();h[t]=p+n+p,d[n]=e}else h[t]=e})}var b=e({id:o,description:i,defaultMessage:s},h||a),m=void 0;return m=d&&Object.keys(d).length>0?b.split(p).filter(function(t){return!!t}).map(function(t){return d[t]||t}):[b],"function"==typeof l?l.apply(void 0,k(m)):f.createElement.apply(void 0,[c,null].concat(k(m)))}}]),e}(f.Component);kt.displayName="FormattedMessage",kt.contextTypes={intl:H},kt.defaultProps={values:{}};var Pt=function(t){function e(t,n){O(this,e);var r=T(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,t,n));return tt(n),r}return C(e,t),S(e,[{key:"shouldComponentUpdate",value:function(t){var e=this.props.values;if(!et(t.values,e))return!0;for(var n=j({},t,{values:e}),r=arguments.length,o=Array(r>1?r-1:0),i=1;i0?o(r(t),9007199254740991):0}},,,function(t,e){var n=t.exports={version:"2.6.11"};"number"==typeof __e&&(__e=n)},function(t,e,n){(function(e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof e&&e)||Function("return this")()}).call(this,n(113))},function(t,e,n){"use strict";var r=n(157),o=n(644),i=n(352),s=n(95),a=n(90),u=n(643),c=function(){function t(t){this.closed=!1,this._parent=null,this._parents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}return t.prototype.unsubscribe=function(){var t,e=!1;if(!this.closed){var n=this._parent,c=this._parents,f=this._unsubscribe,p=this._subscriptions;this.closed=!0,this._parent=null,this._parents=null,this._subscriptions=null;for(var h=-1,d=c?c.length:0;n;)n.remove(this),n=++h + * Copyright 2014-2018 Benjamin Tan + * Copyright 2011-2013 John-David Dalton + * Available under MIT license + */(function(){"use strict";var i={function:!0,object:!0},s=i[typeof window]&&window||this,a=i[typeof e]&&e,u=i[typeof t]&&t&&!t.nodeType&&t,c=a&&u&&"object"==typeof r&&r;!c||c.global!==c&&c.window!==c&&c.self!==c||(s=c);var l=Math.pow(2,53)-1,f=/\bOpera/,p=Object.prototype,h=p.hasOwnProperty,d=p.toString;function v(t){return(t=String(t)).charAt(0).toUpperCase()+t.slice(1)}function y(t){return t=w(t),/^(?:webOS|i(?:OS|P))/.test(t)?t:v(t)}function b(t,e){for(var n in t)h.call(t,n)&&e(t[n],n,t)}function m(t){return null==t?v(t):d.call(t).slice(8,-1)}function g(t){return String(t).replace(/([ -])(?!$)/g,"$1?")}function _(t,e){var n=null;return function(t,e){var n=-1,r=t?t.length:0;if("number"==typeof r&&r>-1&&r<=l)for(;++n3?"WebKit":/\bOpera\b/.test(R)&&(/\bOPR\b/.test(e)?"Blink":"Presto"))||/\b(?:Midori|Nook|Safari)\b/i.test(e)&&!/^(?:Trident|EdgeHTML)$/.test(N)&&"WebKit"||!N&&/\bMSIE\b/i.test(e)&&("Mac OS"==L?"Tasman":"Trident")||"WebKit"==N&&/\bPlayStation\b(?! Vita\b)/i.test(R)&&"NetFront")&&(N=[a]),"IE"==R&&(a=(/; *(?:XBLWP|ZuneWP)(\d+)/i.exec(e)||0)[1])?(R+=" Mobile",L="Windows Phone "+(/\+$/.test(a)?a:a+".x"),P.unshift("desktop mode")):/\bWPDesktop\b/i.test(e)?(R="IE Mobile",L="Windows Phone 8.x",P.unshift("desktop mode"),M||(M=(/\brv:([\d.]+)/.exec(e)||0)[1])):"IE"!=R&&"Trident"==N&&(a=/\brv:([\d.]+)/.exec(e))&&(R&&P.push("identifying as "+R+(M?" "+M:"")),R="IE",M=a[1]),I){if(function(t,e){var n=null!=t?typeof t[e]:"number";return!(/^(?:boolean|number|string|undefined)$/.test(n)||"object"==n&&!t[e])}(n,"global"))if(x&&(k=(a=x.lang.System).getProperty("os.arch"),L=L||a.getProperty("os.name")+" "+a.getProperty("os.version")),O){try{M=n.require("ringo/engine").version.join("."),R="RingoJS"}catch(t){(a=n.system)&&a.global.system==n.system&&(R="Narwhal",L||(L=a[0].os||null))}R||(R="Rhino")}else"object"==typeof n.process&&!n.process.browser&&(a=n.process)&&("object"==typeof a.versions&&("string"==typeof a.versions.electron?(P.push("Node "+a.versions.node),R="Electron",M=a.versions.electron):"string"==typeof a.versions.nw&&(P.push("Chromium "+M,"Node "+a.versions.node),R="NW.js",M=a.versions.nw)),R||(R="Node.js",k=a.arch,L=a.platform,M=(M=/[\d.]+/.exec(a.version))?M[0]:null));else m(a=n.runtime)==l?(R="Adobe AIR",L=a.flash.system.Capabilities.os):m(a=n.phantom)==v?(R="PhantomJS",M=(a=a.version||null)&&a.major+"."+a.minor+"."+a.patch):"number"==typeof j.documentMode&&(a=/\bTrident\/(\d+)/i.exec(e))?(M=[M,j.documentMode],(a=+a[1]+4)!=M[1]&&(P.push("IE "+M[1]+" mode"),N&&(N[1]=""),M[1]=a),M="IE"==R?String(M[1].toFixed(1)):M[0]):"number"==typeof j.documentMode&&/^(?:Chrome|Firefox)\b/.test(R)&&(P.push("masking as "+R+" "+M),R="IE",M="11.0",N=["Trident"],L="Windows");L=L&&y(L)}if(M&&(a=/(?:[ab]|dp|pre|[ab]\d+pre)(?:\d+\+?)?$/i.exec(M)||/(?:alpha|beta)(?: ?\d)?/i.exec(e+";"+(I&&o.appMinorVersion))||/\bMinefield\b/i.test(e)&&"a")&&(A=/b/i.test(a)?"beta":"alpha",M=M.replace(RegExp(a+"\\+?$"),"")+("beta"==A?E:S)+(/\d+\+?/.exec(a)||"")),"Fennec"==R||"Firefox"==R&&/\b(?:Android|Firefox OS)\b/.test(L))R="Firefox Mobile";else if("Maxthon"==R&&M)M=M.replace(/\.[\d.]+/,".x");else if(/\bXbox\b/i.test(D))"Xbox 360"==D&&(L=null),"Xbox 360"==D&&/\bIEMobile\b/.test(e)&&P.unshift("mobile mode");else if(!/^(?:Chrome|IE|Opera)$/.test(R)&&(!R||D||/Browser|Mobi/.test(R))||"Windows CE"!=L&&!/Mobi/i.test(e))if("IE"==R&&I)try{null===n.external&&P.unshift("platform preview")}catch(t){P.unshift("embedded")}else(/\bBlackBerry\b/.test(D)||/\bBB10\b/.test(e))&&(a=(RegExp(D.replace(/ +/g," *")+"/([.\\d]+)","i").exec(e)||0)[1]||M)?(L=((a=[a,/BB10/.test(e)])[1]?(D=null,F="BlackBerry"):"Device Software")+" "+a[0],M=null):this!=b&&"Wii"!=D&&(I&&C||/Opera/.test(R)&&/\b(?:MSIE|Firefox)\b/i.test(e)||"Firefox"==R&&/\bOS X (?:\d+\.){2,}/.test(L)||"IE"==R&&(L&&!/^Win/.test(L)&&M>5.5||/\bWindows XP\b/.test(L)&&M>8||8==M&&!/\bTrident\b/.test(e)))&&!f.test(a=t.call(b,e.replace(f,"")+";"))&&a.name&&(a="ing as "+a.name+((a=a.version)?" "+a:""),f.test(R)?(/\bIE\b/.test(a)&&"Mac OS"==L&&(L=null),a="identify"+a):(a="mask"+a,R=T?y(T.replace(/([a-z])([A-Z])/g,"$1 $2")):"Opera",/\bIE\b/.test(a)&&(L=null),I||(M=null)),N=["Presto"],P.push(a));else R+=" Mobile";(a=(/\bAppleWebKit\/([\d.]+\+?)/i.exec(e)||0)[1])&&(a=[parseFloat(a.replace(/\.(\d)$/,".0$1")),a],"Safari"==R&&"+"==a[1].slice(-1)?(R="WebKit Nightly",A="alpha",M=a[1].slice(0,-1)):M!=a[1]&&M!=(a[2]=(/\bSafari\/([\d.]+\+?)/i.exec(e)||0)[1])||(M=null),a[1]=(/\bChrome\/([\d.]+)/i.exec(e)||0)[1],537.36==a[0]&&537.36==a[2]&&parseFloat(a[1])>=28&&"WebKit"==N&&(N=["Blink"]),I&&(c||a[1])?(N&&(N[1]="like Chrome"),a=a[1]||((a=a[0])<530?1:a<532?2:a<532.05?3:a<533?4:a<534.03?5:a<534.07?6:a<534.1?7:a<534.13?8:a<534.16?9:a<534.24?10:a<534.3?11:a<535.01?12:a<535.02?"13+":a<535.07?15:a<535.11?16:a<535.19?17:a<536.05?18:a<536.1?19:a<537.01?20:a<537.11?"21+":a<537.13?23:a<537.18?24:a<537.24?25:a<537.36?26:"Blink"!=N?"27":"28")):(N&&(N[1]="like Safari"),a=(a=a[0])<400?1:a<500?2:a<526?3:a<533?4:a<534?"4+":a<535?5:a<537?6:a<538?7:a<601?8:"8"),N&&(N[1]+=" "+(a+="number"==typeof a?".x":/[.+]/.test(a)?"":"+")),"Safari"==R&&(!M||parseInt(M)>45)&&(M=a)),"Opera"==R&&(a=/\bzbov|zvav$/.exec(L))?(R+=" ",P.unshift("desktop mode"),"zvav"==a?(R+="Mini",M=null):R+="Mobile",L=L.replace(RegExp(" *"+a+"$"),"")):"Safari"==R&&/\bChrome\b/.exec(N&&N[1])&&(P.unshift("desktop mode"),R="Chrome Mobile",M=null,/\bOS X\b/.test(L)?(F="Apple",L="iOS 4.3+"):L=null),M&&0==M.indexOf(a=/[\d.]+$/.exec(L))&&e.indexOf("/"+a+"-")>-1&&(L=w(L.replace(a,""))),N&&!/\b(?:Avant|Nook)\b/.test(R)&&(/Browser|Lunascape|Maxthon/.test(R)||"Safari"!=R&&/^iOS/.test(L)&&/\bSafari\b/.test(N[1])||/^(?:Adobe|Arora|Breach|Midori|Opera|Phantom|Rekonq|Rock|Samsung Internet|Sleipnir|Web)/.test(R)&&N[1])&&(a=N[N.length-1])&&P.push(a),P.length&&(P=["("+P.join("; ")+")"]),F&&D&&D.indexOf(F)<0&&P.push("on "+F),D&&P.push((/^on /.test(P[P.length-1])?"":"on ")+D),L&&(a=/ ([\d.+]+)$/.exec(L),u=a&&"/"==L.charAt(L.length-a[0].length-1),L={architecture:32,family:a&&!u?L.replace(a[0],""):L,version:a?a[1]:null,toString:function(){var t=this.version;return this.family+(t&&!u?" "+t:"")+(64==this.architecture?" 64-bit":"")}}),(a=/\b(?:AMD|IA|Win|WOW|x86_|x)64\b/i.exec(k))&&!/\bi686\b/i.test(k)?(L&&(L.architecture=64,L.family=L.family.replace(RegExp(" *"+a),"")),R&&(/\bWOW64\b/i.test(e)||I&&/\w(?:86|32)$/.test(o.cpuClass||o.platform)&&!/\bWin64; x64\b/i.test(e))&&P.unshift("32-bit")):L&&/^OS X/.test(L.family)&&"Chrome"==R&&parseFloat(M)>=39&&(L.architecture=64),e||(e=null);var B={};return B.description=e,B.layout=N&&N[0],B.manufacturer=F,B.name=R,B.prerelease=A,B.product=D,B.ua=e,B.version=R&&M,B.os=L||{architecture:null,family:null,version:null,toString:function(){return"null"}},B.parse=t,B.toString=function(){return this.description||""},B.version&&P.unshift(M),B.name&&P.unshift(R),L&&R&&(L!=String(L).split(" ")[0]||L!=R.split(" ")[0]&&!D)&&P.push(D?"("+L+")":"on "+L),P.length&&(B.description=P.join(" ")),B}();s.platform=x,void 0===(o=function(){return x}.call(e,n,e,t))||(t.exports=o)}).call(this)}).call(this,n(640)(t),n(113))},,function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function r(){this.constructor=t}t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)},o=n(0),i=n(21),s=n(65),a=n(349),u=n(636),c=n(351),l=function(t){function e(e){t.call(this,e),this.destination=e}return r(e,t),e}(i.Subscriber);e.SubjectSubscriber=l;var f=function(t){function e(){t.call(this),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}return r(e,t),e.prototype[c.rxSubscriber]=function(){return new l(this)},e.prototype.lift=function(t){var e=new p(this,this);return e.operator=t,e},e.prototype.next=function(t){if(this.closed)throw new a.ObjectUnsubscribedError;if(!this.isStopped)for(var e=this.observers,n=e.length,r=e.slice(),o=0;o-1:!!l&&Object(r.a)(t,e,n)>-1}},function(t,e,n){"use strict";var r=n(138),o=1/0;e.a=function(t){return null!=t&&t.length?Object(r.a)(t,o):[]}},function(t,e,n){var r=n(55);t.exports=function(t){return r(function(){var e=""[t]('"');return e!==e.toLowerCase()||e.split('"').length>3})}},function(t,e,n){var r=n(92),o=/"/g;t.exports=function(t,e,n,i){var s=String(r(t)),a="<"+e;return""!==n&&(a+=" "+n+'="'+String(i).replace(o,""")+'"'),a+">"+s+""}},function(t,e,n){var r=n(64);t.exports=r},,function(t,e,n){"use strict";var r=n(41),o=n.n(r),i=n(106),s=n(72),a="[object Symbol]";e.a=function(t){return"symbol"==(void 0===t?"undefined":o()(t))||Object(s.a)(t)&&Object(i.a)(t)==a}},,function(t,e,n){var r=n(118),o=n(63),i=n(257),s=n(233),a=n(232),u=function(t,e,n){var c,l,f,p=t&u.F,h=t&u.G,d=t&u.S,v=t&u.P,y=t&u.B,b=t&u.W,m=h?o:o[e]||(o[e]={}),g=m.prototype,_=h?r:d?r[e]:(r[e]||{}).prototype;for(c in h&&(n=e),n)(l=!p&&_&&void 0!==_[c])&&a(m,c)||(f=l?_[c]:n[c],m[c]=h&&"function"!=typeof _[c]?n[c]:y&&l?i(f,r):b&&_[c]==f?function(t){var e=function(e,n,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,n)}return new t(e,n,r)}return t.apply(this,arguments)};return e.prototype=t.prototype,e}(f):v&&"function"==typeof f?i(Function.call,f):f,v&&((m.virtual||(m.virtual={}))[c]=f,t&u.R&&g&&!g[c]&&s(g,c,f)))};u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},function(t,e,n){"use strict";var r=n(220),o=n(87),i=n(152),s=n(20),a=o.a?o.a.isConcatSpreadable:void 0;var u=function(t){return Object(s.a)(t)||Object(i.a)(t)||!!(a&&t&&t[a])};e.a=function t(e,n,o,i,s){var a=-1,c=e.length;for(o||(o=u),s||(s=[]);++a0&&o(l)?n>1?t(l,n-1,o,i,s):Object(r.a)(s,l):i||(s[s.length]=l)}return s}},function(t,e,n){"use strict";var r=n(218),o=n(140);e.a=function(t,e,n,i){var s=!n;n||(n={});for(var a=-1,u=e.length;++a=f){var y=e?null:l(t);if(y)return Object(c.a)(y);h=!1,u=s.a,v=new r.a}else v=e?[]:d;t:for(;++a=120&&b.length>=120)?new o.a(h&&b):void 0}b=t[0];var m=-1,g=d[0];t:for(;++m=0||Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n}},,,function(t,e,n){"use strict";var r=n(0),o=n(1068);r.Observable.prototype.first=o.first},function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function r(){this.constructor=t}t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)},o=function(t){function e(e){t.call(this),this.scheduler=e}return r(e,t),e.create=function(t){return new e(t)},e.dispatch=function(t){t.subscriber.complete()},e.prototype._subscribe=function(t){var n=this.scheduler;if(n)return n.schedule(e.dispatch,0,{subscriber:t});t.complete()},e}(n(0).Observable);e.EmptyObservable=o},function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function r(){this.constructor=t}t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)},o=n(0),i=n(450),s=n(204),a=n(148),u=function(t){function e(e,n){t.call(this),this.array=e,this.scheduler=n,n||1!==e.length||(this._isScalar=!0,this.value=e[0])}return r(e,t),e.create=function(t,n){return new e(t,n)},e.of=function(){for(var t=[],n=0;n1?new e(t,r):1===o?new i.ScalarObservable(t[0],r):new s.EmptyObservable(r)},e.dispatch=function(t){var e=t.array,n=t.index,r=t.count,o=t.subscriber;n>=r?o.complete():(o.next(e[n]),o.closed||(t.index=n+1,this.schedule(t)))},e.prototype._subscribe=function(t){var n=this.array,r=n.length,o=this.scheduler;if(o)return o.schedule(e.dispatch,0,{array:n,index:0,count:r,subscriber:t});for(var i=0;iO;O++)if((p||O in _)&&(m=w(b=_[O],O,g),t))if(e)E[O]=m;else if(m)switch(t){case 3:return!0;case 5:return b;case 6:return O;case 2:u.call(E,b)}else if(l)return!1;return f?-1:c||l?l:E}};t.exports={forEach:c(0),map:c(1),filter:c(2),some:c(3),every:c(4),find:c(5),findIndex:c(6)}},function(t,e,n){var r=n(185);t.exports=Array.isArray||function(t){return"Array"==r(t)}},function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},function(t,e,n){var r=n(133),o=n(64),i=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t])||i(o[t]):r[t]&&r[t][e]||o[t]&&o[t][e]}},function(t,e,n){var r,o,i,s=n(1417),a=n(64),u=n(104),c=n(150),l=n(121),f=n(377),p=n(323),h=a.WeakMap;if(s){var d=new h,v=d.get,y=d.has,b=d.set;r=function(t,e){return b.call(d,t,e),e},o=function(t){return v.call(d,t)||{}},i=function(t){return y.call(d,t)}}else{var m=f("state");p[m]=!0,r=function(t,e){return c(t,m,e),e},o=function(t){return l(t,m)?t[m]:{}},i=function(t){return l(t,m)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},function(t,e,n){var r=n(64),o=n(150),i=n(121),s=n(502),a=n(501),u=n(210),c=u.get,l=u.enforce,f=String(String).split("String");(t.exports=function(t,e,n,a){var u=!!a&&!!a.unsafe,c=!!a&&!!a.enumerable,p=!!a&&!!a.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),l(n).source=f.join("string"==typeof e?e:"")),t!==r?(u?!p&&t[e]&&(c=!0):delete t[e],c?t[e]=n:o(t,e,n)):c?t[e]=n:s(e,n)})(Function.prototype,"toString",function(){return"function"==typeof this&&c(this).source||a(this)})},,function(t,e,n){"use strict";var r=n(106),o=n(283),i=n(72),s={};s["[object Float32Array]"]=s["[object Float64Array]"]=s["[object Int8Array]"]=s["[object Int16Array]"]=s["[object Int32Array]"]=s["[object Uint8Array]"]=s["[object Uint8ClampedArray]"]=s["[object Uint16Array]"]=s["[object Uint32Array]"]=!0,s["[object Arguments]"]=s["[object Array]"]=s["[object ArrayBuffer]"]=s["[object Boolean]"]=s["[object DataView]"]=s["[object Date]"]=s["[object Error]"]=s["[object Function]"]=s["[object Map]"]=s["[object Number]"]=s["[object Object]"]=s["[object RegExp]"]=s["[object Set]"]=s["[object String]"]=s["[object WeakMap]"]=!1;var a=function(t){return Object(i.a)(t)&&Object(o.a)(t.length)&&!!s[Object(r.a)(t)]},u=n(171),c=n(195),l=c.a&&c.a.isTypedArray,f=l?Object(u.a)(l):a;e.a=f},function(t,e,n){"use strict";var r=n(416),o=n(43),i=n(172);var s=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e},a=Object.prototype.hasOwnProperty;var u=function(t){if(!Object(o.a)(t))return s(t);var e=Object(i.a)(t),n=[];for(var r in t)("constructor"!=r||!e&&a.call(t,r))&&n.push(r);return n},c=n(80);e.a=function(t){return Object(c.a)(t)?Object(r.a)(t,!0):u(t)}},function(t,e,n){"use strict";var r=n(20),o=n(279),i=n(240),s="Expected a function";function a(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError(s);var n=function n(){var r=arguments,o=e?e.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var s=t.apply(this,r);return n.cache=i.set(o,s)||i,s};return n.cache=new(a.Cache||i.a),n}a.Cache=i.a;var u=a,c=500;var l=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,f=/\\(\\)?/g,p=function(t){var e=u(t,function(t){return n.size===c&&n.clear(),t}),n=e.cache;return e}(function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(l,function(t,n,r,o){e.push(r?o.replace(f,"$1"):n||t)}),e}),h=n(278);e.a=function(t,e){return Object(r.a)(t)?t:Object(o.a)(t,e)?[t]:p(Object(h.a)(t))}},function(t,e,n){"use strict";var r=function(){this.__data__=[],this.size=0},o=n(170);var i=function(t,e){for(var n=t.length;n--;)if(Object(o.a)(t[n][0],e))return n;return-1},s=Array.prototype.splice;var a=function(t){var e=this.__data__,n=i(e,t);return!(n<0||(n==e.length-1?e.pop():s.call(e,n,1),--this.size,0))};var u=function(t){var e=this.__data__,n=i(e,t);return n<0?void 0:e[n][1]};var c=function(t){return i(this.__data__,t)>-1};var l=function(t,e){var n=this.__data__,r=i(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this};function f(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e-1&&t%1==0&&t=0||(o[n]=t[n]);return o}var v=n(762),y=n.n(v),b=n(74),m=n.n(b),g=n(382),_=null,w={notify:function(){}};var x=function(){function t(t,e,n){this.store=t,this.parentSub=e,this.onStateChange=n,this.unsubscribe=null,this.listeners=w}var e=t.prototype;return e.addNestedSub=function(t){return this.trySubscribe(),this.listeners.subscribe(t)},e.notifyNestedSubs=function(){this.listeners.notify()},e.isSubscribed=function(){return Boolean(this.unsubscribe)},e.trySubscribe=function(){this.unsubscribe||(this.unsubscribe=this.parentSub?this.parentSub.addNestedSub(this.onStateChange):this.store.subscribe(this.onStateChange),this.listeners=function(){var t=[],e=[];return{clear:function(){e=_,t=_},notify:function(){for(var n=t=e,r=0;r, or explicitly pass "'+k+'" as a prop to "'+i+'".'),r.initSelector(),r.initSubscription(),r}r(a,n);var u=a.prototype;return u.getChildContext=function(){var t,e=this.propsMode?null:this.subscription;return(t={})[M]=e||this.context[M],t},u.componentDidMount=function(){C&&(this.subscription.trySubscribe(),this.selector.run(this.props),this.selector.shouldComponentUpdate&&this.forceUpdate())},u.componentWillReceiveProps=function(t){this.selector.run(t)},u.shouldComponentUpdate=function(){return this.selector.shouldComponentUpdate},u.componentWillUnmount=function(){this.subscription&&this.subscription.tryUnsubscribe(),this.subscription=null,this.notifyNestedSubs=j,this.store=null,this.selector.run=j,this.selector.shouldComponentUpdate=!1},u.getWrappedInstance=function(){return m()(A,"To access the wrapped instance, you need to specify { withRef: true } in the options argument of the "+v+"() call."),this.wrappedInstance},u.setWrappedInstance=function(t){this.wrappedInstance=t},u.initSelector=function(){var e=t(this.store.dispatch,s);this.selector=function(t,e){var n={run:function(r){try{var o=t(e.getState(),r);(o!==n.props||n.error)&&(n.shouldComponentUpdate=!0,n.props=o,n.error=null)}catch(t){n.shouldComponentUpdate=!0,n.error=t}}};return n}(e,this.store),this.selector.run(this.props)},u.initSubscription=function(){if(C){var t=(this.propsMode?this.props:this.context)[M];this.subscription=new x(this.store,t,this.onStateChange.bind(this)),this.notifyNestedSubs=this.subscription.notifyNestedSubs.bind(this.subscription)}},u.onStateChange=function(){this.selector.run(this.props),this.selector.shouldComponentUpdate?(this.componentDidUpdate=this.notifyNestedSubsOnComponentDidUpdate,this.setState(E)):this.notifyNestedSubs()},u.notifyNestedSubsOnComponentDidUpdate=function(){this.componentDidUpdate=void 0,this.notifyNestedSubs()},u.isSubscribed=function(){return Boolean(this.subscription)&&this.subscription.isSubscribed()},u.addExtraProps=function(t){if(!(A||_||this.propsMode&&this.subscription))return t;var e=h({},t);return A&&(e.ref=this.setWrappedInstance),_&&(e[_]=this.renderCount++),this.propsMode&&this.subscription&&(e[M]=this.subscription),e},u.render=function(){var t=this.selector;if(t.shouldComponentUpdate=!1,t.error)throw t.error;return Object(o.createElement)(e,this.addExtraProps(t.props))},a}(o.Component);return O&&(a.prototype.UNSAFE_componentWillReceiveProps=a.prototype.componentWillReceiveProps,delete a.prototype.componentWillReceiveProps),a.WrappedComponent=e,a.displayName=i,a.childContextTypes=D,a.contextTypes=R,a.propTypes=R,y()(a,e)}}var T=Object.prototype.hasOwnProperty;function k(t,e){return t===e?0!==t||0!==e||1/t==1/e:t!=t&&e!=e}function P(t,e){if(k(t,e))return!0;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return!1;var n=Object.keys(t),r=Object.keys(e);if(n.length!==r.length)return!1;for(var o=0;o=0;r--){var o=e[r](t);if(o)return o}return function(e,r){throw new Error("Invalid value of type "+typeof t+" for "+n+" argument when connecting component "+r.wrappedComponentName+".")}}function V(t,e){return t===e}var q=function(t){var e=void 0===t?{}:t,n=e.connectHOC,r=void 0===n?C:n,o=e.mapStateToPropsFactories,i=void 0===o?D:o,s=e.mapDispatchToPropsFactories,a=void 0===s?R:s,u=e.mergePropsFactories,c=void 0===u?L:u,l=e.selectorFactory,f=void 0===l?z:l;return function(t,e,n,o){void 0===o&&(o={});var s=o,u=s.pure,l=void 0===u||u,p=s.areStatesEqual,v=void 0===p?V:p,y=s.areOwnPropsEqual,b=void 0===y?P:y,m=s.areStatePropsEqual,g=void 0===m?P:m,_=s.areMergedPropsEqual,w=void 0===_?P:_,x=d(s,["pure","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","areMergedPropsEqual"]),O=W(t,i,"mapStateToProps"),S=W(e,a,"mapDispatchToProps"),E=W(n,c,"mergeProps");return r(f,h({methodName:"connect",getDisplayName:function(t){return"Connect("+t+")"},shouldHandleStateChanges:Boolean(t),initMapStateToProps:O,initMapDispatchToProps:S,initMergeProps:E,pure:l,areStatesEqual:v,areOwnPropsEqual:b,areStatePropsEqual:g,areMergedPropsEqual:w},x))}}();n.d(e,"a",function(){return f}),n.d(e,!1,function(){return l}),n.d(e,!1,function(){return C}),n.d(e,"b",function(){return q})},function(t,e,n){"use strict";var r=n(0),o=n(1005);r.Observable.prototype.startWith=o.startWith},function(t,e,n){"use strict";var r=n(0),o=n(631);r.Observable.prototype.switchMap=o.switchMap},function(t,e,n){"use strict";var r=n(465),o=n(356),i=n(464),s=n(665),a="undefined"!=typeof document&&"number"==typeof document.documentMode||"undefined"!=typeof navigator&&"string"==typeof navigator.userAgent&&/\bEdge\/\d/.test(navigator.userAgent);function u(t){if(a){var e=t.node,n=t.children;if(n.length)for(var r=0;r1){for(var d=Array(h),v=0;v1){for(var b=Array(y),m=0;mp))return!1;var d=l.get(t);if(d&&l.get(e))return d==e;var v=-1,y=!0,b=n&u?new o.a:void 0;for(l.set(t,e),l.set(e,t);++v1?n[i-1]:void 0,a=i>2?n[2]:void 0;for(s=t.length>3&&"function"==typeof s?(i--,s):void 0,a&&Object(o.a)(n[0],n[1],a)&&(s=i<3?void 0:s,i=1),e=Object(e);++r-1&&t%1==0&&t<=r}},function(t,e,n){"use strict";var r=n(106),o=n(43),i="[object AsyncFunction]",s="[object Function]",a="[object GeneratorFunction]",u="[object Proxy]";e.a=function(t){if(!Object(o.a)(t))return!1;var e=Object(r.a)(t);return e==s||e==a||e==i||e==u}},,,function(t,e,n){"use strict";var r=n(138);e.a=function(t){return null!=t&&t.length?Object(r.a)(t,1):[]}},,function(t,e,n){"use strict";var r=n(125),o=function(){try{var t=Object(r.a)(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();e.a=o},function(t,e,n){"use strict";var r=n(69).a.Uint8Array;e.a=r},function(t,e,n){"use strict";var r=n(1099).default;n(1094),(e=t.exports=r).default=e},function(t,e,n){"use strict";e.__esModule=!0,e.default=function(){for(var t=arguments.length,e=Array(t),n=0;n=2?function(n){return s.pipe(r.scan(t,e),o.takeLast(1),i.defaultIfEmpty(e))(n)}:function(e){return s.pipe(r.scan(function(e,n,r){return t(e,n,r+1)}),o.takeLast(1))(e)}}},function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function r(){this.constructor=t}t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)},o=function(t){function e(){var e=t.call(this,"argument out of range");this.name=e.name="ArgumentOutOfRangeError",this.stack=e.stack,this.message=e.message}return r(e,t),e}(Error);e.ArgumentOutOfRangeError=o},function(t,e,n){"use strict";var r=n(148),o=n(641),i=n(447),s=n(438);e.concat=function(){for(var t=[],e=0;e=0}},function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function r(){this.constructor=t}t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)},o=n(21);e.map=function(t,e){return function(n){if("function"!=typeof t)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new i(t,e))}};var i=function(){function t(t,e){this.project=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new s(t,this.project,this.thisArg))},t}();e.MapOperator=i;var s=function(t){function e(e,n,r){t.call(this,e),this.project=n,this.count=0,this.thisArg=r||this}return r(e,t),e.prototype._next=function(t){var e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(t){return void this.destination.error(t)}this.destination.next(e)},e}(o.Subscriber)},function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function r(){this.constructor=t}t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)},o=n(36),i=n(37);e.mergeMap=function(t,e,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),function(r){return"number"==typeof e&&(n=e,e=null),r.lift(new s(t,e,n))}};var s=function(){function t(t,e,n){void 0===n&&(n=Number.POSITIVE_INFINITY),this.project=t,this.resultSelector=e,this.concurrent=n}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.project,this.resultSelector,this.concurrent))},t}();e.MergeMapOperator=s;var a=function(t){function e(e,n,r,o){void 0===o&&(o=Number.POSITIVE_INFINITY),t.call(this,e),this.project=n,this.resultSelector=r,this.concurrent=o,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return r(e,t),e.prototype._next=function(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(i.OuterSubscriber);e.MergeMapSubscriber=a},function(t,e,n){"use strict";var r=n(0),o=n(205),i=n(148),s=n(347);e.merge=function(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof u&&(n=t.pop()),null===a&&1===t.length&&t[0]instanceof r.Observable?t[0]:s.mergeAll(n)(new o.ArrayObservable(t,a))}},function(t,e,n){"use strict";var r=n(0),o=function(){function t(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}return t.prototype.observe=function(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}},t.prototype.do=function(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}},t.prototype.accept=function(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)},t.prototype.toObservable=function(){switch(this.kind){case"N":return r.Observable.of(this.value);case"E":return r.Observable.throw(this.error);case"C":return r.Observable.empty()}throw new Error("unexpected notification kind value")},t.createNext=function(e){return void 0!==e?new t("N",e):t.undefinedValueNotification},t.createError=function(e){return new t("E",void 0,e)},t.createComplete=function(){return t.completeNotification},t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t}();e.Notification=o},function(t,e,n){"use strict";var r=n(103);function o(t){var e=t.Symbol;if("function"==typeof e)return e.iterator||(e.iterator=e("iterator polyfill")),e.iterator;var n=t.Set;if(n&&"function"==typeof(new n)["@@iterator"])return"@@iterator";var r=t.Map;if(r)for(var o=Object.getOwnPropertyNames(r.prototype),i=0;i=e.length?{value:void 0,done:!0}:(t=r(e,n),this._i+=t.length,{value:t,done:!1})})},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e){t.exports=!0},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e,n){"use strict";t.exports=function(t){for(var e=arguments.length-1,n="Minified React error #"+t+"; visit http://facebook.github.io/react/docs/error-decoder.html?invariant="+t,r=0;r=c?t?"":void 0:(i=a.charCodeAt(u))<55296||i>56319||u+1===c||(s=a.charCodeAt(u+1))<56320||s>57343?t?a.charAt(u):i:t?a.slice(u,u+2):s-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},function(t,e,n){var r=n(731),o=n(497);t.exports=Object.keys||function(t){return r(t,o)}},function(t,e,n){var r=n(55),o=n(59),i=n(494),s=o("species");t.exports=function(t){return i>=51||!r(function(){var e=[];return(e.constructor={})[s]=function(){return{foo:1}},1!==e[t](Boolean).foo})}},function(t,e,n){var r=n(104),o=n(207),i=n(59)("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},function(t,e,n){"use strict";var r=n(378),o=n(120),i=n(265);t.exports=function(t,e,n){var s=r(e);s in t?o.f(t,s,i(0,n)):t[s]=n}},function(t,e){t.exports={}},function(t,e,n){var r=n(55),o=n(185),i="".split;t.exports=r(function(){return!Object("z").propertyIsEnumerable(0)})?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},,,function(t,e,n){"use strict";var r=n(78);e.Subject=r.Subject,e.AnonymousSubject=r.AnonymousSubject;var o=n(0);e.Observable=o.Observable,n(1e3),n(997),n(994),n(611),n(992),n(228),n(444),n(989),n(988),n(985),n(340),n(982),n(979),n(612),n(603),n(976),n(975),n(85),n(972),n(970),n(967),n(964),n(961),n(229),n(958),n(115),n(956),n(609),n(950),n(607),n(948),n(946),n(102),n(944),n(942),n(940),n(938),n(936),n(934),n(932),n(930),n(928),n(926),n(924),n(436),n(591),n(921),n(918),n(916),n(332),n(913),n(911),n(909),n(907),n(114),n(905),n(903),n(901),n(203),n(899),n(894),n(892),n(890),n(888),n(886),n(884),n(882),n(40),n(880),n(878),n(876),n(615),n(874),n(58),n(872),n(870),n(868),n(866),n(864),n(862),n(860),n(858),n(94),n(855),n(853),n(851),n(849),n(618),n(847),n(845),n(843),n(841),n(440),n(839),n(837),n(337),n(835),n(833),n(831),n(829),n(827),n(825),n(823),n(821),n(249),n(819),n(811),n(250),n(809),n(437),n(807),n(230),n(805),n(616),n(803),n(801),n(540),n(799),n(797),n(795),n(793),n(792),n(790),n(788),n(786),n(784),n(530),n(781),n(779);var i=n(65);e.Subscription=i.Subscription;var s=n(21);e.Subscriber=s.Subscriber;var a=n(336);e.AsyncSubject=a.AsyncSubject;var u=n(333);e.ReplaySubject=u.ReplaySubject;var c=n(448);e.BehaviorSubject=c.BehaviorSubject;var l=n(568);e.ConnectableObservable=l.ConnectableObservable;var f=n(304);e.Notification=f.Notification;var p=n(346);e.EmptyError=p.EmptyError;var h=n(295);e.ArgumentOutOfRangeError=h.ArgumentOutOfRangeError;var d=n(349);e.ObjectUnsubscribedError=d.ObjectUnsubscribedError;var v=n(538);e.TimeoutError=v.TimeoutError;var y=n(643);e.UnsubscriptionError=y.UnsubscriptionError;var b=n(542);e.TimeInterval=b.TimeInterval;var m=n(427);e.Timestamp=m.Timestamp;var g=n(777);e.TestScheduler=g.TestScheduler;var _=n(524);e.VirtualTimeScheduler=_.VirtualTimeScheduler;var w=n(623);e.AjaxResponse=w.AjaxResponse,e.AjaxError=w.AjaxError,e.AjaxTimeoutError=w.AjaxTimeoutError;var x=n(452);e.pipe=x.pipe;var O=n(548),S=n(53),E=n(602),j=n(774),C=n(351),T=n(305),k=n(350),P=n(770);e.operators=P;var A={asap:O.asap,queue:E.queue,animationFrame:j.animationFrame,async:S.async};e.Scheduler=A;var I={rxSubscriber:C.rxSubscriber,observable:k.observable,iterator:T.iterator};e.Symbol=I},,function(t,e,n){"use strict";var r=n(414),o=n(281),i=n(97);e.a=function(t){return Object(r.a)(t,i.a,o.a)}},function(t,e,n){"use strict";var r=n(43),o=n(135),i=NaN,s=/^\s+|\s+$/g,a=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,c=/^0o[0-7]+$/i,l=parseInt;e.a=function(t){if("number"==typeof t)return t;if(Object(o.a)(t))return i;if(Object(r.a)(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Object(r.a)(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(s,"");var n=u.test(t);return n||c.test(t)?l(t.slice(2),n?2:8):a.test(t)?i:+t}},function(t,e,n){t.exports={default:n(1150),__esModule:!0}},function(t,e,n){"use strict";var r=n(0),o=n(914);r.Observable.prototype.do=o._do,r.Observable.prototype._do=o._do},function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function r(){this.constructor=t}t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)},o=n(78),i=n(602),s=n(65),a=n(348),u=n(349),c=n(636),l=function(t){function e(e,n,r){void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=Number.POSITIVE_INFINITY),t.call(this),this.scheduler=r,this._events=[],this._bufferSize=e<1?1:e,this._windowTime=n<1?1:n}return r(e,t),e.prototype.next=function(e){var n=this._getNow();this._events.push(new f(n,e)),this._trimBufferThenGetEvents(),t.prototype.next.call(this,e)},e.prototype._subscribe=function(t){var e,n=this._trimBufferThenGetEvents(),r=this.scheduler;if(this.closed)throw new u.ObjectUnsubscribedError;this.hasError?e=s.Subscription.EMPTY:this.isStopped?e=s.Subscription.EMPTY:(this.observers.push(t),e=new c.SubjectSubscription(this,t)),r&&t.add(t=new a.ObserveOnSubscriber(t,r));for(var o=n.length,i=0;ie&&(i=Math.max(i,o-e)),i>0&&r.splice(0,i),r},e}(o.Subject);e.ReplaySubject=l;var f=function(){return function(t,e){this.time=t,this.value=e}}()},function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function r(){this.constructor=t}t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)},o=n(205),i=n(157),s=n(21),a=n(37),u=n(36),c=n(305);function l(){for(var t=[],e=0;ethis.index},t.prototype.hasCompleted=function(){return this.array.length===this.index},t}(),v=function(t){function e(e,n,r){t.call(this,e),this.parent=n,this.observable=r,this.stillUnsubscribed=!0,this.buffer=[],this.isComplete=!1}return r(e,t),e.prototype[c.iterator]=function(){return this},e.prototype.next=function(){var t=this.buffer;return 0===t.length&&this.isComplete?{value:null,done:!0}:{value:t.shift(),done:!1}},e.prototype.hasValue=function(){return this.buffer.length>0},e.prototype.hasCompleted=function(){return 0===this.buffer.length&&this.isComplete},e.prototype.notifyComplete=function(){this.buffer.length>0?(this.isComplete=!0,this.parent.notifyInactive()):this.destination.complete()},e.prototype.notifyNext=function(t,e,n,r,o){this.buffer.push(e),this.parent.checkIterators()},e.prototype.subscribe=function(t,e){return u.subscribeToResult(this,this.observable,this,e)},e}(a.OuterSubscriber)},function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function r(){this.constructor=t}t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)},o=n(205),i=n(157),s=n(37),a=n(36),u={};e.combineLatest=function(){for(var t=[],e=0;e]/;t.exports=function(t){return"boolean"==typeof t||"number"==typeof t?""+t:function(t){var e,n=""+t,o=r.exec(n);if(!o)return n;var i="",s=0,a=0;for(s=o.index;s]/,u=n(464)(function(t,e){if(t.namespaceURI!==i.svg||"innerHTML"in t)t.innerHTML=e;else{(r=r||document.createElement("div")).innerHTML=""+e+"";for(var n=r.firstChild;n.firstChild;)t.appendChild(n.firstChild)}});if(o.canUseDOM){var c=document.createElement("div");c.innerHTML=" ",""===c.innerHTML&&(u=function(t,e){if(t.parentNode&&t.parentNode.replaceChild(t,t),s.test(e)||"<"===e[0]&&a.test(e)){t.innerHTML=String.fromCharCode(65279)+e;var n=t.firstChild;1===n.data.length?t.removeChild(n):n.deleteData(0,1)}else t.innerHTML=e}),c=null}t.exports=u},function(t,e,n){"use strict";var r=n(308),o=n(666),i={screenX:null,screenY:null,clientX:null,clientY:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,getModifierState:n(467),button:function(t){var e=t.button;return"which"in t?e:2===e?2:4===e?1:0},buttons:null,relatedTarget:function(t){return t.relatedTarget||(t.fromElement===t.srcElement?t.toElement:t.fromElement)},pageX:function(t){return"pageX"in t?t.pageX:t.clientX+o.currentScrollLeft},pageY:function(t){return"pageY"in t?t.pageY:t.clientY+o.currentScrollTop}};function s(t,e,n,o){return r.call(this,t,e,n,o)}r.augmentClass(s,i),t.exports=s},function(t,e,n){"use strict";var r=n(44),o=(n(32),{}),i={reinitializeTransaction:function(){this.transactionWrappers=this.getTransactionWrappers(),this.wrapperInitData?this.wrapperInitData.length=0:this.wrapperInitData=[],this._isInTransaction=!1},_isInTransaction:!1,getTransactionWrappers:null,isInTransaction:function(){return!!this._isInTransaction},perform:function(t,e,n,o,i,s,a,u){var c,l;this.isInTransaction()&&r("27");try{this._isInTransaction=!0,c=!0,this.initializeAll(0),l=t.call(e,n,o,i,s,a,u),c=!1}finally{try{if(c)try{this.closeAll(0)}catch(t){}else this.closeAll(0)}finally{this._isInTransaction=!1}}return l},initializeAll:function(t){for(var e=this.transactionWrappers,n=t;n1)for(var n=1;nd;d++)if((y=l?g(r(m=t[d])[0],m[1]):g(t[d]))&&y instanceof c)return y;return new c(!1)}p=h.call(t)}for(b=p.next;!(m=b.call(p)).done;)if("object"==typeof(y=u(p,g,m.value,l))&&y&&y instanceof c)return y;return new c(!1)}).stop=function(t){return new c(!0,t)}},function(t,e,n){"use strict";var r=n(318).charAt,o=n(210),i=n(715),s=o.set,a=o.getterFor("String Iterator");i(String,"String",function(t){s(this,{type:"String Iterator",string:String(t),index:0})},function(){var t,e=a(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})})},function(t,e,n){var r=n(92),o="["+n(486)+"]",i=RegExp("^"+o+o+"*"),s=RegExp(o+o+"*$"),a=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(s,"")),n}};t.exports={start:a(1),end:a(2),trim:a(3)}},function(t,e,n){var r=n(96),o=n(163),i=n(59)("species");t.exports=function(t,e){var n,s=r(t).constructor;return void 0===s||void 0==(n=r(s)[i])?e:o(n)}},function(t,e,n){var r=n(185),o=n(374);t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},function(t,e,n){"use strict";var r=n(318).charAt;t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},function(t,e,n){"use strict";n(724);var r=n(211),o=n(55),i=n(59),s=n(374),a=n(150),u=i("species"),c=!o(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")}),l="$0"==="a".replace(/./,"$0"),f=i("replace"),p=!!/./[f]&&""===/./[f]("a","$0"),h=!o(function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]});t.exports=function(t,e,n,f){var d=i(t),v=!o(function(){var e={};return e[d]=function(){return 7},7!=""[t](e)}),y=v&&!o(function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[d]=/./[d]),n.exec=function(){return e=!0,null},n[d](""),!e});if(!v||!y||"replace"===t&&(!c||!l||p)||"split"===t&&!h){var b=/./[d],m=n(d,""[t],function(t,e,n,r,o){return e.exec===s?v&&!o?{done:!0,value:b.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}},{REPLACE_KEEPS_$0:l,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:p}),g=m[0],_=m[1];r(String.prototype,t,g),r(RegExp.prototype,d,2==e?function(t,e){return _.call(t,this,e)}:function(t){return _.call(t,this)})}f&&a(RegExp.prototype[d],"sham",!0)}},function(t,e,n){var r=n(104),o=n(185),i=n(59)("match");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},function(t,e,n){"use strict";var r=n(491),o=n(1388),i=RegExp.prototype.exec,s=String.prototype.replace,a=i,u=function(){var t=/a/,e=/b*/g;return i.call(t,"a"),i.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),c=o.UNSUPPORTED_Y||o.BROKEN_CARET,l=void 0!==/()??/.exec("")[1];(u||l||c)&&(a=function(t){var e,n,o,a,f=this,p=c&&f.sticky,h=r.call(f),d=f.source,v=0,y=t;return p&&(-1===(h=h.replace("y","")).indexOf("g")&&(h+="g"),y=String(t).slice(f.lastIndex),f.lastIndex>0&&(!f.multiline||f.multiline&&"\n"!==t[f.lastIndex-1])&&(d="(?: "+d+")",y=" "+y,v++),n=new RegExp("^(?:"+d+")",h)),l&&(n=new RegExp("^"+d+"$(?!\\s)",h)),u&&(e=f.lastIndex),o=i.call(p?n:f,y),p?o?(o.input=o.input.slice(v),o[0]=o[0].slice(v),o.index=f.lastIndex,f.lastIndex+=o[0].length):f.lastIndex=0:u&&o&&(f.lastIndex=f.global?o.index+o[0].length:e),l&&o&&o.length>1&&s.call(o[0],n,function(){for(a=1;a"+t+"<\/script>"},h=function(){try{r=document.domain&&new ActiveXObject("htmlfile")}catch(t){}h=r?function(t){t.write(p("")),t.close();var e=t.parentWindow.Object;return t=null,e}(r):function(){var t,e=c("iframe");return e.style.display="none",u.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(p("document.F=Object")),t.close(),t.F}();for(var t=s.length;t--;)delete h.prototype[s[t]];return h()};a[l]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(f.prototype=o(t),n=new f,f.prototype=null,n[l]=t):n=h(),void 0===e?n:i(n,e)}},function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++n+r).toString(36)}},function(t,e,n){var r=n(500),o=n(376),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},function(t,e,n){var r=n(104);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,e,n){"use strict";var r={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,i=o&&!r.call({1:2},1);e.f=i?function(t){var e=o(this,t);return!!e&&e.enumerable}:r},function(t,e,n){"use strict";var r=n(174),o=n(398),i=n(218),s=n(139),a=n(97);var u=function(t,e){return t&&Object(s.a)(e,Object(a.a)(e),t)},c=n(214);var l=function(t,e){return t&&Object(s.a)(e,Object(c.a)(e),t)},f=n(404),p=n(275),h=n(281);var d=function(t,e){return Object(s.a)(t,Object(h.a)(t),e)},v=n(406);var y=function(t,e){return Object(s.a)(t,Object(v.a)(t),e)},b=n(329),m=n(407),g=n(154),_=Object.prototype.hasOwnProperty;var w=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&_.call(t,"index")&&(n.index=t.index,n.input=t.input),n},x=n(276);var O=function(t,e){var n=e?Object(x.a)(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)},S=/\w*$/;var E=function(t){var e=new t.constructor(t.source,S.exec(t));return e.lastIndex=t.lastIndex,e},j=n(87),C=j.a?j.a.prototype:void 0,T=C?C.valueOf:void 0;var k=function(t){return T?Object(T.call(t)):{}},P=n(403),A="[object Boolean]",I="[object Date]",M="[object Map]",N="[object Number]",R="[object RegExp]",D="[object Set]",F="[object String]",L="[object Symbol]",U="[object ArrayBuffer]",B="[object DataView]",z="[object Float32Array]",W="[object Float64Array]",V="[object Int8Array]",q="[object Int16Array]",H="[object Int32Array]",K="[object Uint8Array]",$="[object Uint8ClampedArray]",G="[object Uint16Array]",Y="[object Uint32Array]";var X=function(t,e,n){var r=t.constructor;switch(e){case U:return Object(x.a)(t);case A:case I:return new r(+t);case B:return O(t,n);case z:case W:case V:case q:case H:case K:case $:case G:case Y:return Object(P.a)(t,n);case M:return new r;case N:case F:return new r(t);case R:return E(t);case D:return new r;case L:return k(t)}},J=n(384),Q=n(20),Z=n(155),tt=n(72),et="[object Map]";var nt=function(t){return Object(tt.a)(t)&&Object(g.a)(t)==et},rt=n(171),ot=n(195),it=ot.a&&ot.a.isMap,st=it?Object(rt.a)(it):nt,at=n(43),ut="[object Set]";var ct=function(t){return Object(tt.a)(t)&&Object(g.a)(t)==ut},lt=ot.a&&ot.a.isSet,ft=lt?Object(rt.a)(lt):ct,pt=1,ht=2,dt=4,vt="[object Arguments]",yt="[object Function]",bt="[object GeneratorFunction]",mt="[object Object]",gt={};gt[vt]=gt["[object Array]"]=gt["[object ArrayBuffer]"]=gt["[object DataView]"]=gt["[object Boolean]"]=gt["[object Date]"]=gt["[object Float32Array]"]=gt["[object Float64Array]"]=gt["[object Int8Array]"]=gt["[object Int16Array]"]=gt["[object Int32Array]"]=gt["[object Map]"]=gt["[object Number]"]=gt[mt]=gt["[object RegExp]"]=gt["[object Set]"]=gt["[object String]"]=gt["[object Symbol]"]=gt["[object Uint8Array]"]=gt["[object Uint8ClampedArray]"]=gt["[object Uint16Array]"]=gt["[object Uint32Array]"]=!0,gt["[object Error]"]=gt[yt]=gt["[object WeakMap]"]=!1;var _t=function t(e,n,s,c,h,v){var _,x=n&pt,O=n&ht,S=n&dt;if(s&&(_=h?s(e,c,h,v):s(e)),void 0!==_)return _;if(!Object(at.a)(e))return e;var E=Object(Q.a)(e);if(E){if(_=w(e),!x)return Object(p.a)(e,_)}else{var j=Object(g.a)(e),C=j==yt||j==bt;if(Object(Z.a)(e))return Object(f.a)(e,x);if(j==mt||j==vt||C&&!h){if(_=O||C?{}:Object(J.a)(e),!x)return O?y(e,l(_,e)):d(e,u(_,e))}else{if(!gt[j])return h?e:{};_=X(e,j,x)}}v||(v=new r.a);var T=v.get(e);if(T)return T;if(v.set(e,_),ft(e))return e.forEach(function(r){_.add(t(r,n,s,r,e,v))}),_;if(st(e))return e.forEach(function(r,o){_.set(o,t(r,n,s,o,e,v))}),_;var k=S?O?m.a:b.a:O?keysIn:a.a,P=E?void 0:k(e);return Object(o.a)(P||e,function(r,o){P&&(r=e[o=r]),Object(i.a)(_,o,t(r,n,s,o,e,v))}),_},wt=1,xt=4;e.a=function(t){return _t(t,wt|xt)}},function(t,e,n){"use strict";var r=n(218),o=n(139),i=n(274),s=n(80),a=n(172),u=n(97),c=Object.prototype.hasOwnProperty,l=Object(i.a)(function(t,e){if(Object(a.a)(e)||Object(s.a)(e))Object(o.a)(e,Object(u.a)(e),t);else for(var n in e)c.call(e,n)&&Object(r.a)(t,n,e[n])});e.a=l},function(t,e,n){"use strict";t.exports=n(1261)},function(t,e,n){"use strict";var r=n(172),o=n(331),i=n.n(o),s=n(419),a=Object(s.a)(i.a,Object),u=Object.prototype.hasOwnProperty;e.a=function(t){if(!Object(r.a)(t))return a(t);var e=[];for(var n in Object(t))u.call(t,n)&&"constructor"!=n&&e.push(n);return e}},function(t,e,n){"use strict";var r=n(505),o=n.n(r),i=n(43),s=o.a,a=function(){function t(){}return function(e){if(!Object(i.a)(e))return{};if(s)return s(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}(),u=n(277),c=n(172);e.a=function(t){return"function"!=typeof t.constructor||Object(c.a)(t)?{}:a(Object(u.a)(t))}},function(t,e,n){"use strict";var r=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)},o=Math.max;e.a=function(t,e,n){return e=o(void 0===e?t.length-1:e,0),function(){for(var i=arguments,s=-1,a=o(i.length-e,0),u=Array(a);++s0){if(++e>=a)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}(s);e.a=l},function(t,e,n){"use strict";var r=n(138),o=n(108),i=n(51),s=n(409);var a=function(t,e){var n=t.length;for(t.sort(e);n--;)t[n]=t[n].value;return t},u=n(171),c=n(135);var l=function(t,e){if(t!==e){var n=void 0!==t,r=null===t,o=t==t,i=Object(c.a)(t),s=void 0!==e,a=null===e,u=e==e,l=Object(c.a)(e);if(!a&&!l&&!i&&t>e||i&&s&&u&&!a&&!l||r&&s&&u||!n&&u||!o)return 1;if(!r&&!i&&!l&&t=a?u:u*("desc"==n[r]?-1:1)}return t.index-e.index},p=n(168);var h=function(t,e,n){var r=-1;e=Object(o.a)(e.length?e:[p.a],Object(u.a)(i.a));var c=Object(s.a)(t,function(t,n,i){return{criteria:Object(o.a)(e,function(e){return e(t)}),index:++r,value:t}});return a(c,function(t,e){return f(t,e,n)})},d=n(273),v=n(190),y=Object(d.a)(function(t,e){if(null==t)return[];var n=e.length;return n>1&&Object(v.a)(t,e[0],e[1])?e=[]:n>2&&Object(v.a)(e[0],e[1],e[2])&&(e=[e[0]]),h(t,Object(r.a)(e,1),[])});e.a=y},function(t,e,n){"use strict";var r=n(174),o=n(140),i=n(170);var s=function(t,e,n){(void 0===n||Object(i.a)(t[e],n))&&(void 0!==n||e in t)||Object(o.a)(t,e,n)},a=n(387),u=n(404),c=n(403),l=n(275),f=n(384),p=n(152),h=n(20),d=n(402),v=n(155),y=n(284),b=n(43),m=n(106),g=n(277),_=n(72),w="[object Object]",x=Function.prototype,O=Object.prototype,S=x.toString,E=O.hasOwnProperty,j=S.call(Object);var C=function(t){if(!Object(_.a)(t)||Object(m.a)(t)!=w)return!1;var e=Object(g.a)(t);if(null===e)return!0;var n=E.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&S.call(n)==j},T=n(213);var k=function(t,e){if("__proto__"!=e)return t[e]},P=n(139),A=n(214);var I=function(t){return Object(P.a)(t,Object(A.a)(t))};var M=function(t,e,n,r,o,i,a){var m=k(t,n),g=k(e,n),_=a.get(g);if(_)s(t,n,_);else{var w=i?i(m,g,n+"",t,e,a):void 0,x=void 0===w;if(x){var O=Object(h.a)(g),S=!O&&Object(v.a)(g),E=!O&&!S&&Object(T.a)(g);w=g,O||S||E?Object(h.a)(m)?w=m:Object(d.a)(m)?w=Object(l.a)(m):S?(x=!1,w=Object(u.a)(g,!0)):E?(x=!1,w=Object(c.a)(g,!0)):w=[]:C(g)||Object(p.a)(g)?(w=m,Object(p.a)(m)?w=I(m):Object(b.a)(m)&&!Object(y.a)(m)||(w=Object(f.a)(g))):x=!1}x&&(a.set(g,w),o(w,g,r,i,a),a.delete(g)),s(t,n,w)}};e.a=function t(e,n,o,i,u){e!==n&&Object(a.a)(n,function(a,c){if(Object(b.a)(a))u||(u=new r.a),M(e,n,c,o,t,i,u);else{var l=i?i(k(e,c),a,c+"",e,n,u):void 0;void 0===l&&(l=a),s(e,c,l)}},A.a)}},function(t,e,n){"use strict";var r="Expected a function";e.a=function(t){if("function"!=typeof t)throw new TypeError(r);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}},,,function(t,e,n){"use strict";e.a=function(t){return void 0===t}},function(t,e,n){"use strict";e.a=function(t,e){for(var n=-1,r=null==t?0:t.length;++n-1}},function(t,e,n){"use strict";var r=n(80),o=n(72);e.a=function(t){return Object(o.a)(t)&&Object(r.a)(t)}},function(t,e,n){"use strict";var r=n(276);e.a=function(t,e){var n=e?Object(r.a)(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}},function(t,e,n){"use strict";(function(t){var r=n(41),o=n.n(r),i=n(69),s="object"==("undefined"==typeof exports?"undefined":o()(exports))&&exports&&!exports.nodeType&&exports,a=s&&"object"==o()(t)&&t&&!t.nodeType&&t,u=a&&a.exports===s?i.a.Buffer:void 0,c=u?u.allocUnsafe:void 0;e.a=function(t,e){if(e)return t.slice();var n=t.length,r=c?c(n):new t.constructor(n);return t.copy(r),r}}).call(this,n(353)(t))},function(t,e,n){"use strict";var r=n(140),o=n(389),i=Object(o.a)(function(t,e,n){Object(r.a)(t,n,e)});e.a=i},function(t,e,n){"use strict";var r=n(413),o=n.n(r),i=n(220),s=n(277),a=n(281),u=n(411),c=o.a?function(t){for(var e=[];t;)Object(i.a)(e,Object(a.a)(t)),t=Object(s.a)(t);return e}:u.a;e.a=c},function(t,e,n){"use strict";var r=n(414),o=n(406),i=n(214);e.a=function(t){return Object(r.a)(t,i.a,o.a)}},function(t,e,n){"use strict";var r=n(387),o=n(97);e.a=function(t,e){return t&&Object(r.a)(t,e,o.a)}},function(t,e,n){"use strict";var r=n(124),o=n(80);e.a=function(t,e){var n=-1,i=Object(o.a)(t)?Array(t.length):[];return Object(r.a)(t,function(t,r,o){i[++n]=e(t,r,o)}),i}},function(t,e,n){"use strict";var r=n(87),o=n(108),i=n(20),s=n(135),a=1/0,u=r.a?r.a.prototype:void 0,c=u?u.toString:void 0;e.a=function t(e){if("string"==typeof e)return e;if(Object(i.a)(e))return Object(o.a)(e,t)+"";if(Object(s.a)(e))return c?c.call(e):"";var n=e+"";return"0"==n&&1/e==-a?"-0":n}},function(t,e,n){"use strict";e.a=function(){return[]}},function(t,e,n){"use strict";e.a=function(t,e){for(var n=-1,r=null==t?0:t.length,o=0,i=[];++n1)this.connection=null;else{var n=this.connection,r=t._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null},e}(o.Subscriber)},function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function r(){this.constructor=t}t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)},o=n(21),i=n(295),s=n(204);e.takeLast=function(t){return function(e){return 0===t?new s.EmptyObservable:e.lift(new a(t))}};var a=function(){function t(t){if(this.total=t,this.total<0)throw new i.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.total))},t}(),u=function(t){function e(e,n){t.call(this,e),this.total=n,this.ring=new Array,this.count=0}return r(e,t),e.prototype._next=function(t){var e=this.ring,n=this.total,r=this.count++;e.length0)for(var n=this.count>=this.total?this.total:this.count,r=this.ring,o=0;o=2&&(n=!0),function(r){return r.lift(new i(t,e,n))}};var i=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new s(t,this.accumulator,this.seed,this.hasSeed))},t}(),s=function(t){function e(e,n,r,o){t.call(this,e),this.accumulator=n,this._seed=r,this.hasSeed=o,this.index=0}return r(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(t){this.destination.error(t)}this.seed=e,this.destination.next(e)},e}(o.Subscriber)},function(t,e,n){"use strict";var r=n(0),o=n(1010);r.Observable.prototype.retryWhen=o.retryWhen},function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function r(){this.constructor=t}t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)},o=n(157),i=n(205),s=n(37),a=n(36);e.race=function(){for(var t=[],e=0;e ".length;t&&r++<5&&!("html"===(e=d(t))||r>1&&o+n.length*i+e.length>=80);)n.push(e),o+=e.length,t=t.parentNode;return n.reverse().join(" > ")},htmlElementAsString:d,isSameException:function(t,e){return!v(t,e)&&(t=t.values[0],e=e.values[0],t.type===e.type&&t.value===e.value&&!function(t,e){return i(t)&&i(e)}(t.stacktrace,e.stacktrace)&&y(t.stacktrace,e.stacktrace))},isSameStacktrace:y,parseUrl:function(t){if("string"!=typeof t)return{};var e=t.match(/^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/),n=e[6]||"",r=e[8]||"";return{protocol:e[2],host:e[4],path:e[5],relative:e[5]+n+r}},fill:function(t,e,n,r){if(null!=t){var o=t[e];t[e]=n(o),t[e].__raven__=!0,t[e].__orig__=o,r&&r.push([t,e,o])}},safeJoin:function(t,e){if(!u(t))return"";for(var n=[],r=0;ro?t(e,n-1):i},serializeKeysForMessage:function(t,e){if("number"==typeof t||"string"==typeof t)return t.toString();if(!Array.isArray(t))return"";if(0===(t=t.filter(function(t){return"string"==typeof t})).length)return"[object has no keys]";if(e="number"!=typeof e?g:e,t[0].length>=e)return t[0];for(var n=t.length;n>0;n--){var r=t.slice(0,n).join(", ");if(!(r.length>e))return n===t.length?r:r+"…"}return""},sanitize:function(t,e){if(!u(e)||u(e)&&0===e.length)return t;var n,o=h(e),i="********";try{n=JSON.parse(r(t))}catch(e){return t}return function t(e){return u(e)?e.map(function(e){return t(e)}):s(e)?Object.keys(e).reduce(function(n,r){return o.test(r)?n[r]=i:n[r]=t(e[r]),n},{}):e}(n)}}}).call(this,n(113))},function(t,e,n){"use strict";var r=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function r(){this.constructor=t}t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)},o=function(t){function e(e,n){t.call(this),this.value=e,this.scheduler=n,this._isScalar=!0,n&&(this._isScalar=!1)}return r(e,t),e.create=function(t,n){return new e(t,n)},e.dispatch=function(t){var e=t.done,n=t.value,r=t.subscriber;e?r.complete():(r.next(n),r.closed||(t.done=!0,this.schedule(t)))},e.prototype._subscribe=function(t){var n=this.value,r=this.scheduler;if(r)return r.schedule(e.dispatch,0,{done:!1,value:n,subscriber:t});t.next(n),t.closed||t.complete()},e}(n(0).Observable);e.ScalarObservable=o},function(t,e,n){"use strict";e.noop=function(){}},function(t,e,n){"use strict";var r=n(451);function o(t){return t?1===t.length?t[0]:function(e){return t.reduce(function(t,e){return e(t)},e)}:r.noop}e.pipe=function(){for(var t=[],e=0;e=32||13===e?e:0}},function(t,e,n){"use strict";n(54);var r=n(161),o=(n(46),r);t.exports=o},function(t,e,n){"use strict";var r=n(44),o=(n(183),n(307)),i=(n(149),n(158));n(32),n(46);function s(t){i.enqueueUpdate(t)}function a(t,e){var n=o.get(t);return n||null}var u={isMounted:function(t){var e=o.get(t);return!!e&&!!e._renderedComponent},enqueueCallback:function(t,e,n){u.validateCallback(e,n);var r=a(t);if(!r)return null;r._pendingCallbacks?r._pendingCallbacks.push(e):r._pendingCallbacks=[e],s(r)},enqueueCallbackInternal:function(t,e){t._pendingCallbacks?t._pendingCallbacks.push(e):t._pendingCallbacks=[e],s(t)},enqueueForceUpdate:function(t){var e=a(t);e&&(e._pendingForceUpdate=!0,s(e))},enqueueReplaceState:function(t,e,n){var r=a(t);r&&(r._pendingStateQueue=[e],r._pendingReplaceState=!0,void 0!==n&&null!==n&&(u.validateCallback(n,"replaceState"),r._pendingCallbacks?r._pendingCallbacks.push(n):r._pendingCallbacks=[n]),s(r))},enqueueSetState:function(t,e){var n=a(t);n&&((n._pendingStateQueue||(n._pendingStateQueue=[])).push(e),s(n))},enqueueElementInternal:function(t,e,n){t._pendingElement=e,t._context=n,s(t)},validateCallback:function(t,e){t&&"function"!=typeof t&&r("122",e,function(t){var e=typeof t;if("object"!==e)return e;var n=t.constructor&&t.constructor.name||e,r=Object.keys(t);return r.length>0&&r.length<20?n+" (keys: "+r.join(", ")+")":n}(t))}};t.exports=u},function(t,e,n){"use strict";var r={escape:function(t){var e={"=":"=0",":":"=2"};return"$"+(""+t).replace(/[=:]/g,function(t){return e[t]})},unescape:function(t){var e={"=0":"=","=2":":"};return(""+("."===t[0]&&"$"===t[1]?t.substring(2):t.substring(1))).replace(/(=0|=2)/g,function(t){return e[t]})}};t.exports=r},function(t,e,n){"use strict";t.exports=function(t,e){var n=null===t||!1===t,r=null===e||!1===e;if(n||r)return n===r;var o=typeof t,i=typeof e;return"string"===o||"number"===o?"string"===i||"number"===i:"object"===i&&t.type===e.type&&t.key===e.key}},function(t,e,n){"use strict";var r=n(44),o=(n(32),!1),i={replaceNodeWithMarkup:null,processChildrenUpdates:null,injection:{injectEnvironment:function(t){o&&r("104"),i.replaceNodeWithMarkup=t.replaceNodeWithMarkup,i.processChildrenUpdates=t.processChildrenUpdates,o=!0}}};t.exports=i},function(t,e,n){"use strict";var r=n(44),o=n(1194),i=n(691)(n(260).isValidElement),s=(n(32),n(46),{button:!0,checkbox:!0,image:!0,hidden:!0,radio:!0,reset:!0,submit:!0});function a(t){null!=t.checkedLink&&null!=t.valueLink&&r("87")}function u(t){a(t),(null!=t.value||null!=t.onChange)&&r("88")}function c(t){a(t),(null!=t.checked||null!=t.onChange)&&r("89")}var l={value:function(t,e,n){return!t[e]||s[t.type]||t.onChange||t.readOnly||t.disabled?null:new Error("You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`.")},checked:function(t,e,n){return!t[e]||t.onChange||t.readOnly||t.disabled?null:new Error("You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`.")},onChange:i.func},f={};function p(t){if(t){var e=t.getName();if(e)return" Check the render method of `"+e+"`."}return""}var h={checkPropTypes:function(t,e,n){for(var r in l){if(l.hasOwnProperty(r))var i=l[r](e,r,t,"prop",null,o);if(i instanceof Error&&!(i.message in f)){f[i.message]=!0;p(n)}}},getValue:function(t){return t.valueLink?(u(t),t.valueLink.value):t.value},getChecked:function(t){return t.checkedLink?(c(t),t.checkedLink.value):t.checked},executeOnChange:function(t,e){return t.valueLink?(u(t),t.valueLink.requestChange(e.target.value)):t.checkedLink?(c(t),t.checkedLink.requestChange(e.target.checked)):t.onChange?t.onChange.call(void 0,e):void 0}};t.exports=h},function(t,e,n){"use strict";t.exports=function(t){return"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,n,r,o){MSApp.execUnsafeLocalFunction(function(){return t(e,n,r,o)})}:t}},function(t,e,n){"use strict";t.exports={html:"http://www.w3.org/1999/xhtml",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg"}},function(t,e,n){"use strict";var r=n(251),o=n(1212),i=(n(70),n(149),n(464)),s=n(356),a=n(665);function u(t,e){return Array.isArray(e)&&(e=e[1]),e?e.nextSibling:t.firstChild}var c=i(function(t,e,n){t.insertBefore(e,n)});function l(t,e,n){r.insertTreeBefore(t,e,n)}function f(t,e,n){Array.isArray(e)?function(t,e,n,r){var o=e;for(;;){var i=o.nextSibling;if(c(t,o,r),o===n)break;o=i}}(t,e[0],e[1],n):c(t,e,n)}function p(t,e){if(Array.isArray(e)){var n=e[1];h(t,e=e[0],n),t.removeChild(n)}t.removeChild(e)}function h(t,e,n){for(;;){var r=e.nextSibling;if(r===n)break;t.removeChild(r)}}var d={dangerouslyReplaceNodeWithMarkup:o.dangerouslyReplaceNodeWithMarkup,replaceDelimitedText:function(t,e,n){var r=t.parentNode,o=t.nextSibling;o===e?n&&c(r,document.createTextNode(n),o):n?(a(o,n),h(r,o,e)):h(r,t,e)},processUpdates:function(t,e){for(var n=0;n-1||r("96",t),!c.plugins[n]){e.extractEvents||r("97",t),c.plugins[n]=e;var s=e.eventTypes;for(var u in s)a(s[u],e,u)||r("98",u,t)}}}function a(t,e,n){c.eventNameDispatchConfigs.hasOwnProperty(n)&&r("99",n),c.eventNameDispatchConfigs[n]=t;var o=t.phasedRegistrationNames;if(o){for(var i in o){if(o.hasOwnProperty(i))u(o[i],e,n)}return!0}return!!t.registrationName&&(u(t.registrationName,e,n),!0)}function u(t,e,n){c.registrationNameModules[t]&&r("100",t),c.registrationNameModules[t]=e,c.registrationNameDependencies[t]=e.eventTypes[n].dependencies}var c={plugins:[],eventNameDispatchConfigs:{},registrationNameModules:{},registrationNameDependencies:{},possibleRegistrationNames:null,injectEventPluginOrder:function(t){o&&r("101"),o=Array.prototype.slice.call(t),s()},injectEventPluginsByName:function(t){var e=!1;for(var n in t)if(t.hasOwnProperty(n)){var o=t[n];i.hasOwnProperty(n)&&i[n]===o||(i[n]&&r("102",n),i[n]=o,e=!0)}e&&s()},getPluginModuleForEvent:function(t){var e=t.dispatchConfig;if(e.registrationName)return c.registrationNameModules[e.registrationName]||null;if(void 0!==e.phasedRegistrationNames){var n=e.phasedRegistrationNames;for(var r in n)if(n.hasOwnProperty(r)){var o=c.registrationNameModules[n[r]];if(o)return o}}return null},_resetEventPlugins:function(){for(var t in o=null,i)i.hasOwnProperty(t)&&delete i[t];c.plugins.length=0;var e=c.eventNameDispatchConfigs;for(var n in e)e.hasOwnProperty(n)&&delete e[n];var r=c.registrationNameModules;for(var s in r)r.hasOwnProperty(s)&&delete r[s]}};t.exports=c},function(t,e,n){"use strict";var r=n(362);t.exports.f=function(t){return new function(t){var e,n;this.promise=new t(function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r}),this.resolve=r(e),this.reject=r(n)}(t)}},function(t,e,n){var r=n(475),o=n(117)("iterator"),i=n(258);t.exports=n(63).getIteratorMethod=function(t){if(void 0!=t)return t[o]||t["@@iterator"]||i[r(t)]}},function(t,e,n){var r=n(314),o=n(117)("toStringTag"),i="Arguments"==r(function(){return arguments}());t.exports=function(t){var e,n,s;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?n:i?r(e):"Object"==(s=r(e))&&"function"==typeof e.callee?"Arguments":s}},function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,e,n){var r=n(63),o=n(118),i=o["__core-js_shared__"]||(o["__core-js_shared__"]={});(t.exports=function(t,e){return i[t]||(i[t]=void 0!==e?e:{})})("versions",[]).push({version:r.version,mode:n(313)?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},function(t,e,n){var r=n(477)("keys"),o=n(361);t.exports=function(t){return r[t]||(r[t]=o(t))}},function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},function(t,e,n){var r=n(479),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,e,n){var r=n(160),o=n(1249),i=n(476),s=n(478)("IE_PROTO"),a=function(){},u=function(){var t,e=n(483)("iframe"),r=i.length;for(e.style.display="none",n(684).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("